Faster Fully Dynamic Transitive Closure in Practice

Authors Kathrin Hanauer , Monika Henzinger , Christian Schulz



PDF
Thumbnail PDF

File

LIPIcs.SEA.2020.14.pdf
  • Filesize: 1.27 MB
  • 14 pages

Document Identifiers

Author Details

Kathrin Hanauer
  • University of Vienna, Faculty of Computer Science, Austria
Monika Henzinger
  • University of Vienna, Faculty of Computer Science, Austria
Christian Schulz
  • University of Vienna, Faculty of Computer Science, Austria

Cite As Get BibTex

Kathrin Hanauer, Monika Henzinger, and Christian Schulz. Faster Fully Dynamic Transitive Closure in Practice. In 18th International Symposium on Experimental Algorithms (SEA 2020). Leibniz International Proceedings in Informatics (LIPIcs), Volume 160, pp. 14:1-14:14, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2020) https://doi.org/10.4230/LIPIcs.SEA.2020.14

Abstract

The fully dynamic transitive closure problem asks to maintain reachability information in a directed graph between arbitrary pairs of vertices, while the graph undergoes a sequence of edge insertions and deletions. The problem has been thoroughly investigated in theory and many specialized algorithms for solving it have been proposed in the last decades. In two large studies [Frigioni ea, 2001; Krommidas and Zaroliagis, 2008], a number of these algorithms have been evaluated experimentally against simple, static algorithms for graph traversal, showing the competitiveness and even superiority of the simple algorithms in practice, except for very dense random graphs or very high ratios of queries. A major drawback of those studies is that only small and mostly randomly generated graphs are considered.
In this paper, we engineer new algorithms to maintain all-pairs reachability information which are simple and space-efficient. Moreover, we perform an extensive experimental evaluation on both generated and real-world instances that are several orders of magnitude larger than those in the previous studies. Our results indicate that our new algorithms outperform all state-of-the-art algorithms on all types of input considerably in practice.

Subject Classification

ACM Subject Classification
  • Theory of computation → Dynamic graph algorithms
Keywords
  • Dynamic Graph Algorithms
  • Reachability
  • Transitive Closure

Metrics

  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    0
    PDF Downloads

