Abstract
Motivated by recent applications of dominator computations we consider the problem of dynamically maintaining the dominators of a flowgraph through a sequence of insertions and deletions of edges. We present new algorithms and efficient implementations of existing algorithms and exhibit their efficiency in practice.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Allen, F.E., Cocke, J.: Graph theoretic constructs for program control flow analysis. Technical Report IBM RC 3923, IBM T.J. Watson Research (1972)
Alstrup, S., Harel, D., Lauridsen, P.W., Thorup, M.: Dominators in linear time. SIAM Journal on Computing 28(6), 2117–2132 (1999)
Alstrup, S., Lauridsen, P.W.: A simple dynamic algorithm for maintaining a dominator tree. Technical Report 96-3, Department of Computer Science, University of Copenhagen (1996)
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)
Buchsbaum, A.L., Kaplan, H., Rogers, A., Westbrook, J.R.: A new, simpler linear-time dominators algorithm. ACM Trans. on Programming Languages and Systems 27(3), 383–387 (2005)
Carroll, M.D., Ryder, B.G.: Incremental data flow analysis via dominator and attribute update. In: Proc. 15th ACM POPL, pp. 274–284 (1988)
Cicerone, S., Frigioni, D., Nanni, U., Pugliese, F.: A uniform approach to semi-dynamic problems on digraphs. Theor. Comput. Sci. 203, 69–90 (1998)
Cooper, K.D., Harvey, T.J., Kennedy, K.: A simple, fast dominance algorithm. Software Practice & Experience 4, 110 (2001)
Demetrescu, C., Goldberg, A., Johnson, D.: 9th DIMACS Implementation Challenge - Shortest Paths (2006)
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)
Gabow, H.N.: Data structures for weighted matching and nearest common ancestors with linking. In: Proc. 1st ACM-SIAM SODA, pp. 434–443 (1990)
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, Part I. LNCS, vol. 6198, pp. 738–749. Springer, Heidelberg (2010)
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)
Georgiadis, L., Tarjan, R.E.: Finding dominators revisited. In: Proc. 15th ACM-SIAM SODA, pp. 862–871 (2004)
Georgiadis, L., Tarjan, R.E.: Dominator tree verification and vertex-disjoint paths. In: Proc. 16th ACM-SIAM SODA, pp. 433–442 (2005)
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)
Georgiadis, L., Tarjan, R.E., Werneck, R.F.: Finding dominators in practice. Journal of Graph Algorithms and Applications (JGAA) 10(1), 69–94 (2006)
Italiano, G.F., Laura, L., Santaroni, F.: Finding strong bridges and strong articulation points in linear time. Theoretical Computer Science (to appear, 2012)
Lengauer, T., Tarjan, R.E.: A fast algorithm for finding dominators in a flowgraph. ACM Trans. on Programming Languages and Systems 1(1), 121–141 (1979)
Maxwell, E.K., Back, G., Ramakrishnan, N.: Diagnosing memory leaks using graph mining on heap dumps. In: Proc. 16th ACM SIGKDD Int. Conf. on Knowledge Discovery and Data Mining, KDD 2010, pp. 115–124 (2010)
Mitchell, N.: The Runtime Structure of Object Ownership. In: Hu, Q. (ed.) ECOOP 2006. LNCS, vol. 4067, pp. 74–98. Springer, Heidelberg (2006)
Patakakis, K., Georgiadis, L., Tatsis, V.A.: Dynamic dominators in practice. In: Proc. 16th Panhellenic Conference on Informatics, pp. 100–104 (2011)
Purdom Jr., P.W., Moore, E.F.: Algorithm 430: Immediate predominators in a directed graph. Communications of the ACM 15(8), 777–778 (1972)
Ramalingam, G., Reps, T.: An incremental algorithm for maintaining the dominator tree of a reducible flowgraph. In: Proc. 21st ACM POPL, pp. 287–296 (1994)
Sreedhar, V.C.: Efficient program analysis using DJ graphs. PhD thesis, School of Computer Science, McGill University (September 1995)
Sreedhar, V.C., Gao, G.R., Lee, Y.: Incremental computation of dominator trees. ACM Trans. Program. Lang. Syst. 19, 239–252 (1997)
Stanford network analysis platform (SNAP), http://snap.stanford.edu/
Tarjan, R.E.: Finding dominators in directed graphs. SIAM Journal on Computing 3(1), 62–89 (1974)
Tarjan, R.E.: Efficiency of a good but not linear set union algorithm. Journal of the ACM 22(2), 215–225 (1975)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Georgiadis, L., Italiano, G.F., Laura, L., Santaroni, F. (2012). An Experimental Study of Dynamic Dominators. In: Epstein, L., Ferragina, P. (eds) Algorithms – ESA 2012. ESA 2012. Lecture Notes in Computer Science, vol 7501. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33090-2_43
Download citation
DOI: https://doi.org/10.1007/978-3-642-33090-2_43
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-33089-6
Online ISBN: 978-3-642-33090-2
eBook Packages: Computer ScienceComputer Science (R0)