In the previous chapter on the Inverse Number Theoretic Transform, we claimed that the inverse of the Vandermonde matrix for a primitive -th root of unity is also a Vandermonde matrix, given by . We now prove this fact.
Less mathematically inclined readers can skip this chapter without any loss. It is not necessary to understand the INTT, provided they accept that our proposed inverse matrix is valid.
The Vandermonde matrix is defined as a matrix where each row is a geometric progression.
- The first row is the geometric progression of from to .
- The second row is the geometric progression of from to .
- This continues until the last row, which is the geometric progression of from to .
Thus, each entry in row and column of is given by
Consider a polynomial of degree at most , given by
Let be the set consisting of the -th roots of unity generated by a primitive -th root:
The vector of evaluations of on the set ,
can be obtained by multiplying the coefficient vector by :
\mathbf{y}= V(\omega) \cdot \mathbf{a}\
where are the coefficients of the polynomial .
Each row on the left-hand side is the inner product of the -th row of the Vandermonde matrix and the vector . For instance, the -th element is
Thus, the evaluations can be written as
for .
Note on indices: In the equation above, we have two indices. The index indicates which evaluation we are dealing with, and it can take the values . This means that the formula above represents not just one equation, but equations, one for each value of . For instance, the notation above is a shorthand for
The index in and is a summation index and therefore “consumed” by the sum. Because it is consumed by the sum, it does not appear on the left-hand side of the equation. The choice of the indices and is arbitrary; we could have used or any other letters. In general, for vector indices, it is common to use letters from the middle of the alphabet.
Now we want to find the inverse relation to obtain the vector from the vector . In other words, we want to calculate , where is the inverse of .
Our claim is that the inverse of the Vandermonde matrix is also a Vandermonde matrix, given by .
To be completely clear, our claim is that
where is a primitive -th root of unity.
If the claim is correct, the vector can be calculated as follows:
The component is the inner product between the -th row of and the vector :
This operation can be written as the following sum:
for .
For pedagogical reasons, we will prove our claim - that the inverse of the Vandermonde matrix is another Vandermonde matrix, given by - in two different ways.
First, we will show that the matrix multiplication of and yields the identity matrix , that is,
Then, we will show that if we first multiply by to obtain , and then multiply by , we recover .
These two proofs are essentially the same, just expressed in two different ways.
Proof that
We will prove that the matrix multiplication of with yields the identity matrix.
The proof relies on the orthogonality property of the roots of unity, which is expressed as a summation. Therefore, we first write the matrix multiplication in summation form so that we can use this orthogonality property.
The multiplication in index notation
Recall that the matrix entry of in row and column is given by
Note: The numbering of rows and columns here is considered from , not .
For example, the entry in row and column of is as highlighted below in red:
Also, the matrix entry of in row and column is given by
For example, the entry in row and column of is , as highlighted below:
Therefore, when the two matrices and are multiplied, the resulting element in row and column is obtained by multiplying row of (red) with column of (blue):
Each entry of the matrix , which we denote by , is then given by
Now we need to show that the entries are equal to those of the identity matrix. To do this, we use the orthogonality of the roots of unity.
Recall: Orthogonality of roots of unity
In the chapter on the orthogonality of roots of unity, we showed that
To recap, the formula above gives us the result of the summation in two cases: (1) when and (2) when . We will use both cases below.
Case 1: When
We want to calculate
when . The orthogonality of the roots of unity says that, when ,
Using this result for , we have that
Thus, for the diagonal terms (such as ), we have
Case 2: When
Now we want to calculate
when . The orthogonality of the roots of unity says that, when ,
Using this result for , we have
Therefore, for any non-diagonal terms (such as , we have .
The matrix
Taking into account cases (1) and (2) above, we have that the matrix is
which is exactly the identity matrix . Thus, the matrices and are inverses of each other, because
Matrix multiplication of with vector yields vector back
Another way to show that is the inverse of is to show that it inverts the latter.
That is, if we first apply to to obtain ,
and then apply to , we recover :
That is exactly what we will show.
The first transformation takes the vector of coefficients to the vector of evaluations via the following matrix operation:
As we have already seen, this matrix operation can be written using indices:
Now we perform a second transformation on the vector , which results in a vector :
If we can show that , then the second transformation is the inverse of the first.
The matrix operation above can be written in index form as
Now substitute the expression for . Recall that
where is just an index that we can replace for , or any other letter. Thus, replacing in the result for , we have
Rewriting as a double sum:
The term in parentheses is exactly the orthogonality relation:
To continue the proof, we could study case (1), where , and case (2), where , but we will proceed differently. We will introduce a symbol called the Kronecker delta.
The Kronecker delta, , is a symbol with 2 indices, and in this case, which is when and otherwise:
The Kronecker delta can be understood as the entries of the identity matrix.
Using the Kronecker delta, we can write the orthogonality property as
Using the Kronecker delta in the expression for , we have
Expanding the summation, the expression above can be written as
By the Kronecker delta property, only one term in the summation is nonzero. For example, for , only is nonzero. Thus, we have
This holds true for any , therefore we have that
for any .
This shows that the transformation is the inverse of the transformation .
This article is part of a series on the Number Theoretic Transform in our ZK Book