Content (Tentative)
-
A quick introduction to notions of rings, fields and other prelims
-
Euclidean algorithm for GCD of univariate polynomials, Resultant and their properties
-
Fast Fourier transform, polynomial division, univariate multipoint evaluation
-
Univariate polynomial factorization over finite fields: Cantor-Zassenhaus and Berlekemp's algorithms
-
Bivariate polynomial factorization, Hensel lifting and Newton iteration
-
Multivariate polynomial factorization: Kaltofen's algorithms
-
Hilbert's irreducibility theorem
-
Factorization of univariate polynomials over rationals, LLL Basis reduction algorithm
-
Primality testing: randomized and deterministic algorithms
-
Multivariate multipoint evaluation over finite fields and a data structure for polynomial evaluation
-
Ideals, varieties and ideal membership problem
-
Groebner basis and application to Ideal membership
-
Emptiness of varieties and weak form of Hilbert's Nullstellansatz
-
Strong form of Hilbert's Nullstellansatz, Quantifier elimination
-
Algebraic independence, the Jacobian criterion and testing algebraic independence, applications
-
Bezout's theorem, Wooley's theorem and applications
-
Algebraic models of computation, Ben Or and Cleve, Strassen's degree bound, Baur and Strassen
-
Algebraic P vs NP and connections to its more famous Boolean Cousin
-
More things if time permits...