HOME

TheInfoList



OR:

In
numerical analysis Numerical analysis is the study of algorithms that use numerical approximation (as opposed to symbolic computation, symbolic manipulations) for the problems of mathematical analysis (as distinguished from discrete mathematics). It is the study of ...
, polynomial interpolation is the interpolation of a given
data set A data set (or dataset) is a collection of data. In the case of tabular data, a data set corresponds to one or more database tables, where every column of a table represents a particular variable, and each row corresponds to a given record of the ...
by the
polynomial In mathematics, a polynomial is an expression consisting of indeterminates (also called variables) and coefficients, that involves only the operations of addition, subtraction, multiplication, and positive-integer powers of variables. An exa ...
of lowest possible degree that passes through the points of the dataset. Given a set of data points (x_0,y_0), \ldots, (x_n,y_n), with no two x_j the same, a polynomial function p(x) is said to interpolate the data if p(x_j)=y_j for each j\in\. Two common explicit formulas for this polynomial are the Lagrange polynomials and
Newton polynomials In the mathematical field of numerical analysis, a Newton polynomial, named after its inventor Isaac Newton, is an interpolation polynomial for a given set of data points. The Newton polynomial is sometimes called Newton's divided differences inter ...
.


Applications

Polynomials can be used to approximate complicated curves, for example, the shapes of letters in
typography Typography is the art and technique of arranging type to make written language legible, readable and appealing when displayed. The arrangement of type involves selecting typefaces, point sizes, line lengths, line-spacing ( leading), and ...
, given a few points. A relevant application is the evaluation of the
natural logarithm The natural logarithm of a number is its logarithm to the base of the mathematical constant , which is an irrational and transcendental number approximately equal to . The natural logarithm of is generally written as , , or sometimes, if ...
and
trigonometric function In mathematics, the trigonometric functions (also called circular functions, angle functions or goniometric functions) are real functions which relate an angle of a right-angled triangle to ratios of two side lengths. They are widely used in all ...
s: pick a few known data points, create a lookup table, and interpolate between those data points. This results in significantly faster computations. Polynomial interpolation also forms the basis for algorithms in
numerical quadrature In analysis, numerical integration comprises a broad family of algorithms for calculating the numerical value of a definite integral, and by extension, the term is also sometimes used to describe the numerical solution of differential equations ...
and numerical ordinary differential equations and Secure Multi Party Computation,
Secret Sharing Secret sharing (also called secret splitting) refers to methods for distributing a secret among a group, in such a way that no individual holds any intelligible information about the secret, but when a sufficient number of individuals combine t ...
schemes. Polynomial interpolation is also essential to perform sub-quadratic multiplication and squaring such as
Karatsuba multiplication The Karatsuba algorithm is a fast multiplication algorithm. It was discovered by Anatoly Karatsuba in 1960 and published in 1962. Knuth D.E. (1969) ''The Art of Computer Programming. v.2.'' Addison-Wesley Publ.Co., 724 pp. It is a divi ...
and
Toom–Cook multiplication Toom–Cook, sometimes known as Toom-3, named after Andrei Toom, who introduced the new algorithm with its low complexity, and Stephen Cook, who cleaned the description of it, is a multiplication algorithm for large integers. Given two large integ ...
, where an interpolation through points on a polynomial which defines the product yields the product itself. For example, given ''a'' = ''f''(''x'') = ''a''0''x''0 + ''a''1''x''1 + ... and ''b'' = ''g''(''x'') = ''b''0''x''0 + ''b''1''x''1 + ..., the product ''ab'' is equivalent to ''W''(''x'') = ''f''(''x'')''g''(''x''). Finding points along ''W''(''x'') by substituting ''x'' for small values in ''f''(''x'') and ''g''(''x'') yields points on the curve. Interpolation based on those points will yield the terms of ''W''(''x'') and subsequently the product ''ab''. In the case of Karatsuba multiplication this technique is substantially faster than quadratic multiplication, even for modest-sized inputs. This is especially true when implemented in parallel hardware.


Interpolation theorem

