Computing and Testing Small Connectivity in Near-Linear Time and Queries via Fast Local Cut Algorithms

Consider the following "local" cut-detection problem in a directed graph: We are given a seed vertex $x$ and need to remove at most $k$ edges so that at most $\nu$ edges can be reached from $x$ (a "local" cut) or output $\bot$ to indicate that no such cut exists. If we are given query access to the input graph, then this problem can in principle be solved without reading the whole graph and with query complexity depending on $k$ and $\nu$. In this paper we consider a slack variant of this problem where, when such a cut exists, we can output a cut with up to $O(k\nu)$ edges reachable from $x$. We present a simple randomized algorithm spending $O(k^2\nu)$ time and $O(k\nu)$ queries for the above variant, improving in particular a previous time bound of $O(k^{O(k)}\nu)$ by Chechik et al. [SODA '17]. We also extend our algorithm to handle an approximate variant. We demonstrate that these local algorithms are versatile primitives for designing substantially improved algorithms for classic graph problems by providing the following three applications. (Throughout, $\tilde O(T)$ hides $\operatorname{polylog}(T)$.) (1) A randomized algorithm for the classic $k$-vertex connectivity problem that takes near-linear time when $k=O(\operatorname{polylog}(n))$, namely $\tilde O(m+nk^3)$ time in undirected graphs. For directed graphs our $\tilde O(mk^2)$-time algorithm is near-linear when $k=O(\operatorname{polylog}(n))$. Our techniques also yield an improved approximation scheme. (2) Property testing algorithms for $k$-edge and -vertex connectivity with query complexities that are near-linear in $k$, exponentially improving the state-of-the-art. This resolves two open problems, one by Goldreich and Ron [STOC '97] and one by Orenstein and Ron [Theor. Comput Sci. '11]. (3) A faster algorithm for computing the maximal $k$-edge connected subgraphs, improving prior work of Chechik et al. [SODA '17].

[1]  Harold N. Gabow Using expander graphs to find vertex connectivity , 2006, JACM.

[2]  Di Wang,et al.  Local Flow Partitioning for Faster Edge Connectivity , 2017, SODA.

[3]  Tibor Jordán,et al.  Directed vertex-connectivity augmentation , 1999, Math. Program..

[4]  Joseph Cheriyan,et al.  Algorithms for parallel k-vertex connectivity and sparse certificates , 1991, STOC '91.

[5]  Dana Ron,et al.  Property Testing in Bounded Degree Graphs , 1997, STOC.

[6]  Feller William,et al.  An Introduction To Probability Theory And Its Applications , 1950 .

[7]  John H. Reif,et al.  Directed s-t Bumberings, Rubber Bands, and Testing Digraph k-Vertex Connectivity , 1992, SODA.

[8]  Robert E. Tarjan,et al.  Depth-First Search and Linear Graph Algorithms , 1972, SIAM J. Comput..

[9]  Thatchaphol Saranurak,et al.  Computing and Testing Small Vertex Connectivity in Near-Linear Time and Queries , 2019, ArXiv.

[10]  Moti Medina,et al.  A (Centralized) Local Guide , 2017, Bull. EATCS.

[11]  Robert E. Tarjan,et al.  A linear-time algorithm for a special case of disjoint set union , 1983, J. Comput. Syst. Sci..

[12]  Yuichi Yoshida,et al.  Testing k-edge-connectivity of digraphs , 2010, J. Syst. Sci. Complex..

[13]  HolmJacob,et al.  Poly-logarithmic deterministic fully-dynamic algorithms for connectivity, minimum spanning tree, 2-edge, and biconnectivity , 2001 .

[14]  Donald S. Fussell,et al.  Techniques for the design of parallel graph algorithms , 1989 .

[15]  Will Rosenbaum,et al.  On Sampling Edges Almost Uniformly , 2017, SOSA.

[16]  László Lovász,et al.  Rubber bands, convex embeddings and graph connectivity , 1988, Comb..

[17]  Robert E. Tarjan,et al.  Network Flow and Testing Graph Connectivity , 1975, SIAM J. Comput..

[18]  Satish Rao,et al.  Computing Vertex Connectivity: New Bounds from Old Techniques , 2000, J. Algorithms.

[19]  Dana Ron,et al.  Testing the diameter of graphs , 1999, RANDOM-APPROX.

[20]  Yuichi Yoshida,et al.  Property Testing on k-Vertex-Connectivity of Graphs , 2010, Algorithmica.

[21]  Dana Ron,et al.  Testing Eulerianity and connectivity in directed sparse graphs , 2011, Theor. Comput. Sci..

[22]  Di Wang,et al.  Expander Decomposition and Pruning: Faster, Stronger, and Simpler , 2018, SODA.

[23]  Dana Ron,et al.  Property testing and its connection to learning and approximation , 1998, JACM.

[24]  John H. Reif,et al.  Directeds-t numberings, Rubber bands, and testing digraphk-vertex connectivity , 1994, SODA '92.

[25]  S. Louis Hakimi,et al.  On computing the connectivities of graphs and digraphs , 1984, Networks.

[26]  David W. Matula,et al.  Determining edge connectivity in 0(nm) , 1987, 28th Annual Symposium on Foundations of Computer Science (sfcs 1987).

[27]  Robert E. Tarjan,et al.  Dividing a Graph into Triconnected Components , 1973, SIAM J. Comput..

[28]  Mikkel Thorup,et al.  Poly-logarithmic deterministic fully-dynamic algorithms for connectivity, minimum spanning tree, 2-edge, and biconnectivity , 2001, JACM.

[29]  Liu Yang,et al.  A Faster Local Algorithm for Detecting Bounded-Size Cuts with Applications to Higher-Connectivity Problems , 2019, ArXiv.

[30]  Richard Peng,et al.  On Fully Dynamic Graph Sparsifiers , 2016, 2016 IEEE 57th Annual Symposium on Foundations of Computer Science (FOCS).

[31]  Julia Chuzhoy,et al.  A new algorithm for decremental single-source shortest paths with applications to vertex-capacitated flow and cut problems , 2019, STOC.

[32]  Satish Rao,et al.  Computing vertex connectivity: new bounds from old techniques , 1996, Proceedings of 37th Conference on Foundations of Computer Science.

[33]  David R. Karger,et al.  Minimum cuts in near-linear time , 1998, JACM.

[34]  Kurt Mehlhorn,et al.  A Probabilistic Algorithm for Vertex Connectivity of Graphs , 1982, Inf. Process. Lett..

[35]  Thatchaphol Saranurak,et al.  Breaking quadratic time for small vertex connectivity and an approximation scheme , 2019, STOC.

[36]  Ken-ichi Kawarabayashi,et al.  Deterministic Edge Connectivity in Near-Linear Time , 2014, J. ACM.

[37]  David R. Karger,et al.  Randomized Approximation Schemes for Cuts and Flows in Capacitated Graphs , 2002, SIAM J. Comput..

[38]  Ronitt Rubinfeld,et al.  Fast Local Computation Algorithms , 2011, ICS.

[39]  Giuseppe F. Italiano,et al.  Faster Algorithms for Computing Maximal 2-Connected Subgraphs in Sparse Directed Graphs , 2017, SODA.

[40]  Monika Henzinger,et al.  A Static 2-Approximation Algorithm for Vertex Connectivity and Incremental Approximation Algorithms for Edge and Vertex Connectivity , 1997, J. Algorithms.

[41]  Fabian Kuhn,et al.  Distributed connectivity decomposition , 2013, PODC.

[42]  Shimon Even,et al.  An Algorithm for Determining Whether the Connectivity of a Graph is at Least k , 1973, SIAM J. Comput..

[43]  Daniel J. Kleitman,et al.  Methods for investigating the connectivity of large graphs , 1969 .

[44]  Zvi Galil,et al.  Finding the Vertex Connectivity of Graphs , 1980, SIAM J. Comput..

[45]  Harold N. Gabow A matroid approach to finding edge connectivity and packing arborescences , 1991, STOC '91.

[46]  Monika Henzinger,et al.  Finding 2-Edge and 2-Vertex Strongly Connected Components in Quadratic Time , 2014, ICALP.