Wu and Grumbach introduced the concept of strongly biconnected directed graphs. A directed graph $G=(V,E)$ is called strongly biconnected if the directed graph $G$ is strongly connected and the underlying undirected graph of $G$ is biconnected. A strongly biconnected directed graph $G=(V,E)$ is said to be $2$- edge strongly biconnected if it has at least three vertices and the directed subgraph $(V,E\setminus\left\lbrace e\right\rbrace )$ is strongly biconnected for all $e \in E$. Let $G=(V,E)$ be a $2$-edge-strongly biconnected directed graph. In this paper we study the problem of computing a minimum size subset $H \subseteq E$ such that the directed subgraph $(V,H)$ is $2$- edge strongly biconnected.
Let $G=(V,E)$ be a strongly biconnected directed graph. In this paper we consider the problem of computing an edge subset $H \subseteq E$ of minimum size such that the directed subgraph $(V,H)$ is strongly biconnected.
A directed graph $G=(V,E)$ is strongly biconnected if $G$ is strongly connected and its underlying graph is biconnected. A strongly biconnected directed graph $G=(V,E)$ is called $2$-vertex-strongly biconnected if $|V|\geq 3$ and the induced subgraph on $V\setminus\left\lbrace w\right\rbrace $ is strongly biconnected for every vertex $w\in V$. In this paper we study the following problem. Given a $2$-vertex-strongly biconnected directed graph $G=(V,E)$, compute an edge subset $E^{2sb} \subseteq E$ of minimum size such that the subgraph $(V,E^{2sb})$ is $2$-vertex-strongly biconnected.
A directed graph $G=(V,E)$ is called strongly biconnected if $G$ is strongly connected and the underlying graph of $G$ is biconnected. This class of directed graphs was first introduced by Wu and Grumbach. Let $G=(V,E)$ be a strongly biconnected directed graph. An edge $e\in E$ is a b-bridge if the subgraph $G\setminus \left\lbrace e\right\rbrace =(V,E\setminus \left\lbrace e\right\rbrace) $ is not strongly biconnected. A vertex $w\in V$ is a b-articulation point if $G\setminus \left\lbrace w\right\rbrace$ is not strongly biconnected, where $G\setminus \left\lbrace w\right\rbrace$ is the subgr…
A directed graph $G=(V,E)$ is called strongly biconnected if $G$ is strongly connected and the underlying graph of $G$ is biconnected. A strongly biconnected component of a strongly connected graph $G=(V,E)$ is a maximal vertex subset $L\subseteq V$ such that the induced subgraph on $L$ is strongly biconnected. Let $G=(V,E)$ be a strongly biconnected directed graph. A $2$-edge-biconnected block in $G$ is a maximal vertex subset $U\subseteq V$ such that for any two distict vertices $v,w \in U$ and for each edge $b\in E$, the vertices $v,w$ are in the same strongly biconnected components of $G\s…
A strongly connected graph is strongly biconnected if after ignoring the direction of its edges we have an undirected graph with no articulation points. A 3-vertex strongly biconnected graph is a strongly biconnected digraph that has the property that deleting any two vertices in this graph leaves a strongly binconnected subgraph. Jaberi [11] presented approximation algorithms for minimum cardinality 2-vertex strongly biconnected directed subgraph problem. We will focus in this paper on polynomial time algorithms which we have implemented for producing spanning subgraphs that are 3-vertex stro…
The SPQR-tree is a data structure that compactly represents all planar embeddings of a biconnected planar graph. It plays a key role in constrained planarity testing. We develop a similar data structure, called the UP-tree, that compactly represents all upward planar embeddings of a biconnected single-source directed graph. We demonstrate the usefulness of the UP-tree by solving the upward planar embedding extension problem for biconnected single-source directed graphs.
Jaberi [7] presented approximation algorithms for the problem of computing a minimum size 2-vertex strongly biconnected subgraph in directed graphs. We have implemented approximation algorithms presented in [7] and we have tested the implementation on some graphs. The experimental results show that these algorithms work well in practice.
Given an undirected node-weighted graph, the Maximum-Weight Connected Subgraph problem (MWCS) is to identify a subset of nodes of maximalsum of weights that induce a connected subgraph. MWCS is closely related to the well-studied Prize Collecting Steiner Tree problem and has many applications in different areas, including computational biology, network design and computer vision. The problem is NP-hard and even hard to approximate within a constant factor. In this work we describe an algorithmic scheme for solving MWCS to provable optimality, which is based on preprocessing rules, new results …
Let $G$ be a strongly connected directed graph. We consider the following three problems, where we wish to compute the smallest strongly connected spanning subgraph of $G$ that maintains respectively: the $2$-edge-connected blocks of $G$ (\textsf{2EC-B}); the $2$-edge-connected components of $G$ (\textsf{2EC-C}); both the $2$-edge-connected blocks and the $2$-edge-connected components of $G$ (\textsf{2EC-B-C}). All three problems are NP-hard, and thus we are interested in efficient approximation algorithms. For \textsf{2EC-C} we can obtain a $3/2$-approximation by combining previously known re…
A directed graph G = (V,E) is singly connected if for any two vertices v, u of V, the directed graph G contains at most one simple path from v to u. In this paper, we study different algorithms to find a feasible but necessarily optimal solution to the following problem. Given a directed acyclic graph G = (V, E), find a subset H of E of minimum size such that the subgraph (V, E-H) is singly connected. Moreover, we prove that this problem can be solved in polynomial time for a special kind of directed graphs.
An undirected graph is Eulerian if it is connected and all its vertices are of even degree. Similarly, a directed graph is Eulerian, if for each vertex its in-degree is equal to its out-degree. It is well known that Eulerian graphs can be recognized in polynomial time while the problems of finding a maximum Eulerian subgraph or a maximum induced Eulerian subgraph are NP-hard. In this paper, we study the parameterized complexity of the following Euler subgraph problems: - Large Euler Subgraph: For a given graph G and integer parameter k, does G contain an induced Eulerian subgraph with at least…
We give the first fully dynamic algorithm which maintains a $(1-ε)$-approximate densest subgraph in worst-case time $\text{poly}(\log n, ε^{-1})$ per update. Dense subgraph discovery is an important primitive for many real-world applications such as community detection, link spam detection, distance query indexing, and computational biology. We approach the densest subgraph problem by framing its dual as a graph orientation problem, which we solve using an augmenting path-like adjustment technique. Our result improves upon the previous best approximation factor of $\left(\frac{1}{4} - ε\right)…
We present techniques for maintaining subgraph frequencies in a dynamic graph, using data structures that are parameterized in terms of h, the h-index of the graph. Our methods extend previous results of Eppstein and Spiro for maintaining statistics for undirected subgraphs of size three to directed subgraphs and to subgraphs of size four. For the directed case, we provide a data structure to maintain counts for all 3-vertex induced subgraphs in O(h) amortized time per update. For the undirected case, we maintain the counts of size-four subgraphs in O(h^2) amortized time per update. These exte…
Connectivity related concepts are of fundamental interest in graph theory. The area has received extensive attention over four decades, but many problems remain unsolved, especially for directed graphs. A directed graph is 2-edge-connected (resp., 2-vertex-connected) if the removal of any edge (resp., vertex) leaves the graph strongly connected. In this paper we present improved algorithms for computing the maximal 2-edge- and 2-vertex-connected subgraphs of a given directed graph. These problems were first studied more than 35 years ago, with $\widetilde{O}(mn)$ time algorithms for graphs wit…
The complexity of the maximum common connected subgraph problem in partial $k$-trees is still not fully understood. Polynomial-time solutions are known for degree-bounded outerplanar graphs, a subclass of the partial $2$-trees. On the other hand, the problem is known to be ${\bf NP}$-hard in vertex-labeled partial $11$-trees of bounded degree. We consider series-parallel graphs, i.e., partial $2$-trees. We show that the problem remains ${\bf NP}$-hard in biconnected series-parallel graphs with all but one vertex of degree $3$ or less. A positive complexity result is presented for a related pro…
In this paper, we study a survivable network design problem on directed graphs, 2-Connected Directed Steiner Tree (2-DST): given an $n$-vertex weighted directed graph, a root $r$, and a set of $h$ terminals $S$, find a min-cost subgraph $H$ that has two edge/vertex disjoint paths from $r$ to any $t\in S$. 2-DST is a natural generalization of the classical Directed Steiner Tree problem (DST), where we have an additional requirement that the network must tolerate one failure. No non-trivial approximation is known for 2-DST. This was left as an open problem by Feldman et al., [SODA'09; JCSS] and …
We study the directed maximum common edge subgraph problem (DMCES) for the class of directed graphs that are finite, weakly connected, oriented, and simple. We use DMCES to define a metric on partially ordered sets that can be represented as weakly connected directed acyclic graphs. While most existing metrics assume that the underlying sets of the partial order are identical, and only the relationships between elements can differ, the metric defined here allows the partially ordered sets to be different. The proof that there is a metric based on DMCES involves the extension of the concept of …
Given a $2$-vertex-twinless connected directed graph $G=(V,E)$, the minimum $2$-vertex-twinless connected spanning subgraph problem is to find a minimum cardinality edge subset $E^{t} \subseteq E$ such that the subgraph $(V,E^{t})$ is $2$-vertex-twinless connected. Let $G^{1}$ be a minimal $2$-vertex-connected subgraph of $G$. In this paper we present a $(2+a_{t}/2)$-approximation algorithm for the minimum $2$-vertex-twinless connected spanning subgraph problem, where $a_{t}$ is the number of twinless articulation points in $G^{1}$.
An oriented graph is a directed graph without directed 2-cycles. Poljak and Turzík (1986) proved that every connected oriented graph $G$ on $n$ vertices and $m$ arcs contains an acyclic subgraph with at least $\frac{m}{2}+\frac{n-1}{4}$ arcs. Raman and Saurabh (2006) gave another proof of this result and left it as an open question to establish the parameterized complexity of the following problem: does $G$ have an acyclic subgraph with least $\frac{m}{2}+\frac{n-1}{4}+k$ arcs, where $k$ is the parameter? We answer this question by showing that the problem can be solved by an algorithm of runt…
Recent spectral graph sparsification research allows constructing nearly-linear-sized subgraphs that can well preserve the spectral (structural) properties of the original graph, such as the first few eigenvalues and eigenvectors of the graph Laplacian, leading to the development of a variety of nearly-linear time numerical and graph algorithms. However, there is not a unified approach that allows for truly-scalable spectral sparsification of both directed and undirected graphs. In this work, we prove the existence of linear-sized spectral sparsifiers for general directed graphs and introduce …
Motion planning is a fundamental problem of robotics with applications in many areas of computer science and beyond. Its restriction to graphs has been investigated in the literature for it allows to concentrate on the combinatorial problem abstracting from geometric considerations. In this paper, we consider motion planning over directed graphs, which are of interest for asymmetric communication networks. Directed graphs generalize undirected graphs, while introducing a new source of complexity to the motion planning problem: moves are not reversible. We first consider the class of acyclic di…
Given a directed graph $G$ and a list $(s_1,t_1),\dots,(s_d,t_d)$ of terminal pairs, the Directed Steiner Network problem asks for a minimum-cost subgraph of $G$ that contains a directed $s_i\to t_i$ path for every $1\le i \le k$. The special case Directed Steiner Tree (when we ask for paths from a root $r$ to terminals $t_1,\dots,t_d$) is known to be fixed-parameter tractable parameterized by the number of terminals, while the special case Strongly Connected Steiner Subgraph (when we ask for a path from every $t_i$ to every other $t_j$) is known to be W[1]-hard. We systematically explore the …
Let $G$ be a directed graph. A \textit{$2$-directed block} in $G$ is a maximal vertex set $C^{2d}\subseteq V$ with $|C^{2d}|\geq 2$ such that for each pair of distinct vertices $x,y \in C^{2d}$, there exist two vertex-disjoint paths from $x$ to $y$ and two vertex-disjoint paths from $y$ to $x$ in $G$. In contrast to the $2$-vertex-connected components of $G$, the subgraphs induced by the $2$-directed blocks may consist of few or no edges. In this paper we present two algorithms for computing the $2$-directed blocks of $G$ in $O(\min\lbrace m,(t_{sap}+t_{sb})n\rbrace n)$ time, where $t_{sap}$ i…
Modern problems of concept annotation associate an object of interest (gene, individual, text document) with a set of interrelated textual descriptors (functions, diseases, topics), often organized in concept hierarchies or ontologies. Most ontologies can be seen as directed acyclic graphs, where nodes represent concepts and edges represent relational ties between these concepts. Given an ontology graph, each object can only be annotated by a consistent subgraph; that is, a subgraph such that if an object is annotated by a particular concept, it must also be annotated by all other concepts tha…
We study property testing in directed graphs in the bounded degree model, where we assume that an algorithm may only query the outgoing edges of a vertex, a model proposed by Bender and Ron in 2002. As our first main result, we we present a property testing algorithm for strong connectivity in this model, having a query complexity of $\mathcal{O}(n^{1-ε/(3+α)})$ for arbitrary $α>0$; it is based on a reduction to estimating the vertex indegree distribution. For subgraph-freeness we give a property testing algorithm with a query complexity of $\mathcal{O}(n^{1-1/k})$, where $k$ is the number of …
In the k-Connected Directed Steiner Tree problem (k-DST), we are given a directed graph G=(V, E) with edge (or vertex) costs, a root vertex r, a set of q terminals T, and a connectivity requirement k>0; the goal is to find a minimum-cost subgraph H of G such that H has k internally disjoint paths from the root r to each terminal t . The k-DST problem is a natural generalization of the classical Directed Steiner Tree problem (DST) in the fault-tolerant setting in which the solution subgraph is required to have an r,t-path, for every terminal t, even after removing k-1 edges or vertices. Despite…
It was recently found that there are very close connections between the existence of additive spanners (subgraphs where all distances are preserved up to an additive stretch), distance preservers (subgraphs in which demand pairs have their distance preserved exactly), and pairwise spanners (subgraphs in which demand pairs have their distance preserved up to a multiplicative or additive stretch) [Abboud-Godwin SODA '16, Godwin-Williams SODA '16]. We study these problems from an optimization point of view, where rather than studying the existence of extremal instances we are given an instance an…
In this paper we address the problem of computing a sparse subgraph of a weighted directed graph such that the exact distances from a designated source vertex to all other vertices are preserved under bounded weight increment. Finding a small sized subgraph that preserves distances between any pair of vertices is a well studied problem. Since in the real world any network is prone to failures, it is natural to study the fault tolerant version of the above problem. Unfortunately, it turns out that there may not always exist such a sparse subgraph even under single edge failure [Demetrescu \emph…
We introduce a new Steiner-type problem for directed graphs named \textsc{$q$-Root Steiner Tree}. Here one is given a directed graph $G=(V,A)$ and two subsets of its vertices, $R$ of size $q$ and $T$, and the task is to find a minimum size subgraph of $G$ that contains a path from each vertex of $R$ to each vertex of $T$. The special case of this problem with $q=1$ is the well known \textsc{Directed Steiner Tree} problem, while the special case with $T=R$ is the \textsc{Strongly Connected Steiner Subgraph} problem. We first show that the problem is W[1]-hard with respect to $|T|$ for any $q \g…
We study dynamic planar graphs with $n$ vertices, subject to edge deletion, edge contraction, edge insertion across a face, and the splitting of a vertex in specified corners. We dynamically maintain a combinatorial embedding of such a planar graph, subject to connectivity and $2$-vertex-connectivity (biconnectivity) queries between pairs of vertices. Whenever a query pair is connected and not biconnected, we find the first and last cutvertex separating them. Additionally, we allow local changes to the embedding by flipping the embedding of a subgraph that is connected by at most two vertices …
In this paper we consider the problem of computing the $2$-vertex-connected components ($2$-vccs) of directed graphs. We present two new algorithms for solving this problem. The first algorithm runs in $O(mn^{2})$ time, the second in $O(nm)$ time. Furthermore, we show that the old algorithm of Erusalimskii and Svetlov runs in $O(nm^{2})$ time. In this paper, we investigate the relationship between $2$-vccs and dominator trees. We also present an algorithm for computing the $3$-vertex-connected components ($3$-vccs) of a directed graph in $O(n^{3}m)$ time, and we show that the $k$-vertex-connec…
In the classical Maximum Acyclic Subgraph problem (MAS), given a directed-edge weighted graph, we are required to find an ordering of the nodes that maximizes the total weight of forward-directed edges. MAS admits a 2 approximation, and this approximation is optimal under the Unique Game Conjecture. In this paper we consider a generalization of MAS, the Restricted Maximum Acyclic Subgraph problem (RMAS), where each node is associated with a list of integer labels, and we have to find a labeling of the nodes so as to maximize the weight of edges whose head label is larger than the tail label. T…
In the k-edge connected directed Steiner tree (k-DST) problem, we are given a directed graph G on n vertices with edge-costs, a root vertex r, a set of h terminals T and an integer k. The goal is to find a min-cost subgraph H of G that connects r to each terminal t by k edge-disjoint r,t-paths. This problem includes as special cases the well-known directed Steiner tree (DST) problem (the case k = 1) and the group Steiner tree (GST) problem. Despite having been studied and mentioned many times in literature, e.g., by Feldman et al. [SODA'09, JCSS'12], by Cheriyan et al. [SODA'12, TALG'14] and b…
We investigate parameterized algorithms for the NP-hard problem Min-Power Asymmetric Connectivity (MinPAC) that has applications in wireless sensor networks. Given a directed arc-weighted graph, MinPAC asks for a strongly connected spanning subgraph minimizing the summed vertex costs. Here, the cost of each vertex is the weight of its heaviest outgoing arc in the chosen subgraph. We present linear-time algorithms for the cases where the number of strongly connected components in a so-called obligatory subgraph or the feedback edge number in the underlying undirected graph is constant. Compleme…
Bhawalkar, Kleinberg, Lewi, Roughgarden, and Sharma [ICALP 2012] introduced the Anchored k-Core problem, where the task is for a given graph G and integers b, k, and p to find an induced subgraph H with at least p vertices (the core) such that all but at most b vertices (called anchors) of H are of degree at least k. In this paper, we extend the notion of k-core to directed graphs and provide a number of new algorithmic and complexity results for the directed version of the problem. We show that - The decision version of the problem is NP-complete for every k>=1 even if the input graph is rest…
Recently [Bhattacharya et al., STOC 2015] provide the first non-trivial algorithm for the densest subgraph problem in the streaming model with additions and deletions to its edges, i.e., for dynamic graph streams. They present a $(0.5-ε)$-approximation algorithm using $\tilde{O}(n)$ space, where factors of $ε$ and $\log(n)$ are suppressed in the $\tilde{O}$ notation. However, the update time of this algorithm is large. To remedy this, they also provide a $(0.25-ε)$-approximation algorithm using $\tilde{O}(n)$ space with update time $\tilde{O}(1)$. In this paper we improve the algorithms by Bha…
A directed graph $G=(V,E)$ is twinless strongly connected if it contains a strongly connected spanning subgraph without any pair of antiparallel (or twin) edges. The twinless strongly connected components (TSCCs) of a directed graph $G$ are its maximal twinless strongly connected subgraphs. These concepts have several diverse applications, such as the design of telecommunication networks and the structural stability of buildings. A vertex $v \in V$ is a twinless strong articulation point of $G$ if the deletion of $v$ increases the number of TSCCs of $G$. Here, we present the first linear-time …
In this note we describe an application of low-high orders in fault-tolerant network design. Baswana et al. [DISC 2015] study the following reachability problem. We are given a flow graph $G = (V, A)$ with start vertex $s$, and a spanning tree $T =(V, A_T)$ rooted at $s$. We call a set of arcs $A'$ valid if the subgraph $G' = (V, A_T \cup A')$ of $G$ has the same dominators as $G$. The goal is to find a valid set of minimum size. Baswana et al. gave an $O(m \log{n})$-time algorithm to compute a minimum-size valid set in $O(m \log{n})$ time, where $n = |V|$ and $m = |A|$. Here we provide a simp…
Kimelfeld and Sagiv [Kimelfeld and Sagiv, PODS 2006], [Kimelfeld and Sagiv, Inf. Syst. 2008] pointed out the problem of enumerating $K$-fragments is of great importance in a keyword search on data graphs. In a graph-theoretic term, the problem corresponds to enumerating minimal Steiner trees in (directed) graphs. In this paper, we propose a linear-delay and polynomial-space algorithm for enumerating all minimal Steiner trees, improving on a previous result in [Kimelfeld and Sagiv, Inf. Syst. 2008]. Our enumeration algorithm can be extended to other Steiner problems, such as minimal Steiner for…
A semiorder is a model of preference relations where each element $x$ is associated with a utility value $α(x)$, and there is a threshold $t$ such that $y$ is preferred to $x$ iff $α(y) > α(x)+t$. These are motivated by the notion that there is some uncertainty in the utility values we assign an object or that a subject may be unable to distinguish a preference between objects whose values are close. However, they fail to model the well-known phenomenon that preferences are not always transitive. Also, if we are uncertain of the utility values, it is not logical that preference is determined a…
Edge and vertex connectivity are fundamental concepts in graph theory. While they have been thoroughly studied in the case of undirected graphs, surprisingly not much has been investigated for directed graphs. In this paper we study $2$-edge connectivity problems in directed graphs and, in particular, we consider the computation of the following natural relation: We say that two vertices $v$ and $w$ are $2$-edge-connected if there are two edge-disjoint paths from $v$ to $w$ and two edge-disjoint paths from $w$ to $v$. This relation partitions the vertices into blocks such that all vertices in …
This paper proposes a new general technique for maximal subgraph enumeration which we call proximity search, whose aim is to design efficient enumeration algorithms for problems that could not be solved by existing frameworks. To support this claim and illustrate the technique we include output-polynomial algorithms for several problems for which output-polynomial algorithms were not known, including the enumeration of Maximal Bipartite Subgraphs, Maximal k-Degenerate Subgraphs (for bounded k), Maximal Induced Chordal Subgraphs, and Maximal Induced Trees. Using known techniques, such as revers…