There exists a unique polynomial of degree at most n that interpolates the n+1 data points (x_0,y_0),\dotsc,(x_n,y_n) \in \R^2, where no two x_j are the same. Equivalently, for a fixed choice of interpolation nodes x_j, polynomial interpolation defines a linear
bijection In mathematics, a bijection, also known as a bijective function, one-to-one correspondence, or invertible function, is a function between the elements of two sets, where each element of one set is paired with exactly one element of the other s ...
between the n-tuples of real-number values (y_0,\ldots,y_n)\in \R^ and the
vector space In mathematics and physics, a vector space (also called a linear space) is a set whose elements, often called ''vectors'', may be added together and multiplied ("scaled") by numbers called '' scalars''. Scalars are often real numbers, but can ...
P(n) of real polynomials of degree at most : :L_n : \mathbb^ \stackrel\, \Pi_n. This is a type of unisolvence theorem. The theorem is also valid over any infinite
field Field may refer to: Expanses of open ground * Field (agriculture), an area of land used for agricultural purposes * Airfield, an aerodrome that lacks the infrastructure of an airport * Battlefield * Lawn, an area of mowed grass * Meadow, a grass ...
in place of the real numbers \R, for example the rational or complex numbers.


First proof

Consider the Lagrange basis functions given by : L_(x)=\prod_\frac. Notice that L_ is a polynomial of degree n. Furthermore, for each x_k we have L_(x_k)=\delta_, where \delta_ is the
Kronecker delta In mathematics, the Kronecker delta (named after Leopold Kronecker) is a function of two variables, usually just non-negative integers. The function is 1 if the variables are equal, and 0 otherwise: \delta_ = \begin 0 &\text i \neq j, \\ 1 &\ ...
. It follows that the linear combination : p(x)=\sum_^n y_j L_(x) is an interpolating polynomial of degree n. To prove uniqueness, assume that there exists another interpolating polynomial q of degree at most n. Since p(x_k)=q(x_k) for all k=0,\dotsc,n, it follows that the polynomial p-q has n+1 distinct zeros. However, p-q is of degree at most n and, by the
fundamental theorem of algebra The fundamental theorem of algebra, also known as d'Alembert's theorem, or the d'Alembert–Gauss theorem, states that every non- constant single-variable polynomial with complex coefficients has at least one complex root. This includes polynomia ...
, can have at most n zeros; therefore, p=q.


Second proof

Write out the interpolation polynomial in the form :p(x) = a_n x^n + a_ x^ + \cdots + a_2 x^2 + a_1 x + a_0. \qquad (1) Substituting this into the interpolation equations p(x_j) = y_j, we get a system of linear equations in the coefficients a_j, which reads in matrix-vector form as the following
multiplication Multiplication (often denoted by the cross symbol , by the mid-line dot operator , by juxtaposition, or, on computers, by an asterisk ) is one of the four elementary mathematical operations of arithmetic, with the other ones being additi ...
: :\begin x_0^n & x_0^ & x_0^ & \ldots & x_0 & 1 \\ x_1^n & x_1^ & x_1^ & \ldots & x_1 & 1 \\ \vdots & \vdots & \vdots & & \vdots & \vdots \\ x_n^n & x_n^ & x_n^ & \ldots & x_n & 1 \end \begin a_n \\ a_ \\ \vdots \\ a_0 \end = \begin y_0 \\ y_1 \\ \vdots \\ y_n \end. An interpollant p(x) corresponds to a solution A = (a_n,\ldots,a_0) of the above matrix equation X \cdot A = Y. The matrix ''X'' on the left is a
Vandermonde matrix In linear algebra, a Vandermonde matrix, named after Alexandre-Théophile Vandermonde, is a matrix with the terms of a geometric progression in each row: an matrix :V=\begin 1 & x_1 & x_1^2 & \dots & x_1^\\ 1 & x_2 & x_2^2 & \dots & x_2^\\ 1 & x_3 ...
, whose determinant is known to be \textstyle \det(X) = \prod_ (x_j - x_i), which is non-zero since the nodes x_j are all distinct. This ensures that the matrix is
invertible In mathematics, the concept of an inverse element generalises the concepts of opposite () and reciprocal () of numbers. Given an operation denoted here , and an identity element denoted , if , one says that is a left inverse of , and that is ...
and the equation has the unique solution A = X^\cdot Y; that is, p(x) exists and is unique.


Corollary

If f is a polynomial of degree at most n, then the interpolating polynomial of f at n+1 distinct points is f itself.


