Surpassing the information theoretic bound with fusion trees
Journal of Computer and System Sciences - Special issue: papers from the 22nd ACM symposium on the theory of computing, May 14–16, 1990
Efficient splitting and merging algorithms for order decomposable problems
Information and Computation
Optimal bounds for the predecessor problem and related problems
Journal of Computer and System Sciences - STOC 1999
New data structures for orthogonal range searching
FOCS '00 Proceedings of the 41st Annual Symposium on Foundations of Computer Science
A fully dynamic reachability algorithm for directed graphs with an almost linear update time
STOC '04 Proceedings of the thirty-sixth annual ACM symposium on Theory of computing
0(\sqrt {\log n)} Approximation to SPARSEST CUT in Õ(n2) Time
FOCS '04 Proceedings of the 45th Annual IEEE Symposium on Foundations of Computer Science
Worst-case update times for fully-dynamic all-pairs shortest paths
Proceedings of the thirty-seventh annual ACM symposium on Theory of computing
Time-space trade-offs for predecessor search
Proceedings of the thirty-eighth annual ACM symposium on Theory of computing
Combinatorica
Dynamic Subgraph Connectivity with Geometric Applications
SIAM Journal on Computing
Faster dynamic matchings and vertex connectivity
SODA '07 Proceedings of the eighteenth annual ACM-SIAM symposium on Discrete algorithms
Planning for Fast Connectivity Updates
FOCS '07 Proceedings of the 48th Annual IEEE Symposium on Foundations of Computer Science
Bounded-leg distance and reachability oracles
Proceedings of the nineteenth annual ACM-SIAM symposium on Discrete algorithms
Oracles for Distances Avoiding a Failed Node or Link
SIAM Journal on Computing
Preserving order in a forest in less than logarithmic time
SFCS '75 Proceedings of the 16th Annual Symposium on Foundations of Computer Science
Dynamic Connectivity: Connecting to Networks and Geometry
FOCS '08 Proceedings of the 2008 49th Annual IEEE Symposium on Foundations of Computer Science
Dual-failure distance and connectivity oracles
SODA '09 Proceedings of the twentieth Annual ACM-SIAM Symposium on Discrete Algorithms
Expander flows, geometric embeddings and graph partitioning
Journal of the ACM (JACM)
A nearly optimal oracle for avoiding failed vertices and edges
Proceedings of the forty-first annual ACM symposium on Theory of computing
New data structures for subgraph connectivity
ICALP'10 Proceedings of the 37th international colloquium conference on Automata, languages and programming
Fault-tolerant compact routing schemes for general graphs
ICALP'11 Proceedings of the 38th international conference on Automata, languages and programming - Volume Part II
Connectivity oracles for planar graphs
SWAT'12 Proceedings of the 13th Scandinavian conference on Algorithm Theory
Fault-tolerant compact routing schemes for general graphs
Information and Computation
Hi-index | 0.00 |
Dynamic graph connectivity algorithms have been studied for many years, but typically in the most general possible setting, where the graph can evolve in completely arbitrary ways. In this paper we consider a dynamic subgraph model. We assume there is some fixed, underlying graph that can be preprocessed ahead of time. The graph is subject only to vertices and edges flipping "off" (failing) and "on" (recovering), where queries naturally apply to the subgraph on edges/vertices currently flipped on. This model fits most real world scenarios, where the topology of the graph in question (say a router network or road network) is constantly evolving due to temporary failures but never deviates too far from the ideal failure-free state. We present the first efficient connectivity oracle for graphs susceptible to vertex failures. Given vertices u and v and a set D of d failed vertices, we can determine if there is a path from u to v avoiding D in time polynomial in d log n. There is a tradeoff in our oracle between the space, which is roughly mnε, for 0d)) or update time Ω(dn), that is, linear in the number of vertices. Our connectivity oracle is therefore the first of its kind. As a byproduct of our oracle for vertex failures we reduce the problem of constructing an edge-failure oracle to 2D range searching over the integers. We show there is an ~O(m)-space oracle that processes any set of d failed edges in O(d2 log log n) time and, thereafter, answers connectivity queries in O(log log n) time. Our update time is exponentially faster than a recent connectivity oracle of Patrascu and Thorup for bounded d, but slower as a function of d.