A New Polynomial Factorization Algorithm and its Implementation

Abstract We consider the problem of factoring univariate polynomials over a finite field. We demonstrate that the new baby step/giant step factoring method , recently developed by Kaltofen and Shoup, can be made into a very practical algorithm. We describe an implementation of this algorithm, and present the results of empirical tests comparing this new algorithm with others. When factoring polynomials modulo large primes, the algorithm allows much larger polynomials to be factored using a reasonable amount of time and space than was previously possible. For example, this new software has been used to factor a "generic" polynomial of degree 2048 modulo a 2048-bit prime in under 12 days on a Sun SPARC-station 10, using 68 MB of main memory.

[1]  P. L. Montgomery,et al.  An FFT extension of the elliptic curve method of factorization , 1992 .

[2]  H. T. Kung,et al.  Fast Algorithms for Manipulating Formal Power Series , 1978, JACM.

[3]  David G. Kirkpatrick,et al.  Addition Requirements for Matrix and Transposed Matrix Products , 1988, J. Algorithms.

[4]  Markus Maurer,et al.  Counting the number of points on elliptic curves over finite fields of characteristic greater than three , 1994, ANTS.

[5]  Victor Shoup,et al.  Fast construction of irreducible polynomials over finite fields , 1994, SODA '93.

[6]  Erich Kaltofen,et al.  Factoring high-degree polynomials by the black box Berlekamp algorithm , 1994, ISSAC '94.

[7]  David Y. Y. Yun,et al.  On square-free decomposition algorithms , 1976, SYMSAC '76.

[8]  Michael B. Monagan von zur Gathen's factorization challenge , 1993, SIGS.

[9]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[10]  Erich Kaltofen,et al.  Subquadratic-time factoring of polynomials over finite fields , 1995, STOC '95.

[11]  Joachim von zur Gathen,et al.  Computing Frobenius maps and factoring polynomials , 2005, computational complexity.

[12]  D. Cantor,et al.  A new algorithm for factoring polynomials over finite fields , 1981 .

[13]  Joachim von zur Gathen A polynomial factorization challenge , 1992, SIGS.

[14]  Jean Louis Dornstetter On the equivalence between Berlekamp's and Euclid's algorithms , 1987, IEEE Trans. Inf. Theory.