This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

On the degree of polynomials computing square roots mod pp

Kiran Kedlaya Department of Mathematics, University of California San Diego.
Research supported by NSF grant DMS-2053473, the UC San Diego Warschawski Professorship, the Simons Fellows in Mathematics program of the Simons Foundation (2023–24 academic year), and the School of Mathematics of the Institute for Advanced Study (2023–24 academic year).
Email: [email protected]
   Swastik Kopparty Department of Mathematics and Department of Computer Science, University of Toronto.
Research supported by an NSERC Discovery Grant.
Email: [email protected]
Abstract

For an odd prime pp, we say f(X)𝔽p[X]f(X)\in{\mathbb{F}}_{p}[X] computes square roots in 𝔽p\mathbb{F}_{p} if, for all nonzero perfect squares a𝔽pa\in\mathbb{F}_{p}, we have f(a)2=af(a)^{2}=a.

When p3mod4p\equiv 3\mod 4, it is well known that f(X)=X(p+1)/4f(X)=X^{(p+1)/4} computes square roots. This degree is surprisingly low (and in fact lowest possible), since we have specified (p1)/2(p-1)/2 evaluations (up to sign) of the polynomial f(X)f(X). On the other hand, for p1mod4p\equiv 1\mod 4 there was previously no nontrivial bound known on the lowest degree of a polynomial computing square roots in 𝔽p\mathbb{F}_{p}.

We show that for all p1mod4p\equiv 1\mod 4, the degree of a polynomial computing square roots has degree at least p/3p/3. Our main new ingredient is a general lemma which may be of independent interest: powers of a low degree polynomial cannot have too many consecutive zero coefficients. The proof method also yields a robust version: any polynomial that computes square roots for 99% of the squares also has degree almost p/3p/3.

In the other direction, Agou, Deliglése, and Nicolas [ADN03] showed that for infinitely many p1mod4p\equiv 1\mod 4, the degree of a polynomial computing square roots can be as small as 3p/83p/8.

1 Introduction

Let pp be an odd prime, and let 𝔽p\mathbb{F}_{p} be the finite field with pp elements.

We say f(X)𝔽p[X]f(X)\in\mathbb{F}_{p}[X] computes square roots in 𝔽p\mathbb{F}_{p}, if for all nonzero perfect squares a𝔽pa\in\mathbb{F}_{p}, we have:

f(a)2=a.f(a)^{2}=a.

In other words, for each nonzero perfect square a𝔽pa\in\mathbb{F}_{p}, f(a)f(a) is one of its two square roots.

When p3mod4p\equiv 3\mod 4, then it is well known that f(X)=X(p+1)/4f(X)=X^{(p+1)/4} computes square roots. This degree is surprisingly low, since we are essentially interpolating a polynomial from (p1)/2(p-1)/2 evaluations (where the evaluations are specified up to sign). We are interested in whether there is a similar phenomenon for p1mod4p\equiv 1\mod 4.

Concretely, we study the question: what is the smallest degree of a polynomial that computes square roots? Despite being a basic and natural question, there were no nontrivial bounds known for this question for the case of p1mod4p\equiv 1\mod 4.

There is a very simple argument111This argument works for all pp, and thus we get that X(p+1)/4X^{(p+1)/4} is the lowest degree polynomial computing square roots for p3mod4p\equiv 3\mod 4. that shows that the degree of such a polynomial f(X)f(X) must be at least p14\frac{p-1}{4}; indeed, the nonzero polynomial f(X)2Xf(X)^{2}-X vanishes at all the p12\frac{p-1}{2} nonzero perfect squares in 𝔽p\mathbb{F}_{p}.

Our main result is that, unlike the case of p3mod4p\equiv 3\mod 4, the degree of any polynomial computing square roots in the case of p1mod4p\equiv 1\mod 4 must be significantly higher, about 13p\frac{1}{3}\cdot p.

Theorem 1.1.

Let p1mod4p\equiv 1\mod 4. Then any polynomial that computes square roots in 𝔽p\mathbb{F}_{p} has degree at least p13\frac{p-1}{3}.

Our proof is based on expressing the property of computing square roots as a polynomial relation (involving some unknown polynomials), and then eliminating the unknown polynomials through a combination of taking derivatives and truncations. Abstracting out the main steps, we get a general lemma (a special case of the Mason-Stothers abc-theorem) which may be of independent interest: the powers of a low-degree polynomial cannot have too many consecutive zero coefficients.

How does pmod4p\mod 4 play a role in the proof? Our proof ends up showing that for all pp, any polynomial f(X)f(X) of degree less than p3\frac{p}{3} that computes square roots must have f(X)2=X(p+1)/2f(X)^{2}=X^{(p+1)/2} (as a polynomial identity), and this is not possible if p1mod4p\equiv 1\mod 4.

A robust version

The degree of a polynomial computing a certain function is quite a brittle notion. Changing just a single value of the function can change the degree drastically. By using the key idea of the Berlekamp-Welch algorithm for decoding Reed-Solomon codes, we can strengthen the above result to get a robust version, given below.

Theorem 1.2.

Let p1mod4p\equiv 1\mod 4. Then any polynomial that computes square roots in 𝔽p\mathbb{F}_{p} on all but ep712e\leq\frac{p-7}{12} nonzero perfect squares in 𝔽p\mathbb{F}_{p} must have degree at least p13e\frac{p-1}{3}-e.

The connection to decoding algorithms for Reed-Solomon codes is not such a surprise. The problem of whether a low-degree polynomial can compute square roots is in fact a list-recovery problem for Reed-Solomon codes [GS98]; our result effectively shows that a certain algebraic list recovery instance where each input list has size 22 has no solutions. The difficulty is that this lies beyond the regime where we have a good understanding of list-recoverability and list-decodability of Reed-Solomon codes.

More concretely, let CC be the the Reed-Solomon code of degree dd polynomials over 𝔽p\mathbb{F}_{p} with evaluation set DD. Suppose for each xDx\in D we are given a set Sx𝔽pS_{x}\subseteq\mathbb{F}_{p} with |Sx|2|S_{x}|\leq 2. How can we certify that there are no codewords cc of CC such that for each coordinate xDx\in D, we have cxSxc_{x}\in S_{x}? It is not known how to give an efficiently verifiable certificate of this in general when d=(12+Ω(1))|D|d=\left(\frac{1}{2}+\Omega(1)\right)|D|. In our setting DD is the set of perfect squares (so |D|=(p1)/2|D|=(p-1)/2), and dd is p/3p/3, which is outside the range of known certification methods [GS98].

Better upper bounds for special pp

It turns out that for some pp which are 1mod41\mod 4, there are polynomials computing square roots with degree about 38p\frac{3}{8}\cdot p.

Theorem 1.3.

Let p5mod8p\equiv 5\mod 8. Then there is a polynomial that computes square roots in 𝔽p\mathbb{F}_{p} with degree at most 3p+18\frac{3p+1}{8}.

This was first shown by Agou, Deliglése and Nicolas [ADN03] (see also [Car11]). In the first version of this paper posted online, we gave a proof of this, unaware of their result. The proof that we had found of this theorem is the same as that of [ADN03] – based on the Tonelli-Shanks algorithm – but since it is quite simple and short, we keep it in this updated paper for completeness.

The method of Tonelli-Shanks also yields similar phenomena with degree (12Ω(1))p(\frac{1}{2}-\Omega(1))p for pp in special residue classes mod 2j2^{j} with jj constant. Theorem 5 of [ADN03] gives another example of such a phenomenon for p7mod12p\equiv 7\mod 12, giving polynomials (different from X(p+1)/4X^{(p+1)/4}) computing square roots of degree about 512p\frac{5}{12}\cdot p.

Upper bounds for general pp

Finally, we discuss upper bounds for the case of general pp. First, a heuristic. There are 2(p1)/22^{(p-1)/2} different square root functions (the choice of sign for each perfect square). If the unique interpolating polynomials of degree <(p1)/2<(p-1)/2 for these functions had their coefficients behaving randomly, then we would expect a polynomial of degree at most 12pΩ(plogp)\frac{1}{2}p-\Omega\left(\frac{p}{\log p}\right) that computes square roots.

Formalizing this intuition, we show that there is a polynomial computing square roots with degree 12pΩ~(p)\frac{1}{2}p-\widetilde{\Omega}(\sqrt{p}). This is done by looking at the explicit formulas for the coefficients of the interpolants and arguing their pseudorandomness via the Weil bounds and some elementary Fourier analysis.

We also note that all our results have analogues for computing ttth roots.

Related Work

The work of Agou, Deliglése and Nicolas [ADN03] gave examples, for infinitely many pp, of polynomials in 𝔽p\mathbb{F}_{p} of abnormally low degree that compute square roots. The focus there was on finding polynomials with few monomials, and they gave interesting upper and lower bounds for this. Chang, Kim and Lee [CKL15] gave analogues of these results for computing ttth roots.

Another related line of research has studied lower bounds on the degree of polynomials computing interesting arithmetic functions. Coppersmith and Shparlinski [CS00] (following an error-free computation result of Mullen and White [MW86]), gave strong lower bounds on the degree of polynomials computing the discrete logarithm in prime fields 𝔽p\mathbb{F}_{p} with as many as (1o(1))p(1-o(1))p errors. Winterhof [Win02] later gave a generalization of this to all finite fields. These results are related to list-decoding of Reed-Solomon codes, since for each input there is only one “correct” value which we are hoping the polynomial will compute. As mentioned earlier, the problems we consider are related to list-recovery of Reed-Solomon codes, where there are multiple “correct” values for any given input, and we hope the polynomial computes one of them.

Conclusions and Questions

Computing square roots and understanding quadratic residuosity are central topics in algebraic computation and pseudorandomness.

Perhaps the most interesting and fundamental open question in this area is that of deterministically computing square roots mod pp in 𝗉𝗈𝗅𝗒(logp)\mathsf{poly}(\log p) time. As we already saw, when p3mod4p\equiv 3\mod 4, the simple deterministic 𝗉𝗈𝗅𝗒(logp)\mathsf{poly}(\log p) algorithm of raising x𝔽px\in\mathbb{F}_{p} to the power p+14\frac{p+1}{4} computes the square root of xx. Our results show that the p1mod4p\equiv 1\mod 4 case is qualitatively different in some respects. See [BS96, VZGG13, Sho09] for what is known about this computational problem and related number theoretic issues.

Other important questions include the problem of determining the size of the least quadratic residue mod pp (this is also connected to deterministic computation of square roots), and understanding the pseudorandomness of the Paley graph (for example, are Paley graphs Ramsey graphs?).

Finally, as mentioned above, our results can be viewed as showing that a certain list-recovery instance for Reed-Solomon codes has no solutions. We close with a conjecture about the list-recoverability of Reed-Solomon codes. The conjecture talks about prime fields; the results of Guruswami and Rudra [GR05] imply that this assumption cannot be dropped.

Conjecture 1.1.

Let 𝔽p\mathbb{F}_{p} be a prime field. Let ,ϵ>0\ell\in\mathbb{N},\epsilon>0 be constants. Suppose we are given, for each x𝔽px\in\mathbb{F}_{p}, a set SxS_{x} with |Sx||S_{x}|\leq\ell. Then:

|{P(X)𝔽p[X]deg(P)(1ϵ)p, and for all x𝔽pP(x)Sx}|pOϵ,(1).\left|\{P(X)\in\mathbb{F}_{p}[X]\mid\deg(P)\leq(1-\epsilon)p,\mbox{ and for all $x\in\mathbb{F}_{p}$, }P(x)\in S_{x}\}\right|\leq p^{O_{\epsilon,\ell}(1)}.

We hope that our methods can give some insight into understanding the list-recovery capacity of Reed-Solomon codes, and in particular the above conjecture.

2 Lower bound for polynomials computing square roots

We now prove our first theorem about polynomials computing square roots mod pp.

Theorem 1.1 Let p1mod4p\equiv 1\mod 4. Then the degree of any polynomial that computes square roots in 𝔽p\mathbb{F}_{p} is at least p13\frac{p-1}{3}.

Proof.

Suppose f(X)f(X) is of degree d<p13d<\frac{p-1}{3} and computes square roots in 𝔽p\mathbb{F}_{p}. Then, since X(p1)/21X^{(p-1)/2}-1 is the vanishing polynomial of the set of nonzero perfect squares in 𝔽p\mathbb{F}_{p}, we have:

f(X)2X0mod(X(p1)/21).f(X)^{2}-X\equiv 0\mod(X^{(p-1)/2}-1).

Let A(X)A(X) be the polynomial of degree 2d(p1)/22d-(p-1)/2 such that

f(X)2X=A(X)(X(p1)/21).f(X)^{2}-X=A(X)\cdot(X^{(p-1)/2}-1).

Let B(X)=XA(X)B(X)=X-A(X). Then we get:

f(X)2=A(X)X(p1)/2+B(X),f(X)^{2}=A(X)\cdot X^{(p-1)/2}+B(X), (1)

