We discuss now the computational cost for evaluating
the Taylor polynomial value at some point
When evaluating the compiler (usually) translates it to multiplications. Thus, the naive algorithm
p = b(0) do i=1,n p = p + b(i)*x**i end dowill require additions and , i.e. multiplications.
A better alternative is to save the computed power of from one iteration to the next. Since , iteration will need just two multiplications (not ) to compute .
p = b(0) powx = 1.0 do i=1,n powx = powx*x ! powx = x**i p = p + b(i)*powx end doThis second algorithm needs additions and multiplications.
We can do even better than this, by rewriting the polynomial
in nested form
We have to start with the last term and loop back to the first. The algorithm goes as follows
p = b(n) do i=n-1,0,-1 p = b(i) + x*p end do
and requires additions and only multiplications.