Advertisement

Code Generation for Polynomial Multiplication

  • Ling Ding
  • Éric Schost
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5743)

Abstract

We discuss the family of “divide-and-conquer” algorithms for polynomial multiplication, that generalize Karatsuba’s algorithm. We give explicit versions of transposed and short products for this family of algorithms and describe code generation techniques that result in high-performance implementations.

Keywords

Newton Iteration Polynomial Multiplication Recursive Call Linear Graph Short Product 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Bodrato, M., Zanoni, A.: Integer and polynomial multiplication: towards optimal Toom-Cook matrices. In: ISSAC 2007, pp. 17–24. ACM, New York (2007)Google Scholar
  2. 2.
    Bosma, W., Cannon, J., Playoust, C.: The Magma algebra system. I. The user language. J. Symbolic Comput. 24(3-4), 235–265 (1997)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Bostan, A., Lecerf, G., Schost, É.: Tellegen’s principle into practice. In: ISSAC 2003, pp. 37–44. ACM, New York (2003)Google Scholar
  4. 4.
    Brent, R.P., Kung, H.T.: Fast algorithms for manipulating formal power series. J. ACM 25(4), 581–595 (1978)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Bürgisser, P., Clausen, M., Shokrollahi, M.A.: Algebraic complexity theory. Grund. Math. Wissen, vol. 315. Springer, Heidelberg (1997)zbMATHGoogle Scholar
  6. 6.
    Cantor, D.G., Kaltofen, E.: On fast multiplication of polynomials over arbitrary algebras. Acta Informatica 28(7), 693–701 (1991)MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    Cooley, J., Tukey, J.: An algorithm for the machine calculation of complex Fourier series. Mathematics of computation 19 (1965)Google Scholar
  8. 8.
    Gaudry, P., Thomé, E.: The mpFq library and implementing curve-based key exchanges. In: SPEED, pp. 49–64 (2007)Google Scholar
  9. 9.
    Hanrot, G., Quercia, M., Zimmermann, P.: The middle product algorithm. I. Appl. Algebra Engrg. Comm. Comput. 14(6), 415–438 (2004)MathSciNetCrossRefzbMATHGoogle Scholar
  10. 10.
    Hanrot, G., Zimmermann, P.: A long note on Mulders’ short product. J. Symb. Comput. 37(3), 391–401 (2004)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Karatsuba, A., Ofman, Y.: Multiplication of multidigit numbers on automata. Soviet Math. Dokl. 7, 595–596 (1963)Google Scholar
  12. 12.
    Monagan, M., Pearce, R.: Parallel sparse polynomial multiplication using heaps. In: ISSAC 2009. ACM, New York (to appear, 2009)Google Scholar
  13. 13.
    Montgomery, P.L.: Modular multiplication without trial division. Mathematics of Computation 44(170), 519–521 (1985)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    Mulders, T.: On short multiplications and divisions. Appl. Algebra Engrg. Comm. Comput. 11(1), 69–88 (2000)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Schönhage, A., Strassen, V.: Schnelle Multiplikation großer Zahlen. Computing 7, 281–292 (1971)MathSciNetCrossRefzbMATHGoogle Scholar
  16. 16.
    Shoup, V.: A library for doing number theory, http://www.shoup.net/ntl/
  17. 17.
    Shoup, V.: A new polynomial factorization algorithm and its implementation. J. Symb. Comp. 20(4), 363–397 (1995)MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Toom, A.: The complexity of a scheme of functional elements realizing the multiplication of integers. Doklady Akad. Nauk USSR 150(3), 496–498 (1963)zbMATHGoogle Scholar
  19. 19.
    van der Hoeven, J.: Relax, but don’t be too lazy. J. Symbolic Comput. 34(6), 479–542 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  20. 20.
    von zur Gathen, J., Gerhard, J.: Modern computer algebra, 2nd edn. Cambridge University Press, Cambridge (2003)zbMATHGoogle Scholar
  21. 21.
    Winograd, S.: Arithmetic complexity of computations. In: CBMS-NSF Regional Conference Series in Applied Mathematics, vol. 33. SIAM, Philadelphia (1980)Google Scholar
  22. 22.
    Zimmermann, P.: Irred-ntl patch, http://www.loria.fr/~zimmerma/irred/

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Ling Ding
    • 1
  • Éric Schost
    • 1
  1. 1.ORCCA, Computer Science DepartmentThe University of Western OntarioLondonCanada

Personalised recommendations