Sums of low-degree polynomials over the units of a finite field #
Let K be a finite field with q elements. A polynomial of degree less than q - 1 sums to zero
over K, so its sum over the units Kˣ is minus its value at 0. Restricting a multivariate
polynomial to the line u ↦ u • τ + x turns this into the identity that removes the masks τ
from masked evaluations of a low-degree polynomial: the sum over all units u of
p (u • τ + x) is -p x.
This is the algebraic core of the Cook–Mertz Tree Evaluation algorithm, there phrased with powers
of a primitive root of unity of order q - 1, which run through the units.
Main results #
FiniteField.sum_eval_eq_zero_of_natDegree_lt: a polynomial of degree less thanq - 1sums to zero overK.FiniteField.sum_units_eval: its sum overKˣis minus its value at0.FiniteField.natDegree_eval₂_line_le: restricting a multivariate polynomial to a line gives a univariate polynomial of degree at most the total degree.FiniteField.eval_eval₂_line: evaluating the univariate line restriction attevaluates the multivariate polynomial att • τ + x.FiniteField.sum_units_eval_mul_add: for a multivariate polynomial of total degree less thanq - 1,∑ u : Kˣ, p (u • τ + x) = -p x.
References #
- J. Cook and I. Mertz, Tree Evaluation is in Space O(log n · log log n), Corollary 9 and Lemma 12.
- O. Goldreich, On the Cook–Mertz Tree Evaluation procedure, Equation (3).
A polynomial of degree less than q - 1 sums to zero over the field.
A polynomial of degree less than q - 1 sums over the units to minus its value at 0.
Restricting a multivariate polynomial to the line t ↦ t • τ + x gives a univariate
polynomial of degree at most the total degree.
Evaluating the univariate restriction of p to the line t ↦ t • τ + x at t evaluates p
at i ↦ t * τ i + x i.
Unmasking low-degree polynomials. If p has total degree less than q - 1, then summing
the masked evaluations p (u • τ + x) over all units u gives -p x, for every mask τ.