Skip to main content
Log in

An Efficient Strongly Connected Components Algorithm in the Fault Tolerant Model

  • Published:
Algorithmica Aims and scope Submit manuscript

Abstract

In this paper we study the problem of maintaining the strongly connected components of a graph in the presence of failures. In particular, we show that given a directed graph \(G=(V,E)\) with \(n=|V|\) and \(m=|E|\), and an integer value \(k\ge 1\), there is an algorithm that computes in \(O(2^{k}n\log ^2 n)\) time for any set F of size at most k the strongly connected components of the graph \(G{\setminus }F\). The running time of our algorithm is almost optimal since the time for outputting the SCCs of \(G{\setminus } F\) is at least \(\varOmega (n)\). The algorithm uses a data structure that is computed in a preprocessing phase in polynomial time and is of size \(O(2^{k} n^2)\). Our result is obtained using a new observation on the relation between strongly connected components (SCCs) and reachability. More specifically, one of the main building blocks in our result is a restricted variant of the problem in which we only compute strongly connected components that intersect a certain path. Restricting our attention to a path allows us to implicitly compute reachability between the path vertices and the rest of the graph in time that depends logarithmically rather than linearly in the size of the path. This new observation alone, however, is not enough, since we need to find an efficient way to represent the strongly connected components using paths. For this purpose we use a mixture of old and classical techniques such as the heavy path decomposition of Sleator and Tarjan (J Comput Syst Sci 26:362–391, 1983) and the classical Depth-First-Search algorithm. Although, these are by now standard techniques, we are not aware of any usage of them in the context of dynamic maintenance of SCCs. Therefore, we expect that our new insights and mixture of new and old techniques will be of independent interest.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2

Similar content being viewed by others

Notes

  1. For \(k>\log n\), the time taken by our algorithm is \(\omega (n^2)\), compared to which the standard static algorithm that takes \(O(m+n)\) time is better, so we will be only restricting to the case when \(k\le \log n\).

  2. We note that the heavy path decomposition was also used in the fault tolerant model in STACS’10 paper of [28], but in a completely different way and for a different problem.