where:

  • deg(f(X))=d\deg(f(X))=d.

  • deg(A(X)),deg(B(X))2d(p1)/2\deg(A(X)),\deg(B(X))\leq 2d-(p-1)/2.

  • A(X)0A(X)\neq 0. If A(X)=0A(X)=0 then f(X)2=Xf(X)^{2}=X, which is impossible for a polynomial f(X)f(X).

  • B(X)0B(X)\neq 0. Otherwise A(X)=XA(X)=X, and f(X)2=X(p+1)/2f(X)^{2}=X^{(p+1)/2}, which is possible only if p3mod4p\equiv 3\mod 4.

These conditions together will give us our lower bound on dd.

Taking derivatives222Throughout this paper, we work with formal derivatives of polynomials. of both sides of (1), we get:

2f(X)f(X)=A(X)X(p1)/212A(X)X(p3)/2+B(X).\displaystyle 2f(X)f^{\prime}(X)=A^{\prime}(X)\cdot X^{(p-1)/2}-\frac{1}{2}A(X)X^{(p-3)/2}+B^{\prime}(X). (2)

Computing 2f(X)2f(X)2f(X)^{2}f^{\prime}(X) in two ways using (1) and (2), we get:

2f(X)A(X)X(p1)/2+2f(X)B(X)=f(X)(XA(X)12A(X))X(p3)/2+f(X)B(X).2f^{\prime}(X)A(X)X^{(p-1)/2}+2f^{\prime}(X)B(X)=f(X)\left(X\cdot A^{\prime}(X)-\frac{1}{2}A(X)\right)X^{(p-3)/2}+f(X)B^{\prime}(X).

Now, using our assumption on dd, the degrees of 2f(X)B(X)2f^{\prime}(X)B(X) and f(X)B(X)f(X)B^{\prime}(X) are both at most 3d(p1)/21<(p3)/23d-(p-1)/2-1<(p-3)/2, and thus taking the above equation mod X(p3)/2X^{(p-3)/2},

2f(X)B(X)=f(X)B(X).2f^{\prime}(X)B(X)=f(X)B^{\prime}(X).

Since B(X)0B(X)\neq 0, we get 2f(X)f(X)=B(X)B(X)\frac{2f^{\prime}(X)}{f(X)}=\frac{B^{\prime}(X)}{B(X)}. Since 2deg(f),deg(B)<p2\deg(f),\deg(B)<p, by a basic property of logarithmic derivatives, this implies f(X)2=λB(X)f(X)^{2}=\lambda B(X) for some nonzero λ\lambda, contradicting the fact that A(X)0A(X)\neq 0. (See Remark 1 in Section 2.2 for a precise statement and a proof.)

Thus our assumption that d<p13d<\frac{p-1}{3} is wrong, and the theorem follows. ∎

2.1 Consecutive zero coefficients in powers of polynomials

We isolate the key step above as the following lemma:

Lemma 2.1.

Let 𝔽\mathbb{F} be a field of characteristic pp. Let f(X),A(X),B(X)f(X),A(X),B(X) be in 𝔽[X]\mathbb{F}[X]. Suppose

f(X)t=A(X)X+B(X)f(X)^{t}=A(X)\cdot X^{\ell}+B(X) (3)

where:

  • deg(f(X))d<pt\deg(f(X))\leq d<\frac{p}{t},

  • deg(B(X))b<p\deg(B(X))\leq b<p,

  • A(X)0A(X)\neq 0,

  • B(X)0B(X)\neq 0,

Then d+bd+b\geq\ell.

In words, this says that if dt<pdt<p, the ttth power of a polynomial of degree dd cannot have dd consecutive 0 coefficients.

Proof.

Supose d+b<d+b<\ell. Observe that this implies that f(X)0f(X)\neq 0.

Taking derivatives of both sides of (3), we get:

tf(X)t1f(X)=C(X)X1+B(X),tf(X)^{t-1}f^{\prime}(X)=C(X)X^{\ell-1}+B^{\prime}(X), (4)

for some C(X)𝔽[X]C(X)\in\mathbb{F}[X].

Computing tf(X)tf(X)tf(X)^{t}f^{\prime}(X) in two different ways using (3), (4), we get:

tA(X)f(X)X+tf(X)B(X)=f(X)C(X)X1+f(X)B(X).tA(X)f^{\prime}(X)X^{\ell}+tf^{\prime}(X)B(X)=f(X)C(X)X^{\ell-1}+f(X)B^{\prime}(X).

Since deg(tf(X)B(X)),deg(f(X)B(X))<d+b1\deg(tf^{\prime}(X)B(X)),\deg(f(X)B^{\prime}(X))<d+b\leq\ell-1, by taking this equation mod X1X^{\ell-1} we get:

tf(X)B(X)=f(X)B(X),tf^{\prime}(X)B(X)=f(X)B^{\prime}(X),

and since f(X),B(X)f(X),B(X) are nonzero, we get that:

tf(X)f(X)=B(X)B(X).t\frac{f^{\prime}(X)}{f(X)}=\frac{B^{\prime}(X)}{B(X)}.

By the logarithmic derivative, we get f(X)t=λB(X)f(X)^{t}=\lambda B(X) for some nonzero λ\lambda, contradicting our assumption that A(X)0A(X)\neq 0.

Thus d+bd+b\geq\ell as claimed. ∎

