Improved algorithms for Boolean matrix multiplication via opportunistic matrix multiplication

09/27/2021
by   David G. Harris, et al.
0

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

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/16/2023

New Bounds for Matrix Multiplication: from Alpha to Omega

The main contribution of this paper is a new improved variant of the las...
research
03/30/2020

Parallel Batch-Dynamic k-Clique Counting

In this paper, we study new batch-dynamic algorithms for k-clique counti...
research
08/30/2017

Designing Strassen's algorithm

In 1969, Strassen shocked the world by showing that two n x n matrices c...
research
06/01/2023

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...
research
06/25/2020

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

Boolean circuits of McCulloch-Pitts threshold gates are a classic model ...
research
06/23/2018

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...
research
11/01/2021

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