An Improved Combinatorial Algorithm for Boolean Matrix Multiplication

  • Huacheng Yu
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9134)


We present a new combinatorial algorithm for triangle finding and Boolean matrix multiplication that runs in \(\hat{O}(n^3/\log ^4 n)\) time, where the \(\hat{O}\) notation suppresses poly(loglog) factors. This improves the previous best combinatorial algorithm by Chan [4] that runs in \(\hat{O}(n^3/\log ^3 n)\) time. Our algorithm generalizes the divide-and-conquer strategy of Chan’s algorithm.

Moreover, we propose a general framework for detecting triangles in graphs and computing Boolean matrix multiplication. Roughly speaking, if we can find the “easy parts” of a given instance efficiently, we can solve the whole problem faster than \(n^3\).


Recursive Call Combinatorial Algorithm Left Child Recursion Tree Regularity Lemma 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Arlazarov, V.Z., Dinic, E.A., Kronrod, M.A., Faradzhev, I.A.: On economical construction of the transitive closure of a directed graph. Soviet Mathematics Doklady 11(5), 1209–1210 (1970)zbMATHGoogle Scholar
  2. 2.
    Bansal, N., Williams, R.: Regularity lemmas and combinatorial algorithms. In: 50th Annual IEEE Symposium on Foundations of Computer Science, pp. 745–754 (2009)Google Scholar
  3. 3.
    Brockett, R.W., Dobkin, D.: On the number of multiplications required for matrix multiplication. SIAM Journal on Computing 5, 624–628 (1976)zbMATHMathSciNetCrossRefGoogle Scholar
  4. 4.
    Chan, T.M.: Speeding up the four russians algorithm by about one more logarithmic factor. In: Proceedings of the Twenty-Sixth Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 212–217 (2015)Google Scholar
  5. 5.
    Fischer, M.J., Meyer, A.R.: Boolean matrix multiplication and transitive closure. In: 12th Annual Symposium on Switching and Automata Theory, pp. 129–131 (1971)Google Scholar
  6. 6.
    Frieze, A.M., Kannan, R.: Quick approximation to matrices and applications. Combinatorica 19(2), 175–220 (1999)zbMATHMathSciNetCrossRefGoogle Scholar
  7. 7.
    Furman, M.E.: Application of a method of fast multiplication of matrices in the problem of finding the transitive closure of a graph. Soviet Mathematics Doklady 11(5), 1252 (1970)zbMATHMathSciNetGoogle Scholar
  8. 8.
    Impagliazzo, R., Lovett, S., Paturi, R., Schneider, S.: 0–1 integer linear programming with a linear number of constraints. CoRR abs/1401.5512 (2014)Google Scholar
  9. 9.
    Le Gall, F.: Powers of tensors and fast matrix multiplication. In: International Symposium on Symbolic and Algebraic Computation, pp. 296–303 (2014)Google Scholar
  10. 10.
    Munro, I.: Efficient determination of the transitive closure of a directed graph. Information Processing Letters 1(2), 56–58 (1971)zbMATHMathSciNetCrossRefGoogle Scholar
  11. 11.
    Valiant, L.G.: General context-free recognition in less than cubic time. Journal of Computer and System Sciences 10(2), 308–315 (1975)zbMATHMathSciNetCrossRefGoogle Scholar
  12. 12.
    Vassilevska Williams, V.: Multiplying matrices faster than coppersmith-winograd. In: Proceedings of the 44th Symposium on Theory of Computing Conference, pp. 887–898 (2012)Google Scholar
  13. 13.
    Vassilevska Williams, V., Williams, R.: Subcubic equivalences between path, matrix and triangle problems. In: 51th Annual IEEE Symposium on Foundations of Computer Science, pp. 645–654 (2010)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2015

Authors and Affiliations

  1. 1.Stanford UniversityStanfordUSA

Personalised recommendations