3. Decremental reachability - Results Baswana Hariharan Sen ’02 mn 4/3 1 Monte Carlo General RZ ’02 mn 1 Las Vegas General Demetrescu Italiano ’00 n 3 1 Deterministic General La Poutré van Leeuwen ’87 FMNZ ’01 m 2 1 Deterministic General Henzinger King ’95 mn log 2 n n log n Monte Carlo General Italiano ’88 mn 1 Deterministic DAGs Authors Total update time Query time Algorithm Graphs
4. Fully dynamic reachability - Results Roditty ’03 n 2 1 Deterministic General Demetrescu Italiano ’00 n 2 1 Deterministic General King ’99 n 2 log n 1 Deterministic General Authors Amortized update time Query time Algorithm Graphs
5. Fully dynamic reachability - Results Demetrescu, Italiano ’00 n 1.58 n 0.58 Monte Carlo DAGs m 0.58 n m 0.43 Monte Carlo General RZ ’02 mn 1/2 n 1/2 Deterministic General m 0.58 n n log n Monte Carlo General Henzinger King ’95 mn 1/2 log 2 n n log n Monte Carlo General RZ ’02 m n log n Deterministic DAGs Authors Amortized update time Query time Algorithm Graphs
6. Decremental maintenance of a reachability tree in a DAG – Italiano ’s algorithm Every edge is only examined once! Total complexity is O(m) per tree.
7. Decremental maintenance of a reachability tree in a general graph Frigioni, Miller, Nanni and Zaroliagis ’01 The graph induced on the Strongly Connected Components (SCCs) of a graph is a DAG. Maintain a reachability tree of SCCs ! If a deleted edge connects two different SCCs, use Italiano’s algorithm. If a deleted edge is in a SCC, and the SCC remains strongly connected, do nothing.
10. Decremental maintenance of a BFS tree in a general graph Even, Shiloach ’81 / Henzinger, King ’95 Every edge is only examined once per level! Total complexity is O(mn).
11.
12. When a SCC decomposes w w w 4 w 2 w 1 w 3 Total cost: mn + m 1 n 1 +m 2 n 2 +m 3 n 3 +m 4 n 4 + … = O(mn) ???
13. Choice of representatives w Choose a RANDOM representative !!! Expected running time is then O(mn) !!! w w
16. Fully dynamic reachability (after Henzinger-King ’95) G Decremental data structure … v 1 v 2 v t Initialize a decremental data structure O(mn) time Insert(E v ) – build/rebuild In(v) and Out(v). O(m) time. Reach?(u,v) – Query the decremental data structure and each pair of trees. O(t) time Delete(E’) – Update the decremental data structure and rebuild all trees. O(mt) time. When t=n 1/2 , restart. Amortized cost per update – O(mn 1/2 ) Worst-case query time – O(n 1/2 )