A New Number Theoretic Transform(NTT), which is a form of FFT, is introduced, that is faster than FFTs. Also, a multiplication algorithm is introduced that uses this to perform integer multiplication faster than O(n log n). It uses preprocessing to achieve an upper bounds of (n log n/(log log n/ log log log n).
Also, we explore the possibility of O(n) time multiplication via NTTs that require only O(n) operations, using preprocessing.
We prove that $n$-bit integers may be multiplied in $O(n \log n \, 4^{\log^* n})$ bit operations. This complexity bound had been achieved previously by several authors, assuming various unproved number-theoretic hypotheses. Our proof is unconditional, and depends in an essential way on Minkowski's theorem concerning lattice vectors in symmetric convex sets.
We present an algorithm that computes the product of two n-bit integers in O(n log n (4\sqrt 2)^{log^* n}) bit operations. Previously, the best known bound was O(n log n 6^{log^* n}). We also prove that for a fixed prime p, polynomials in F_p[X] of degree n may be multiplied in O(n log n 4^{log^* n}) bit operations; the previous best bound was O(n log n 8^{log^* n}).
We consider the Online Boolean Matrix-Vector Multiplication (OMV) problem studied by Henzinger et al. [STOC'15]: given an $n \times n$ Boolean matrix $M$, we receive $n$ Boolean vectors $v_1,\ldots,v_n$ one at a time, and are required to output $M v_i$ (over the Boolean semiring) before seeing the vector $v_{i+1}$, for all $i$. Previous known algorithms for this problem are combinatorial, running in $O(n^3/\log^2 n)$ time. Henzinger et al. conjecture there is no $O(n^{3-\varepsilon})$ time algorithm for OMV, for all $\varepsilon > 0$; their OMV conjecture is shown to imply strong hardness resu…
University of Trento(特伦托大学);Politecnico di Milano(米兰理工大学);University of Verona(维罗纳大学)
In this paper, we present a novel algorithm for the maximum a posteriori decoding (MAPD) of time-homogeneous Hidden Markov Models (HMM), improving the worst-case running time of the classical Viterbi algorithm by a logarithmic factor. In our approach, we interpret the Viterbi algorithm as a repeated computation of matrix-vector $(\max, +)$-multiplications. On time-homogeneous HMMs, this computation is online: a matrix, known in advance, has to be multiplied with several vectors revealed one at a time. Our main contribution is an algorithm solving this version of matrix-vector $(\max,+)$-multip…
More Asymmetry Yields Faster Matrix Multiplication
Columbia University(哥伦比亚大学);Institute for Interdisciplinary Information Sciences, Tsinghua University(清华大学交叉信息研究院);Massachusetts Institute of Technology(麻省理工学院);Carnegie Mellon University(卡内基梅隆大学)
Faster Algorithms for Rectangular Matrix Multiplication
设α是最大值,使得n × n^α矩阵与n^α × n矩阵的乘积可以用n^{2+o(1)}次算术运算来计算。本文证明了α>0.30298,改进了Coppermith(Journal of Complexity,1997)的先前记录α>0.29462。更一般地,我们构造了一个新的算法,用于将n x n^k矩阵乘以n^k x n矩阵,对于任何值k \neq 1。该算法的复杂度优于所有已知的矩形矩阵乘法算法。在方矩阵乘法的情况下(即,对于k=1),我们精确地恢复了Coppermith和Winograd(Journal of符号计算,1990)的算法的复杂性。这些新的上界可以用来改善依赖于矩形矩阵乘法的几个已知算法的时间复杂度。例如,我们直接得到了小整数权值有向图上所有对最短路径问题的O(n^{2.5302})时间算法,改进了Zwick(JACM 2002)的O(n^{2.575})时间算法,同时也改进了稀疏方阵乘法的时间复杂度.
Can linear systems be solved faster than matrix multiplication? While there has been remarkable progress for the special cases of graph structured linear systems, in the general setting, the bit complexity of solving an $n \times n$ linear system $Ax=b$ is $\tilde{O}(n^ω)$, where $ω< 2.372864$ is the matrix multiplication exponent. Improving on this has been an open problem even for sparse linear systems with poly$(n)$ condition number. In this paper, we present an algorithm that solves linear systems in sparse matrices asymptotically faster than matrix multiplication for any $ω> 2$. This spee…
There have been several algorithms designed to optimise matrix multiplication. From schoolbook method with complexity $O(n^3)$ to advanced tensor-based tools with time complexity $O(n^{2.3728639})$ (lowest possible bound achieved), a lot of work has been done to reduce the steps used in the recursive version. Some group-theoretic and computer algebraic estimations also conjecture the existence of an $O(n^2)$ algorithm. This article discusses a quadratic-time number-theoretic approach that converts large vectors in the operands to a single large entity and combines them to make the dot-product.…
We use lookup tables to design faster algorithms for important algebraic problems over finite fields. These faster algorithms, which only use arithmetic operations and lookup table operations, may help to explain the difficulty of determining the complexities of these important problems. Our results over a constant-sized finite field are as follows. The Walsh-Hadamard transform of a vector of length $N$ can be computed using $O(N \log N / \log \log N)$ bit operations. This generalizes to any transform defined as a Kronecker power of a fixed matrix. By comparison, the Fast Walsh-Hadamard transf…
We present an algorithm that, with high probability, generates a random spanning tree from an edge-weighted undirected graph in $\tilde{O}(n^{4/3}m^{1/2}+n^{2})$ time (The $\tilde{O}(\cdot)$ notation hides $\operatorname{polylog}(n)$ factors). The tree is sampled from a distribution where the probability of each tree is proportional to the product of its edge weights. This improves upon the previous best algorithm due to Colbourn et al. that runs in matrix multiplication time, $O(n^ω)$. For the special case of unweighted graphs, this improves upon the best previously known running time of $\ti…
Fast multiplication by two's complement addition of numbers represented as a set of polynomial radix 2 indexes, stored as an integer list for massively parallel computation