×

Fast polynomial factorization and modular composition. (English) Zbl 1333.11117

Summary: We obtain randomized algorithms for factoring degree \(n\) univariate polynomials over \(\mathbb{F}_q\) requiring \(O(n^{1.5 + o(1)}\,{\log}^{1+o(1)} q+ n^{1 + o(1)}\,{\log}^{2+o(1)} q)\) bit operations. When \(\log q < n\), this is asymptotically faster than the best previous algorithms [J. von zur Gathen and V. Shoup, Comput. Complexity 2, No. 3, 187–224 (1992; Zbl 0778.11076); E. Kaltofen and V. Shoup, Math. Comput. 67, No. 223, 1179–1197 (1998; Zbl 0902.11053)]; for \(\log q\geq n\), it matches the asymptotic running time of the best known algorithms. The improvements come from new algorithms for modular composition of degree \(n\) univariate polynomials, which is the asymptotic bottleneck in fast algorithms for factoring polynomials over finite fields. The best previous algorithms for modular composition use \(O(n^{(\omega + 1)/2})\) field operations, where \(\omega\) is the exponent of matrix multiplication [R. P. Brent and H. T. Kung, J. Assoc. Comput. Mach. 25, 581–595 (1978; Zbl 0388.68052)], with a slight improvement in the exponent achieved by employing fast rectangular matrix multiplication [X. Huang and V. Y. Pan, J. Complexity 14, No. 2, 257–299 (1998; Zbl 0919.65030)]. We show that modular composition and multipoint evaluation of multivariate polynomials are essentially equivalent, in the sense that an algorithm for one achieving exponent \(\alpha\) implies an algorithm for the other with exponent \(\alpha + o(1)\), and vice versa. We then give two new algorithms that solve the problem near-optimally: an algebraic algorithm for fields of characteristic at most \(n^{o(1)}\), and a nonalgebraic algorithm that works in arbitrary characteristic. The latter algorithm works by lifting to characteristic 0, applying a small number of rounds of multimodular reduction, and finishing with a small number of multidimensional FFTs. The final evaluations are reconstructed using the Chinese remainder theorem. As a bonus, this algorithm produces a very efficient data structure supporting polynomial evaluation queries, which is of independent interest. Our algorithms use techniques that are commonly employed in practice, in contrast to all previous subquadratic algorithms for these problems, which relied on fast matrix multiplication.

MSC:

11Y16 Number-theoretic algorithms; complexity
11Y05 Factorization
12E05 Polynomials in general fields (irreducibility, etc.)
68W30 Symbolic computation and algebraic computation
68W40 Analysis of algorithms
PDFBibTeX XMLCite
Full Text: DOI