Constructing the interpolation polynomial

The Vandermonde matrix in the second proof above may have large condition number, causing large errors when computing the coefficients if the system of equations is solved using
Gaussian elimination In mathematics, Gaussian elimination, also known as row reduction, is an algorithm for solving systems of linear equations. It consists of a sequence of operations performed on the corresponding matrix of coefficients. This method can also be used ...
. Several authors have therefore proposed algorithms which exploit the structure of the Vandermonde matrix to compute numerically stable solutions in O(''n''2) operations instead of the O(''n''3) required by Gaussian elimination. These methods rely on constructing first a Newton interpolation of the polynomial and then converting it to the
monomial form In mathematics the monomial basis of a polynomial ring is its basis (as a vector space or free module over the field or ring of coefficients) that consists of all monomials. The monomials form a basis because every polynomial may be uniquely wr ...
above. Alternatively, we may write down the polynomial immediately in terms of
Lagrange polynomial In numerical analysis, the Lagrange interpolating polynomial is the unique polynomial of lowest degree of a polynomial, degree that polynomial interpolation, interpolates a given set of data. Given a data set of graph of a function, coordinate p ...
s: :\begin p(x) &\textstyle= \frac y_0 + \fracy_1 +\cdots+\fracy_n \\ pt&=\sum_^n \Bigg( \prod_ \frac \Bigg) y_i \end For matrix arguments, this formula is called
Sylvester's formula In matrix theory, Sylvester's formula or Sylvester's matrix theorem (named after J. J. Sylvester) or Lagrange−Sylvester interpolation expresses an analytic function of a matrix as a polynomial in , in terms of the eigenvalues and eigenvectors ...
and the matrix-valued Lagrange polynomials are the
Frobenius covariant In matrix theory, the Frobenius covariants of a square matrix are special polynomials of it, namely projection matrices ''A'i'' associated with the eigenvalues and eigenvectors of .Roger A. Horn and Charles R. Johnson (1991), ''Topics in Ma ...
s.


Non-Vandermonde solutions

We are trying to construct our unique interpolation polynomial in the vector space Π''n'' of polynomials of degree . When using a monomial basis for Π''n'' we have to solve the Vandermonde matrix to construct the coefficients for the interpolation polynomial. This can be a very costly operation (as counted in clock cycles of a computer trying to do the job). By choosing another basis for Π''n'' we can simplify the calculation of the coefficients but then we have to do additional calculations when we want to express the interpolation polynomial in terms of a monomial basis. One method is to write the interpolation polynomial in the Newton form and use the method of
divided differences In mathematics, divided differences is an algorithm, historically used for computing tables of logarithms and trigonometric functions. Charles Babbage's difference engine, an early mechanical calculator, was designed to use this algorithm in its o ...
to construct the coefficients, e.g.
Neville's algorithm In mathematics, Neville's algorithm is an algorithm used for polynomial interpolation that was derived by the mathematician Eric Harold Neville in 1934. Given ''n'' + 1 points, there is a unique polynomial of degree ''≤ n'' which goes through the ...
. The cost is O(''n''2) operations, while Gaussian elimination costs O(''n''3) operations. Furthermore, you only need to do O(''n'') extra work if an extra point is added to the data set, while for the other methods, you have to redo the whole computation. Another method is to use the Lagrange form of the interpolation polynomial. The resulting formula immediately shows that the interpolation polynomial exists under the conditions stated in the above theorem. Lagrange formula is to be preferred to Vandermonde formula when we are not interested in computing the coefficients of the polynomial, but in computing the value of ''p''(''x'') in a given ''x'' not in the original data set. In this case, we can reduce complexity to O(''n''2). The Bernstein form was used in a constructive proof of the
Weierstrass approximation theorem Karl Theodor Wilhelm Weierstrass (german: link=no, Weierstraß ; 31 October 1815 – 19 February 1897) was a German mathematician often cited as the "father of modern analysis". Despite leaving university without a degree, he studied mathematics ...
by
Bernstein Bernstein is a common surname in the German language, meaning "amber" (literally "burn stone"). The name is used by both Germans and Jews, although it is most common among people of Ashkenazi Jewish heritage. The German pronunciation is , but in E ...
and has gained great importance in computer graphics in the form of Bézier curves.


Linear combination of the given values

