English

An Experimental Study of Dynamic Dominators

Data Structures and Algorithms 2016-04-12 v1

Abstract

Motivated by recent applications of dominator computations, we consider the problem of dynamically maintaining the dominators of flow graphs through a sequence of insertions and deletions of edges. Our main theoretical contribution is a simple incremental algorithm that maintains the dominator tree of a flow graph with nn vertices through a sequence of kk edge insertions in O(mmin{n,k}+kn)O(m\min\{n,k\}+kn) time, where mm is the total number of edges after all insertions. Moreover, we can test in constant time if a vertex uu dominates a vertex vv, for any pair of query vertices uu and vv. Next, we present a new decremental algorithm to update a dominator tree through a sequence of edge deletions. Although our new decremental algorithm is not asymptotically faster than repeated applications of a static algorithm, i.e., it runs in O(mk)O(mk) time for kk edge deletions, it performs well in practice. By combining our new incremental and decremental algorithms we obtain a fully dynamic algorithm that maintains the dominator tree through intermixed sequence of insertions and deletions of edges. Finally, we present efficient implementations of our new algorithms as well as of existing algorithms, and conduct an extensive experimental study on real-world graphs taken from a variety of application areas.

Keywords

Cite

@article{arxiv.1604.02711,
  title  = {An Experimental Study of Dynamic Dominators},
  author = {Loukas Georgiadis and Giuseppe F. Italiano and Luigi Laura and Federico Santaroni},
  journal= {arXiv preprint arXiv:1604.02711},
  year   = {2016}
}

Comments

A preliminary version of this paper appeared in Proc. ESA 2012

R2 v1 2026-06-22T13:28:53.497Z