References

  1. Abboud, A., Williams, V.V.: Popular conjectures imply strong lower bounds for dynamic problems. In: 55th IEEE Annual Symposium on Foundations of Computer Science, FOCS 2014, Philadelphia, PA, USA, 18–21 October 2014, pp. 434–443 (2014)

  2. Baswana, S., Choudhary, K., Roditty, L.: Fault tolerant subgraph for single source reachability: generic and optimal. In: Proceedings of the 48th Annual ACM SIGACT Symposium on Theory of Computing, STOC 2016, Cambridge, MA, USA, 18–21 June 2016

  3. Baswana, S., Khanna, N.: Approximate shortest paths avoiding a failed vertex: near optimal data structures for undirected unweighted graphs. Algorithmica 66(1), 18–50 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  4. Bernstein, A., Karger, D.: A nearly optimal oracle for avoiding failed vertices and edges. In: Proceedings of the 41st Annual ACM Symposium on Theory of computing, STOC’09, pp. 101–110. ACM, New York (2009)

  5. Bilò, D., Grandoni, F., Gualà, L., Leucci, S., Proietti, G.: Improved purely additive fault-tolerant spanners. In: Proceedings on Algorithms-ESA 2015-23rd Annual European Symposium, Patras, Greece, 14–16 September 2015, pp. 167–178 (2015)

  6. Bilò, D., Gualà, L., Leucci, S., Proietti, G.: Compact and fast sensitivity oracles for single-source distances. In: 24th Annual European Symposium on Algorithms, ESA 2016, Aarhus, Denmark, 22–24 August 2016, pp. 13:1–13:14 (2016)

  7. Bilò, D., Gualà, L., Leucci, S., Proietti, G.: Multiple-edge-fault-tolerant approximate shortest-path trees. In: 33rd Symposium on Theoretical Aspects of Computer Science, STACS 2016, Orléans, 17–20 February 2016, pp. 18:1–18:14 (2016)

  8. Bodwin, G., Grandoni, F., Parter, M., Williams, V.V.: Preserving distances in very faulty graphs. In: 44th International Colloquium on Automata, Languages, and Programming, ICALP 2017, Warsaw, Poland, 10–14 July 2017, pp. 73:1–73:14 (2017)

  9. Braunschvig, G., Chechik, S., Peleg, D., Sealfon, A.: Fault tolerant additive and (\(\mu \), \(\alpha \))-spanners. Theor. Comput. Sci. 580, 94–100 (2015)

    Article  MathSciNet  MATH  Google Scholar 

  10. Chechik, S., Cohen, S., Fiat, A., Kaplan, H.: (1 + epsilon)-approximate f-sensitive distance oracles. In: Proceedings of the Twenty-Eighth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2017, Barcelona, Spain, Hotel Porta Fira, 16–19 January, pp. 1479–1496 (2017)

  11. Chechik, S., Hansen, T.D., Italiano, G.F., Lacki, J., Parotsidis, N.: Decremental single-source reachability and strongly connected components in O(m\(\surd \)n) total update time. In: IEEE 57th Annual Symposium on Foundations of Computer Science, FOCS 2016, Hyatt Regency, New Jersey, USA, 9–11 October 2016, pp. 315–324 (2016)

  12. Chechik, S.: Fault-tolerant compact routing schemes for general graphs. Inf. Comput. 222, 36–44 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  13. Chechik, S., Langberg, M., Peleg, D., Roditty, L.: f-sensitivity distance oracles and routing schemes. Algorithmica 63(4), 861–882 (2012)

    Article  MathSciNet  MATH  Google Scholar 

  14. Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C.: Introduction to Algorithms, 3rd edn. MIT Press, Cambridge (2009)

    MATH  Google Scholar 

  15. Demetrescu, C., Thorup, M., Chowdhury, R.A., Ramachandran, V.: Oracles for distances avoiding a failed node or link. SIAM J. Comput. 37(5), 1299–1318 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  16. Dinitz, M., Krauthgamer, R.: Fault-tolerant spanners: better and simpler. In: Proceedings of the 30th Annual ACM Symposium on Principles of Distributed Computing, PODC 2011, San Jose, CA, USA, 6–8 June 2011, pp. 169–178 (2011)

  17. Duan, R., Pettie, S.: Connectivity oracles for failure prone graphs. In: Proceedings of the 42nd ACM Symposium on Theory of Computing, STOC 2010, Cambridge, Massachusetts, USA, 5–8 June 2010, pp. 465–474 (2010)

  18. Duan, R., Pettie, S.: Connectivity oracles for graphs subject to vertex failures. In: Proceedings of the Twenty-Eighth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2017, Barcelona, Spain, Hotel Porta Fira, 16–19 January, pp. 490–509 (2017)

  19. Duan, R., Pettie, S.: Dual-failure distance and connectivity oracles. In: SODA’09: proceedings of 19th Annual ACM-SIAM Symposium on Discrete Algorithms, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA, pp. 506–515 (2009)

  20. Frigioni, D., Miller, T., Nanni, U., Zaroliagis, C.D.: An experimental study of dynamic algorithms for transitive closure. ACM J. Exp. Algoritm. 6, 9 (2001)

    Article  MathSciNet  MATH  Google Scholar 

  21. Georgiadis, L., Italiano, G.F., Parotsidis, N.: Strong connectivity in directed graphs under failures, with applications. In: Proceedings of the Twenty-Eighth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2017, Barcelona, Spain, Hotel Porta Fira, 16–19 January, pp. 1880–1899 (2017)

  22. Grandoni, F., Williams, V.V.: Improved distance sensitivity oracles via fast single-source replacement paths. In: 53rd Annual IEEE Symposium on Foundations of Computer Science, FOCS 2012, New Brunswick, NJ, USA, 20–23 October 2012, pp. 748–757 (2012)

  23. Gupta, M., Khan, S.: Multiple source dual fault tolerant BFS trees. In: 44th International Colloquium on Automata, Languages, and Programming, ICALP 2017, Warsaw, Poland, 10–14 July 2017, pp. 127:1–127:15 (2017)

  24. Henzinger, M., Krinninger, S., Nanongkai, D., Saranurak, T.: Unifying and strengthening hardness for dynamic problems via the online matrix-vector multiplication conjecture. In: Proceedings of the Forty-Seventh Annual ACM on Symposium on Theory of Computing, STOC 2015, Portland, OR, USA, 14–17 June 2015, pp. 21–30 (2015)

  25. Henzinger, M., Krinninger, S., Nanongkai, D.: Improved algorithms for decremental single-source reachability on directed graphs. In: 42nd International Colloquium on Automata, Languages, and Programming, ICALP 2015, Kyoto, Japan, 6–10 July 2015, pp. 725–736 (2015)

  26. Italiano, G.F.: Finding paths and deleting edges in directed acyclic graphs. Inf. Process. Lett. 28(1), 5–11 (1988)

    Article  MathSciNet  MATH  Google Scholar 

  27. Kapron, B.M., King, V., Mountjoy B.: Dynamic graph connectivity in polylogarithmic worst case time. In: Proceedings of the Twenty-Fourth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2013, New Orleans, Louisiana, USA, 6–8 January 2013, pp. 1131–1142 (2013)

  28. Khanna, N., Baswana, S.: Approximate shortest paths avoiding a failed vertex: optimal size data structures for unweighted graphs. In: 27th International Symposium on Theoretical Aspects of Computer Science, STACS 2010, Nancy, France, 4–6 March 2010, pp. 513–524 (2010)

  29. Lacki. J.: Improved deterministic algorithms for decremental transitive closure and strongly connected components. In: Proceedings of the Twenty-Second Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2011, San Francisco, California, USA, 23–25 January 2011, pp. 1438–1445 (2011)

  30. Parter, M., Peleg, D.: Sparse fault-tolerant BFS trees. In: Proceedings on Algorithms-ESA 2013-21st Annual European Symposium, Sophia Antipolis, France, 2–4 September 2013, pp. 779–790 (2013)

  31. Parter, M.: Dual failure resilient BFS structure. In: Proceedings of the 2015 ACM Symposium on Principles of Distributed Computing, PODC 2015, Donostia-San Sebastían, Spain, 21–23 July 2015, pp. 481–490 (2015)

  32. Patrascu, M., Thorup, M.: Planning for fast connectivity updates. In: Proceedings on 48th Annual IEEE Symposium on Foundations of Computer Science (FOCS 2007), 20–23 October 2007, Providence, RI, USA, pp. 263–271 (2007)

  33. Robert Endre Tarjan: Depth-first search and linear graph algorithms. SIAM J. Comput. 1(2), 146–160 (1972)

    Article  MathSciNet  MATH  Google Scholar 

  34. Roditty, L.: Decremental maintenance of strongly connected components. In: Proceedings of the Twenty-Fourth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2013, New Orleans, Louisiana, USA, 6–8 January 2013, pp. 1143–1150 (2013)

  35. Roditty, L., Zwick, U.: Improved dynamic reachability algorithms for directed graphs. SIAM J. Comput. 37(5), 1455–1471 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  36. Sleator, D.D., Tarjan, R.E.: A data structure for dynamic trees. J. Comput. Syst. Sci. 26, 362–391 (1983)

    Article  MathSciNet  MATH  Google Scholar 

  37. Weimann, O., Yuster, R.: Replacement paths and distance sensitivity oracles via fast matrix multiplication. ACM Trans. Algorithms 9(2), 14 (2013)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Keerti Choudhary.

Additional information

A preliminary version of this paper appeared in the proceedings of ICALP 2017.

This research was partially supported by Israel Science Foundation (ISF) and University Grants Commission (UGC) of India. The research of the second author was partially supported by Google India under the Google India Ph.D. Fellowship Award.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Baswana, S., Choudhary, K. & Roditty, L. An Efficient Strongly Connected Components Algorithm in the Fault Tolerant Model. Algorithmica 81, 967–985 (2019). https://doi.org/10.1007/s00453-018-0452-3

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00453-018-0452-3

Keywords

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy