alphaFeedback

WorksMathematics

Integer multiplication below n log n

AI contributions
  • unreleased internal OpenAI model
View details
Ancillary data
3 proof or workflow links
View

Abstract

We give a deterministic algorithm that multiplies two n-bit integers in O(n(lg⁡n)1−κ)O(n(\lg n)^{1-\kappa}) worst-case time, with κ=2−182\kappa=2^{-182}, on one fixed finite-alphabet Turing machine with a fixed finite number of one-dimensional tapes. The algorithm is exact for every input length and disproves the nlog⁡nn\log n optimality conjecture of Schönhage and Strassen in this model.

Introduction

Schönhage and Strassen proved in 1971 that two nn-bit integers can be multiplied in O(nlog⁡nlog⁡log⁡n)O(n \log n \log\log n) time on a multitape Turing machine, and proposed nlog⁡nn \log n as the optimal order of growth [25], Section 1. After a sequence of improvements, Harvey and van der Hoeven reached the unconditional O(nlog⁡n)O(n \log n) upper bound [15]. We obtain a strict power saving in the logarithmic factor, in the same fixed finite-tape model. The algorithm uses linear combinations of intermediate data to reduce the cost of both address rearrangement and Fourier-transform layers.

For a binary string xx of length nn, let val⁡(x)\operatorname{val}(x) be its nonnegative integer value, with the leftmost bit most significant. For 0≤z<2k0 \le z < 2^k, let bin⁡k(z)\operatorname{bin}_k(z) denote its binary representation padded on the left to length kk. We consider exact multiplication: on input x#yx\mathbin{\#}y, with x,y∈{0,1}nx,y \in\{0,1\}^n, the output must be bin⁡2n(val⁡(x)val⁡(y))\operatorname{bin}_{2n}(\operatorname{val}(x)\operatorname{val}(y)). Write lg⁡n=max⁡{⌈log⁡2n⌉,1}\lg n = \max\{\lceil\log_2 n\rceil,1\}.

Theorem 1. There is one deterministic Turing machine AA, with a fixed finite alphabet and a fixed finite number of one-dimensional tapes, that computes this exact product for every n≥1n \ge1 and every pair of nn-bit inputs. Its worst-case running time satisfies

TA(n)=O(n(lg⁡n)1−κ),κ=2−182.T_A(n) = O\left(n(\lg n)^{1-\kappa}\right), \qquad\kappa= 2^{-182}.

The bound is asymptotic through all input lengths. The constants and thresholds in the construction are extremely large; the algorithm is intended to establish a bit-complexity bound. The theorem refutes an eventual Ω(nlog⁡n)\Omega(n \log n) lower bound for every fixed multiplication machine in this model.

The two tape operations

Splitting the inputs into radix digits reduces multiplication to convolution of short integer coefficients. Our starting point is the Gaussian-resampling reduction of Harvey and van der Hoeven [15]: it replaces the Fourier transforms needed for this convolution by multidimensional transforms whose axis lengths are powers of two. After a further conversion to convolution, one coordinate is stored as the coefficient list of a polynomial modulo yr+1y^r+1, with rr a power of two. Powers of yy then serve as roots of unity in the remaining axes, and multiplication by such a root is a signed shift of the coefficient list. These are the synthetic polynomial transforms of Nussbaumer and Quandalle and Nussbaumer [21, 20].

In this representation, the transform calculation consists of address rearrangements, signed shifts, and two-point butterfly operations. Scanning an array of Θ(n)\Theta(n) stored bits at each of Θ(log⁡n)\Theta(\log n) transform levels already costs Θ(nlog⁡n)\Theta(n \log n). We therefore need savings in both movement and arithmetic. Two tape procedures supply them; in both bounds, VV denotes the stored bit volume.

The first procedure interchanges two disjoint contiguous address fields of uu bits in an array whose addresses form a complete Cartesian product. Its cost is O(Vuτ)O(Vu^\tau) for a fixed τ<1\tau< 1. Although its final effect is an exact permutation, its intermediate steps form pointwise XOR combinations of data. The final permutation is exact for arbitrary initial auxiliary values.

The second procedure applies