The Lagrange form of the interpolating polynomial is a linear combination of the given values. In many scenarios, an efficient and convenient polynomial interpolation is a linear combination of the given values, using previously known coefficients. Given a set of k+1 data points (x_0, y_0),\ldots,(x_j, y_j),\ldots,(x_k, y_k) where each data point is a (position, value) pair and where no two positions x_j are the same, the interpolation polynomial in the Lagrange form is a linear combination :y(x) := \sum_^ y_j c_j(x) of the given values y_j with each coefficient c _j(x) given by evaluating the corresponding Lagrange basis polynomial using the given k+1 positions x_j. :c_j(x) = \ell_j(x,x_0,x_1,\ldots,x_k) := \prod_ \frac = \frac \cdots \frac \frac \cdots \frac. Each coefficient c _j(x) in the linear combination depends on the given positions x_j and the desired position x, but not on the given values y_j. For each coefficient, inserting the values of the given positions x_j and simplifying yields an expression c _j(x), which depends only on x. Thus the same coefficient expressions c_j(x) can be used in a polynomial interpolation of a given second set of k+1 data points (x_0, v_0),\ldots,(x_j, v_j),\ldots,(x_k, v_k) at the same given positions x_j, where the second given values v_j differ from the first given values y_j. Using the same coefficient expressions c_j(x) as for the first set of data points, the interpolation polynomial of the second set of data points is the linear combination :v(x) := \sum_^ v_j c_j(x). For each coefficient c _j(x) in the linear combination, the expression resulting from the Lagrange basis polynomial \ell_j(x,x_0,x_1,\ldots,x_k) only depends on the relative spaces between the given positions, not on the individual value of any position. Thus the same coefficient expressions c_j(x) can be used in a polynomial interpolation of a given third set of k+1 data points :(t_0, w_0),\ldots,(t_j, w_j),\ldots,(t_k, w_k) where each position t_j is related to the corresponding position x_j in the first set by t_i = ax_i + b and the desired positions are related by t = ax + b, for a constant scaling factor ''a'' and a constant shift ''b'' for all positions. Using the same coefficient expressions c_j(t) as for the first set of data points, the interpolation polynomial of the third set of data points is the linear combination :w(t) := \sum_^ w_j c_j(t). In many applications of polynomial interpolation, the given set of k+1 data points is at equally spaced positions. In this case, it can be convenient to define the ''x''-axis of the positions such that x_i = i. For example, a given set of 3 equally-spaced data points (x_0,y_0),(x_1,y_1),(x_2,y_2) is then (0,y_0),(1,y_1),(2,y_2). The interpolation polynomial in the Lagrange form is the linear combination : \begin y(x) := \sum_^2 y_j c_j(x) = y_0 \frac + y_1 \frac + y_2 \frac \\ = y_0 \frac + y_1 \frac + y_2 \frac. \end This quadratic interpolation is valid for any position ''x'', near or far from the given positions. So, given 3 equally-spaced data points at x=0,1,2 defining a quadratic polynomial, at an example desired position x=1.5, the interpolated value after simplification is given by y(1.5)=y_= (-y_0 + 6y_1 + 3y_2)/8 This is a quadratic interpolation typically used in the Multigrid method. Again given 3 equally-spaced data points at x=0,1,2 defining a quadratic polynomial, at the next equally spaced position x=3, the interpolated value after simplification is given by :y(3)=y_3 = y_0 - 3y_1 + 3y_2. In the above polynomial interpolations using a linear combination of the given values, the coefficients were determined using the Lagrange method. In some scenarios, the coefficients can be more easily determined using other methods. Examples follow. According to the method of finite differences, for any polynomial of degree ''d'' or less, any sequence of d+2 values at equally spaced positions has a (d+1)th difference exactly equal to 0. The element ''s''''d+1'' of the
Binomial transform In combinatorics, the binomial transform is a sequence transformation (i.e., a transform of a sequence) that computes its forward differences. It is closely related to the Euler transform, which is the result of applying the binomial transform to t ...
is such a (d+1)th difference. This area is surveyed here. The
binomial transform In combinatorics, the binomial transform is a sequence transformation (i.e., a transform of a sequence) that computes its forward differences. It is closely related to the Euler transform, which is the result of applying the binomial transform to t ...
, ''T'', of a sequence of values , is the sequence defined by :s_n = \sum_^n (-1)^k v_k. Ignoring the sign term (-1)^k, the n+1 coefficients of the element ''s''''n'' are the respective n+1 elements of the row ''n'' of Pascal's Triangle. The triangle of binomial transform coefficients is like Pascal's triangle. The entry in the ''n''th row and ''k''th column of the BTC triangle is (-1)^k\tbinom for any non-negative integer ''n'' and any integer ''k'' between 0 and ''n''. This results in the following example rows ''n'' = 0 through ''n'' = 7, top to bottom, for the BTC triangle: For convenience, each row ''n'' of the above example BTC triangle also has a label d=n-1. Thus for any polynomial of degree ''d'' or less, any sequence of d+2 values at equally spaced positions has a linear combination result of 0, when using the d+2 elements of row ''d'' as the corresponding linear coefficients. For example, 4 equally spaced data points of a quadratic polynomial obey the linear equation given by row d=2 of the BTC triangle. 0 = y_0 - 3y_1 + 3y_2 -y_3 This is the same linear equation as obtained above using the Lagrange method. The BTC triangle can also be used to derive other polynomial interpolations. For example, the above quadratic interpolation :y(1.5)=y_= (-y_0 + 6y_1 + 3y_2)/8 can be derived in 3 simple steps as follows. The equally spaced points of a quadratic polynomial obey the rows of the BTC triangle with d=2 or higher. First, the row d=3 spans the given and desired data points y_0, y_1, y_, y_2 with the linear equation :0 = 1y_0 - 4y_ + 6y_1 - 4y_ + 1y_2 Second, the unwanted data point y_ is replaced by an expression in terms of wanted data points. The row d=2 provides a linear equation with a term 1y_, which results in a term 4y_ by multiplying both sides of the linear equation by 4. 0 = 1y_ - 3y_1 + 3y_ - 1 y_2 = 4y_ -12y_1 +12y_ - 4y_2 Third, the above two linear equations are added to yield a linear equation equivalent to the above quadratic interpolation for y_. 0 = (1+0)y_0 + (-4+4)y_ + (6-12)y_1 + (-4+12)y_ + (1-4)y_2 = y_0 -6y_1 + 8y_ - 3y_2 Similar to other uses of linear equations, the above derivation scales and adds vectors of coefficients. In polynomial interpolation as a linear combination of values, the elements of a vector correspond to a contiguous sequence of regularly spaced positions. The ''p'' non-zero elements of a vector are the ''p'' coefficients in a linear equation obeyed by any sequence of ''p'' data points from any degree ''d'' polynomial on any regularly spaced grid, where ''d'' is noted by the subscript of the vector. For any vector of coefficients, the subscript obeys d\leq p-2. When adding vectors with various subscript values, the lowest subscript applies for the resulting vector. So, starting with the vector of row d=3 and the vector of row d=2 of the BTC triangle, the above quadratic interpolation for y_ is derived by the vector calculation :(1,-4,6,-4,1)_3 +4(0,1,-3,3,-1)_2=(1,0,-6,+8,-3)_2 Similarly, the cubic interpolation typical in the
Multigrid method In numerical analysis, a multigrid method (MG method) is an algorithm for solving differential equations using a hierarchy of discretizations. They are an example of a class of techniques called multiresolution methods, very useful in problems exhi ...
, :y_= (-y_0 + 9y_1 + 9y_2 - y_3)/16, can be derived by a vector calculation starting with the vector of row d=5 and the vector of row d=3 of the BTC triangle. : (1,-6,15,-20,15,-6,1)_5 + 6(0, 1,-4, 6,-4, 1,0)_3 = (1, 0,-9, 16,-9, 0,1)_3


