
5.3. Encodings 105
Thus we see that the main part of the problem consists of checking whether a
given m-ary function over a finite field Fp is &close to some polynomial of degree
d. Since d is typically small compared to p, this problem is usually called the "Low
Degree Test". (Note that using Lagrange interpolation, every m-ary function over
Fp can be written as polynomial of total degree
mp;
thus the problem is only
interesting for d <
rap.)
Note that the problem is made especially difficult by the
constraints we have to obey: We are only allowed to use O(log n) random bits,
and to check only a constant number of segments of 7r0 of length O(poly(log n)).
Observe that such a segment might contain up to O(poly(logn)) symbols of
a codeword in C~,~ y, because coding a single symbol from the corresponding
alphabet Fp requires [logpem] bits, that is O(loglogn) bits.
On the other hand, the verifier is allowed to use an additional string 7rl containing
information that could help with the decision. How could this information be
used? The basic idea of the low degree test is to note that if ~ is indeed a
m-variate polynomial of degree d over Fp, then for each x, h E ~ the function
t ~ ~(x+th)
is a univariate polynomial of degree d. Since the set
{x+th] t
9 ]~p}
can be geometrically interpreted as the line
l~,h
with slope h through the point
x, we will call this function the restriction of ~ to the line
l~,h.
In fact, it can
be shown that the converse statement holds as well: If the restrictions of ~ to
all lines can be written as polynomials with degree at most d, then ~ has total
degree at most d as well (see Lemma 5.67).
We will now use this fact to fix our interpretation of ul. If we suppose that
as encoded by lr0 is indeed a degree d polynomial, then all restrictions of ~ to
some line
i~,h are
polynomials of degree d which can be represented by their
coefficients: d + 1 elements of Fp. The verifier shall now expect 7h to contain
a table T that has one element
T(x, h)
for each x, h 9 l~p such that
T(x, h)
consists of the coefficients
T(x,
h)i 9 Fp for 1 ~ i ~< d + 1 of the polynomials
d
P~,h(t) := ~-~ T(x, h),+l " t'.
i----0
The verifier will now try to ensure that those polynomials are indeed the restric-
tions of .~ to the lines
lx,h.
Note that the table T will he coded into the string
~1 in such a way that the coefficients
T(x,h)i, 1 <. i <. d +
1, will immediately
follow each other. Thus the lookup of one polynomial
T(x, h)
can be done by
reading one segment of length
O(dlogp)
= O(poly(logn)) of 7rl, which means
our verifier is allowed to use a constant number of such table entries.
The basic operation of the verifier will now be to check whether the table T does
indeed contain "correct" polynomials/5,,h that agree with the function ~. This
is done by choosing random x, h 9 ~ and t 9 Fp, and verifying that
= + th).
One such check obviously uses
O(m
log p) = O(log n) random bits, and queries
one value of ~ and one entry of T. As noted above, this does not violate our