317 research outputs found
Finding Dominators via Disjoint Set Union
The problem of finding dominators in a directed graph has many important
applications, notably in global optimization of computer code. Although linear
and near-linear-time algorithms exist, they use sophisticated data structures.
We develop an algorithm for finding dominators that uses only a "static tree"
disjoint set data structure in addition to simple lists and maps. The algorithm
runs in near-linear or linear time, depending on the implementation of the
disjoint set data structure. We give several versions of the algorithm,
including one that computes loop nesting information (needed in many kinds of
global code optimization) and that can be made self-certifying, so that the
correctness of the computed dominators is very easy to verify
A simpler and more efficient algorithm for the next-to-shortest path problem
Given an undirected graph with positive edge lengths and two
vertices and , the next-to-shortest path problem is to find an -path
which length is minimum amongst all -paths strictly longer than the
shortest path length. In this paper we show that the problem can be solved in
linear time if the distances from and to all other vertices are given.
Particularly our new algorithm runs in time for general
graphs, which improves the previous result of time for sparse
graphs, and takes only linear time for unweighted graphs, planar graphs, and
graphs with positive integer edge lengths.Comment: Partial result appeared in COCOA201
2-Vertex Connectivity in Directed Graphs
We complement our study of 2-connectivity in directed graphs, by considering
the computation of the following 2-vertex-connectivity relations: We say that
two vertices v and w are 2-vertex-connected if there are two internally
vertex-disjoint paths from v to w and two internally vertex-disjoint paths from
w to v. We also say that v and w are vertex-resilient if the removal of any
vertex different from v and w leaves v and w in the same strongly connected
component. We show how to compute the above relations in linear time so that we
can report in constant time if two vertices are 2-vertex-connected or if they
are vertex-resilient. We also show how to compute in linear time a sparse
certificate for these relations, i.e., a subgraph of the input graph that has
O(n) edges and maintains the same 2-vertex-connectivity and vertex-resilience
relations as the input graph, where n is the number of vertices.Comment: arXiv admin note: substantial text overlap with arXiv:1407.304
Incremental -Edge-Connectivity in Directed Graphs
In this paper, we initiate the study of the dynamic maintenance of
-edge-connectivity relationships in directed graphs. We present an algorithm
that can update the -edge-connected blocks of a directed graph with
vertices through a sequence of edge insertions in a total of time.
After each insertion, we can answer the following queries in asymptotically
optimal time: (i) Test in constant time if two query vertices and are
-edge-connected. Moreover, if and are not -edge-connected, we can
produce in constant time a "witness" of this property, by exhibiting an edge
that is contained in all paths from to or in all paths from to .
(ii) Report in time all the -edge-connected blocks of . To the
best of our knowledge, this is the first dynamic algorithm for -connectivity
problems on directed graphs, and it matches the best known bounds for simpler
problems, such as incremental transitive closure.Comment: Full version of paper presented at ICALP 201
Kernelization and Sparseness: the case of Dominating Set
We prove that for every positive integer and for every graph class
of bounded expansion, the -Dominating Set problem admits a
linear kernel on graphs from . Moreover, when is only
assumed to be nowhere dense, then we give an almost linear kernel on for the classic Dominating Set problem, i.e., for the case . These
results generalize a line of previous research on finding linear kernels for
Dominating Set and -Dominating Set. However, the approach taken in this
work, which is based on the theory of sparse graphs, is radically different and
conceptually much simpler than the previous approaches.
We complement our findings by showing that for the closely related Connected
Dominating Set problem, the existence of such kernelization algorithms is
unlikely, even though the problem is known to admit a linear kernel on
-topological-minor-free graphs. Also, we prove that for any somewhere dense
class , there is some for which -Dominating Set is
W[]-hard on . Thus, our results fall short of proving a sharp
dichotomy for the parameterized complexity of -Dominating Set on
subgraph-monotone graph classes: we conjecture that the border of tractability
lies exactly between nowhere dense and somewhere dense graph classes.Comment: v2: new author, added results for r-Dominating Sets in bounded
expansion graph
Strong Connectivity in Directed Graphs under Failures, with Application
In this paper, we investigate some basic connectivity problems in directed
graphs (digraphs). Let be a digraph with edges and vertices, and
let be the digraph obtained after deleting edge from . As
a first result, we show how to compute in worst-case time: The
total number of strongly connected components in , for all edges
in . The size of the largest and of the smallest strongly
connected components in , for all edges in .
Let be strongly connected. We say that edge separates two vertices
and , if and are no longer strongly connected in .
As a second set of results, we show how to build in time -space
data structures that can answer in optimal time the following basic
connectivity queries on digraphs: Report in worst-case time all
the strongly connected components of , for a query edge .
Test whether an edge separates two query vertices in worst-case
time. Report all edges that separate two query vertices in optimal
worst-case time, i.e., in time , where is the number of separating
edges. (For , the time is ).
All of the above results extend to vertex failures. All our bounds are tight
and are obtained with a common algorithmic framework, based on a novel compact
representation of the decompositions induced by the -connectivity (i.e.,
-edge and -vertex) cuts in digraphs, which might be of independent
interest. With the help of our data structures we can design efficient
algorithms for several other connectivity problems on digraphs and we can also
obtain in linear time a strongly connected spanning subgraph of with
edges that maintains the -connectivity cuts of and the decompositions
induced by those cuts.Comment: An extended abstract of this work appeared in the SODA 201
- …