Interpolation error

When interpolating a given function ''f'' by a polynomial of degree at the nodes ''x''0,...,''x''''n'' we get the error :f(x) - p_n(x) = f _0,\ldots,x_n,x\prod_^n (x-x_i) where :f _0,\ldots,x_n,x/math> is the notation for
divided differences In mathematics, divided differences is an algorithm, historically used for computing tables of logarithms and trigonometric functions. Charles Babbage's difference engine, an early mechanical calculator, was designed to use this algorithm in its o ...
. If ''f'' is times continuously differentiable on a closed interval ''I'' and p_n(x) is a polynomial of degree at most that interpolates ''f'' at distinct points (''i''=0,1,...,n) in that interval, then for each x in the interval there exists in that interval such that : f(x) - p_n(x) = \frac \prod_^n (x-x_i). The above error bound suggests choosing the interpolation points such that the product \left , \prod (x - x_i) \right , , is as small as possible. The
Chebyshev nodes In numerical analysis, Chebyshev nodes are specific real algebraic numbers, namely the roots of the Chebyshev polynomials of the first kind. They are often used as nodes in polynomial interpolation because the resulting interpolation polynomial ...
achieve this.


Proof

Set the error term as : R_n(x) = f(x) - p_n(x) and set up an auxiliary function: : Y(t) = R_n(t) - \frac W(t) where : W(t) = \prod_^n (t-x_i) Since are roots of R_n(t) and W(t), we have , which means has at least roots. From Rolle's theorem, Y^\prime(t) has at least roots, then Y^(t) has at least one root , where is in the interval . So we can get : Y^(t) = R_n^(t) - \frac \ (n+1)! Since p_n(x) is a polynomial of degree at most , then : R_n^(t) = f^(t) Thus : Y^(t) = f^(t) - \frac \ (n+1)! Since is the root of Y^(t), so : Y^(\xi) = f^(\xi) - \frac \ (n+1)! = 0 Therefore, : R_n(x) = f(x) - p_n(x) = \frac \prod_^n (x-x_i) . Thus the remainder term in the Lagrange form of the
Taylor theorem In calculus, Taylor's theorem gives an approximation of a ''k''-times differentiable function around a given point by a polynomial of degree ''k'', called the ''k''th-order Taylor polynomial. For a smooth function, the Taylor polynomial is the ...
is a special case of interpolation error when all interpolation nodes are identical. Note that the error will be zero when x = x_i for any ''i''. Thus, the maximum error will occur at some point in the interval between two successive nodes.


For equally spaced intervals

In the case of equally spaced interpolation nodes where x_i = a + ih, for i=0,1,\ldots,n, and where h = (b-a)/n, the product term in the interpolation error formula can be bound as :\left, \prod_^n (x-x_i)\ = \prod_^n \left, x-x_i\ \leq \frac h^. Thus the error bound can be given as : \left, R_n(x)\ \leq \frac \max_ \left, f^(\xi)\ However, this assumes that f^(\xi) is dominated by h^, i.e. f^(\xi) h^ \ll 1. In several cases, this is not true and the error actually increases as (see
Runge's phenomenon In the mathematical field of numerical analysis, Runge's phenomenon () is a problem of oscillation at the edges of an interval that occurs when using polynomial interpolation with polynomials of high degree over a set of equispaced interpolation ...
). That question is treated in the section ''Convergence properties''.


Lebesgue constants

We fix the interpolation nodes ''x''0, ..., ''x''''n'' and an interval 'a'', ''b''containing all the interpolation nodes. The process of interpolation maps the function ''f'' to a polynomial ''p''. This defines a mapping ''X'' from the space ''C''( 'a'', ''b'' of all continuous functions on 'a'', ''b''to itself. The map ''X'' is linear and it is a
projection Projection, projections or projective may refer to: Physics * Projection (physics), the action/process of light, heat, or sound reflecting from a surface to another in a different direction * The display of images by a projector Optics, graphic ...
on the subspace Π''n'' of polynomials of degree ''n'' or less. The Lebesgue constant ''L'' is defined as the
operator norm In mathematics, the operator norm measures the "size" of certain linear operators by assigning each a real number called its . Formally, it is a norm defined on the space of bounded linear operators between two given normed vector spaces. Introd ...
of ''X''. One has (a special case of
Lebesgue's lemma ''For Lebesgue's lemma for open covers of compact spaces in topology see Lebesgue's number lemma'' In mathematics, Lebesgue's lemma is an important statement in approximation theory. It provides a bound for the projection error, controlling the e ...
): : \, f-X(f)\, \le (L+1) \, f-p^*\, . In other words, the interpolation polynomial is at most a factor (''L'' + 1) worse than the best possible approximation. This suggests that we look for a set of interpolation nodes that makes ''L'' small. In particular, we have for
Chebyshev nodes In numerical analysis, Chebyshev nodes are specific real algebraic numbers, namely the roots of the Chebyshev polynomials of the first kind. They are often used as nodes in polynomial interpolation because the resulting interpolation polynomial ...
: : L \le \frac2\pi \log(n+1) + 1. We conclude again that Chebyshev nodes are a very good choice for polynomial interpolation, as the growth in ''n'' is exponential for equidistant nodes. However, those nodes are not optimal.


Convergence properties

It is natural to ask, for which classes of functions and for which interpolation nodes the sequence of interpolating polynomials converges to the interpolated function as ? Convergence may be understood in different ways, e.g. pointwise, uniform or in some integral norm. The situation is rather bad for equidistant nodes, in that uniform convergence is not even guaranteed for infinitely differentiable functions. One classical example, due to Carl Runge, is the function ''f''(''x'') = 1 / (1 + ''x''2) on the interval . The interpolation error grows without bound as . Another example is the function ''f''(''x'') = , ''x'', on the interval , for which the interpolating polynomials do not even converge pointwise except at the three points ''x'' = ±1, 0. One might think that better convergence properties may be obtained by choosing different interpolation nodes. The following result seems to give a rather encouraging answer: :Theorem. For any function ''f''(''x'') continuous on an interval 'a'',''b''there exists a table of nodes for which the sequence of interpolating polynomials p_n(x) converges to ''f''(''x'') uniformly on 'a'',''b'' Proof. It is clear that the sequence of polynomials of best approximation p^*_n(x) converges to ''f''(''x'') uniformly (due to the
Weierstrass approximation theorem Karl Theodor Wilhelm Weierstrass (german: link=no, Weierstraß ; 31 October 1815 – 19 February 1897) was a German mathematician often cited as the "father of modern analysis". Despite leaving university without a degree, he studied mathematics ...
). Now we have only to show that each p^*_n(x) may be obtained by means of interpolation on certain nodes. But this is true due to a special property of polynomials of best approximation known from the equioscillation theorem. Specifically, we know that such polynomials should intersect ''f''(''x'') at least times. Choosing the points of intersection as interpolation nodes we obtain the interpolating polynomial coinciding with the best approximation polynomial. The defect of this method, however, is that interpolation nodes should be calculated anew for each new function ''f''(''x''), but the algorithm is hard to be implemented numerically. Does there exist a single table of nodes for which the sequence of interpolating polynomials converge to any continuous function ''f''(''x'')? The answer is unfortunately negative: :Theorem. For any table of nodes there is a continuous function ''f''(''x'') on an interval 'a'', ''b''for which the sequence of interpolating polynomials diverges on 'a'',''b'' The proof essentially uses the lower bound estimation of the Lebesgue constant, which we defined above to be the operator norm of ''X''''n'' (where ''X''''n'' is the projection operator on Π''n''). Now we seek a table of nodes for which :\lim_ X_n f = f,\textf \in C( ,b. Due to the
Banach–Steinhaus theorem In mathematics, the uniform boundedness principle or Banach–Steinhaus theorem is one of the fundamental results in functional analysis. Together with the Hahn–Banach theorem and the open mapping theorem, it is considered one of the cornerst ...
, this is only possible when norms of ''X''''n'' are uniformly bounded, which cannot be true since we know that :\, X_n\, \geq \tfrac \log(n+1)+C. For example, if equidistant points are chosen as interpolation nodes, the function from
Runge's phenomenon In the mathematical field of numerical analysis, Runge's phenomenon () is a problem of oscillation at the edges of an interval that occurs when using polynomial interpolation with polynomials of high degree over a set of equispaced interpolation ...
demonstrates divergence of such interpolation. Note that this function is not only continuous but even infinitely differentiable on . For better
Chebyshev nodes In numerical analysis, Chebyshev nodes are specific real algebraic numbers, namely the roots of the Chebyshev polynomials of the first kind. They are often used as nodes in polynomial interpolation because the resulting interpolation polynomial ...
, however, such an example is much harder to find due to the following result: :Theorem. For every
absolutely continuous In calculus, absolute continuity is a smoothness property of functions that is stronger than continuity and uniform continuity. The notion of absolute continuity allows one to obtain generalizations of the relationship between the two central ope ...
function on the sequence of interpolating polynomials constructed on Chebyshev nodes converges to ''f''(''x'') uniformly. MR 18-32.


Related concepts

Runge's phenomenon In the mathematical field of numerical analysis, Runge's phenomenon () is a problem of oscillation at the edges of an interval that occurs when using polynomial interpolation with polynomials of high degree over a set of equispaced interpolation ...
shows that for high values of , the interpolation polynomial may oscillate wildly between the data points. This problem is commonly resolved by the use of
spline interpolation In the mathematical field of numerical analysis, spline interpolation is a form of interpolation where the interpolant is a special type of piecewise polynomial called a spline. That is, instead of fitting a single, high-degree polynomial to all ...
. Here, the interpolant is not a polynomial but a spline: a chain of several polynomials of a lower degree. Interpolation of
periodic function A periodic function is a function that repeats its values at regular intervals. For example, the trigonometric functions, which repeat at intervals of 2\pi radians, are periodic functions. Periodic functions are used throughout science to desc ...
s by
harmonic A harmonic is a wave with a frequency that is a positive integer multiple of the ''fundamental frequency'', the frequency of the original periodic signal, such as a sinusoidal wave. The original signal is also called the ''1st harmonic'', the ...
functions is accomplished by
Fourier transform A Fourier transform (FT) is a mathematical transform that decomposes functions into frequency components, which are represented by the output of the transform as a function of frequency. Most commonly functions of time or space are transformed, ...
. This can be seen as a form of polynomial interpolation with harmonic base functions, see
trigonometric interpolation In mathematics, trigonometric interpolation is interpolation with trigonometric polynomials. Interpolation is the process of finding a function which goes through some given data points. For trigonometric interpolation, this function has to be a tr ...
and
trigonometric polynomial In the mathematical subfields of numerical analysis and mathematical analysis, a trigonometric polynomial is a finite linear combination of functions sin(''nx'') and cos(''nx'') with ''n'' taking on the values of one or more natural numbers. The c ...
.
Hermite interpolation In numerical analysis, Hermite interpolation, named after Charles Hermite, is a method of polynomial interpolation, which generalizes Lagrange interpolation. Lagrange interpolation allows computing a polynomial of degree less than that takes the s ...
problems are those where not only the values of the polynomial ''p'' at the nodes are given, but also all derivatives up to a given order. This turns out to be equivalent to a system of simultaneous polynomial congruences, and may be solved by means of the
Chinese remainder theorem In mathematics, the Chinese remainder theorem states that if one knows the remainders of the Euclidean division of an integer ''n'' by several integers, then one can determine uniquely the remainder of the division of ''n'' by the product of thes ...
for polynomials.
Birkhoff interpolation In mathematics, Birkhoff interpolation is an extension of polynomial interpolation. It refers to the problem of finding a polynomial ''p'' of degree ''d'' such that certain derivatives have specified values at specified points: : p^(x_i) = y_i \qq ...
is a further generalization where only derivatives of some orders are prescribed, not necessarily all orders from 0 to a ''k''.
Collocation method In mathematics, a collocation method is a method for the numerical solution of ordinary differential equations, partial differential equations and integral equations. The idea is to choose a finite-dimensional space of candidate solutions (usually ...
s for the solution of differential and integral equations are based on polynomial interpolation. The technique of rational function modeling is a generalization that considers ratios of polynomial functions. At last,
multivariate interpolation In numerical analysis, multivariate interpolation is interpolation on functions of more than one variable; when the variates are spatial coordinates, it is also known as spatial interpolation. The function to be interpolated is known at given poi ...
for higher dimensions.


See also

*
Newton series A finite difference is a mathematical expression of the form . If a finite difference is divided by , one gets a difference quotient. The approximation of derivatives by finite differences plays a central role in finite difference methods for the ...
*
Polynomial regression In statistics, polynomial regression is a form of regression analysis in which the relationship between the independent variable ''x'' and the dependent variable ''y'' is modelled as an ''n''th degree polynomial in ''x''. Polynomial regression fi ...


Notes


References

* * *


Further reading

* * * * *


External links

* {{springer, title=Interpolation process, id=p/i051970
ALGLIB
has an implementations in C++ / C#.
GSL
has a polynomial interpolation code in C
Polynomial Interpolation demonstration
Interpolation Polynomials Articles containing proofs