Towards Optimal Toom-Cook Multiplication for Univariate and Multivariate Polynomials in Characteristic 2 and 0

  • Marco Bodrato
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4547)


Toom-Cook strategy is a well-known method for building algorithms to efficiently multiply dense univariate polynomials. Efficiency of the algorithm depends on the choice of interpolation points and on the exact sequence of operations for evaluation and interpolation. If carefully tuned, it gives the fastest algorithm for a wide range of inputs.

This work smoothly extends the Toom strategy to polynomial rings, with a focus on Open image in new window . Moreover a method is proposed to find the faster Toom multiplication algorithm for any given splitting order. New results found with it, for polynomials in characteristic 2, are presented.

A new extension for multivariate polynomials is also introduced; through a new definition of density leading Toom strategy to be efficient.


Polynomial multiplication multivariate finite fields Toom-Cook Karatsuba GF2x binary polynomials squaring convolution 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Bodrato, M.: Notes on Low Degree Toom-Cook Multiplication with Small Characteristic, Techniocal Report, Centro V.Volterra, Università di Roma Tor Vergata (2007)Google Scholar
  2. Bodrato, M., Zanoni, A.: Integer and Polynomial Multiplication: Towards Optimal Toom-Cook Matrices. Proceedings of the ISSAC 2007 Conference. ACM press, New York (2007), Google Scholar
  3. Chung, J., Anwar Hasan, M.: Asymmetric squaring formulae, Technical Report. CACR 2006-24, University of Waterloo (2006)Google Scholar
  4. Cook, S.A.: On the Minimum Computation Time of Functions, Thesis, Harvard University, pp. 51–77 (1966)Google Scholar
  5. The GNU Multi-Precision Library (GMP),
  6. The GP-Pari Computer Algebra System,
  7. Hart, P.E., Nilsson, N.J., Raphael, B.: A Formal Basis for the Heuristic Determination of Minimum Cost Paths. IEEE Transactions on Systems Science and Cybernetics SSC4, pp. 100–107 (1968)Google Scholar
  8. Jebelean, T.: An algorithm for exact division. Journal of Symbolic Computation 15, 169–180 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  9. Karatsuba, A., Ofman, Y.: Multiplication of multidigit numbers on automata, Soviet Physics-Doklady, 7, 595–596 (1963); translation from Dokl. Akad. Nauk SSSR, 145(2), 293–294, (1962)Google Scholar
  10. Knuth, D.E.: The Art of Computer Programming (Chapter 4, Section 3.3), vol. 2, pp. 278–301. Addison-Wesley, Reading, MA (1981)zbMATHGoogle Scholar
  11. Kronecker, L.: Grundzüge einer arithmetischen Theorie der algebraischen Grössen. Journal Für die Reine und Angewandte Mathematik, pp. 92–122 (1882)Google Scholar
  12. The Number Theory Library (NTL),
  13. Toom, A.L.: The Complexity of a Scheme of Functional Elements Realizing the Multiplication of Integers. Soviet Mathematics 3, 714–716 (1963)Google Scholar
  14. Schönhage, A., Strassen, V.: Schnelle Multiplikation großer Zahlen. Computing 7, 281–292 (1971)zbMATHCrossRefGoogle Scholar
  15. Schönhage, A.: Schnelle Multiplikation von Polynomen über Körpern der Charakteristik 2. Acta. Informatica 7, 395–398 (1977)zbMATHCrossRefGoogle Scholar
  16. Weimerskirch, A., Paar, C.: Generalizations of the Karatsuba Algorithm for Efficient Implementations, Cryptology ePrint Archive, Report 224 (2006)Google Scholar
  17. Winograd, S.: Arithmetic Complexity of Computations, CBMS-NSF Regional Conference Series in Mathematics, vol. 33 (1980)Google Scholar
  18. Zimmermann, P., Quercia, M.: Private communication, October 2006, irred-ntl source code (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Marco Bodrato
    • 1
  1. 1.Centro “Vito Volterra” – Università di Roma Tor Vergata, Via Columbia 2 – 00133 RomeItaly

Personalised recommendations