Generic Reductions for In-place Polynomial Multiplication

The polynomial multiplication problem has attracted considerable attention since the early days of computer algebra, and several algorithms have been designed to achieve the best possible time complexity. More recently, efforts have been made to improve the space complexity, developing modified versions of a few specific algorithms to use no extra space while keeping the same asymptotic running time. In this work, we broaden the scope in two regards. First, we ask whether an arbitrary multiplication algorithm can be performed in-place generically. Second, we consider two important variants which produce only part of the result (and hence have less space to work with), the so-called middle and short products, and ask whether these operations can also be performed in-place. To answer both questions in (mostly) the affirmative, we provide a series of reductions starting with any linear-space multiplication algorithm. For full and short product algorithms these reductions yield in-place versions with the same asymptotic time complexity as the out-of-place version. For the middle product, the reduction incurs an extra logarithmic factor in the time complexity only when the algorithm is quasi-linear.

[1]  Jean-Michel Muller,et al.  Modern Computer Arithmetic , 2016, Computer.

[2]  Guillaume Hanrot,et al.  The Middle Product Algorithm I , 2004, Applicable Algebra in Engineering, Communication and Computing.

[3]  Anatolij A. Karatsuba,et al.  Multiplication of Multidigit Numbers on Automata , 1963 .

[4]  Joachim von zur Gathen,et al.  Modern Computer Algebra (3. ed.) , 2003 .

[5]  Joris van der Hoeven,et al.  Polynomial Multiplication over Finite Fields in Time \( O(n \log n \) , 2019, J. ACM.

[6]  Daniel S. Roche Space- and time-efficient polynomial multiplication , 2009, ISSAC '09.

[7]  Jean-Guillaume Dumas,et al.  Memory efficient scheduling of Strassen-Winograd's matrix multiplication algorithm , 2007, ISSAC '09.

[8]  Joris van der Hoeven,et al.  Faster Polynomial Multiplication over Finite Fields , 2014, J. ACM.

[9]  Arnold Schönhage,et al.  Schnelle Multiplikation großer Zahlen , 1971, Computing.

[10]  Joshua R. Wang,et al.  Deterministic Time-Space Tradeoffs for k-SUM , 2016, ICALP.

[11]  Thom Mulders On Short Multiplications and Divisions , 2000, Applicable Algebra in Engineering, Communication and Computing.

[12]  John E. Savage,et al.  Space-Time Tradeoffs for Oblivious Interger Multiplications , 1979, ICALP.

[13]  B. Salvy,et al.  Algorithmes Efficaces en Calcul Formel , 2017 .

[14]  Éric Schost,et al.  Tellegen's principle into practice , 2003, ISSAC '03.

[15]  Erich Kaltofen,et al.  On fast multiplication of polynomials over arbitrary algebras , 1991, Acta Informatica.

[16]  S. Cook,et al.  ON THE MINIMUM COMPUTATION TIME OF FUNCTIONS , 1969 .

[17]  V. V. Williams ON SOME FINE-GRAINED QUESTIONS IN ALGORITHMS AND COMPLEXITY , 2019, Proceedings of the International Congress of Mathematicians (ICM 2018).

[18]  P. Zimmermann,et al.  Speeding up the Division and Square Root of Power Series , 2000 .

[19]  Yiping Cheng Space-Efficient Karatsuba Multiplication for Multi-Precision Integers , 2016, ArXiv.

[20]  Chen Su,et al.  Impact of Intel's new instruction sets on software implementation of GF(2)[x] multiplication , 2012, Inf. Process. Lett..

[21]  R. Gregory Taylor,et al.  Modern computer algebra , 2002, SIGA.

[22]  Sanjeev Arora,et al.  Computational Complexity: A Modern Approach , 2009 .

[23]  David Harvey,et al.  An in-place truncated fourier transform and applications to polynomial multiplication , 2010, ISSAC.

[24]  Karl R. Abrahamson Time-space tradeoffs for branching programs contrasted with those for straight-line programs , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[25]  Richard P. Brent,et al.  Modern Computer Arithmetic , 2010 .

[26]  Emmanuel Thomé Karatsuba multiplication with temporary space of size ≤ n , 2002 .

[27]  Guillaume Hanrot,et al.  A long note on Mulders' short product , 2004, J. Symb. Comput..

[28]  Erich Kaltofen,et al.  Challenges of Symbolic Computation: My Favorite Open Problems , 2000, J. Symb. Comput..