To get a clearer view of interpolation, we can write out the relationship between two representations of polynomial A(x)
The matrix in the middle, M, is a Vandermonde matrix such that:
If x0,…,xn−1are distinct numbers, then M is invertible
and Vandermonde matrices also have the distinction of being quicker to invert O(n2) than more general matrices O(n3)
So…
In FFT, since all x0,…,xn−1 are n-th root of unity, we can write our matrix M(ω) as
Notice that for Mn(ω), its (j,k) th entry (start counting from 0) is ωjk
The FFT is thus a change of basis, a rigid rotation. The inverse of M is the opposite rotation, from the Fourier basis back into the standard basis. When we write out the orthogonality condition precisely, we will be able to read off this inverse transformation with ease:
But notice ω−1 is also an n-th root of unity, an therefore interpolation is basically just an FFT operation but with ω replaced by ω−1
Lemma 1: The columns of matrix M are orthogonal to each other
Take the inner product of any columns j and k of matrix M
Its a geometric series with first term 1, last term ω(n−1)(j−k), ratio ω(j−k), converges to
Which evalutes to 0 when j=k, and evalutes to n when j=k
Therefore
the (j,k)th entry of M∗ is the complex conjugate of the corresponding entry of M, ω−jk, therefore M = Mn(ω−1)