Context

Notation

Ring configuration

We choose the following Goldilocks ring configurations:

$$ \mathcal{R}_p = \mathbb{Z}_p[X]/(X^{24}-X^{12}+1)\\

\mathcal{R}p = \prod{j = 1}^{8}\mathbb{Z}_p[X]/(X^{3} - \zeta_j)\,\, \text{and}\,\, \zeta_j = \omega^i\,\,\text{a root of unity},\\\text{where}:\, i \in \mathbb{Z}_Z^* = \{i: \text{gcd}(i, Z) = 1\} \,\\\text{and}\, p=2^{64}-2^{32}+1 $$

This configuration allows for doing NTT multiplications, i.e. element wise degree 3 extension field multiplications. This was chosen over Starkprime since its modulus is too big to compare in performance, and over Babybear since it result in degree 9 extension field multiplications for security of the ring.