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., ) forms 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 it preserves the algebraic operations (i.e., is a homomorphism for addition and multiplication).
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 through 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 preserves 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 computational overhead of decoding (i.e., polynomial evaluation) becomes larger than before.
To resolve these two minor issues, we let the distinct coordinates of evaluation 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 be 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 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 using . Also, by applying polynomial ring reduction, we can enhance the computational efficiency of polynomial addition and multiplication, as well as preserve the isomorphism of the mapping. Therefore, we can freely convert between vectors & polynomials and perform additions and multiplications.
For applying this polynomial ring reduction, the polynomial modulus can be any polynomial as long 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 we let the polynomial ring modulus be a cyclotomic polynomial (especially the -th cyclotomic polynomial, ) is that its distinct roots are well-defined (i.e., primitive -th roots of unity) and thus can be quickly computed even when 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) choose to be a prime number; (2) ensure is a multiple of .
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 an -dimensional vector space (integers mod ) with vector .
Then, preserves isomorphism over the operations: