Improved dynamic reachability algorithms for directed graphs

We obtain several new dynamic algorithms for maintaining the transitive closure of a directed graph, and several other algorithms for answering reachability queries without explicitly maintaining a transitive closure matrix. Among our algorithms are: (i) a decremental algorithm for maintaining the transitive closure of a directed graph, through an arbitrary sequence of edge deletions, in O(mn) total expected time, essentially the time needed for computing the transitive closure of the initial graph. Such a result was previously known only for acyclic graphs; (ii) two fully dynamic algorithms for answering reachability queries. The first is deterministic and has an amortized insert/delete time of O(m/spl radic/n), and worst-case query time of O(/spl radic/n). The second is randomized and has an amortized insert/delete time of O(m/sup 0.58/n) and worst-case query time of O(m/sup 0.43/). This significantly improves the query times of algorithms with similar update times; and (iii) a fully dynamic algorithm for maintaining the transitive closure of an acyclic graph. The algorithm is deterministic and has a worst-case insert time of O(m), constant amortized delete time of O(1), and a worst-case query time of O(n/ log n). Our algorithms are obtained by combining several new ideas, one of which is a simple sampling idea used for detecting decompositions of strongly connected components, with techniques of Even and Shiloach (1981), Italiano (1988), Henzinger and King (1995), and Frigioni et al. (2001). We also adapt results of Cohen (1997) on estimating the size of the transitive closure to the dynamic setting.

[1]  Daniele Frigioni,et al.  An Experimental Study of Dynamic Algorithms for Transitive Closure , 2001, JEAL.

[2]  Shimon Even,et al.  An On-Line Edge-Deletion Problem , 1981, JACM.

[3]  Victor Y. Pan,et al.  Fast Rectangular Matrix Multiplication and Applications , 1998, J. Complex..

[4]  Mihalis Yannakakis,et al.  High-Probability Parallel Transitive-Closure Algorithms , 1991, SIAM J. Comput..

[5]  Daniele Frigioni,et al.  A Uniform Approach to Semi-Dynamic Problems on Digraphs , 1998, Theor. Comput. Sci..

[6]  Thomas H. Cormen,et al.  Introduction to algorithms [2nd ed.] , 2001 .

[7]  Giuseppe F. Italiano,et al.  Fully dynamic transitive closure: breaking through the O(n/sup 2/) barrier , 2000, Proceedings 41st Annual Symposium on Foundations of Computer Science.

[8]  Valerie King,et al.  A fully dynamic algorithm for maintaining the transitive closure , 1999, STOC '99.

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

[10]  Monika Henzinger,et al.  Fully dynamic biconnectivity and transitive closure , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[11]  Ramesh Hariharan,et al.  Improved decremental algorithms for maintaining transitive closure and all-pairs shortest paths , 2002, STOC '02.

[12]  Edith Cohen,et al.  Size-Estimation Framework with Applications to Transitive Closure and Reachability , 1997, J. Comput. Syst. Sci..

[13]  Valerie King,et al.  Fully dynamic algorithms for maintaining all-pairs shortest paths and transitive closure in digraphs , 1999, 40th Annual Symposium on Foundations of Computer Science (Cat. No.99CB37039).

[14]  Mikkel Thorup,et al.  A Space Saving Trick for Directed Dynamic Transitive Closure and Shortest Path Algorithms , 2001, COCOON.

[15]  Giuseppe F. Italiano,et al.  Finding Paths and Deleting Edges in Directed Acyclic Graphs , 1988, Inf. Process. Lett..

[16]  R. K. Shyamasundar,et al.  Introduction to algorithms , 1996 .

[17]  Don Coppersmith,et al.  Matrix multiplication via arithmetic progressions , 1987, STOC.

[18]  Liam Roditty,et al.  A faster and simpler fully dynamic transitive closure , 2003, SODA '03.

[19]  Harold N. Gabow,et al.  Path-based depth-first search for strong and biconnected components , 2000, Inf. Process. Lett..

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

[21]  Uri Zwick,et al.  All pairs shortest paths using bridging sets and rectangular matrix multiplication , 2000, JACM.

[22]  Mikkel Thorup,et al.  Poly-logarithmic deterministic fully-dynamic algorithms for connectivity, minimum spanning tree, 2-edge, and biconnectivity , 1998, STOC '98.