Fast Integer Multiplication Using Modular Arithmetic

Anindya De, Piyush P. Kurur, Chandan Saha, Ramprasad Saptharishi
2013 SIAM journal on computing (Print)  
We give an N · log N · 2 O(log * N ) time algorithm to multiply two N -bit integers that uses modular arithmetic for intermediate computations instead of arithmetic over complex numbers as in Fürer's algorithm, which also has the same and so far the best known complexity. The previous best algorithm using modular arithmetic (by Schönhage and Strassen) has complexity O(N · log N · log log N ). The advantage of using modular arithmetic as opposed to complex number arithmetic is that we can
more » ... ely evade the task of bounding the truncation error due to finite approximations of complex numbers, which makes the analysis relatively simple. Our algorithm is based upon Fürer's algorithm, but uses FFT over multivariate polynomials along with an estimate of the least prime in an arithmetic progression to achieve this improvement in the modular setting. It can also be viewed as a p-adic version of Fürer's algorithm.
doi:10.1137/100811167 fatcat:7jy5vrfat5gmjbuuhfeu3cm5xu