H0(u,v)=((u+v)/2,(u−v)/2)H_0(u,v) = ((u+v)/2,(u-v)/2)

simultaneously on selected coordinate bits of the numerical arrays. Each record is a polynomial with complex fixed-point coefficients, and H0H_0 acts coefficientwise. On the layouts used in the multiplication algorithm, one selects the same bit position in each of at most dd equal-width address chunks, and the cost is O(Vdλ′)O(Vd^{\lambda'}) for a fixed λ′<1\lambda' < 1. Intermediate values are exact Gaussian dyadics, whose real and imaginary parts have power-of-two denominators. A single truncation follows the completed contractive layer. Section 4 proves the address bound, and Section 5 gives the numerical layout, precision hypotheses, and layer bound.

Linear networks and the recursive saving

Each procedure arises from its own fixed linear network that exchanges two banks of values, with prescribed signs, and restores every auxiliary value. A wire’s fixed place in the network is called its role. To use the network on an array, regard a row as the complete ordered suffix, including all active address fields, at a fixed prefix and row index. Distribute rows cyclically among the WW roles, padding the row count for each prefix to a multiple of WW. Let VV now denote the node volume after padding. All role streams have the same local address set and each contains V/WV/W bits. A scalar gate is then applied pointwise to matching addresses on the roles that it touches.

The representation of a role’s array may change along the network. At a source, gate, or sink vv, choose an invertible linear operator DvD_v on the space of arrays indexed by the common address set. We call DvD_v its frame: the stored array is DvgD_vg when the logical array is gg. All incidences of one gate have the same frame. Along an edge from uu to vv, the operator DvDu−1D_vD_u^{-1} changes the stored array from DugD_ug to DvgD_vg. At a pointwise linear gate GG, the common frame commutes with the gate:

G(Dvg1,…,Dvgt)=DvG(g1,…,gt).G(D_vg_1,\ldots,D_vg_t)=D_vG(g_1,\ldots,g_t).

The supplied input needs no preliminary change of frame: its logical interpretation is defined by applying the inverse input frame. Thus the intermediate frames cancel, and a route from input role ww to output role ρ(w)\rho(w) applies Dsink⁡(ρ(w))Dsource⁡(w)−1D_{\operatorname{sink}(\rho(w))}D_{\operatorname{source}(w)}^{-1}, together with its prescribed scalar sign. Undoing the role exchange and those signs leaves the endpoint operator on every role array, including the roles that carried auxiliary scalar values.

For the bit procedure, that endpoint operator is an address shear: two fields, written as vectors HH, DD over a common residue ring, are updated by (H,D)↦(H+D,D)(H,D)\mapsto(H+D,D). Two further linear-cost address updates complete their interchange. For the numerical procedure, the endpoint operator becomes the simultaneous H0H_0 layer after diagonal phase operations and a dyadic scale. The intermediate frames are chosen so that every edge can be implemented by smaller calls to the same procedure.

The finite construction in Section 3 attaches subspaces of a fixed mm-dimensional space to its gates and terminals. The subspaces at adjacent vertices are nested. Their dimension changes count the smaller operations needed on each edge, with an additional source contribution in the bit construction. The construction uses three-element subsets: gather and scatter create coefficients depending on intersection size, and auxiliary wires cancel the unwanted coefficients. Orthogonality of the corresponding indicator vectors permits the subspace assignments. The decisive property is that the total number ss of smaller calls satisfies s<Wms < Wm.

A recursive call at parameter mfmf therefore uses ss calls at parameter ff, each on a stream of volume V/WV/W. The parameter counts field digits for address interchange and selected axes for a numerical layer. After dividing cost by volume, multiplying the parameter by mm increases the recursive contribution by s/W<ms/W < m. This strict inequality is the source of the power saving. The later tape and arithmetic estimates preserve it, including the work of changing numerical address coordinates. Those changes are implemented by whole-chunk moves and controlled shifts, followed by a deterministic correction of the explicitly identified exceptional addresses.

From transforms to the exact product

The remaining proof places these procedures inside the multiplication reduction and accounts for every change of representation. First, the radix-digit coefficient list is placed on a product of distinct prime cyclic axes by a Chinese-remainder map that preserves convolution. Section 9 implements this map through triangular controlled shifts and charged axis moves. Gaussian resampling then expresses each source Fourier transform through a power-of-two tensor transform. Section 8 retains the source and target coordinate permutations in the transform identity, so they need not be executed as separate full sorts.

Next, Bluestein’s chirp identity converts the middle transform, including its target permutation, into normalized cyclic convolution. A phase twist changes the last cyclic coordinate into a polynomial modulo yr+1y^r+1; its negative wrap gives precisely the original cyclic wrap after the twist is removed. Sections 6 and 7 compute convolution on the remaining axes over this polynomial ring. The two forward synthetic transforms retain the same frequency order through their pointwise product, and the opposite transform consumes that order. Their polynomial products use signed packing and the established O(nlog⁡n)O(n \log n) multiplier as an ordinary subroutine.

Finally, the source permutation retained during resampling cancels across the two forward source transforms, their pointwise product, and the opposite-sign transform. Section 9 removes the known normalizations and digit scales, proves that the recovered coefficient error is strictly below 1/21/2, and propagates carries to obtain the exact binary product. A compatible choice of rational parameters makes all terms in its cost table fit Theorem 1. Figure 1 summarizes these reductions.

Reductions connecting the tape procedures to multiplication

Figure 1. The reductions connecting the tape procedures to multiplication. The arrows describe changes of problem and representation. Fast address interchanges organize the layouts, and simultaneous butterfly layers accelerate the synthetic transforms. Solving the final polynomial-ring convolution evaluates the transforms needed in the preceding stages. Known rescalings, rounding, and carry propagation then recover the exact integer product.

Other arithmetic operations

Corollary 2 (Exact division and integer square root). *There are deterministic machines with fixed finite alphabets and fixed finite numbers of one-dimensional tapes performing the following tasks in O(n(lg⁡n)1−κ)O(n(\lg n)^{1-\kappa}) worst-case time, for every n≥1n \ge1. For x,y∈{0,1}nx,y \in\{0,1\}^n, put a=val⁡(x)a=\operatorname{val}(x) and b=val⁡(y)b = \operatorname{val}(y). If b>0b > 0, the division machine takes x#yx\#y and returns bin⁡n(q)#bin⁡n(r)\operatorname{bin}_n(q)\#\operatorname{bin}_n(r), where q=⌊a/b⌋q = \lfloor a/b \rfloor and r=a−bqr = a - bq. The square-root machine takes xx and returns bin⁡n(⌊a⌋)\operatorname{bin}_n(\lfloor\sqrt{a}\rfloor). Leading zeroes are allowed, and κ\kappa is as in Theorem 1.

The classical Newton reductions described by Brent [5] compute reciprocal and square-root approximations at geometrically increasing precisions. Their multiplication costs are bounded by a geometric sum controlled by the last precision, and exact remainder and square tests recover the required integer answers. Section 10 gives the complete fixed-tape implementation.

Historical context and inherited methods

Karatsuba’s recursive construction, published jointly with Ofman in 1962, gave a binary multiplication circuit of size O(nlog⁡23)O(n^{\log_2 3}) [18]. Toom’s subsequent use of polynomial evaluation and interpolation gave circuit size nexp⁡(O(log⁡n))n\exp(O(\sqrt{\log n})), and hence O(n1+η)O(n^{1+\eta}) for every fixed η>0\eta> 0 [26]. These early results were formulated in terms of automata and logical networks. Cook adapted Toom’s method to the Turing-machine setting; the contemporary account of Schönhage and Strassen credits this adaptation explicitly [25].

In the multitape Turing model, Schönhage and Strassen proved the bound O(nlog⁡nlog⁡log⁡n)O(n\log n\log\log n) in 1971 [25]. Fürer improved it to nlog⁡n2O(log⁡∗n)n\log n 2^{O(\log^* n)} in 2007, with a full journal account in 2009 [10, 11]; here log⁡∗n\log^* n counts iterated logarithms until a constant threshold is reached. De, Kurur, Saha and Saptharishi developed a modular-arithmetic route to the same scale [7]. Later improvements made the exponential factor 8log⁡∗n8^{\log^* n} and then 4log⁡∗n4^{\log^* n} [17, 14]. Harvey and van der Hoeven proved the unconditional O(nlog⁡n)O(n\log n) bound [15].

The multitape bounds just cited concern that fixed model. Schönhage obtained linear-time multiplication on storage-modification machines [24]. Groff later gave a smaller-than-log nn factor in a unit-cost RAM model with constant-time arbitrary memory access, after polynomial preprocessing whose cost is excluded from that bound [13]. Neither result establishes the bound in the fixed finite-tape model of Theorem 1.

The transform methods behind these bounds also underlie the present construction. Schönhage–Strassen multiplication uses roots of unity in Fermat-type residue rings, where certain multiplications become shifts. Fürer combines cheap polynomial roots of unity with more general roots, reducing the frequency of expensive multiplications. Harvey and van der Hoeven use Gaussian resampling to pass to multidimensional transforms with power-of-two dimensions, then evaluate them using polynomial transforms developed by Nussbaumer and Quandalle and subsequently by Nussbaumer [21, 20, 15]. The Gaussian-gridding work of Dutt and Rokhlin is an earlier conceptual precursor [8]; Harvey and van der Hoeven discuss the connection in [15]. The quantitative resampling and bit-cost estimates used here are those of the latter paper.

More specifically, the proof adapts Harvey and van der Hoeven’s Gaussian-resampling identity, contraction bounds, and short-convolution procedures [15]. Their framework already permits arbitrary dimension. Here the source and target permutations remain in the transform identity, while the faster tape procedures perform the required axis movements. Bluestein’s conversion to convolution [4] and the synthetic-root convolution algorithm are retained; the latter follows the polynomial-transform construction in [15]. Signed coefficient packing is a form of Kronecker substitution, with the fixed-tape version of [15] as a direct antecedent. Calls to the established O(nlog⁡n)O(n\log n) multiplier are ordinary subroutine calls; they do not invoke the improved theorem recursively.

The finite-network ingredients

The subset-intersection construction in Section 3 has an earlier source outside multiplication. Alon’s presentation of the Frankl–Wilson construction [9] gives low-degree representations of complementary intersection graphs over different fields [2], Section 3, remark after the proof of Theorem 1.1. At the prime p=2p = 2, its subsets have size three and the two polynomial evaluations are the intersection count modulo two and the intersection count minus one. These are the two pairing formulas used here. We change the ground-set size and express the second pairing through a rational bilinear form.

The gather and scatter operations, together with the side wires, have the form of linear index-code decoding: a low-rank linear summary gives the wanted coordinate plus contributions from known neighboring coordinates, and those contributions are subtracted. Bar-Yossef, Birk, Jayram and Kol establish the fitting-matrix formulation and this decoder [3], Section 3, proof of Theorem 5. Lubetzky and Stav treat decoding over other fields and use related intersection representations to separate their possible ranks [19], Proposition 2.1 and Section 2.3. These comparisons explain the algebraic role of the two fields here; they do not supply the subspace labels on the subsequent network.

Restoring scratch registers with arbitrary initial contents also has a precise precedent. The transparent-computation construction of Buhrman, Cleve, Koucký, Loff and Speelman subtracts an initial register value, performs a computation, adds the resulting value, and reverses the computation [6], Section 3. Our scratch schedule is the linear-readout version of that construction. The rank reduction used for address shears is a singular-matrix Bruhat factorization: after reversing the coordinate order, Grigor’ev’s upper-triangular factors become the two lower-triangular factors needed here [12], Appendix A.2, Proposition 14(c).

The finite networks and their labels are proved directly in Section 3. The additional requirements are the three-stage bank exchange, nested subspaces with a strict total rank or dimension deficit, and endpoint frames acting on every role. The tape implementations then turn that deficit into the volume-normalized recurrences of Sections 4 and 5, including the costs of addressing, padding, coefficient growth, and finite precision. The cited decoding, restoration, and factorization results provide ingredients; these further properties are established in the present proof.

Lower-bound scope and matrix transposition

Schönhage and Strassen conjectured nlog⁡nn \log n as the optimal order of multiplication cost [25], Section 1. In the present fixed-tape model, an eventual lower bound for every multiplication machine means that, for each fixed machine AA, there are constants cA>0c_A > 0 and NAN_A such that TA(n)≥cAnlog⁡nT_A(n) \ge c_A n \log n whenever n≥NAn \ge N_A. Its negation requires one machine satisfying lim inf⁡n→∞TA(n)/(nlog⁡n)=0\liminf_{n \to\infty} T_A(n)/(n \log n) = 0. The power saving proved here gives a limit of zero through all input lengths, which is a stronger conclusion.

Harvey and van der Hoeven consider a binary transposition machine supplied an integer m≥1m \ge1 and a k×kk \times k binary matrix, where k=⌊m⌋k = \lfloor\sqrt{m}\rfloor. They proved that if every fixed such machine has worst-case cost Ω(mlog⁡m)\Omega(m \log m) through all sufficiently large supplied values of mm, then every fixed multiplication machine has the corresponding eventual lower bound [16], Theorem 1.2. Combining their quantitative reduction [16], Corollary 6.2 with Theorem 1 gives a deterministic fixed-tape algorithm that transposes a row-major k×kk \times k binary matrix in O(k2(log⁡k)1−κ)O(k^2(\log k)^{1-\kappa}) time, with κ\kappa as in Theorem 1. Section 11 proves the more general rectangular-matrix bound.

This comparison concerns unrestricted computation on a fixed number of one-dimensional tapes. Our address procedure forms XOR combinations of intermediate data, even though its final effect is a permutation. It therefore lies outside models restricted to moving data without such computations; see [16], Section 1.4 for the distinction.

Companion application to exact Fourier transforms

The complex phase network of Proposition 8 is also used in the companion manuscript [22], Section 1.1, Theorem 1.1 and Corollary 1.2. That manuscript gives a single algorithm for the exact discrete Fourier transform at every positive transform length nn. As n→∞n \to\infty, its cost is O(n(log⁡n)1−10−13)=o(nlog⁡n)O(n(\log n)^{1-10^{-13}}) = o(n \log n).

The cost is measured in an exact complex-register model that assigns unit cost to exact complex field operations. The algorithm accepts every x∈Cnx \in\mathbb{C}^{n}, with no bound on its entries or on intermediate complex magnitudes. Its computation on the input uses only addition, subtraction, and multiplication by prepared input-independent scalars. The magnitudes of those scalar coefficients are unrestricted as well.

Integer operations and random access on O(log⁡(n+2))O(\log(n+2))-bit words have unit cost, with a fixed number of words for each address or integer. The model supplies one specified Fourier root ζD∗\zeta_{D_*} of explicitly computable order D∗<1024n3D_* < 1024n^3. Scalar preparation, schedule construction, and index work are charged. This is a separate application of the finite network, with its own uniform array implementation. It is neither a bit-complexity consequence nor a stable floating-point FFT consequence of the fixed-tape multiplication theorem, Theorem 1.

The machine model and elementary streams

A machine has one fixed finite alphabet and one fixed finite number of one-dimensional tapes. A step reads and writes at most one cell on each tape and moves each head by at most one cell. Fixed tracks and finitely many work tapes change time by a fixed factor. We distinguish moving one digit in a fixed radix, which needs a bounded number of scans, from interchanging fields whose numbers of digits grow. The latter permutation will be realized in Section 4 by computing XOR combinations of intermediate data streams. The present section supplies the elementary scans it uses. Every scan includes its counters and the return of its tape heads.

Array order and elementary scans

For a positive integer aa write [a]={0,…,a−1}[a] = \{0,\ldots,a-1\}. An array with address set [a1]×⋯×[at][a_1] \times\cdots\times[a_t] is stored in lexicographic order, with the first coordinate most significant. Its entries are bits unless a record width is specified. A trailing record of BB bits can equivalently be regarded as a final address field [B][B]. An address is implicit in an entry’s position in this ordered stream; it is not stored beside every data bit. The logical volume VV is the number of stored data bits. Work tapes and duplicate streams are charged in time but do not increase VV in recurrences. All the fields discussed below are nonempty. A call with an empty array is handled directly.

An address permutation ff moves the entry at xx to f(x)f(x). Thus its action on an array AA is (fA)(f(x))=A(x)(fA)(f(x)) = A(x). Adjacent fields which are irrelevant to an operation may be replaced by a single field whose length is their product. In particular, the elementary procedures below have a fixed number of formal address fields even when a surrounding algorithm has a growing list of coordinates. Lengths and positions are supplied in canonical binary on descriptor tapes; no additional tape head is attached to an address coordinate. Each elementary call receives a fixed number of collapsed canonical lengths. Constructing them from a longer surrounding list is work of the caller; recursive calls below construct their own collapsed descriptors within their stated bounds.

When one address field is designated as a row field, collapse the fields before it to a prefix [P][P] and those after it to a suffix [B][B]. If the row field has range [R][R], a row at prefix pp and row index rr is the complete consecutive block {p}×{r}×[B]\{p\} \times\{r\} \times[B]. Every row therefore contains BB bits in the same suffix order.

For headers that concatenate a list of positive integer parameters, we use the self-delimiting code

bv=⌊log⁡2v⌋+1,Γ(v)=0bv−1bin⁡bv(v),∣Γ(v)∣=2bv−1(v≥1).b_v = \lfloor\log_2 v \rfloor+ 1,\qquad\Gamma(v) = 0^{b_v-1}\operatorname{bin}_{b_v}(v),\qquad|\Gamma(v)| = 2b_v - 1 \quad(v \ge1).

The initial zeroes specify how many further bits follow the first one, so concatenated codes can be read in order. We use this code when an interface specifies a header; elementary calls still receive the fixed number of canonical binary lengths described above.

Lemma 3 (Elementary stream operations). Fix a radix q≥2q \ge2. Each of the following operations on an array of volume VV takes O(V)O(V) steps on a fixed number of one-dimensional tapes:

  1. any fixed permutation of the pair of digit values at two specified radix-qq positions, whether or not the positions are adjacent;

  1. moving one specified radix-qq digit to another position, preserving the order of the intervening positions;

  1. splitting on a specified radix-qq digit, applying a fixed pointwise map to aligned streams, and merging them back;

  1. for positive integers PP, RR, BB, within each prefix of an array on [P]×[R]×[B][P] \times[R] \times[B], splitting whole rows cyclically into a fixed number WW of streams, and, when WW divides RR, merging those streams in any fixed order of the row classes.

References

  1. [1]R. C. Agarwal and J. W. Cooley. New algorithms for digital convolution. IEEE Transactions on Acoustics, Speech, and Signal Processing, 25(5):392–410, 1977.DOI
  2. [2]Noga Alon. The Shannon capacity of a union. Combinatorica, 18(3):301–310, 1998.DOI
  3. [3]Ziv Bar-Yossef, Yitzhak Birk, T. S. Jayram, and Tomer Kol. Index coding with side information. In Proceedings of the 47th Annual IEEE Symposium on Foundations of Computer Science, pages 197–206. IEEE Computer Society, 2006.
  4. [4]L. I. Bluestein. A linear filtering approach to the computation of discrete Fourier transform. IEEE Transactions on Audio and Electroacoustics, 18(4):451–455, 1970.DOI
  5. [5]Richard P. Brent. Fast multiple-precision evaluation of elementary functions. Journal of the ACM, 23(2):242–251, 1976. Author-hosted copy: https://maths-people.anu.edu.au/~brent/pd/rpb034.pdf.
  6. [6]Harry Buhrman, Richard Cleve, Michal Koucký, Bruno Loff, and Florian Speelman. Computing with a full memory: Catalytic space. In Proceedings of the 46th Annual ACM Symposium on Theory of Computing, pages 857–866. ACM, 2014.
  7. [7]Anindya De, P. P. Kurur, Chandan Saha, and Ramprasad Saptharishi. Fast integer multiplication using modular arithmetic. SIAM Journal on Computing, 42(2):685–699, 2013.
  8. [8]A. Dutt and V. Rokhlin. Fast Fourier transforms for nonequispaced data. SIAM Journal on Scientific Computing, 14(6):1368–1393, 1993.DOI
  9. [9]Peter Frankl and Richard M. Wilson. Intersection theorems with geometric consequences. Combinatorica, 1(4):357–368, 1981.DOI
  10. [10]Martin Fürer. Faster integer multiplication. In Proceedings of the 39th Annual ACM Symposium on Theory of Computing, pages 57–66. ACM, 2007.
  11. [11]Martin Fürer. Faster integer multiplication. SIAM Journal on Computing, 39(3):979–1005, 2009.
  12. [12]D. Yu. Grigor’ev. Additive complexity in directed computations. Theoretical Computer Science, 19:39–67, 1982.
  13. [13]Matt Groff. Faster integer multiplication using preprocessing, 2019. Version 2, 11 December 2019.arxiv.org/abs/1911.07124
  14. [14]David Harvey and Joris van der Hoeven. Faster integer multiplication using short lattice vectors. In Renate Scheidler and Jonathan Sorenson, editors, Proceedings of the Thirteenth Algorithmic Number Theory Symposium, volume 2 of The Open Book Series, pages 293–310. Mathematical Sciences Publishers, 2019. Preprint posted 22 February 2018.DOI
  15. [15]David Harvey and Joris van der Hoeven. Integer multiplication in time O(n log n). Annals of Mathematics, 193(2):563–617, 2021. Result numbering refers to the 45-page author-hosted manuscript, https://www.texmacs.org/joris/nlogn/nlogn.pdf, accessed 4 October 2026.DOI
  16. [16]David Harvey and Joris van der Hoeven. Integer multiplication is at least as hard as matrix transposition. In Proceedings of the 66th Annual Symposium on Foundations of Computer Science (FOCS), pages 1366–1381. IEEE Computer Society, 2025. Cited theorem numbering follows arXiv version 1, 28 March 2025, https://arxiv.org/abs/2503.22848v1.
  17. [17]David Harvey, Joris van der Hoeven, and Grégoire Lecerf. Even faster integer multiplication. Journal of Complexity, 36:1–30, 2016.arxiv.org/abs/1407.3360
  18. [18]A. Karatsuba and Yu. Ofman. Multiplication of many-digital numbers by automatic computers. Doklady Akademii Nauk SSSR, 145(2):293–294, 1962. In Russian.
  19. [19]Eyal Lubetzky and Uri Stav. Nonlinear index coding outperforming the linear optimum. IEEE Transactions on Information Theory, 55(8):3544–3551, 2009. Result numbering refers to the 16-page author preprint, https://arxiv.org/pdf/0806.1919, accessed 4 October 2026.
  20. [20]H. J. Nussbaumer. Fast polynomial transform algorithms for digital convolution. IEEE Transactions on Acoustics, Speech, and Signal Processing, 28(2):205–215, 1980.DOI
  21. [21]H. J. Nussbaumer and P. Quandalle. Computation of convolutions and discrete Fourier transforms by polynomial transforms. IBM Journal of Research and Development, 22(2):134–144, 1978.DOI
  22. [22]OpenAI. An explicit power saving for the exact discrete Fourier transform. OpenAI Math Release preprint OAI:An-explicit-power-saving-for-the-exact-discrete-Fourier-transform-September-25-2026, 2026.
  23. [23]J. Barkley Rosser and Lowell Schoenfeld. Approximate formulas for some functions of prime numbers. Illinois Journal of Mathematics, 6:64–94, 1962.
  24. [24]Arnold Schönhage. Storage modification machines. SIAM Journal on Computing, 9(3):490–508, 1980.
  25. [25]Arnold Schönhage and Volker Strassen. Schnelle Multiplikation großer Zahlen. Computing, 7:281–292, 1971.DOI
  26. [26]A. L. Toom. The complexity of a scheme of functional elements simulating the multiplication of integers. Doklady Akademii Nauk SSSR, 150(3):496–498, 1963. In Russian.

Paper details

vlnc:W_4bestkya
v1 · latestHistory (1)

published ·

Usage

views · 18

downloads · 4

A view counts once per browser per day, a download each time the PDF is requested.

LicenseRef-OpenAI-public

DOI · 10.83295/stq2-jks8

Original source

  • Mathematics

unreleased internal OpenAI model · View statement →

Looking for related papers…
Contents