2.2 Remarks

  1. 1.

    The key fact about logarithmic derivatives that we are using is that if f(X),B(X)𝔽p[X]f(X),B(X)\in\mathbb{F}_{p}[X], tdeg(f),deg(B)<pt\cdot\deg(f),\deg(B)<p, and:

    tf(X)f(X)=B(X)B(X),t\frac{f^{\prime}(X)}{f(X)}=\frac{B^{\prime}(X)}{B(X)},

    then f(X)t=λB(X)f(X)^{t}=\lambda\cdot B(X) for some constant λ𝔽p\lambda\in\mathbb{F}_{p}.

    We recap a quick proof. The hypothesis implies that (f(X)tB(X))=0\left(\frac{f(X)^{t}}{B(X)}\right)^{\prime}=0, and thus f(X)tB(X)\frac{f(X)^{t}}{B(X)} must be a rational function in XpX^{p}. To see the last deduction, note that (f(X)tB(X)p1)=(f(X)tB(X)B(X)p)=(f(X)tB(X))B(X)p+f(X)tB(X)pB(X)p1B(X)=0+0=0\left(f(X)^{t}\cdot B(X)^{p-1}\right)^{\prime}=\left(\frac{f(X)^{t}}{B(X)}\cdot B(X)^{p}\right)^{\prime}=\left(\frac{f(X)^{t}}{B(X)}\right)^{\prime}\cdot B(X)^{p}+\frac{f(X)^{t}}{B(X)}\cdot p\cdot B(X)^{p-1}\cdot B^{\prime}(X)=0+0=0. Thus the polynomial f(X)tB(X)p1f(X)^{t}\cdot B(X)^{p-1} is a polynomial in XpX^{p}, which implies that f(X)tB(X)=f(X)tB(X)p1B(X)p=f(X)tB(X)p1B(Xp)\frac{f(X)^{t}}{B(X)}=\frac{f(X)^{t}\cdot B(X)^{p-1}}{B(X)^{p}}=\frac{f(X)^{t}\cdot B(X)^{p-1}}{B(X^{p})} is a rational function in XpX^{p}. Once we know that f(X)tB(X)\frac{f(X)^{t}}{B(X)} is a rational function in XpX^{p}, our assumption about the degrees implies the result.

  2. 2.

    The exact same proof also classifies when low-degree polynomials can compute square roots of very-low-degree polynomials on a multiplicative group.

    Theorem 2.2.

    Let G𝔽pG\subseteq\mathbb{F}_{p}^{*} be a multiplicative subgroup of size mm, with mp12m\leq\frac{p-1}{2}. Let C(X)𝔽p[X]C(X)\in\mathbb{F}_{p}[X] have degree at most m3\frac{m}{3}. Suppose f(X)𝔽p[X]f(X)\in\mathbb{F}_{p}[X] is such that f(a)2=C(a)f(a)^{2}=C(a) for all aGa\in G. Then one of the following alternatives must hold:

    • f(X)2=C(X)f(X)^{2}=C(X),

    • f(X)2=C(X)Xmf(X)^{2}=C(X)\cdot X^{m},

    • deg(f)2m3\deg(f)\geq\frac{2m}{3}.

    The above statement for m=p1m=p-1 and C(X)C(X) being a constant follows from a result of Biro [Bir00], who classified low-degree polynomials that take two values on 𝔽p\mathbb{F}_{p}^{*}. The proof from [Bir00] is a delicate investigation of certain power sums. Our proof for m<p1m<p-1 is quite different, and has the flexibility of allowing for the robust version proved in the next section (which gives, for example, a classification of low-degree polynomials that take only 2 values on 99%99\% of GG).

    In this generality, the bound of 2m3\frac{2m}{3} is tight. If mm is divisible by 33, then the polynomial f(X)=(X2m/3+Xm/312)f(X)=\left(X^{2m/3}+X^{m/3}-\frac{1}{2}\right) is such that f(x)2=94f(x)^{2}=\frac{9}{4} for all xGx\in G (since xm/3x^{m/3} is a cube root of 11).

  3. 3.

    The proof of Lemma 2.1 also applies as is to rational powers of f(X)f(X), where we now talk about consecutive 0 coefficients in the power series. We only state it for characteristic 0; it says that the power series expansion of f(X)r/sf(X)^{r/s}, for f(X)f(X) of degree dd, does not have dd consecutive 0 coefficients. Precisely, we have:

    Lemma 2.3.

    Let 𝔽\mathbb{F} be a field of characteristic 0. Let tt be a rational number. Let f(X)𝔽[X]f(X)\in\mathbb{F}[X] be a polynomial of degree at most dd.

    Then any (formal) power series expansion of f(X)tf(X)^{t} in 𝔽[[X]]\mathbb{F}[[X]] does not have dd consecutive zero coefficients.

    This is stronger than the usual bound for this situation (which shows up in polynomial factoring algorithms via the Hilbert irreducibility theorem [Kal91] and the Arora-Sudan low degree test [AS97]), which goes as follows: Suppose f(X)1/s=A(X)X+B(X)f(X)^{1/s}=A(X)X^{\ell}+B(X), where deg(f)=d,deg(B)=b\deg(f)=d,\deg(B)=b and A(X)𝔽[[X]]A(X)\in\mathbb{F}[[X]] is nonzero, then f(X)B(X)sf(X)-B(X)^{s} is a nonzero polynomial of degree at least \ell, and so max(sb,d)\ell\leq\max(sb,d). Thus if bb is large, this bound only guarantees that there is a nonzero coefficient XiX^{i} for i[b+1,sb]i\in[b+1,sb] (instead of [b+1,b+d][b+1,b+d] as guaranteed by Lemma 2.3).

  4. 4.

    Applying the same method, we can apply this method to the power series expansion of ef(X)e^{f(X)} too.

    Lemma 2.4.

    Let 𝔽\mathbb{F} be a field of characteristic 0. Let f(X)𝔽[X]f(X)\in\mathbb{F}[X] be a polynomial of degree at most dd with constant term 0.

    Then the (formal) power series expansion of ef(X)e^{f(X)} in 𝔽[[X]]\mathbb{F}[[X]] does not have dd consecutive zero coefficients.

  5. 5.

    The bounds of Lemma 2.1, Lemma 2.3 and Lemma 2.4 on the number of consecutive 0 coefficients are tight, for example when f(X)f(X) is of the form αXd+β\alpha X^{d}+\beta.

  6. 6.

    We can give another proof of Lemma 2.1 (but not Lemma 2.3 or Lemma 2.4 as far as we know) using the Mason-Stothers abc-theorem for polynomials [Sto81, Mas84].

    Indeed, note that f(X)tf(X)^{t}, A(X)XA(X)\cdot X^{\ell} and B(X)B(X) all have degree at most dtdt. Furthermore, the radical of their product divides f(X)A(X)XB(X)f(X)\cdot A(X)\cdot X\cdot B(X), and thus has degree at most d+(dt)+1+bd+(dt-\ell)+1+b. By the abc-theorem, we get that:

    dt(d+dt+1+b)1=dt+d+b,dt\leq(d+dt-\ell+1+b)-1=dt+d-\ell+b,

    and thus d+bd+b\geq\ell.

3 A robust version

Let pp be a prime that is 11 mod 44. Let SS be the set of nonzero perfect squares in 𝔽p\mathbb{F}_{p}.

We say a polynomial f(X)𝔽p[X]f(X)\in\mathbb{F}_{p}[X] computes square roots with error ee if:

|{aSf(a)2a}|e.\left|\{a\in S\mid f(a)^{2}\neq a\}\right|\leq e.

We show that any polynomial computing square roots even allowing Ω(p)\Omega(p) error cannot have degree much smaller than p/3p/3.

Theorem 1.2 Let p1mod4p\equiv 1\mod 4. Suppose f(X)𝔽p[X]f(X)\in\mathbb{F}_{p}[X] is a polynomial of degree dd that computes square roots with error ee.

Then

