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). Numerical analysis ...
, polynomial interpolation is the
interpolation
In the mathematical
Mathematics (from Greek
Greek may refer to:
Greece
Anything of, from, or related to Greece
Greece ( el, Ελλάδα, , ), officially the Hellenic Republic, is a country located in Southeast Europe. Its populatio ...

of a given
data set
A data set (or dataset) is a collection of data
Data (; ) are individual facts, statistics, or items of information, often numeric. In a more technical sense, data are a set of values of qualitative property, qualitative or quantity, quantit ...
by the
polynomial
In mathematics
Mathematics (from Ancient Greek, Greek: ) includes the study of such topics as quantity (number theory), mathematical structure, structure (algebra), space (geometry), and calculus, change (mathematical analysis, analysis). I ...

of lowest possible degree that passes through the points of the dataset.
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
A written language is the representation of a spoken or gestural language
A language is a structured system of communication used by humans, including ...

, given a few points. A relevant application is the evaluation of the
natural logarithm
The natural logarithm of a number is its logarithm
In mathematics
Mathematics (from Greek: ) includes the study of such topics as numbers ( and ), formulas and related structures (), shapes and spaces in which they are contained ( ...
and
trigonometric function
In mathematics
Mathematics (from Ancient Greek, Greek: ) includes the study of such topics as quantity (number theory), mathematical structure, structure (algebra), space (geometry), and calculus, change (mathematical analysis, analysis). I ...

s: pick a few known data points, create a
lookup table
In computer science, a lookup table (LUT) is an array data structure, array that replaces runtime (program lifecycle phase), runtime computation with a simpler array indexing operation. The process is termed as "direct addressing" and LUTs differ fr ...
, 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
Analysis is the process of breaking a complex topic or substance into smaller parts in order to gain a better understanding of it. The technique has been applied in the study of mathematics
Mathematics (from Ancient Greek, ...
and
numerical ordinary differential equations
Numerical may refer to:
* Number
A number is a mathematical object used to counting, count, measurement, measure, and nominal number, label. The original examples are the natural numbers 1, 2, 3, 4, and so forth. Numbers can be represented in l ...
and
Secure Multi Party Computation,
Secret Sharing
Secret sharing (also called secret splitting) refers to methods for distributing a '' secret'' among a group of participants, each of whom is allocated a ''share'' of the secret. The secret can be reconstructed only when a sufficient number, of p ...
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 reduces the ...

and
Toom–Cook multiplicationToom–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 integer ...
, 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.
Definition
Given a set of data points where no two are the same, a polynomial
is said to ''interpolate'' the data if
for each
.
Interpolation theorem
Given
distinct points
and corresponding values
, there exists a unique polynomial of degree at most
that interpolates the data
.
Proof
Consider the Lagrange basis functions given by
:
Notice that
is a polynomial of degree
. Furthermore, for each
we have
, where
is the
Kronecker delta
In mathematics
Mathematics (from Greek: ) includes the study of such topics as numbers (arithmetic and number theory), formulas and related structures (algebra), shapes and spaces in which they are contained (geometry), and quantities and ...
. It follows that the linear combination
:
is an interpolating polynomial of degree
.
To prove uniqueness, assume that there exists another interpolating polynomial
of degree at most
. Since
for all
, it follows that the polynomial
has
distinct zeros. However,
is of degree at most
and, by the
fundamental theorem of algebra
The fundamental theorem of algebra states that every non- constant single-variable polynomial
In mathematics
Mathematics (from Ancient Greek, Greek: ) includes the study of such topics as quantity (number theory), mathematical structure, s ...
, can have at most
zeros; therefore,
.
Corollary
An interesting corollary to the interpolation theorem is that if
is a polynomial of degree at most
, then the interpolating polynomial of
at
distinct points is
itself.
Unisolvence theorem
Given a set of data points where no two are the same, one is looking for a polynomial of degree at most with the property
:
The
unisolvence theorem states that such a polynomial ''p'' exists and is unique, and can be proved by the
Vandermonde matrixIn linear algebra, a Vandermonde matrix, named after Alexandre-Théophile Vandermonde, is a matrix (math), matrix with the terms of a geometric progression in each row, i.e., an matrix
:V=\begin
1 & x_1 & x_1^2 & \dots & x_1^\\
1 & x_2 & x_2^2 & \ ...
, as described below.
The theorem states that for interpolation nodes , polynomial interpolation defines a linear
bijection
In mathematics
Mathematics (from Greek: ) includes the study of such topics as numbers (arithmetic and number theory), formulas and related structures (algebra), shapes and spaces in which they are contained (geometry), and quantities and ...

:
where Π
''n'' is the
vector space
In mathematics
Mathematics (from Greek: ) includes the study of such topics as numbers (arithmetic and number theory), formulas and related structures (algebra), shapes and spaces in which they are contained (geometry), and quantities a ...
of polynomials (defined on any interval containing the nodes) of degree at most .
Constructing the interpolation polynomial

Suppose that the interpolation polynomial is in the form
:
The statement that ''p'' interpolates the data points means that
:
If we substitute equation (1) in here, we get a
system of linear equations
In mathematics
Mathematics (from Greek: ) includes the study of such topics as numbers (arithmetic and number theory), formulas and related structures (algebra), shapes and spaces in which they are contained (geometry), and quantities and ...
in the coefficients . The system in matrix-vector form reads 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 arithmetic, elementary Operation (mathematics), mathematical operations ...

:
:
We have to solve this system for to construct the interpolant ''p''(''x''). The matrix on the left is commonly referred to as a
Vandermonde matrixIn linear algebra, a Vandermonde matrix, named after Alexandre-Théophile Vandermonde, is a matrix (math), matrix with the terms of a geometric progression in each row, i.e., an matrix
:V=\begin
1 & x_1 & x_1^2 & \dots & x_1^\\
1 & x_2 & x_2^2 & \ ...
.
The
condition number In the field of 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 discre ...
of the Vandermonde matrix may be large, causing large errors when computing the coefficients if the system of equations is solved using
Gaussian elimination.
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 above.
Alternatively, we may write down the polynomial immediately in terms of
Lagrange polynomial
Image:Lagrange polynomial.svg, upright=2, This image shows, for four points ((−9, 5), (−4, 2), (−1, −2), (7, 9)), the (cubic) interpolation polynomial ''L''(''x'') (dashed, black), which is the sum of the ...

s:
:
For matrix arguments, this formula is called
Sylvester's formulaIn matrix theory
In mathematics
Mathematics (from Ancient Greek, Greek: ) includes the study of such topics as quantity (number theory), mathematical structure, structure (algebra), space (geometry), and calculus, change (mathematical analy ...
and the matrix-valued Lagrange polynomials are the
Frobenius covariants.
Uniqueness of the interpolating polynomial
Proof 1
Suppose we interpolate through data points with an at-most degree polynomial ''p''(''x'') (we need at least datapoints or else the polynomial cannot be fully solved for). Suppose also another polynomial exists also of degree at most that also interpolates the points; call it ''q''(''x'').
Consider
. We know,
# ''r''(''x'') is a polynomial
# ''r''(''x'') has degree at most , since ''p''(''x'') and ''q''(''x'') are no higher than this and we are just subtracting them.
# At the data points,
. Therefore, ''r''(''x'') has roots.
But ''r''(''x'') is a polynomial of degree . It has one root too many. Formally, if ''r''(''x'') is any non-zero polynomial, it must be writable as
, for some constant ''A''. By distributivity, the ''xs multiply together to give leading term
, i.e. one degree higher than the maximum we set. So the only way ''r''(''x'') can exist is if , or equivalently, .
:
So ''q''(''x'') (which could be any polynomial, so long as it interpolates the points) is identical with ''p''(''x''), and ''q''(''x'') is unique.
Proof 2
Given the
Vandermonde matrixIn linear algebra, a Vandermonde matrix, named after Alexandre-Théophile Vandermonde, is a matrix (math), matrix with the terms of a geometric progression in each row, i.e., an matrix
:V=\begin
1 & x_1 & x_1^2 & \dots & x_1^\\
1 & x_2 & x_2^2 & \ ...
used above to construct the interpolant, we can set up the system
:
To prove that V is
nonsingularIn linear algebra, an ''n''-by-''n'' square matrix
In mathematics
Mathematics (from Ancient Greek, Greek: ) includes the study of such topics as quantity (number theory), mathematical structure, structure (algebra), space (geometry), and calc ...
we use the Vandermonde determinant formula:
:
since the points are distinct, the
determinant
In mathematics
Mathematics (from Greek: ) includes the study of such topics as numbers (arithmetic and number theory), formulas and related structures (algebra), shapes and spaces in which they are contained (geometry), and quantities and t ...

can't be zero as
is never zero, therefore ''V'' is nonsingular and the system has a unique solution.
Either way this means that no matter what method we use to do our interpolation: direct,
Lagrange
Joseph-Louis Lagrange (born Giuseppe Luigi LagrangiaRoman_Forum.html" ;"title="Curia Julia in the Roman Forum">Curia Julia in the Roman Forum
A senate is a deliberative assembly, often the upper house or Debating chamber, chamber of a bicame ...

etc., (assuming we can do all our calculations perfectly) we will always get the same polynomial.
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
In mathematics
Mathematics (from Ancient Greek, Greek: ) includes the study of such topics as quantity (number theory), mathematical structure, structure (algebra), space (geometry), and calculus, change (mathematical analysis, analysis). It h ...
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
In mathematics
Mathematics (from Ancient Greek, Greek: ) includes the study of such topics as quantity (number theory), mathematical structure, structure (algebra), space (geometry), and calculus, change (mathematical analysis, analysis). It h ...
.
One method is to write the interpolation polynomial in the
Newton form and use the method of
divided differences to construct the coefficients, e.g.
Neville's algorithm In mathematics, Neville's algorithm is an algorithm used for polynomial interpolation
In numerical analysis
(c. 1800–1600 BC) with annotations. The approximation of the square root of 2 is four sexagesimal figures, which is about six decimal fi ...
. 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
A mathematician is someone who uses an extensive knowledge of mathematics
Mathematics (from Ancient Greek, G ...
by
Bernstein
Bernstein is a common surname in the German language
The German language (, ) is a West Germanic language mainly spoken in Central Europe. It is the most widely spoken and official or co-official language in Germany, Austria, Switzerland, Li ...
and has gained great importance in computer graphics in the form of
Bézier curveBézier can refer to:
*Pierre Bézier, French engineer and creator of Bézier curves
*Bézier curve
*Bézier triangle
*Bézier spline (disambiguation)
*Bézier surface
* The town of Béziers in France
* AS Béziers Hérault, a French rugby union tea ...

s.
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
data points
where each data point is a (position, value) pair and where no two positions
are the same, the interpolation polynomial in the Lagrange form is a
linear combination
In mathematics, a linear combination is an Expression (mathematics), expression constructed from a Set (mathematics), set of terms by multiplying each term by a constant and adding the results (e.g. a linear combination of ''x'' and ''y'' would be ...
:
of the given values
with each coefficient
given by evaluating the corresponding Lagrange basis polynomial using the given
positions
.
:
Each coefficient
in the linear combination depends on the given positions
and the desired position
, but not on the given values
. For each coefficient, inserting the values of the given positions
and simplifying yields an expression
, which depends only on
. Thus the same coefficient expressions
can be used in a polynomial interpolation of a given second set of
data points
at the same given positions
, where the second given values
differ from the first given values
. Using the same coefficient expressions
as for the first set of data points, the interpolation polynomial of the second set of data points is the linear combination
:
For each coefficient
in the linear combination, the expression resulting from the Lagrange basis polynomial
only depends on the relative spaces between the given positions, not on the individual value of any position. Thus the same coefficient expressions
can be used in a polynomial interpolation of a given third set of
data points
:
where each position
is related to the corresponding position
in the first set by
and the desired positions are related by
, for a constant scaling factor ''a'' and a constant shift ''b'' for all positions. Using the same coefficient expressions
as for the first set of data points, the interpolation polynomial of the third set of data points is the linear combination
:
In many applications of polynomial interpolation, the given set of
data points is at equally spaced positions. In this case, it can be convenient to define the ''x''-axis of the positions such that
. For example, a given set of 3 equally-spaced data points
is then
.
The interpolation polynomial in the Lagrange form is the
linear combination
In mathematics, a linear combination is an Expression (mathematics), expression constructed from a Set (mathematics), set of terms by multiplying each term by a constant and adding the results (e.g. a linear combination of ''x'' and ''y'' would be ...
:
This quadratic interpolation is valid for any position ''x'', near or far from the given positions. So, given 3 equally-spaced data points at
defining a quadratic polynomial, at an example desired position
, the interpolated value after simplification is given by
This is a quadratic interpolation typically used in the Multigrid method. Again given 3 equally-spaced data points at
defining a quadratic polynomial, at the next equally spaced position
, the interpolated value after simplification is given by
:
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
values at equally spaced positions has a
th difference exactly equal to 0. The element ''s''
''d+1'' of the
Binomial transform In combinatorics
Combinatorics is an area of mathematics
Mathematics (from Greek: ) includes the study of such topics as numbers (arithmetic and number theory), formulas and related structures (algebra), shapes and spaces in which they ar ...
is such a
th difference. This area is surveyed here. The
binomial transform In combinatorics
Combinatorics is an area of mathematics
Mathematics (from Greek: ) includes the study of such topics as numbers (arithmetic and number theory), formulas and related structures (algebra), shapes and spaces in which they ar ...
, ''T'', of a sequence of values , is the sequence defined by
:
Ignoring the sign term
, the
coefficients of the element ''s''
''n'' are the respective
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
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
. Thus for any polynomial of degree ''d'' or less, any sequence of
values at equally spaced positions has a
linear combination
In mathematics, a linear combination is an Expression (mathematics), expression constructed from a Set (mathematics), set of terms by multiplying each term by a constant and adding the results (e.g. a linear combination of ''x'' and ''y'' would be ...
result of 0, when using the
elements of row ''d'' as the corresponding linear coefficients.
For example, 4 equally spaced data points of a quadratic polynomial obey the
linear equation
In mathematics, a linear equation is an equation that may be put in the form
:a_1x_1+\cdots +a_nx_n+b=0,
where x_1, \ldots, x_n are the variable (mathematics), variables (or unknown (mathematics), unknowns), and b, a_1, \ldots, a_n are the coeffi ...

given by row
of the BTC triangle.
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
:
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
or higher. First, the row
spans the given and desired data points
with the linear equation
:
Second, the unwanted data point
is replaced by an expression in terms of wanted data points. The row
provides a linear equation with a term
, which results in a term
by multiplying both sides of the linear equation by 4.
Third, the above two linear equations are added to yield a linear equation equivalent to the above quadratic interpolation for
.
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
. When adding vectors with various subscript values, the lowest subscript applies for the resulting vector. So, starting with the vector of row
and the vector of row
of the BTC triangle, the above quadratic interpolation for
is derived by the vector calculation
:
Similarly, the cubic interpolation typical in the
Multigrid methodIn 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 analysis, multiresolution methods, very ...
,
:
can be derived by a vector calculation starting with the vector of row
and the vector of row
of the BTC triangle.
:
Interpolation error
When interpolating a given function ''f'' by a polynomial of degree at the nodes ''x''
0,...,''x''
''n'' we get the error
:
where
: