Almost Optimal Multiple Source Shortest Paths and Reachability

Abstract

Given a graph, computing distances and reachabilities from a small set of vertices to the whole graph is an important primitive both in theory and in practice. In undirected unweighted graphs, while computing single-source shortest path (SSSP) requires O(n2) time in dense graphs, all-pairs shortest paths (APSP) can be computed in O(nω) = O(n2.372) time [Seidel '95] providing significant savings over running n SSSP instances separately. However, if one needs to compute multiple-source shortest paths (MSSP) from a set of nσ vertices, the previously best known running time was O(\nω, n2 + σ\): either compute APSP or run SSSP from each source. On the other hand, MSSP is only as hard as computing Boolean matrix product (BMM) between an nσ× n matrix and n × n matrix, leaving a significant gap. Our first main result is an almost optimal algorithm for MSSP on undirected unweighted graphs running in O(nω(σ, 1, 1)) time, which gives a smooth interpolation between the SSSP and APSP algorithms. The main technical tool behind our result is a novel graph decomposition, which may be of independent interest. Next, we study the multiple-source reachability problem, where we need to determine whether a given set of nσ vertices can reach each of the vertices in a given directed graph. Multiple-source reachability can also be solved in O(\nω, n2 + σ\) time, with the same lower bound from rectangular BMM. We give an optimal algorithm that runs in O(nω(σ, 1, 1)) time, again matching the running time for BMM. Our algorithm for multiple-source reachability can be generalized to MSSP on DAGs. As an application, we provide an O(n2.084) time algorithm for computing an O(n)-size shortcut set that reduces diameter to O(n1/3).

0

Turn this paper into a full lesson

ArcXiv compiles a staged curriculum from this paper: 8-12 lessons across beginner → advanced, synthesised section guides, visuals, flashcards, a quiz, exercises, and on-demand deep dives per section. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…