Learn R Programming

freealg (version 1.1-1)

horner: Horner's method

Description

Horner's method for multivariate polynomials

Usage

horner(P,v)

Arguments

P

Free algebra polynomial

v

Numeric vector of coefficients

Author

Robin K. S. Hankin

Details

This function is (almost) the same as mvp::horner().

Given a polynomial

p(x) = a_0 +a_1+a_2x^2+ + a_nx^nomitted; see latex

it is possible to express \(p(x)\) in the algebraically equivalent form

p(x) = a_0 + x(a_1+x(a_2+ + x(a_n-1 +xa_n )))omitted; see PDF

which is much more efficient for evaluation, as it requires only \(n\) multiplications and \(n\) additions, and this is optimal. Function horner() will take a freealg object for its first argument.

Examples

Run this code

horner("x",  1:4)  # note constant term is 1.

horner("x+y",1:3) # note presence of xy and yx terms

horner("1+x+xyX",1:3)

Run the code above in your browser using DataLab