d{p13eep712p123e1e>p712.d\geq\begin{cases}\frac{p-1}{3}-e&e\leq\frac{p-7}{12}\\ \frac{p-1}{2}-3e-1&e>\frac{p-7}{12}.\end{cases}
Proof.

We use the idea of the Berlekamp-Welch Reed-Solomon decoding algorithm [WB83].

Let USU\subseteq S be the set of aSa\in S where f(a)2af(a)^{2}\neq a.

Let E(X)𝔽p[X]E(X)\in\mathbb{F}_{p}[X] be the vanishing polynomial of UU, given by:

E(X)=uU(Xu).E(X)=\prod_{u\in U}(X-u).

Note that EE is a nonzero polynomial of degree at most ee.

Then we have:

E(X)2f(X)2E(X)2Xmod(X(p1)/21).E(X)^{2}\cdot f(X)^{2}\equiv E(X)^{2}\cdot X\mod(X^{(p-1)/2}-1).

Let A(X)A(X) be the polynomial of degree at most 2(e+d)(p1)/22(e+d)-(p-1)/2 such that:

E(X)2f(X)2E(X)2X=A(X)(X(p1)/21).E(X)^{2}\cdot f(X)^{2}-E(X)^{2}\cdot X=A(X)\cdot(X^{(p-1)/2}-1).

Let g(X)=E(X)f(X)g(X)=E(X)\cdot f(X), and B(X)=E(X)2XA(X)B(X)=E(X)^{2}\cdot X-A(X).

Then

g(X)2=A(X)X(p1)/2+B(X).g(X)^{2}=A(X)\cdot X^{(p-1)/2}+B(X).

We have:

  • deg(g)d+e\deg(g)\leq d+e,

  • deg(B)max(2e+1,2(e+d)(p1)/2)\deg(B)\leq\max(2e+1,2(e+d)-(p-1)/2).

  • A(X)0A(X)\neq 0. Otherwise E(X)2f(X)2=E(X)2Xf(X)2=XE(X)^{2}\cdot f(X)^{2}=E(X)^{2}\cdot X\Longrightarrow f(X)^{2}=X, which is impossible.

  • B(X)0B(X)\neq 0. Otherwise E(X)2X=A(X)E(X)^{2}\cdot X=A(X), and so E(X)2f(X)2=E(X)2X(p+1)/2E(X)^{2}f(X)^{2}=E(X)^{2}X^{(p+1)/2}, which implies that f(X)2=X(p+1)/2f(X)^{2}=X^{(p+1)/2}. This is only possible if p3mod4p\equiv 3\mod 4.

Plugging this into Lemma 2.1, we get:

  • (d+e)+(2(d+e)p12)p12,(d+e)+\left(2(d+e)-\frac{p-1}{2}\right)\geq\frac{p-1}{2},

    if 2d(p1)/212d-(p-1)/2\geq 1,

  • (d+e)+(2e+1)p12,(d+e)+(2e+1)\geq\frac{p-1}{2},

    if 2d(p1)/202d-(p-1)/2\leq 0.

This tells us that either:

dp13e,d\geq\frac{p-1}{3}-e,

or:

dp123e1,d\geq\frac{p-1}{2}-3e-1,

and thus:

dmin(p13e,p123e1),d\geq\min\left(\frac{p-1}{3}-e,\frac{p-1}{2}-3e-1\right),

which gives us the desired claim. ∎

Note that there is another simple lower bound (which applies for all pp) of d+e2p14d+\frac{e}{2}\geq\frac{p-1}{4} (the simple lower bound is better for e>p110e>\frac{p-1}{10}). This is proved by considering the number of roots of the degree 2d2d polynomial f(X)2Xf(X)^{2}-X.

4 Upper bound for special pp

In this section, we give an upper bound on the degree of polynomials computing square roots mod pp, for infinitely many p1mod4p\equiv 1\mod 4. The upper bound is best when p5mod8p\equiv 5\mod 8, and we only present this case. The result and proof of this section is due to Agou, Deliglése and Nicolas [ADN03]. It remains in this paper only for completeness.

Theorem 1.3 Let p5mod8p\equiv 5\mod 8. Then there is a polynomial that computes square roots in 𝔽p\mathbb{F}_{p} with degree at most 3p+18\frac{3p+1}{8}.

Proof.

Since p1mod4p\equiv 1\mod 4, we get that 1-1 is a perfect square mod pp. Let i𝔽pi\in\mathbb{F}_{p} be one of the square roots of 1-1. Our main ingredient is the Tonelli-Shanks algorithm [Sha73, Ton91] computing square roots mod pp. For p=4+1p=4\ell+1, the algorithm essentially gives a formula for the square root depending on two cases. Specifically, let u:S𝔽pu:S\to\mathbb{F}_{p} given by:

u(a)={a(p+3)/8a(p1)/4=1,ia(p+3)/8a(p1)/4=1.u(a)=\begin{cases}a^{(p+3)/8}&a^{(p-1)/4}=1,\\ i\cdot a^{(p+3)/8}&a^{(p-1)/4}=-1.\end{cases}

Then for all a𝔽pa\in\mathbb{F}_{p}, u(a)u(a) is a square root of aa.

This is already quite special; the set SS is partitioned into two equal sized parts S0S_{0} and S1S_{1}, and on each SiS_{i} we have a polynomial fi(X)f_{i}(X) computing the square root of degree about 12|Si|\frac{1}{2}|S_{i}|. (This is the lowest possible degree, since fi(X)2Xf_{i}(X)^{2}-X is a nonzero polynomial that vanishes on all of SiS_{i}.)

Usually if we have this kind of setup, even though the fif_{i} have unusually low degree, the unique polynomial ff (obtained from the Chinese remainder theorem) which restricts to fif_{i} on SiS_{i} has no reason to have unusually low degree. But in this case it does!

Using the usual Chinese remainder formula, we consider the polynomial f(X)𝔽p[X]f(X)\in\mathbb{F}_{p}[X] given by:

f(X)\displaystyle f(X) =12(X(p+3)/8(X(p1)/4+1)iX(p+3)/8(X(p1)/41))\displaystyle=\frac{1}{2}\left(X^{(p+3)/8}(X^{(p-1)/4}+1)-i\cdot X^{(p+3)/8}(X^{(p-1)/4}-1)\right)
=1i2X(3p+1)/8+1+i2X(p+3)/8.\displaystyle=\frac{1-i}{2}X^{(3p+1)/8}+\frac{1+i}{2}X^{(p+3)/8}.

By design, we have f(a)=u(a)f(a)=u(a) for all aSa\in S. Finally, notice that deg(f)3p+18\deg(f)\leq\frac{3p+1}{8}.

As a sanity check, we directly verify that f(X)2Xmod(X(p1)/21)f(X)^{2}\equiv X\mod(X^{(p-1)/2}-1). Indeed,

f(X)2\displaystyle f(X)^{2} =(1i2)2X(3p+1)/4+2(1i)(1+i)4X(4p+4)/8+(1+i2)2X(p+3)/4\displaystyle=\left(\frac{1-i}{2}\right)^{2}X^{(3p+1)/4}+2\cdot\frac{(1-i)(1+i)}{4}X^{(4p+4)/8}+\left(\frac{1+i}{2}\right)^{2}X^{(p+3)/4}
=i2X(3p+1)/4+X(p+1)/2+i2X(p+3)/4\displaystyle=-\frac{i}{2}X^{(3p+1)/4}+X^{(p+1)/2}+\frac{i}{2}X^{(p+3)/4}
=(i2X(p+3)/4+X)(X(p1)/21)+X,\displaystyle=\left(-\frac{i}{2}X^{(p+3)/4}+X\right)\cdot(X^{(p-1)/2}-1)+X,

as desired. ∎

5 Upper bounds for general pp

In this section, we give a slightly nontrivial upper bound on the degree of polynomials computing square roots for all pp. We will show that there is a polynomial with degree somewhat less than p2\frac{p}{2} which computes square roots.

Theorem 5.1.

For all odd primes pp, for t=o(plog2p)t=o\left(\frac{\sqrt{p}}{\log^{2}p}\right), there is a polynomial of degree p2t\frac{p}{2}-t which computes square roots.

Proof.

Let m=(p1)/2m=(p-1)/2. Let S𝔽pS\subseteq\mathbb{F}_{p} be the set of nonzero perfect squares, and note that |S|=m|S|=m. For each αS\alpha\in S, let δα(X)𝔽p[X]\delta_{\alpha}(X)\in\mathbb{F}_{p}[X] be the unique polynomial of degree (m1)\leq(m-1) such that for all βS\beta\in S:

δα(β)={1β=α,0βα.\delta_{\alpha}(\beta)=\begin{cases}1&\beta=\alpha,\\ 0&\beta\neq\alpha.\end{cases}

Explicitly, we have:

δα(X)=1m((Xα)m1+(Xα)m2++Xα+1).\delta_{\alpha}(X)=\frac{1}{m}\left(\left(\frac{X}{\alpha}\right)^{m-1}+\left(\frac{X}{\alpha}\right)^{m-2}+\ldots+\frac{X}{\alpha}+1\right).

Then given a function u:S𝔽pu:S\to\mathbb{F}_{p}, the unique polynomial f(X)𝔽p[X]f(X)\in\mathbb{F}_{p}[X] of degree at most m1m-1 such that f(α)=u(α)f(\alpha)=u(\alpha) for all αS\alpha\in S is given by:

f(X)=αSu(α)δα(X).f(X)=\sum_{\alpha\in S}u(\alpha)\delta_{\alpha}(X).

Our goal is to pick uu where each u(α)u(\alpha) is one of the two square roots of α\alpha so that many of the leading coefficients of f(X)f(X) equal 0.

We now use the structure of SS. Let gg be a generator of 𝔽p\mathbb{F}_{p}^{*}. Then S={g2j0j<(p1)/2}S=\{g^{2j}\mid 0\leq j<(p-1)/2\}. Furthermore, for α=g2jS\alpha=g^{2j}\in S, one of the two square roots of α\alpha is gjg^{j}.

Thus, our problem can be reformulated as choosing a function v:S{±1}v:S\to\{\pm 1\} such that:

f(X)=j=0(p1)/2v(g2j)gjδg2j(X)f(X)=\sum_{j=0}^{(p-1)/2}v\left(g^{2j}\right)\cdot g^{j}\cdot\delta_{g^{2j}}(X)

has many leading coefficients equal to 0.

Observe that the coefficient of XmiX^{m-i} in f(X)f(X) equals:

1mj=0(p1)/2v(g2j)gj(1g2j)mi=1mi=0(p1)/2v(g2j)g(2i+1)j.\frac{1}{m}\sum_{j=0}^{(p-1)/2}v(g^{2j})g^{j}\left(\frac{1}{g^{2j}}\right)^{m-i}=\frac{1}{m}\sum_{i=0}^{(p-1)/2}v(g^{2j})g^{(2i+1)j}.

Thus, to get a polynomial f(X)f(X) of degree <mt<m-t, we want to find a vector v{±1}mv\in\{\pm 1\}^{m} that lies in the kernel of the Vandermonde-type matrix M𝔽pt×mM\in\mathbb{F}_{p}^{t\times m}, where:

Mi,j=g(2i+1)j.M_{i,j}=g^{(2i+1)j}.

(The row index ii runs from 11 to tt, the column index jj runs from 0 to m1m-1.)

For later use, for a vector y𝔽pty\in\mathbb{F}_{p}^{t}, we define Py(Z)𝔽p[Z]P_{y}(Z)\in\mathbb{F}_{p}[Z] to be the polynomial:

Py(Z)=i=1tyiZ2i+1.P_{y}(Z)=\sum_{i=1}^{t}y_{i}Z^{2i+1}.

Thus for j{0,1,,m1}j\in\{0,1,\ldots,m-1\}, the jjth entry of MTyM^{T}y equals Py(gj)P_{y}(g^{j}).

To show that there exists the desired ±1\pm 1 vector, we count the number of such vectors using Fourier analysis. Let ω\omega be a ppth root of unity in \mathbb{C}. The number of such ±1\pm 1 vectors equals:

N\displaystyle N =v{±1}m𝟏Mv=0\displaystyle=\sum_{v\in\{\pm 1\}^{m}}{\mathbf{1}}_{Mv=0}
=v{±1}m𝔼y𝔽pt[ωy,Mv]\displaystyle=\sum_{v\in\{\pm 1\}^{m}}\mathbb{E}_{y\in\mathbb{F}_{p}^{t}}\left[\omega^{\langle y,Mv\rangle}\right]
=𝔼y[vωMTy,v]\displaystyle=\mathbb{E}_{y}\left[\sum_{v}\omega^{\langle M^{T}y,v\rangle}\right]
=𝔼y[vωj=0m1(MTy)jvj]\displaystyle=\mathbb{E}_{y}\left[\sum_{v}\omega^{\sum_{j=0}^{m-1}(M^{T}y)_{j}\cdot v_{j}}\right]
=𝔼y[vj=0m1ω(MTy)jvj]\displaystyle=\mathbb{E}_{y}\left[\sum_{v}\prod_{j=0}^{m-1}\omega^{(M^{T}y)_{j}\cdot v_{j}}\right]
=𝔼y[vj=0m1ωPy(gj)vj].\displaystyle=\mathbb{E}_{y}\left[\sum_{v}\prod_{j=0}^{m-1}\omega^{P_{y}(g^{j})\cdot v_{j}}\right].

For y=0y=0, the expression inside the expectation equals 2m2^{m}. We will show that for the remaining pt1p^{t}-1 values of yy, the expression inside the expectation is very small.

Fix any y0y\neq 0. The expression inside the expectation equals:

v{±1}mj=0m1ωPy(gj)vj=j=1m(ωPy(gj)+ωPy(gj)).\displaystyle\sum_{v\in\{\pm 1\}^{m}}\prod_{j=0}^{m-1}\omega^{P_{y}(g^{j})\cdot v_{j}}=\prod_{j=1}^{m}\left(\omega^{P_{y}(g^{j})}+\omega^{-P_{y}(g^{j})}\right). (5)

The next lemma (which uses the Weil bounds on mixed character sums) shows that for any nonzero yy, the evaluations of the polynomial PyP_{y} at {1,g,g2,,gm1}\{1,g,g^{2},\ldots,g^{m-1}\} are well distributed in 𝔽p\mathbb{F}_{p}.

Lemma 5.2.

Let 0α<β10\leq\alpha<\beta\leq 1. Let y𝔽pt{0}y\in\mathbb{F}_{p}^{t}\setminus\{0\}. Then:

Prj{0,1,,m1}[Py(gj)[αp,βp]]=(βα)+O(tlog2pp).\Pr_{j\in\{0,1,\ldots,m-1\}}\left[P_{y}(g^{j})\in[\alpha p,\beta p]\right]=(\beta-\alpha)+O\left(\frac{t\log^{2}p}{\sqrt{p}}\right).

Assuming the lemma, we get that for t=o(plog2p)t=o\left(\frac{\sqrt{p}}{\log^{2}p}\right), the product in Equation (5) is at most 2mexp(m)2^{m}\cdot\exp(-m). Thus:

N\displaystyle N 2mptmaxy0|j=1m(ωPy(gj)+ωPy(gj))|\displaystyle\geq\frac{2^{m}}{p^{t}}-\max_{y\neq 0}\left|\prod_{j=1}^{m}\left(\omega^{P_{y}(g^{j})}+\omega^{-P_{y}(g^{j})}\right)\right|
2mptO(2mexp(m))\displaystyle\geq\frac{2^{m}}{p^{t}}-O(2^{m}\exp(-m))
2m(1ptexp(m))\displaystyle\geq 2^{m}\left(\frac{1}{p^{t}}-\exp(-m)\right)
>0,\displaystyle>0,

where the penultimate inequality holds since

t=o(plog2p)plogp=Θ(mlogp).t=o\left(\frac{\sqrt{p}}{\log^{2}p}\right)\ll\frac{p}{\log p}=\Theta\left(\frac{m}{\log p}\right).

This completes the proof. ∎

5.1 Distribution of values of Py(gj)P_{y}(g^{j})

We now prove Lemma 5.2.

Proof.

Let II be the interval [αp,βp][\alpha p,\beta p]. Let JJ be the set {1,g,g2,,gm1}\{1,g,g^{2},\ldots,g^{m-1}\}. Then the probability in the statement of the lemma equals:

1mz𝔽p𝟏I(Py(z))𝟏J(z).\displaystyle\frac{1}{m}\sum_{z\in\mathbb{F}_{p}}{{\mathbf{1}}}_{I}(P_{y}(z)){{\mathbf{1}}}_{J}(z). (6)

II is an interval in the additive group of 𝔽p\mathbb{F}_{p} By standard results, if we expand 𝟏I{\mathbf{1}}_{I} in its additive Fourier expansion:

𝟏I=ψ𝟏^I(ψ)ψ{\mathbf{1}}_{I}=\sum_{\psi}\widehat{{\mathbf{1}}}_{I}(\psi)\psi

(where the ψ\psi are the additive characters), then:

ψ|𝟏^I(ψ)|O(logp).\displaystyle\sum_{\psi}|\widehat{{\mathbf{1}}}_{I}(\psi)|\leq O(\log p). (7)

Similarly, JJ is an interval in the multiplicative group of 𝔽p\mathbb{F}_{p}. If we expand 𝟏J{\mathbf{1}}_{J} in its additive Fourier expansion:

𝟏J=ψ𝟏~J(χ)χ{\mathbf{1}}_{J}=\sum_{\psi}\widetilde{{\mathbf{1}}}_{J}(\chi)\chi

(where the χ\chi are the multiplicative characters), then:

χ|𝟏~I(χ)|O(logp).\displaystyle\sum_{\chi}|\widetilde{{\mathbf{1}}}_{I}(\chi)|\leq O(\log p). (8)

Then the probability in Equation (6) equals:

1mz(ψ𝟏^I(ψ)ψ(Py(z)))(χ𝟏~J(χ)χ(z))\displaystyle\frac{1}{m}\sum_{z}\left(\sum_{\psi}\widehat{{\mathbf{1}}}_{I}(\psi)\psi(P_{y}(z))\right)\left(\sum_{\chi}\widetilde{{\mathbf{1}}}_{J}(\chi)\chi(z)\right)
=1mψ,χ𝟏^I(ψ)𝟏~J(χ)(zψ(Py(z))χ(z))\displaystyle=\frac{1}{m}\sum_{\psi,\chi}\widehat{{\mathbf{1}}}_{I}(\psi)\widetilde{{\mathbf{1}}}_{J}(\chi)\left(\sum_{z}\psi(P_{y}(z))\chi(z)\right)
=1m(|I|p|J|pp+O((ψ,χ)(1,1)|𝟏^I(ψ)||𝟏~J(χ)||zψ(Py(z))χ(z)|))\displaystyle=\frac{1}{m}\left(\frac{|I|}{p}\cdot\frac{|J|}{p}\cdot p+O\left(\sum_{(\psi,\chi)\neq(1,1)}|\widehat{{\mathbf{1}}}_{I}(\psi)|\cdot|\widetilde{{\mathbf{1}}}_{J}(\chi)|\cdot\left|\sum_{z}\psi(P_{y}(z))\chi(z)\right|\right)\right)
=(βα)+1mO((ψ,χ)(1,1)|𝟏^I(ψ)||𝟏~J(χ)||zψ(Py(z))χ(z)|)\displaystyle=(\beta-\alpha)+\frac{1}{m}\cdot O\left(\sum_{(\psi,\chi)\neq(1,1)}|\widehat{{\mathbf{1}}}_{I}(\psi)|\cdot|\widetilde{{\mathbf{1}}}_{J}(\chi)|\cdot\left|\sum_{z}\psi(P_{y}(z))\chi(z)\right|\right)

The Weil bound for mixed character sums (see [Sch06]) shows that whenever (ψ,χ)(\psi,\chi) are not both trivial characters, the inner expression is bounded:

|zψ(Py(z))χ(z)|O(tp).\left|\sum_{z}\psi(P_{y}(z))\chi(z)\right|\leq O(t\sqrt{p}).

Combined with the bounds in Equations (7), (8), we get the desired bound on the probability. ∎

6 ttth roots

Now we discuss ttth roots in place of square roots. We think of tt as a constant, and the prime pp growing. Let p1modtp\equiv 1\mod t, so that the set of nonzero ttth powers in 𝔽p\mathbb{F}_{p} has size p1t\frac{p-1}{t}.

Just like in the case t=2t=2, for special pp there is a simple formula for computing the ttth root; when p1tmodt2p\equiv 1-t\mod t^{2}, then ap+t1t2a^{\frac{p+t-1}{t^{2}}} is a ttth root of aa whenever aa is a perfect ttth power in 𝔽p\mathbb{F}_{p}. Thus there is a polynomial of degree 1t2p+O(1)\frac{1}{t^{2}}\cdot p+O(1) computing ttth roots. This matches the trivial lower bound of p1t2\frac{p-1}{t^{2}} on the degree of polynomials computing ttth root (proved by counting zeroes of the nonzero polynomial f(X)tXf(X)^{t}-X).

An immediate generalization of Theorem 1.2 shows that for all other pp (namely, p1tmodt2p\not\equiv 1-t\mod t^{2}, but we still preserve the condition that p1modtp\equiv 1\mod t), any polynomial of degree dd computing ttth roots in 𝔽p\mathbb{F}_{p} with error et1t2(t+1)(p1)1e\leq\frac{t-1}{t^{2}(t+1)}\cdot(p-1)-1 must satisfy

d2t(t+1)(p1)e.d\geq\frac{2}{t(t+1)}\cdot(p-1)-e.

This is 2tt+1\frac{2t}{t+1} times (which is about double for large tt) the trivial lower bound, but quite far from the obvious upper bound (from Lagrange interpolation) of 1t(p1)\frac{1}{t}\cdot(p-1).

The best upper bound we know for pp not of the special form p1tmodt2p\equiv 1-t\mod t^{2} is for pp such that 2p2tmodt22p\equiv 2-t\mod t^{2} (there are infinitely many such pp for any odd tt), and in this case the polynomial f(X)=X2p+t2t2f(X)=X^{\frac{2p+t-2}{t^{2}}} computes ttth roots. This is of the form 2t2p+O(1)\frac{2}{t^{2}}\cdot p+O(1), and thus somewhat close to our lower bound for large tt.

Closing these gaps seems like a very basic and interesting open question.

Acknowledgements

Both authors acknowledge support from IAS in 2018–19, where initial discussions towards this paper took place. We thank N. Carella and Igor Shparlinski for valuable comments and pointers to the literature.

References

  • [ADN03] Simon Joseph Agou, Marc Deléglise, and Jean-Louis Nicolas. Short polynomial representations for square roots modulo p. Designs, Codes and Cryptography, 28(1):33–44, 2003.
  • [AS97] Sanjeev Arora and Madhu Sudan. Improved low-degree testing and its applications. In Proceedings of the twenty-ninth annual ACM symposium on Theory of computing, pages 485–495, 1997.
  • [Bir00] András Biró. On polynomials over prime fields taking only two values on the multiplicative group. Finite Fields and Their Applications, 6(4):302–308, 2000.
  • [BS96] Eric Bach and Jeffrey Outlaw Shallit. Algorithmic number theory: Efficient algorithms, volume 1. MIT press, 1996.
  • [Car11] NA Carella. Formulas for the square root modulo p. arXiv preprint arXiv:1101.4605, 2011.
  • [CKL15] Seunghwan Chang, Bihtnara Kim, and Hyang-Sook Lee. Polynomial representations for n-th roots in finite fields. Journal of the Korean Mathematical Society, 52(1):209–224, 2015.
  • [CS00] Don Coppersmith and Igor Shparlinski. On polynomial approximation of the discrete logarithm and the diffie—hellman mapping. Journal of Cryptology, 13:339–360, 2000.
  • [GR05] Venkatesan Guruswami and Atri Rudra. Limits to list decoding reed-solomon codes. In Proceedings of the thirty-seventh annual ACM symposium on Theory of computing, pages 602–609, 2005.
  • [GS98] Venkatesan Guruswami and Madhu Sudan. Improved decoding of reed-solomon and algebraic-geometric codes. In Proceedings 39th Annual Symposium on Foundations of Computer Science (Cat. No. 98CB36280), pages 28–37. IEEE, 1998.
  • [Kal91] Erich Kaltofen. Effective noether irreducibility forms and applications. In Proceedings of the twenty-third annual ACM symposium on Theory of Computing, pages 54–63, 1991.
  • [Mas84] Richard Clive Mason. Diophantine equations over function fields, volume 96. Cambridge University Press, 1984.
  • [MW86] Gary Mullen and David White. A polynomial representation for logarithms in gf (q). Acta arithmetica, 3(47):255–261, 1986.
  • [Sch06] Wolfgang M Schmidt. Equations over finite fields: an elementary approach, volume 536. Springer, 2006.
  • [Sha73] Daniel Shanks. Five number-theoretic algorithms. In Proceedings of the Second Manitoba Conference on Numerical Mathematics (Winnipeg), 1973, 1973.
  • [Sho09] Victor Shoup. A computational introduction to number theory and algebra. Cambridge university press, 2009.
  • [Sto81] W Wilson Stothers. Polynomial identities and hauptmoduln. The Quarterly Journal of Mathematics, 32(3):349–370, 1981.
  • [Ton91] Alberto Tonelli. Bemerkung über die auflösung quadratischer congruenzen. Nachrichten von der Königl. Gesellschaft der Wissenschaften und der Georg-Augusts-Universität zu Göttingen, 1891:344–346, 1891.
  • [VZGG13] Joachim Von Zur Gathen and Jürgen Gerhard. Modern computer algebra. Cambridge university press, 2013.
  • [WB83] Lloyd R Welch and Elwyn R Berlekamp. Error correction for algebraic block codes. US patent, (4,633,470), 1983.
  • [Win02] Arne Winterhof. Polynomial interpolation of the discrete logarithm. Designs, Codes and Cryptography, 25(1):63–72, 2002.