You are on page 1of 4

Scientific Computing– LESSON 10: Polynomial Interpolation - Computational Methods 1

Polynomial Interpolation

The polynomial interpolation problem is formulated as follows.

Given data values fi ∈ R at n + 1 distinct points ti ∈ R, i = 0, 1, 2 . . . , n, find a


polynomial pn (t) of degree at most n such that pn (ti ) = fi .

Denote the polynomial pn (t) in the power form

pn (t) = a0 + a1 t + · · · + an tn .

Then the above interpolation conditions lead to the following system of linear equa-
tions    
a0 f
 0
 
2 n
1 t0 t0 · · · t0   
  a   f 
n   1  1

2
1 t1 · · · t1  
 1 t 
 


  a2  =   f2
   

 · · · · ·  
 
 ·  ·
   
 
2 n
1 tn tn · · · tn    
an fn

Assume that the ti are distinct. Then the above coefficient matrix, called the
Vandermonde matrix, is nonsingular, Hence, the interpolating polynomial pn (t) exists
and is unique.

Given the existence of the interpolation polynomial pn (t), there is another way
of verifying its uniqueness. Suppose that there are two different polynomials pn (t)
and qn (t) both interpolating the fi , i.e., pn (ti ) = qn (ti ) = fi , i = 0, 1, 2, · · · , n. Then
the polynomial g(t) = pn (t) − qn (t) is not identically zero, has degree at most n and
vanishes at the n + 1 distinct points, i.e., the ti . But this contradicts the fact that a
polynomial of degree k has at most k real zeros. Hence, g(t) must be identically zero.
That is, pn (x) ≡ qn (x).

Lagrange interpolation

Lagrange interpolation is another way of deriving an interpolation polynomial.


The Lagrange interpolation polynomial is given by
n
X
pn (t) = fi `n,i (t),
i=0

where n
Y t − tk
`n,i (t) =
k=0, k6=i ti − tk
Scientific Computing– LESSON 10: Polynomial Interpolation - Computational Methods 2

Clearly, we have `n,i (tj ) = δi,j , where



 1 if j = i;
δi,j =
 0 6 i.
if j =

With the above properties of the basis function `n,i (t), it is easy to see that the
Lagrange polynomial is exactly the interpolation polynomial we are seeking. The
explicit expression of the Lagrange polynomial gives an existence proof of the inter-
polation polynomial, so we do not need to solve a linear system with a full matrix in
order to find the interpolation polynomial.

A drawback of the Lagrange interpolant is that it is relatively time-consuming


to evaluate the polynomial at a given variable value t; O(n2 ) operations would be
required in a näive implementation.

Newton interpolation

An interpolation polynomial can be put in the following Newton form

pn (t) = c0 + c1 (t − t0 ) + c2 (t − t0 )(t − t1 )
n−1
Y
+ . . . + cn (t − tj ).
j=0

With this form, the coefficient matrix of the linear system resulting from the inter-
polation conditions will be lower triangular. Therefore it takes only O(n2 ) operations
to solve the equations to determine the coefficients ci of the Newton interpolant.

The following is an incremental method for determining the Newton interpolant


for n + 1 points (tk , fk ), k = 0, 1, 2, · · · , n.

Clearly, the first Newton interpolant for the first point (t0 , f0 ) is p0 (t) = f0 . Let
pi (t) denote the Newton interpolant for i + 1 points (tk , fk ), k = 0, 1, 2, · · · , i, 0 ≤ i <
n. Denote φi (t) = i−1 k=0 (t − tk ). Then the polynomial
Q

pi+1 (t) = pi (t) + ci+1 φi+1 (t)

also interpolates the first i + 1 points, and we may choose ci+1 to make pi+1 (t) further
interpolate the next point (ti+1 , fi+1 ) by setting pi+1 (ti+1 ) = fi+1 . This leads to

fi+1 = pi (ti+1 ) + ci+1 φi+1 (ti+1 )


Scientific Computing– LESSON 10: Polynomial Interpolation - Computational Methods 3

or
fi+1 − pi (ti+1 )
ci+1 = .
φi+1 (ti+1 )

The above step can be repeated to produce the Newton form of the interpolation
polynomial for n + 1 points. This procedure uses also O(n2 ) operations.

By this incremental construction, we see that when a new point (ti+1 , fi+1 ) is added
as an interpolation condition, only an extra term needs to be added to the expression
of the Newton interpolant and the previous lower degree terms remain unchanged.

The Newton interpolant can be rewritten as

p(t) = c0 + (t − t0 )[c1 + (t − t1 ){c2 + (t − t2 ) · · · ..}].

This allows the use of Horner’s rule to evaluate the polynomial p(t) in O(n) operations
for a particular value of t.

Hence, Newton’s interpolant strikes a balance, in terms of the number of operations


used, between computing (i.e., finding) and evaluating an interpolation polynomial.

Divided differences (Optional)

Given the values fi at points ti , i = 0, 1, . . . , n, the divided difference is defined


recursively by
f [t1 , t2 , . . . , tn ] − f [t0 , t1 , . . . , tn−1 ]
f [t0 , t1 , . . . , tn ] = ,
tn − t0
with the initial values given by

f [ti ] = fi , i = 0, 1, . . . , n.

Note that f [t0 , t1 , . . . , tn ] is symmetric in the arguments t0 , t1 , . . ., and tn .

We next show that the leading coefficient cn in the Newton interpolant for n + 1
points (ti , fi ), i = 0, 1, . . . , n, is given by the divided difference

cn = f [t0 , t1 , . . . , tn ].

1) Let pn (t) be the Newton interpolant for


(t0 , f0 ), (t1 , f1 ), (t2 , f2 ), . . ., (tn , fn ).
Scientific Computing– LESSON 10: Polynomial Interpolation - Computational Methods 4

2) Let qn−1 (t) be the Newton interpolant


(t1 , f1 ), (t2 , f2 ), . . ., (tn , fn ).

3) Let rn−1 (t) be the Newton interpolant


(t0 , f0 ), (t1 , f1 ), . . ., (tn−1 , fn−1 ).

Then, clearly,
t − t0 tn − t
pn (t) = qn−1 (t) + rn−1 (t).
tn − t0 tn − t0

Since the leading coefficients of qn−1 (t) and rn−1 (t) are assumed to be

f [t1 , t2 , . . . , tn ] and f [t0 , t1 , . . . , tn−1 ],

respectively, it follows that the leading coefficient of p(t) is


f [t1 , t2 , . . . , tn ] − f [t0 , t1 , . . . , tn−1 ]
cn =
tn − t0
= f [t0 , t1 , t2 , . . . , tn ].

This completes the proof.

The relationship between the divided difference and the Newton interpolant pro-
vides another way of computing the coefficients of the Newton interpolant as the
following diagram suggests

f0 = f [t0 ]
f1 = f [t1 ] f [t0 , t1 ]
f2 = f [t2 ] f [t1 , t2 ] f [t0 , t1 , t2 ]
f3 = f [t3 ] f [t2 , t3 ] f [t1 , t2 , t3 ] f [t0 , t1 , t2 , t3 ]

The interpolant’s coefficients can be read out from the diagonal of this diagram.
Obviously, this procedure also takes O(n2 ) operations.

You might also like