English

All-Pairs 2-Reachability in $\mathcal{O}(n^{\omega}\log n)$ Time

Data Structures and Algorithms 2017-07-27 v2

Abstract

In the 22-reachability problem we are given a directed graph GG and we wish to determine if there are two (edge or vertex) disjoint paths from uu to vv, for a given pair of vertices uu and vv. In this paper, we present an algorithm that computes 22-reachability information for all pairs of vertices in O(nωlogn)\mathcal{O}(n^{\omega}\log n) time, where nn is the number of vertices and ω\omega is the matrix multiplication exponent. Hence, we show that the running time of all-pairs 22-reachability is only within a log\log factor of transitive closure. Moreover, our algorithm produces a witness (i.e., a separating edge or a separating vertex) for all pair of vertices where 22-reachability does not hold. By processing these witnesses, we can compute all the edge- and vertex-dominator trees of GG in O(n2)\mathcal{O}(n^2) additional time, which in turn enables us to answer various connectivity queries in O(1)\mathcal{O}(1) time. For instance, we can test in constant time if there is a path from uu to vv avoiding an edge ee, for any pair of query vertices uu and vv, and any query edge ee, or if there is a path from uu to vv avoiding a vertex ww, for any query vertices uu, vv, and ww.

Keywords

Cite

@article{arxiv.1612.08075,
  title  = {All-Pairs 2-Reachability in $\mathcal{O}(n^{\omega}\log n)$ Time},
  author = {Loukas Georgiadis and Daniel Graf and Giuseppe F. Italiano and Nikos Parotsidis and Przemysław Uznański},
  journal= {arXiv preprint arXiv:1612.08075},
  year   = {2017}
}

Comments

27 pages. Full version of ICALP'17 abstract