Integer Multiplication in Time O(n log n): Harvey–van der Hoeven Theorem 1.1Research Paper
Motivation
Multiplying two -bit integers is the basic operation underneath division, square roots, base conversion, evaluation of elementary functions to high precision, and polynomial and matrix arithmetic over ; the cost of all of these is usually quoted in units of the multiplication cost . In 1971 Schönhage and Strassen proved on a multitape Turing machine and conjectured that is the true order of growth. The upper half of that conjecture was settled by Harvey and van der Hoeven in 2019 (published 2021), who gave an algorithm achieving in the same machine model.
Timeline (multitape Turing model).
- 1962–1971: Karatsuba (), Toom and Cook, Schönhage; then Schönhage–Strassen, , with the conjecture .
- 2007: Fürer, for an unspecified constant .
- 2014–2018: Harvey, van der Hoeven and Lecerf make the constant explicit, reaching .
- 2019/2021: Harvey and van der Hoeven, , unconditionally (Theorem 1.1 of the paper below).
- 2026: an OpenAI preprint claims with , which uses the multiplier as a subroutine; that line of work is tracked in a separate mission.
Setting
A -tape Turing machine, in the conventions of Montanaro's Computational Complexity lecture notes (§3, §3.4), has the following parts:
- a finite alphabet containing a blank and a start symbol ;
- a finite set of states with a start state and a distinct halting state ;
- tapes: a read-only input tape, an output tape, and work tapes. Each tape is infinite in one direction, has its own head, and holds in its first cell and nowhere else.
In one step the machine reads the symbol under every head, writes a symbol under every head, moves each head by at most one cell (never left of ), and changes state. Once in it stays there unchanged.
For a bit string , written most significant bit first, let be the integer it represents, and for let be the length- binary representation of , padded with leading zeros. The machine is started in with on the input tape. It computes the product if, for every and all , it reaches with the output tape holding exactly followed by blanks. Its running time is the largest number of steps it takes on any pair of -bit inputs. Write
Formalization targets
Goal: Theorem 1.1 of Harvey–van der Hoeven, as stated
There is one machine that computes the product and has running time
with the natural logarithm. That is, for all , for some constants and .
Milestones
The milestones are the self-contained mathematical statements behind the Gaussian resampling step of the paper (§4.1–§4.2) and its prime-selection step (§5.2):
- Theorem 4.2 (resampling identity). For coprime and , the resampling maps and the permutations satisfy , where is the normalized DFT of length .
- Lemma 4.5. in the operator norm for the supremum norms.
- Lemma 4.6. If , where , then , where is the normalized square system of §4.2.
- Lemma 5.1. For and , there are at least primes in .
- Theorem 1.1 in the -framework, . The same machine statement with running time , where . This is the member of the family studied in the companion mission. It is equivalent to the goal, because and differ by at most a constant factor for .
Significance
The result. Theorem 1.1 makes an unconditional upper bound for integer multiplication on multitape Turing machines, matching the Schönhage–Strassen conjecture. Through standard Newton-iteration reductions it gives the same bound for division and -th roots, and for computing elementary constants and functions to precision . No superlinear lower bound for is known, so the matching lower bound remains open.
Formalizing it. The theorem has a published proof but no machine-checked proof. A formal proof would also check the full chain of reductions (splitting into digits, Chinese-remainder multidimensional convolution, Gaussian resampling, Nussbaumer polynomial transforms, fixed-point error control, and Turing-machine data movement), each with explicit error and cost accounting. The resampling identity and the norm bounds are statements of independent interest in discrete harmonic analysis, and are useful to formalize on their own.
Difficulty
The obvious approach is a Fourier transform over with bits of precision. This leads to recursive estimates of the form , and every such scheme loses a factor that tends to infinity at each level of recursion. Reaching requires every level of recursion to cost a constant factor less than the previous one. That in turn requires transforms of prime length to be replaced by power-of-two transforms at essentially no extra cost, while keeping bits of precision loss per level. In the Turing model, every reshuffling of data also costs time proportional to the data volume times a logarithm, so the reductions must avoid general sorting wherever its cost would dominate.
Formalization scope
- Machine model. Every target uses one shared definition file,
IntMul_MultitapeModel, which follows the -tape conventions of Montanaro's lecture notes. Tapes are indexed by and begin with . There is a designated state that freezes the configuration. Tape is a read-only input tape and tape is the output tape. The input is , and the output tape must hold exactly followed by the product bits and then blanks. Running time is the number of steps until . - The bound. As in the notes' definition of : there are and with for , and correctness is required for every . Following the papers, is the length of each operand and only well-formed inputs are constrained.
- Logarithms. The goal uses the paper's natural logarithm, so any valid threshold has , because . Milestone 5 restates the goal with , the convention shared with the companion mission.
- No trivial solutions. A machine that never halts, or that halts with the wrong output, on any well-formed input does not satisfy the definition, and the constant must be positive.
- Resampling maps. Vectors in are functions on , which encodes the paper's convention that an index is read mod . Norms are supremum norms, as in §2.2 of the paper. The paper's sums over are written as matrices whose entries are lattice sums over each residue class. The definitions are in
IntMul_HvdH_Resampling. - Infrastructure needed: multidimensional DFT and convolution identities, Gaussian and theta-function estimates, Chebyshev-function bounds, a library of Turing-machine subroutines (sorting, matrix transposition, fixed-point arithmetic) with cost bounds, and a composition calculus for machines. The machine library and the cost calculus can be reused across every complexity mission on the platform.
Selected references
- D. Harvey, J. van der Hoeven, Integer multiplication in time , Annals of Mathematics 193(2), 563–617, 2021. https://doi.org/10.4007/annals.2021.193.2.4 (preprint: https://hal.science/hal-02070778)
- A. Schönhage, V. Strassen, Schnelle Multiplikation großer Zahlen, Computing 7, 281–292, 1971. https://doi.org/10.1007/BF02242355
- M. Fürer, Faster integer multiplication, SIAM Journal on Computing 39(3), 979–1005, 2009. https://doi.org/10.1137/070711761
- D. Harvey, J. van der Hoeven, G. Lecerf, Even faster integer multiplication, Journal of Complexity 36, 1–30, 2016. https://doi.org/10.1016/j.jco.2016.03.001
- J. B. Rosser, L. Schoenfeld, Approximate formulas for some functions of prime numbers, Illinois Journal of Mathematics 6, 64–94, 1962. https://doi.org/10.1215/ijm/1255631807
- Wikipedia, Multiplication algorithm. https://en.wikipedia.org/wiki/Multiplication_algorithm