Skip to main content

Dominator Certification and Independent Spanning Trees: An Experimental Study

  • Conference paper
Book cover Experimental Algorithms (SEA 2013)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 7933))

Included in the following conference series:

Abstract

We present the first implementations of certified algorithms for computing dominators, and exhibit their efficiency experimentally on graphs taken from a variety of applications areas. The certified algorithms are obtained by augmenting dominator-finding algorithms to compute a certificate of correctness that is easy to verify. A suitable certificate for dominators is obtained from the concepts of low-high orders and independent spanning trees. Therefore, our implementations provide efficient constructions of these concepts as well, which are interesting in their own right. Furthermore, we present an experimental study of efficient algorithms for computing dominators on large graphs.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Allen, F.E., Cocke, J.: Graph theoretic constructs for program control flow analysis. Tech. Rep. IBM Res. Rep. RC 3923, IBM T.J. Watson Research Center (1972)

    Google Scholar 

  2. Allesina, S., Bodini, A.: Who dominates whom in the ecosystem? Energy flow bottlenecks and cascading extinctions. Journal of Theoretical Biology 230(3), 351–358 (2004)

    Article  MathSciNet  Google Scholar 

  3. Alstrup, S., Harel, D., Lauridsen, P.W., Thorup, M.: Dominators in linear time. SIAM Journal on Computing 28(6), 2117–2132 (1999)

    Article  MathSciNet  MATH  Google Scholar 

  4. Amyeen, M.E., Fuchs, W.K., Pomeranz, I., Boppana, V.: Fault equivalence identification using redundancy information and static and dynamic extraction. In: Proceedings of the 19th IEEE VLSI Test Symposium (March 2001)

    Google Scholar 

  5. Bender, M.A., Cole, R., Demaine, E.D., Farach-Colton, M., Zito, J.: Two simplified algorithms for maintaining order in a list. In: Möhring, R.H., Raman, R. (eds.) ESA 2002. LNCS, vol. 2461, pp. 152–164. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  6. Buchsbaum, A.L., Georgiadis, L., Kaplan, H., Rogers, A., Tarjan, R.E., Westbrook, J.R.: Linear-time algorithms for dominators and other path-evaluation problems. SIAM Journal on Computing 38(4), 1533–1573 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  7. Buchsbaum, A.L., Kaplan, H., Rogers, A., Westbrook, J.R.: A new, simpler linear-time dominators algorithm. ACM Transactions on Programming Languages and Systems 20(6), 1265–1296 (1998); Corrigendum in 27(3), 383–387 (2005)

    Article  Google Scholar 

  8. CAD Benchmarking Lab: ISCAS’89 benchmark information, http://www.cbl.ncsu.edu/www/CBL_Docs/iscas89.html

  9. Cheriyan, J., Reif, J.H.: Directed s-t numberings, rubber bands, and testing digraph k-vertex connectivity. Combinatorica, 435–451 (1994), also in SODA 1992

    Google Scholar 

  10. Cooper, K.D., Harvey, T.J., Kennedy, K.: A simple, fast dominance algorithm. Software Practice & Experience 4, 110 (2001)

    Google Scholar 

  11. Cytron, R., Ferrante, J., Rosen, B.K., Wegman, M.N., Zadeck, F.K.: Efficiently computing static single assignment form and the control dependence graph. ACM Transactions on Programming Languages and Systems 13(4), 451–490 (1991)

    Article  Google Scholar 

  12. Demetrescu, C., Goldberg, A., Johnson, D.: 9th DIMACS Implementation Challenge: Shortest Paths (2007), http://www.dis.uniroma1.it/~challenge9/

  13. Dietz, P., Sleator, D.: Two algorithms for maintaining order in a list. In: Proc. 19th ACM Symp. on Theory of Computing, pp. 365–372 (1987)

    Google Scholar 

  14. Firmani, D., Italiano, G.F., Laura, L., Orlandi, A., Santaroni, F.: Computing strong articulation points and strong bridges in large scale graphs. In: Klasing, R. (ed.) SEA 2012. LNCS, vol. 7276, pp. 195–207. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  15. Georgiadis, L.: Testing 2-vertex connectivity and computing pairs of vertex-disjoint s-t paths in digraphs. In: Abramsky, S., Gavoille, C., Kirchner, C., Meyer auf der Heide, F., Spirakis, P.G. (eds.) ICALP 2010. LNCS, vol. 6198, pp. 738–749. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  16. Georgiadis, L.: Approximating the smallest 2-vertex connected spanning subgraph of a directed graph. In: Demetrescu, C., Halldórsson, M.M. (eds.) ESA 2011. LNCS, vol. 6942, pp. 13–24. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  17. Georgiadis, L., Tarjan, R.E.: Finding dominators revisited. In: Proc. 15th ACM-SIAM Symp. on Discrete Algorithms, pp. 862–871 (2004)

    Google Scholar 

  18. Georgiadis, L., Tarjan, R.E.: Dominator tree verification and vertex-disjoint paths. In: Proc. 16th ACM-SIAM Symp. on Discrete Algorithms, pp. 433–442 (2005)

    Google Scholar 

  19. Georgiadis, L., Tarjan, R.E.: Dominator tree certification and independent spanning trees. CoRR abs/1210.8303 (2012) (submitted for journal publication)

    Google Scholar 

  20. Georgiadis, L., Tarjan, R.E.: Dominators, directed bipolar orders, and independent spanning trees. In: Czumaj, A., Mehlhorn, K., Pitts, A., Wattenhofer, R. (eds.) ICALP 2012, Part I. LNCS, vol. 7391, pp. 375–386. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  21. Georgiadis, L., Tarjan, R.E., Werneck, R.F.: Finding dominators in practice. Journal of Graph Algorithms and Applications (JGAA) 10(1), 69–94 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  22. Gomez-Rodriguez, M., Schölkopf, B.: Influence maximization in continuous time diffusion networks. In: 29th International Conference on Machine Learning, ICML (2012)

    Google Scholar 

  23. Huck, A.: Independent trees in graphs. Graphs and Combinatorics 10, 29–45 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  24. Italiano, G.F., Laura, L., Santaroni, F.: Finding strong bridges and strong articulation points in linear time. Theoretical Computer Science 447, 74–84 (2012)

    Article  MathSciNet  MATH  Google Scholar 

  25. Lengauer, T., Tarjan, R.E.: A fast algorithm for finding dominators in a flowgraph. ACM Transactions on Programming Languages and Systems 1(1), 121–141 (1979)

    Article  MATH  Google Scholar 

  26. Leskovec, J.: Stanford large network dataset collection (2009), http://snap.stanford.edu

  27. Maxwell, E.K., Back, G., Ramakrishnan, N.: Diagnosing memory leaks using graph mining on heap dumps. In: Proceedings of the 16th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, KDD 2010, pp. 115–124 (2010)

    Google Scholar 

  28. McConnell, R.M., Mehlhorn, K., Näher, S., Schweitzer, P.: Certifying algorithms. Computer Science Review 5(2), 119–161 (2011)

    Article  Google Scholar 

  29. Mitchell, N.: The runtime structure of object ownership. In: Thomas, D. (ed.) ECOOP 2006. LNCS, vol. 4067, pp. 74–98. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  30. Plehn, J.: Über die Existenz und das Finden von Subgraphen. Ph.D. thesis, University of Bonn, Germany (May 1991)

    Google Scholar 

  31. Purdom Jr., P.W., Moore, E.F.: Algorithm 430: Immediate predominators in a directed graph. Communications of the ACM 15(8), 777–778 (1972)

    Article  Google Scholar 

  32. Quesada, L., Van Roy, P., Deville, Y., Collet, R.: Using dominators for solving constrained path problems. In: Van Hentenryck, P. (ed.) PADL 2006. LNCS, vol. 3819, pp. 73–87. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  33. Tarjan, R.E.: Depth-first search and linear graph algorithms. SIAM Journal on Computing 1(2), 146–159 (1972)

    Article  MathSciNet  MATH  Google Scholar 

  34. Tarjan, R.E.: Finding dominators in directed graphs. SIAM Journal on Computing 3(1), 62–89 (1974)

    Article  MathSciNet  MATH  Google Scholar 

  35. Tarjan, R.E.: Efficiency of a good but not linear set union algorithm. Journal of the ACM 22(2), 215–225 (1975)

    Article  MathSciNet  MATH  Google Scholar 

  36. Whitty, R.W.: Vertex-disjoint paths and edge-disjoint branchings in directed graphs. Journal of Graph Theory 11, 349–358 (1987)

    Article  MathSciNet  MATH  Google Scholar 

  37. Zhao, J., Zdancewic, S.: Mechanized verification of computing dominators for formalizing compilers. In: Hawblitzel, C., Miller, D. (eds.) CPP 2012. LNCS, vol. 7679, pp. 27–42. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Georgiadis, L., Laura, L., Parotsidis, N., Tarjan, R.E. (2013). Dominator Certification and Independent Spanning Trees: An Experimental Study. In: Bonifaci, V., Demetrescu, C., Marchetti-Spaccamela, A. (eds) Experimental Algorithms. SEA 2013. Lecture Notes in Computer Science, vol 7933. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-38527-8_26

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-38527-8_26

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-38526-1

  • Online ISBN: 978-3-642-38527-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics