 
Summary: Witnesses for Boolean Matrix Multiplication and for Shortest Paths
Noga Alon
Zvi Galil
Oded Margalit
Moni Naor §
Extended Abstract
Summary of results
The subcubic (O(n
) for < 3) algorithms to multiply Boolean matrices do not provide the
witnesses; namely, they compute C = AB but if Cij = 1 they do not find an index k (a witness)
such that Aik = Bkj = 1. We design a deterministic algorithm for computing the matrix of
witnesses that runs in ~O(n
) time, where here ~O(n
) denotes O(n
(log n)O(1)
).
The subcubic methods to compute the shortest distances between all pairs of vertices also
do not provide for witnesses; namely they compute the shortest distances but do not generate
information for computing quickly the paths themselves. A witness for a shortest path from
vi to vj is an index k such that vk is the first vertex on such a path. We describe subcubic
