# Lecture 2: Newton's Method and P-adic Lifting.

### Background Material and Further Resources

• Algorithms for polynomial arithmetic. Modular algorithms.

• Sec. 6.1-3 of the text.
• Paper by Loos.

### Topics

1. Modular algorithm for univariate polynomial integral resultant computation
1. res(A,B) mod p = res(A mod p, B mod p) provided p does not divide ldcf(A) or ldcf(B).
2. L(res(A,B)) is dominated by nL(d), where deg(A), deg(B) <= n and |A|_1, |B|_1 <= d. This bound the number of mod p images, assuming p is a "word-sized" prime.
3. The time for a single evaluation of A mod p is dominated by n*L(d). The total time spent on evaluation is nL(d)*nL(d).
4. The modular resultant can be computed in time dominated by n^2, using a modification of the Euclidean algorithm (e.g. subresultant PRS). The total time spent computing modular resultants is nL(d)*n^2 = n^3L(d).
5. The time for applying the CRT to the resulting modular resultants is (nL(d))^2.
6. The total time is therefore dominated by n^2L(d)^2 + n^3L(d).
2. Discrimants and Squarefree polynomials.
• A polynomial is squarefree if it does not have any multiple roots. A(r) = 0, is of multiplicity k if (x-r)^k|A(x), but (x-r)^(k+1) does not divide A(x).
• A(x) is squarefree iff gcd(A,A') is trivial.
• The gcd(A,A') is non-trivial iff res(A,A') = 0. Therefore a polynomial is squarefree iff res(A,A') != 0. The res(A,A')/ldcf(A) is equal to the discriminant of A. Let alpha_1,...,alpha_n, be the roots of A, then disc(A) = ldcf(A)^(2m-1) * Prod_{i < j} (alpha_i - alpha_j)^2. Clearly, disc(A) = 0 iff A has roots of multiplicity greater than 1.
3. Computing rational zeros be exhaustive search
• Let A(x) = sum_{i=0}^n a_i x^i. If A(s/t) = 0 and gcd(s,t) = 1, then a_n *s^n + ... + a_1 * s * t^(n-1) + a_0*t^n = 0, which implies, s|a_0 and t|a_n.
• Rational zeros can be found by testing if A(s/t) = 0 for all divisors s of a_0 and t of a_n. See the maple worksheet for details.
• Evaluation of A(r) can be performed by Horner's method in time dominated by n^2L(r)^2 + n^2L(r)L(d). In this case, L(r) is dominated by L(d) since s and t must divide a_0 and a_n respectively.
• The total time for finding rational zeros by exhastively testing all possible divisors of a_0 and a_n is dominated by d^2*(n*L(d))^2.