References

  1. Algora - a modular algorithms library. URL: https://libalgora.gitlab.io.
  2. B. Bollobás. Random graphs. Number 73 in Cambridge Studies in Advanced Mathematics. Cambridge University Press, 2001. Google Scholar
  3. T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein. Introduction to Algorithms, chapter Elementary Data Structures. MIT Press, 3rd edition, 2009. Google Scholar
  4. C. Demetrescu and G. F. Italiano. Trade-offs for fully dynamic transitive closure on dags: Breaking through the 𝒪(n²) barrier. J. ACM, 52(2):147–156, March 2005. URL: https://doi.org/10.1145/1059513.1059514.
  5. C. Demetrescu and G. F. Italiano. Mantaining dynamic matrices for fully dynamic transitive closure. Algorithmica, 51(4):387-427, 2008. Google Scholar
  6. J. Edmonds and R. M. Karp. Theoretical improvements in algorithmic efficiency for network flow problems. Journal of the ACM, 19(2):248-264, April 1972. URL: https://doi.org/10.1145/321694.321699.
  7. R. W. Floyd. Algorithm 97: Shortest path. Commun. ACM, 5(6):345, June 1962. URL: https://doi.org/10.1145/367766.368168.
  8. L. R. Ford and D. R. Fulkerson. Maximal flow through a network. Canadian Journal of Mathematics, 8:399-404, 1956. URL: https://doi.org/10.4153/CJM-1956-045-5.
  9. D. Frigioni, T. Miller, U. Nanni, and C. Zaroliagis. An experimental study of dynamic algorithms for transitive closure. Journal of Experimental Algorithmics (JEA), 6:9, 2001. Google Scholar
  10. A. Gitter, A. Gupta, J. Klein-Seetharaman, and Z. Bar-Joseph. Discovering pathways by orienting edges in protein interaction networks. Nucleic Acids Research, 39(4):e22-e22, November 2010. Google Scholar
  11. A. V. Goldberg, S. Hed, H. Kaplan, R. E. Tarjan, and R. F. Werneck. Maximum flows by incremental breadth-first search. In European Symposium on Algorithms, pages 457-468. Springer, 2011. Google Scholar
  12. K. Hanauer, M. Henzinger, and C. Schulz. Faster fully dynamic transitive closure in practice, 2020. URL: http://arxiv.org/abs/2002.00813.
  13. K. Hanauer, M. Henzinger, and C. Schulz. Fully dynamic single-source reachability in practice: An experimental study. In Proceedings of the Symposium on Algorithm Engineering and Experiments, ALENEX 2020, Salt Lake City, UT, USA, January 5-6, 2020, pages 106-119, 2020. URL: https://doi.org/10.1137/1.9781611976007.9.
  14. M. Henzinger and V King. Fully dynamic biconnectivity and transitive closure. In 36th Annual Symposium on Foundations of Computer Science (FOCS), pages 664-672. IEEE, 1995. Google Scholar
  15. M. Henzinger, S. Krinninger, D. Nanongkai, and T. Saranurak. Unifying and strengthening hardness for dynamic problems via the online matrix-vector multiplication conjecture. In 47th ACM Symposium on Theory of Computing, STOC'15, pages 21-30. ACM, 2015. Google Scholar
  16. T. Ibaraki and N. Katoh. On-line computation of transitive closures of graphs. Information Processing Letters, 16(2):95-97, 1983. URL: https://doi.org/10.1016/0020-0190(83)90033-9.
  17. G. F. Italiano. Amortized efficiency of a path retrieval data structure. Theoretical Computer Science, 48:273-281, 1986. URL: https://doi.org/10.1016/0304-3975(86)90098-8.
  18. G. F. Italiano. Finding paths and deleting edges in directed acyclic graphs. Information Processing Letters, 28(1):5-11, 1988. Google Scholar
  19. V. King. Fully dynamic algorithms for maintaining all-pairs shortest paths and transitive closure in digraphs. In Proceedings of the 40th Annual Symposium on Foundations of Computer Science, FOCS ’99, page 81, USA, 1999. IEEE Computer Society. Google Scholar
  20. V. King and G. Sagert. A fully dynamic algorithm for maintaining the transitive closure. Journal of Computer and System Sciences, 65(1):150-167, 2002. URL: https://doi.org/10.1006/jcss.2002.1883.
  21. V. King and M. Thorup. A space saving trick for directed dynamic transitive closure and shortest path algorithms. In Proceedings of the 7th Annual International Conference on Computing and Combinatorics, COCOON ’01, page 268–277, Berlin, Heidelberg, 2001. Springer-Verlag. Google Scholar
  22. I. Krommidas and C. D. Zaroliagis. An experimental study of algorithms for fully dynamic transitive closure. ACM Journal of Experimental Algorithmics, 12:1.6:1-1.6:22, 2008. URL: https://doi.org/10.1145/1227161.1370597.
  23. J. Kunegis. Konect: the Koblenz network collection. In 22nd International Conference on World Wide Web, pages 1343-1350. ACM, 2013. Google Scholar
  24. F. Le Gall. Powers of tensors and fast matrix multiplication. In K. Nabeshima, K. Nagasaka, F. Winkler, and Á. Szántó, editors, International Symposium on Symbolic and Algebraic Computation, ISSAC '14, Kobe, Japan, July 23-25, 2014, pages 296-303. ACM, 2014. URL: https://doi.org/10.1145/2608628.2608664.
  25. J. Leskovec, D. Chakrabarti, J. Kleinberg, C. Faloutsos, and Z. Ghahramani. Kronecker graphs: An approach to modeling networks. Journal of Machine Learning Research, 11:985-1042, March 2010. URL: http://dl.acm.org/citation.cfm?id=1756006.1756039.
  26. J. Leskovec and R. Sosič. Snap: A general-purpose network analysis and graph-mining library. ACM Transactions on Intelligent Systems and Technology (TIST), 8(1):1, 2016. Google Scholar
  27. J. Lącki. 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 ’11, page 1438–1445, USA, 2011. Society for Industrial and Applied Mathematics. Google Scholar
  28. T. Reps. Program analysis via graph reachability. Information and software technology, 40(11-12):701-726, 1998. Google Scholar
  29. L. Roditty. A faster and simpler fully dynamic transitive closure. ACM Trans. Algorithms, 4(1), March 2008. URL: https://doi.org/10.1145/1328911.1328917.
  30. L. Roditty. Decremental maintenance of strongly connected components. In Proceedings of the Twenty-Fourth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA ’13, page 1143–1150, USA, 2013. Society for Industrial and Applied Mathematics. Google Scholar
  31. L. Roditty and U. Zwick. Improved dynamic reachability algorithms for directed graphs. SIAM Journal on Computing, 37(5):1455-1471, 2008. URL: https://doi.org/10.1137/060650271.
  32. L. Roditty and U. Zwick. Dynamic approximate all-pairs shortest paths in undirected graphs. SIAM J. Comput., 41(3):670-683, 2012. URL: https://doi.org/10.1137/090776573.
  33. L. Roditty and U. Zwick. A fully dynamic reachability algorithm for directed graphs with an almost linear update time. SIAM Journal on Computing, 45(3):712-733, 2016. Google Scholar
  34. P. Sankowski. Dynamic transitive closure via dynamic matrix inverse. In 45th Symposium on Foundations of Computer Science (FOCS), pages 509-517. IEEE, 2004. Google Scholar
  35. Y. Shiloach and S. Even. An on-line edge-deletion problem. Journal of the ACM, 28(1):1-4, 1981. Google Scholar
  36. R. Tarjan. Depth-first search and linear graph algorithms. SIAM Journal on Computing, 1(2):146-160, 1972. URL: https://doi.org/10.1137/0201010.
  37. J. van den Brand, D. Nanongkai, and T. Saranurak. Dynamic matrix inverse: Improved algorithms and matching conditional lower bounds. In 60th IEEE Annual Symposium on Foundations of Computer Science, FOCS 2019, Baltimore, Maryland, USA, November 9-12, 2019, pages 456-480, 2019. URL: https://doi.org/10.1109/FOCS.2019.00036.
  38. S. Warshall. A theorem on boolean matrices. J. ACM, 9(1):11–12, January 1962. URL: https://doi.org/10.1145/321105.321107.
  39. D. M. Yellin. Speeding up dynamic transitive closure for bounded degree graphs. Acta Informatica, 30(4):369-384, 1993. Google Scholar
Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail