Now, let’s define a mapping from the -degree polynomial ring to the -dimensional vector space, such that an input polynomial’s list of values evaluated at distinct coordinates (e.g., ) form the mapping’s output vector. Technically, is defined as:
Now, we will explain why the mapping is isomorphic, which means that is a bijective one-to-one mapping from to and the algebraic operations of the mapped elements preserve correctness with homomorphism.
Bijective: In the -degree polynomial ring, a list of values evaluated at some statically chosen distinct coordinates defines a unique polynomial, because algebraically there exists only one -degree (or a lesser degree) polynomial that passes each given set of distinct coordinates. We proved this in Lagrange Polynomial Interpolation (Theorem A-15 in §A-15).
Homomorphic: The homomorphism of the mapping on the operations means that the following two relationships hold:
# is Hadamard vector multiplication (Summary A-10.1)
To prove our mapping’s homomorphism, let’s denote the input polynomials , , and their -mapped output vectors as follows:
Given the above setup, we can see that preserves homomorphism on the operation as follows:
Also, we can see that preservers homomorphism on the operation as follows:
In summary, preserves the following homomorphism:
However, for , we need further reasoning to justify that this relation holds in polynomial rings, which is explained below.
Polynomial Ring Reduction: Suppose that we did not have the polynomial ring setup . Then, if we multiply and , then may become a new polynomial whose degree is higher than . This higher-degree polynomial would still decode into the expected correct vector. Suppose the following:
Then, the following is true:
As shown above, even if results in a polynomial with a degree higher than , it can be decoded into the expected correct vector. However, the mapping loses the property of isomorphism between a polynomial and a vector, because if a polynomial’s degree is higher than , then there can be more than 1 polynomial that passes through the given distinct coordinates: . This is a problem, because if the mapping supports only polynomial-to-vector mappings and not vector-to-polynomial mappings, then we cannot convert vectors into polynomials in the first place and do isomorphic computations. Another minor issue is that if the polynomial degree term is higher than , then the computation overhead of decoding (i.e., polynomial evaluation) becomes larger than before.
To resolve these two minor issues, we let the distinct coordinates of evaluation to be the solutions of the polynomial ring modulo (where is some power of 2), and reduce to a new polynomial modulo whose degree is at most . Let , and is the reduced polynomial such that for some quotient polynomial . Then, as illustrated in Summary A-5.1.2 (§A-5.1.2), and evaluate to the same value if they are evaluated at the roots of (by zeroing out the term). Therefore, if we let the distinct evaluating points to be the roots of , then we can ensure that the decoded vector of is identical to that of which we expect. Therefore, we can replace the higher-degree polynomial with the reduced polynomial and continue with any further polynomial additions or multiplications by using . Also, by applying polynomial ring reduction, we can enhance the computational efficiency of polynomial addition/multiplication as well as preserve the isomorphism of the mapping, and therefore we can freely convert between vectors & polynomials and do additions/multiplications.
For applying this polynomial ring reduction, the polynomial modulus can be any polynomial as far as it has at least distinct roots. In practice, we often choose as the polynomial ring modulus, which is the -th cyclotomic polynomial (§A-8.1). The reason why we let the polynomial ring modulus be a cyclotomic polynomial (especially the -th cyclotomic polynomial, ) is because its distinct roots are well-defined (i.e., primitive -th roots of unity) and thus can be quickly computed even in the case is large.
Polynomial Coefficient Modulo Reduction: In addition, we often reduce the polynomial coefficients based on some modulus , to keep the size of the coefficients lower than a certain limit for the purpose of computational efficiency. Suppose two polynomials and have congruent coefficients modulo as follows:
Then, their evaluated value and for any is guaranteed to be congruent modulo , as shown below:
Summary: Since is bijective and homomorphic, is an isomorphic mapping between the -degree polynomial ring and the -dimensional vector space .
To isomorphically evaluate a polynomial in into an -dimensional vector, we need to evaluate the polynomial at distinct roots of . However, does not have distinct roots for all combinations of (degree, modulus) . For example, if and , then for any possible values of . Therefore, our goal is to find a satisfactory given a fixed such that distinct roots of exist, in order to use the isomorphic mapping.
We start with two constraints: (1) we choose only such that is a prime number ; (2) is some multiple of (i.e., for some integer ).
We learned from Fermat’s Little Theorem in Theorem A-4.2.4 (§A-4.2) the following: if and only if and are co-prime. This means that if is a prime, then for all (i.e., without ). Suppose is the generator of whose powered values generate all elements of . Then, , and . Since for some , . Then, . However, since , for all such that , . In other words, for all such that , . Thus, .
Let . Since , . In other words, . Now, can be only 1 or -1. The reason is that in the relation , can be mathematically only or . If we substitute , then can be only or . But , thus cannot be 1 (because and 1 is smaller than the order of : ). Thus, can be only . If , then is the root of , because .
In conclusion, given a cyclotomic polynomial , if we choose a prime such that for some integer , then one root of is: .
Once we have found one root of , then we can derive all distinct roots of . Suppose is one root of . Then, we derive the following:
While , , because if so, , which contradicts the fact that is a root of . Therefore, .
Now, we derive the remaining distinct roots of as follows:
Note that are all distinct values in , because . Thus, are distinct roots of . At the same time, since these are the roots of the cyclotomic polynomial , these are distinct primitive -th roots of unity.
We summarize our findings as follows:
Theorem A-10.5 Isomorphism between Polynomials and Vectors over Integer (Ring)
Suppose we have an -degree polynomial ring where is an -degree polynomial having distinct roots , and we have an -dimensional modulo vector space . We define mapping between this polynomial ring and vector space as follows:
Then, preserves isomorphism over the operations:
If the -degree polynomial has a fewer number of roots than , then isomorphism between the vectors and polynomials over the operations holds without modulo as follows: