Reinventing the wheel: an optimal data structure for connectivity queries

We show that, for any fixed k, there exists an optimal O(n)-space compact representation of a k-connected graph G with n vertices, such that one can determine in O(1) time whether two vertices areconnectedbyk+l vertex-dkjoint paths, or are separated by k vertices/edges. Previously, the existence of such compact representations was known only for k <3. 1 Summary of Results A fundamental issue for the fault-tolerance and reliabilityofnetworksis determining the existence of multiple disjoint paths connecting two nodes. In this paper we investigate the problem of constructing a compact representation of a graph so that one can test quickly for the existence of such paths. *Research supported in part by the National ScienceFoundation under grant CCR9007851, by the U.S. Army Research Office under grant DAAL03-91-G-o035, by the Office of Naval Research and the Defense Advanced Research Projects Agency under contract NOO014-91-J-4052, ARPA order 8225, by the NATO Scientific Affairs Division under collaborative research grant 911016, by the Pro get t o Finalimato Sisterni Informatici e Calcolo ParaUelo of the Italian National Research Council, and by the Esprit II BRA of the European Community (project ALCOM). t Department of Computer Science, University of Newcastle, Callaghan, New South Wales 2308, Australia. The work of this author was carried out in part while visiting the United States Coast Guard Academy and Brown University. t Dip=tirnento & Inforrnatica e %ternist.ica, Universit& & Roma ‘[La Sapienza”, Via Salaria 113, 00198 Rome, Italy, 5Department of Computer Science, Texas A&M University, College Station, TX 77843-3112. f Depmtment of Computer Science, Brown University, providence, RI 02912–1910. Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appear, and notice is given that copying is by permission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specific permission. 25th ACM STOC ‘93-5193 /CA, USA 9 1993 ACM 0-89791 -591 -7/93 /0005 /0794 . ..$1.!50 Given a graph G, we say that vertices v’ and vII of G are k-connected if there are k vertex-diajoint paths between vi and v“. Graph G is said to be kconnected if every pair of vertices is k-connected. Let G be a k-connected graph. A k-cut of G ia a k-tuple U={tl,... t} , k , where each t~ is a vertex or an edge, such that removing U disconnects G. By Menger’a theorem [5], G is (k + I )-connected if and only if it has no k-cut. We say that a k-cut U separates subsets V’ and V“ of vertices if U n V’ = U n V“ = 0, and there ia no connected component of G — U containing vertices of both V’ and V“. A (k + I)-connectivity query for vertices v’ and v“ of a k-connected graph G, denoted (k + I)-Paths(v’, v“), returns -true if v’ and v“ are (k + I)-connected, and otherwise returns a k-cut separating v’ and v“. In this paper we show that, for any fixed k, there exists an optimal compact representation of the pairs of (k + 1)-connected vertices. Namely, we present an O(rz)-space data structure that supports (k + l)connectivity queries on a k-connected n-vertex graph in O(1) time. Previously, the existence of such compact representationa was established only for k <3 [1, 3,7,9]. While there can be f2(rz2) k-cuts [2], our data structure ia based on a recursive decomposition of the graph by a aet of O (n) k-cuts such that any two vertices that are not (k+ 1) connected are separated by a k-cut of this aet. This recursive decomposition uses atructurea called ‘{wheels” and “flowers” , which reinterpret and generalize the corresponding structures previously defined in [3] for 3-connected graphs. If we eoneider edge-connectivity, LG., edge-di~jointi paths and k-cuts consisting only of edges, then the problem becomes the one of answering edgeconnectivity queries, for which an efficient data structure can be derived from the representation of edge k-cuts of [4] (see also [6]). Vertex connectivity problems are usually harder than the corresponding ones for edge-connectivity. Our results indicate that this is not the case for (k + 1)-connectivity queries for any fixed k.