Transformation Between Bases#

If an m-dimensional polynomial QΠA, where ANm, is given in one of the supported bases, you might want to transform it into another representation to leverage specific properties. For instance, canonical polynomials are familiar while Newton polynomials are more stable and accurate to evaluate.

On this page, we outline how the underlying theorem how such a transformation is carried out.

Theorem: Basis transformations#

Let A=Am,n,p,m,nN,p>0 be a complete multi-index set, PAΩ be unisolvent nodes, and QΠA be a polynomial. Then:

  • Lower triangular matrices NLA,LNAR|A|×|A| can be computed in O(|A|3) operations, such that

    LNANLA=I,NLAcnwt=clag,LNAclag=cnwt,

    where clag=(clag,α)αAR|A| and cnwt=(clag,α)αAR|A| are the Lagrange coefficients and the Newton coefficients of Q, respectively.

  • Upper triangular matrices CLA,CNAR|A|×|A| can be computed in O(|A|3) operations, such that

    CLAccan=clag,CNAccan=cnwt,

    where ccan=(ccan,α)αAR|A| denotes the canonical coefficients of Q.

Due to their triangular structure, the inverse matrices NCA=CNA1, LCA=CLA1 can be computed efficiently and accurately in O(|A|2) time, providing realizations of the inverse transformations.

Further relationships#

If the unisolvent nodes PA are fixed, all matrices can be precomputed. The columns of NLA are given by evaluating the Newton polynomials on the unisolvent nodes, that is,

NLA=(Nα(pβ))β,αAR|A|×|A|.

Thus, the above theorem enables both efficient and numerically accurate computations. Conversely, the Multidimensional Divided Difference Scheme (DDS) can be used to interpolate the polynomial in the Lagrange basis Lα=βAdα,βNβ, αA expressed in the Newton basis. This process yields the columns of LNA, that is,

LNA=(dα,β)β,αAR|A|×|A|.

With respect to the canonical basis,

CLA=(Ψcan,α(pβ))α,βAR|A|×|A|

coincides with the classic Vandermonde matrix[1].

Moreover, the columns of CNA are given by applying DDS to the canonical basis polynomial Ψcan,α evaluated at the unisolvent nodes.

Triangular matrices

All matrices presented above are of recursive triangular sparse structure, which enables numerically accurate precomputation of the sub-matrices and helps avoid storage issues.

Consequently, the explicit structure of the matrices can be condensed into barycentric transformations, which perform much faster than classic matrix multiplication. This results in more efficient polynomial interpolation and evaluation. A preliminary implementation of these fast transformations is already utilized in Minterpy.

References