Improved algorithms for Boolean matrix multiplication via opportunistic matrix multiplication

by   David G. Harris, et al.

Karppa Kaski (2019) proposed a novel type of "broken" or "opportunistic" multiplication algorithm, based on a variant of Strassen's alkgorithm, and used this to develop new algorithms for Boolean matrix multiplication, among other tasks. For instance, their algorithm can compute Boolean matrix multiplication in O(n^log_2(6 + 6/7)log n) = O(n^2.778) time. While faster matrix multiplication algorithms exist asymptotically, in practice most such algorithms are infeasible for practical problems. Their opportunistic algorithm is a slight variant of Strassen's algorithm, so hopefully it should yield practical as well as asymptotic improvements to it. In this note, we describe a more efficient way to use the broken matrix multiplication algorithm to solve Boolean matrix multiplication. In brief, instead of running multiple iterations of the broken algorithm on the original input matrix, we form a new larger matrix by sampling and run a single iteration of the broken algorithm on it. The resulting algorithm has runtime O( n^3 log 6/log 7 (log n)^log 6/log 7) ≤ O(n^2.763). We also describe an extension to witnessing Boolean matrix multiplication, as well as extensions to non-square matrices. The new algorithm is simple and has reasonable constants. We hope it may lead to improved practical algorithms


page 1

page 2

page 3

page 4


New Bounds for Matrix Multiplication: from Alpha to Omega

The main contribution of this paper is a new improved variant of the las...

Parallel Batch-Dynamic k-Clique Counting

In this paper, we study new batch-dynamic algorithms for k-clique counti...

Designing Strassen's algorithm

In 1969, Strassen shocked the world by showing that two n x n matrices c...

Fast Matrix Multiplication Without Tears: A Constraint Programming Approach

It is known that the multiplication of an N × M matrix with an M × P mat...

Constant-Depth and Subcubic-Size Threshold Circuits for Matrix Multiplication

Boolean circuits of McCulloch-Pitts threshold gates are a classic model ...

Almost optimal Boolean matrix multiplication [BMM]-by multi-encoding of rows and columns

The Boolean product R = P · Q of two { 0, 1} m × m matrices is R(j,k...

Algorithms for Interference Minimization in Future Wireless Network Decomposition

We propose a simple and fast method for providing a high quality solutio...

Please sign up or login with your details

Forgot password? Click here to reset