1 research outputs found
An Experimental Study of Dynamic Dominators
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 vertices through a sequence of edge
insertions in time, where is the total number of edges
after all insertions. Moreover, we can test in constant time if a vertex
dominates a vertex , for any pair of query vertices and . 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 time for 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.Comment: A preliminary version of this paper appeared in Proc. ESA 201