Algorithmica

, Volume 68, Issue 1, pp 41–61

Parameterized Complexity of Eulerian Deletion Problems

  • Marek Cygan
  • Dániel Marx
  • Marcin Pilipczuk
  • Michał Pilipczuk
  • Ildikó Schlotter
Open AccessArticle

DOI: 10.1007/s00453-012-9667-x

Cite this article as:
Cygan, M., Marx, D., Pilipczuk, M. et al. Algorithmica (2014) 68: 41. doi:10.1007/s00453-012-9667-x

Abstract

We study a family of problems where the goal is to make a graph Eulerian, i.e., connected and with all the vertices having even degrees, by a minimum number of deletions. We completely classify the parameterized complexity of various versions: undirected or directed graphs, vertex or edge deletions, with or without the requirement of connectivity, etc. The collection of results shows an interesting contrast: while the node-deletion variants remain intractable, i.e., W[1]-hard for all the studied cases, edge-deletion problems are either fixed-parameter tractable or polynomial-time solvable. Of particular interest is a randomized FPT algorithm for making an undirected graph Eulerian by deleting the minimum number of edges, based on a novel application of the color coding technique. For versions that remain NP-complete but fixed-parameter tractable we consider also possibilities of polynomial kernelization; unfortunately, we prove that this is not possible unless NP⊆coNP/poly.

Keywords

Fixed-parameter tractabilityKernelizationEulerian graphDeletion distance

1 Introduction

An undirected graph is Eulerian if it is connected and every vertex has even degree; a directed graph is Eulerian if it is strongly connected and every vertex is balanced (i.e., the indegree equals the outdegree). The class of Eulerian graphs is a well-studied and classical notion in the graph theory. We investigate several algorithmic problems related to the question of how to make a graph Eulerian. We focus on deletion problems, where either vertices or edges can be deleted from the input graph to make it Eulerian, using as few deletions as possible. What makes these problems interesting is the interplay of two different type of constraints: each vertex locally prescribes the constraint that it has to be even/balanced, while retaining connectivity is a global requirement. For comparison, we also investigate the variant of the problem where we have only the local constraints (i.e., the task is to delete the minimum number of edges or nodes to make every vertex even/balanced). As many of the studied problems turn out to be NP-hard, we apply the framework of parameterized complexity to get a more detailed insight.

The investigation of these problems was initiated by Cai and Yang [9] who presented parameterized results for some cases. We complement their work by answering several open questions raised in [9]. Another motivation for our work comes from an observation of Cechlárová and Schlotter [10]: computing the deficiency for a certain type of housing market is equivalent to finding the minimum number of arcs whose deletion makes every strongly connected component of the graph balanced. While we are not able to determine the parameterized complexity of this problem, our results shed light on the complexity of several related ones.

Related Work

Subgraph problems have been widely studied in the literature. To name a few examples, Lewis and Yannakakis [21] investigated the complexity of the node-deletion problem for hereditary properties, Alon et al. [2] examined edge-deletion problems for monotone properties, while Natanzon et al. [28] and Burzyn et al. [6] studied the classical complexity of edge modification problems for various graph classes.

Subgraph problems have also been looked at from the parameterized perspective. The most extensively studied variants are the node-deletion problems for hereditary properties: the results by Cai [8], and Khot and Raman [18], yield a complete characterization of the fixed-parameter tractable cases. Apart from hereditary properties, FPT algorithms are known for node-deletion problems where the task is to obtain a regular graph [26], a chordal graph [23], a grid [12], etc. Parameterized hardness results have been obtained in numerous cases as well [22, 24]. Recently, researchers focused on the issue of kernelization, yielding both positive [4, 17, 29] and negative results [20].

There is much less known about directed graphs. Raman and Sikdar [32] investigated the parameterized complexity of hereditary node-deletion problems in digraphs, while Raman and Saurabh [31] examined feedback set problems in tournaments. The FPT algorithm by Chen et al. for finding a feedback vertex set in a directed graph [11] resolved a long-standing open question.

Work related to the class of Eulerian graphs mainly concentrated on the extension problem, where the task is to add a minimum number of edges or arcs in order to make the given graph Eulerian. FPT algorithms were given for various settings by Dorn et al. [13] and by Sorge [33]. Eulerian deletion problems were studied by Cai and Yang [9].

Our Contribution

To settle the classical complexity of the examined problems, first we observe (Theorems 1 and 2) that classical results imply polynomial-time algorithms for the edge-deletion problems where the task is to make the given graph even/balanced: in the undirected case, this is essentially a T-join problem, while the directed case can be reduced to a flow problem. These observations answer a question raised by Cai and Yang [9], who observed that the analogous node-deletion problems are NP-hard. Moreover, the aforementioned algorithms are used as subroutines in our FPT results.

By contrast to the polynomial time algorithms, we show that the seemingly similar edge- (or arc-) deletion problems where we aim for an Eulerian graph are NP-hard, even in the extremely restricted case when the input is a cubic planar graph and the number of deletions can be arbitrary (Theorem 3). We investigate both the undirected and the directed cases of Eulerian edge-deletion problem thoroughly from the parameterized point of view: we present a fixed-parameter tractable algorithm for both cases where the parameter is the number of deletions allowed (Theorem 4), and prove that these problems do not admit a polynomial-size kernel unless NP⊆coNP/poly (Theorem 5), which is known to imply a collapse of the polynomial hierarchy to its third level [7, 34]. The FPT results use a novel argument that might be of independent interest. Intuitively, we need to find a solution S to a T-join problem and a witness (disjoint from S) certifying that the graph remains connected after the removal of S. Using a random coloring, we partition the edges into two types: each edge can contribute either to the solution or to the witness of the solution. This partition ensures that the solution and the witness are disjoint. While the use of random colorings is a standard technique for finding a solution consisting of disjoint objects [3], we use this technique to separate the solution from its proof of feasibility.

The undirected node-deletion problems, where the task is to obtain an Eulerian or an even graph, were already handled by Cai and Yang [9] who proved their W[1]-hardness. We complemented these results by showing W[1]-hardness for the directed cases as well in Theorem 7. Additionally, we also focus on a slight modification of the node-deletion problems where certain forbidden vertices are not allowed to be deleted. Theorem 8 shows that each of the four node-deletion problems remains W[1]-hard, even if we are only allowed to delete vertices of degree at most 4. This contrasts the easy FPT algorithm applicable if the parameter is not only the number of deletions but also the maximum degree of the graph (Theorem 11).

Table 1 shows a summary of our main results.
Table 1

Summary of the main results. Parameterized results only appear when the corresponding problem is NP-hard; the parameter considered is the number of deletions allowed

 

Undirected even

Undirected Eulerian

Directed balanced

Directed Eulerian

Vertex deletion:

W[1]-hard [9]

W[1]-hard [9]

W[1]-hard Theorem 7

W[1]-hard Theorem 7

Edge deletion:

P Theorem 1

FPT, no poly kernel Theorems 3, 4, 5

P Theorem 2

FPT, no poly kernel Theorems 3, 4, 5

Organization of the Paper

Section 2 describes our notation, and provides basic concepts of parameterized complexity. Section 3 discusses polynomial-time solvable edge-deletion problems. We deal with the NP-hard Eulerian edge-deletion problems in Sect. 4, first covering the issue of NP-completeness, and then fixed-parameter tractability and kernelization. Node-deletion problems are discussed in Sect. 5. We summarize our results and draw conclusions in Sect. 6.

2 Notation and Preliminaries

Given a graph G, let V(G) denote its vertex set and E(G) denote its edge set (or, in the directed case, its arc set). The degree of a vertex v in an undirected graph G is denoted by dG(v); we say that v is even, if dG(v) is even. For a vertex v in a directed graph G, we denote by \(d_{G}^{in}(v)\) and \(d_{G}^{out}(v)\) its indegree and its outdegree, respectively. We say that v is balanced, if \(d_{G}^{in}(v) = d_{G}^{out}(v)\). We define the degree of v in G (where G is directed), as \(d_{G}(v) = d_{G}^{in}(v) + d_{G}^{out}(v)\); whenever we discuss the maximum degree of a directed graph, we refer to this notion. If G is clear from the context, we might omit the subscript. A directed graph is weakly connected if the underlying undirected graph is connected. A directed graph is strongly connected if for every two vertices v,w there is a path from v to w. An even (balanced) graph is an undirected (directed) graph where each vertex is even (balanced). An undirected Eulerian graph is a connected even graph, and a directed Eulerian graph is a strongly connected balanced graph.1 A straightforward degree counting argument shows that a balanced directed graph is weakly connected if and only if it is strongly connected.

Given a path P in a (directed or undirected) graph, the internal vertices of P are the vertices lying on P except for the two end-vertices. If dG(v)=2 holds (meaning \(d^{in}_{G}(v) = d^{out}_{G}(v) =1\) in the directed case) for each internal vertex v of P, then we say that the path P is an unattached path. In a directed graph, a pair of twin arcs is two arcs (a,b) and (b,a).

Given a set X of vertices, edges, or arcs in a graph G, let GX denote the graph obtained by deleting X from G. When X has only one element x, we might also write Gx instead of G∖{x}.

Parameterized Complexity

In the parameterized complexity setting, an instance comes with an integer parameter k—formally, a parameterized problem Q is a subset of Σ×ℕ for some finite alphabet Σ. We say that the problem is fixed-parameter tractable (FPT) if there exists an algorithm solving any instance (x,k) in time f(k)poly(|x|) for some (usually exponential) computable function f. It is known that a problem is FPT if and only if it is kernelizable: a kernelization algorithm for a problem Q takes an instance (x,k) and in time polynomial in |x|+k produces an equivalent instance (x′,k′) (i.e., (x,k)∈Q if and only if (x′,k′)∈Q) such that |x′|+k′≤g(k) for some computable function g. The function g is the size of the kernel, and if it is polynomial, we say that Q admits a polynomial kernel.

3 Polynomial-Time Solvable Cases

First, we give a simple polynomial time algorithm for the following problem:
https://static-content.springer.com/image/art%3A10.1007%2Fs00453-012-9667-x/MediaObjects/453_2012_9667_Figa_HTML.gif
It turns out that this problem is strongly connected to the concept of a T-join. If we define T to be the set of vertices having odd degree, then Undirected Even Edge Deletion is equivalent with the following classical problem of finding a T-join of minimum size:
https://static-content.springer.com/image/art%3A10.1007%2Fs00453-012-9667-x/MediaObjects/453_2012_9667_Figb_HTML.gif

Since Minimum T-join can be solved in cubic time by the algorithm of Edmonds and Johnson [14], we obtain the following consequence:

Theorem 1

Undirected Even Edge Deletioncan be solved inO(n3) time for ann-vertex graph.

Now we turn our attention to the directed version of the problem:
https://static-content.springer.com/image/art%3A10.1007%2Fs00453-012-9667-x/MediaObjects/453_2012_9667_Figc_HTML.gif

This problem can be formulated as a minimum cost flow problem with unit costs as follows. We create a digraph G′ by taking G and adding two vertices s,t (source and sink). Each edge of E(G) has unit capacity and unit cost. For each vertex vV(G) such that din(v)<dout(v) we add to G′ an arc (s,v) of capacity dout(v)−din(v) and cost zero. Similarly, for each vertex vV(G) such that din(v)>dout(v) we add to G′ an arc (v,t) of capacity din(v)−dout(v) and cost zero. Let f denote the total capacity of the added arcs (s,v). In a solvable instance we know that fk.

It is straightforward to see that a flow of size f and cost at most k corresponds to a set S of at most k arcs for which GS is balanced, and vice versa. Firstly assume that we are given a flow of size f and cost at most k. As the capacities are integral, the flow is integral as well. Let S be the set of arcs of G through which a unit flow flows. Clearly, |S|≤k. As the flow has size f, for every vertex v with din(v)<dout(v) there is exactly dout(v)−din(v) flow incoming via the arc from s, and for every vertex v with din(v)>dout(v) there is exactly din(v)−dout(v) flow leaving via the arc to t. Hence, every vertex v with din(v)<dout(v) has exactly dout(v)−din(v) more outgoing arcs from S than incoming arcs from S, every vertex v with din(v)>dout(v) has exactly din(v)−dout(v) more incoming arcs from S than outgoing arcs from S, while for all the vertices with din(v)=dout(v) the numbers of incoming and outgoing arcs from S are equal. This implies that if we remove all the arcs of S from the graph, we end with a balanced graph. On the other hand, if S is such that GS is balanced, then setting unit flow on S, zero flow on the other arcs of G, and maximum flow on arcs adjacent to the source and the sink yields a correct flow between s and t of size f and cost |S|.

Therefore, in order to find a solution of minimum size it suffices to find a minimum cost flow of size f. As fk and each arc has unit cost, this can be done in O(nmlognloglogk) time [1], where n=|V(G)| and m=|E(G)|. Note that the above argument also handles an annotated case, where we require that SEa for a set EaE given in the input, as we can put zero capacities on EEa. This yields the following:

Theorem 2

Directed Balanced Edge Deletioncan be solved in time complexityO(nmlognloglogk) for an input graph withnvertices andmedges, even in an annotated case where some edges are forbidden to delete.

4 Eulerian Edge-Deletion Problems

In this section we examine the following problems:
https://static-content.springer.com/image/art%3A10.1007%2Fs00453-012-9667-x/MediaObjects/453_2012_9667_Figd_HTML.gif
https://static-content.springer.com/image/art%3A10.1007%2Fs00453-012-9667-x/MediaObjects/453_2012_9667_Fige_HTML.gif

The undirected problem can be easily seen to be NP-hard by observing that a cubic graph contains a Hamiltonian cycle if and only if it can be made Eulerian by edge deletions. Indeed, if deleting a set of edges from a cubic graph G results in an Eulerian graph G′, then each vertex in G′ must have degree 2, so G′ must be a Hamiltonian cycle of G. Since the Hamiltonian Cycle problem restricted to cubic planar graphs is NP-hard [16] the result follows. The directed version can be treated in a similar way using NP-hardness from [30].

Theorem 3

TheUndirectedandDirected Eulerian Edge Deletionproblems are NP-hard, even when restricted to inputs (G,k) whereGis a planar (directed) graph with maximum degree at most 3, andk=|E(G)|.

In Sect. 4.1, we show that both versions of the problem are FPT and can be solved in time 2O(klogk)nO(1). The algorithm is based on a novel randomized selection argument. In Sect. 4.3, we sharpen Theorem 3 by showing that the problems do not admit a polynomial kernel. In some sense, the nonexistence of polynomial kernels suggests that randomized selection or a similar technique is inherently required for the problems, as they cannot be solved by simple reduction rules.

4.1 FPT Algorithms

We have seen in Sect. 3 that removing edges to make all the vertices even can be expressed as a T-join problem, where T is the set of odd vertices. Thus Undirected Eulerian Edge Deletion requires us to find a T-join S such that GS is connected. Observe that if G is connected, and GS has a connected subgraph W containing the endpoints of every edge in S, then GS is connected as well. We will call such a subgraph W a witness of S. Therefore, the right way to look at the problem is that we need to find a pair (S,W), where is S is a T-join and W is the witness of S. It is clear that the problem has a solution if and only if such a pair exists.

Our approach for finding a pair (S,W) is the following. We randomly color the edges of the graph red and blue, and try to find a pair (S,W) where S uses only red edges and the subgraph W uses only blue edges. We would like to ensure that if a suitable pair (S,W) exists, then it is correctly colored red and blue with probability at least 2O(klogk). However, in general the size of W can be very large (unbounded in k; an example is provided in Sect. 4.2) and therefore the probability of a correct coloring can be very small. We get around this problem by observing that edges “far” from T can be always colored blue, and there is a witness W that uses only a bounded number of edges “close” to T. Formally, we say that an edge e is close if at least one endpoint of e is at distance at most k from T; otherwise, e is far. The following two lemmas contain the crucial combinatorial ideas of the algorithm:

Lemma 1

IfSis an optimum solution of size at mostk, then each edge ofSis close.

Proof

As removing a cycle from S would still yield a solution, H=(V,S) has to be a forest for an optimum solution S. Each connected component of H that is not an isolated vertex contains a vertex from T, as each tree contains vertices of odd degree (for example, leaves). Since |S|≤k, each vertex in such a connected component is at distance at most k from T, and thus each edge in S is close. □

Lemma 2

IfSis an optimum solution of size at mostk, thenShas a witnessWhaving at most (2k−1)(2k+2) close edges.

Proof

Let X be the set of endpoints of the edges in S. Note that TX and |X|≤2|S|≤2k. Let i be the smallest integer such that GS has a subgraph W containing X, having exactly i connected components and at most (|X|−i)(2k+2) close edges (such i and W always exist as for i=|X| we can take W=(X,∅)). If i=1, then we are done. Otherwise, we can assume that each component of W contains a vertex of X; let P be a shortest path in GS that connects two different components of W. Denote these components K1 and K2.

We claim that only the first k+1 and the last k+1 edges of P may be close. If this is true, then adding P to W decreases the number of components and increases the number of close edges by at most 2k+2, contradicting the minimality of i.

Suppose that an edge e is close, but it is not among the first or last k+1 edges, i.e., both of its endpoints are at distance greater than k from both K1 and K2 on P. As e is close, it has an endpoint v such that there is a path P′ of length at most k connecting v and T. As TX, the path P′ connects v to a component K′ of W. Assuming without loss of generality that K′≠K1, the concatenation of P′ and the subpath of P between K1 and v is a walk P″ connecting two different components of W. As the distance of v from K2 on P is more than k, the walk P″ is shorter than P, contradicting the minimality of P. □

We observe that even though the number of close edges in the witness can be bounded polynomially in k, the whole witness can be arbitrarily large. An example of such a situation is described in Sect. 4.2.

Now, we are ready to state our algorithm, working as follows:
  1. 1.

    Determine which edges are close and which are far.

     
  2. 2.

    Make each close edge independently with probability 1/k2 red; every edge that is not red becomes blue.

     
  3. 3.

    If there is more than one connected component of the blue edges containing a vertex from T, return NO; otherwise let KB be this unique component.

     
  4. 4.

    Solve Minimum T-join instance (GR,T), where GR is the graph induced by the red edges with both endpoints in KB. If the solution is of size at most k, return it, otherwise return NO.

     

Lemma 3

If the algorithm returns a solutionS, thenSis a proper solution toUndirected Eulerian Edge Deletion.

Proof

By the definition of Minimum T-join, GS is even. The component KB of blue edges ensures that the endpoints of S are in the same component of GS, i.e., GS is connected. □

Lemma 4

If theUndirected Eulerian Edge Deletioninstance (G,k) was a YES-instance, the algorithm returns a solution with probability at least 1/2O(klogk).

Proof

Let S be an optimum solution to (G,k), and let W be a witness having at most (2k−1)(2k+2) close edges, guaranteed by Lemma 2. In the algorithm:
  1. 1.

    With probability at least (1/k2)k=1/22klogk each edge of S becomes red.

     
  2. 2.

    With probability at least (1−1/k2)(2k−1)(2k+2)=Ω(1) each close edge of W becomes blue (and hence every edge of W is blue).

     
The above events are independent, since S and W do not share edges. Furthermore, if both events happen, then W will connect all the endpoints of the edges from S. Therefore, all of these endpoints will be contained in one connected component KB of the graph induced by blue edges, which in particular connects all the vertices from T. Thus, with probability 1/2O(klogk), every edge of S appears in GR in the last step of the algorithm and the Minimum T-join instance has a solution of size at most k. □

Theorem 4

Both theUndirectedandDirected Eulerian Edge Deletionproblems are fixed-parameter tractable with parameterk.

Proof

By Lemmas 3 and 4, the presented algorithm for Undirected Eulerian Edge Deletion finds a solution with probability 1/2O(klogk), and never produces a wrong output, that is removal of the returned set of edges always makes the graph Eulerian. Since the algorithm runs in O(n3) time for an n-vertex graph, we immediately obtain a randomized FPT Monte-Carlo algorithm, running in 2O(klogk)n3 time.

We present how to derandomize the described algorithm using the standard technique of splitters. An (m,r,r2)-splitter is a family of functions from {1,2,…,m} to {1,2,…,r2}, such that for any subset X⊆{1,2,…,m} of size r, one of the functions in the family is injective on X. Naor et al. [27] gave an explicit construction of an (m,r,r2)-splitter of size O(r6logrlogm).

In Step 3 of the algorithm we want to separate the solution S (of size at most k) from the set of close edges of the witness W (of size at most =(2k−1)(2k+2)). Let m be the cardinality of the set of close edges in the graph, we may identify {1,2,…,m} with this set. Instead of the random coloring process, we can try every function f in a (m,k+,(k+)2)-splitter and every set F⊆{1,2,…,(k+)2} of size k. For a particular choice of f and F, we color red those close edges e for which f(e)∈F. By the definition of the splitter, if there exists a solution S with a witness W, there will be a function f that is injective on the set of close edges of SW and a subset F such that f(e)∈F if eS and f(e)∉F if e is a close edge in W. Note that the size of (m,k+,(k+)2)-splitter is bounded polynomially in the input size, whereas there are 2O(klogk) choices for the set F.

Regarding Directed Eulerian Edge Deletion, we can use a slightly modified version of our randomized algorithm, which then can be derandomized in exactly the same manner. After defining the set T of terminals to contain the unbalanced vertices, we forget about the orientation of the arcs, and perform Steps 1–3 of the algorithm. We adjust Step 4 by solving an annotated Directed Balanced Edge Deletion instance (G,k) where only red arcs can be deleted. Observe that this algorithm in fact looks for a set of edges S of size at most k such that GS is balanced and weakly connected. However, every graph that is weakly connected and balanced is Eulerian, thus the algorithm returns the solution to Directed Balanced Edge Deletion with high probability, if one exists. □

4.2 An Example of a Large Witness Set W

In this section we give a simple example that the witness graph W, considered in the FPT algorithms in Sect. 4.1, may be arbitrarily large and may contain Ω(k2) close edges. This lower bound on the number of close edges matches the upper bound given by Lemma 2. We construct a graph G as follows. First take a cycle of length 2kM for some M>2k and let v0,v1,…,v2k−1 be a sequence of evenly distributed vertices on this cycle, i.e., vi=wiM, where w0,w1,…,w2kM−1 are vertices of the cycle, lying in this order. Moreover, for each 0≤i<k we connect the vertices v2i and v2i+1. Note that S={v2iv2i+1:0≤i<k} is the only feasible solution of size k to the Undirected Eulerian Edge Deletion problem in the graph G, but any witness W of S needs to contain a path of length (2k−1)M. Moreover, such a path contains roughly 2k(2k−1)=Ω(k2) close edges.

Note that in the above construction it is not crucial to start from a long cycle, as any Eulerian graph of large diameter would suffice. In such a graph we simply take the vertices {vi:0≤i<2k} to be any set of vertices that are pairwise distant.

4.3 Non-existence of a Polynomial Kernel for Undirected and Directed Eulerian Edge Deletion

The aim of this subsection is to prove the following theorem.

Theorem 5

If\(\textrm {NP} \not \subseteq \textrm {coNP}/\textrm {poly}\), then there is no polynomial kernel for theUndirectedandDirected Eulerian Edge Deletionproblems with parameterk, even if the input graph has maximum degree at most 4.

We use the cross-composition technique introduced by Bodlaender et al. [5]. Let us recall the crucial definitions.

Definition 1

(Polynomial equivalence relation [5])

An equivalence relation \(\mathcal{R}\) on Σ is called a polynomial equivalence relation if (1) there is an algorithm that given two strings x,yΣ decides whether \(\mathcal{R}(x,y)\) in (|x|+|y|)O(1) time; (2) for any finite set SΣ the equivalence relation \(\mathcal{R}\) partitions the elements of S into at most (maxxS|x|)O(1) classes.

Definition 2

(Cross-composition [5])

Let LΣ and let QΣ×ℕ be a parameterized problem. We say that Lcross-composes into Q if there is a polynomial equivalence relation \(\mathcal{R}\) and an algorithm which, given p strings x1,x2,…,xp belonging to the same equivalence class of \(\mathcal{R}\), computes an instance (x,k)∈Σ×ℕ in time polynomial in \(\sum_{i=1}^{p} |x_{i}|\) such that (1) (x,k)∈Q if and only if xiL for some 1≤ip; (2) k is bounded polynomially in \(\max_{i=1}^{p} |x_{i}| + \log p\).

Theorem 6

([5], Theorem 9)

IfLΣis NP-hard under Karp reductions andLcross-composes into the parameterized problemQthat has a polynomial kernel, then NP⊆coNP/poly.

We apply Theorem 6 on the following language L:
https://static-content.springer.com/image/art%3A10.1007%2Fs00453-012-9667-x/MediaObjects/453_2012_9667_Figf_HTML.gif

The undirected version of this problem with forbidden pairs of vertices was proven to be NP-hard by Kolman and Pangrác [19] and their proof can be easily modified to handle our case as well.

Lemma 5

UndirectedandDirecteds–tPath with Forbidden Pairs of Edgesare NP-hard under Karp reductions, even in the case where each vertex has maximum degree three, sandthave degree one, and, in the directed case, each vertex has maximum in- and outdegree two.

Proof

We first provide a Karp reduction from the Clique problem to our problems without the degree condition. Let (H,k) be a Clique instance. We construct an Undirected or DirectedstPath with Forbidden Pairs of Edges instance \((G,s,t,\mathcal{C})\) as follows. To construct the graph G, we start by adding vertices s, t and pi for 0≤ik and edges sp0 and pkt (arcs (s,p0) and (pk,t)). Then for each 1≤ik and vV(H) we introduce a vertex \(x_{i}^{v}\) and edges \(p_{i-1}x_{i}^{v}\) and \(x_{i}^{v}p_{i}\) (arcs \((p_{i-1},x_{i}^{v})\) and \((x_{i}^{v},p_{i})\)). Finally, for each 1≤i,jk and u,vV(H) such that uvE(H) (possibly u=v), we introduce constraints \((x_{i}^{u}p_{i},x_{j}^{v}p_{j})\) and \((x_{j}^{u}p_{j},x_{i}^{v}p_{i})\).

Let us now verify the correctness of the above reduction. If {v1,v2,…,vk}⊆V(H) is a vertex set of a k-clique in H, then a path consisting of edges (or corresponding arcs) sp0, pkt and \(p_{i-1}x_{i}^{v_{i}}\), \(x_{i}^{v_{i}}p_{i}\) for 1≤ik is a feasible solution to the instance \((G,s,t,\mathcal{C})\). In the other direction, note that any simple path from s to t visits for each 1≤ik exactly one vertex from the set \(\{x_{i}^{v}: v \in V(H)\}\), say \(x_{i}^{v_{i}}\). We claim that {v1,v2,…,vk} induces a k-clique in H. To see this note that the introduced constraints imply that if ij then vivj and vivjE(H).

To obtain the degree bounds, note that each vertex vV(G) with dG(v)≥3 can be replaced with a (directed) cycle of length dG(v), where each edge (arc) previously incident to v is now connected to a different vertex on the cycle. □

To finish the proof of Theorem 5 we need to show a cross-composition algorithm. This is done in the following lemma.

Lemma 6

Undirected (Directed)s–tPath with Forbidden Pairs of Edgescross-composes toUndirected (Directed) Eulerian Edge Deletion. If the input instances have degrees bounded as in Lemma 5 then the output instance can be made to have maximum degree 4.

Proof

For the equivalence relation \(\mathcal{R}\) we take an almost trivial relation that sorts all malformed instances into one equivalence class and all well-formed into another one. If we are given malformed instances, we simply output a trivial NO-instance. Thus in the rest of the proof we assume we are given a sequence \((G_{i},s_{i},t_{i},\mathcal{C}_{i})_{i=1}^{p}\) of Undirected or DirectedstPath with Forbidden Pairs of Edges instances.

We now construct an Undirected or Directed Eulerian Edge Deletion instance (G,k). We start by obtaining a graph \(G_{i}'\) for each 1≤ip as follows. First we subdivide each edge eE(Gi) with new vertices \(x_{e}^{C}\), one for each constraint \(C \in\nobreak \mathcal{C}_{i}\) that contains e. Then for each constraint \(C=(e_{1},e_{2}) \in \mathcal{C}_{i}\) we introduce vertices \(z_{1}^{C}\) and \(z_{2}^{C}\) and create a (directed) cycle \(x_{e_{1}}^{C}, z_{1}^{C}, x_{e_{2}}^{C}, z_{2}^{C}\). By V(Gi) we denote the subset of \(V(G_{i}')\) containing vertices different than \(x_{e}^{C}\) and \(z_{\alpha}^{C}\). To construct the graph G, we first take the union of all graphs \(G_{i}'\) and identify all vertices si into one vertex s and all vertices ti into one vertex t. Let \(V^{0} = \{s^{*},t^{*}\} \cup \bigcup_{i=1}^{p} V(G_{i}) \setminus \{s_{i},t_{i}\}\). Second, we introduce a new vertex r and connect it to the rest of the graph as follows. In the undirected case for each vV0∖{s,t} we connect r and v with one or two unattached paths of length 2, so that in G the vertex v is even. In the directed case, we connect r and v with some positive number of unattached directed paths of length 2, so that in G the vertex v is balanced. We do almost the same construction to connect s and t to r, but we ensure that the degrees of s and t are odd (in the undirected case) or that \(d_{G}^{in}(s^{*}) + 1 = d_{G}^{out}(s^{*})\) and \(d_{G}^{in}(t^{*}) = d_{G}^{out}(t^{*}) + 1\) (in the directed case). Note that r is even (balanced). Finally, we set \(k = \max_{i=1}^{p} |V(G_{i}')|-1 = O(\max_{i=1}^{p} |V(G_{i})| + |\mathcal{C}_{i}|)\).

It is clear that the above construction can be done in polynomial time and that the parameter k is bounded polynomially in the maximum size of the input instances. We now verify the correctness of the construction, i.e., (G,k) is a YES-instance of Undirected or Directed Eulerian Edge Deletion if and only if at least one of the instances \((G_{i},s_{i},t_{i},\mathcal{C}_{i})_{i=1}^{p}\) of Undirected or DirectedstPath with Forbidden Pairs of Edges is a YES-instance. Then, we discuss how we can modify the construction so that all the vertices of the resulting graph have degree bounded by 4.

Correctness

First, let \(\mathcal{P}\) be a simple path that is a feasible solution to \((G_{j},s_{j},t_{j},\mathcal{C}_{j})\) for some 1≤jp. The path \(\mathcal{P}\) naturally defines a simple path \(\mathcal{P}'\) in \(G_{j}'\) and in G. We claim that the edge set S of \(\mathcal{P}'\) is a feasible solution to the constructed Directed or Undirected Eulerian Edge Deletion instance. As it is contained in \(G_{j}'\), we have |S|≤k. Since in G the only odd (unbalanced) vertices were s and t, GS is even (balanced). We now verify that each vertex vV(G) is (weakly) connected to the vertex r in GS. It is clear for each vV0, since ErS=∅, where Er denotes the set of edges in the paths between V0 and r (note that each vV0 is connected to r by a positive number of paths). For the other vertices, note that if \(C = (e_{1},e_{2}) \in \bigcup_{i=1}^{p} \mathcal{C}_{i}\), then either e1 or e2 does not belong to \(\mathcal{P}\) (say \(e_{1} \notin \mathcal{P}\)) and the cycle \(x_{e_{1}}^{C}, z_{1}^{C}, x_{e_{2}}^{C}, z_{2}^{C}\) is connected to r via subdivided edge e1 and its endpoints. Note that in the directed case it is sufficient to ensure only weak connectivity, as a balanced graph is weakly connected if and only if it is strongly connected.

In the opposite direction, let S be a solution to the constructed Directed or Undirected Eulerian Edge Deletion instance. We assume that |S| is minimum possible. It is easy to see that since GS is even (balanced) and |S| is minimal, S needs to induce a simple path \(\mathcal{P}'\) from s to t. This path cannot contain a neighbor r′ of r, since otherwise r′ becomes isolated in GS. Thus \(\mathcal{P}'\) is contained in graph \(G_{j}'\) for some 1≤jp. Moreover, note that \(\mathcal{P}'\) cannot contain any vertex \(z_{\alpha}^{C}\), as otherwise \(z_{\alpha}^{C}\) becomes isolated in GS. Thus \(\mathcal{P}'\) naturally defines a path \(\mathcal{P}\) in Gj with endpoints sj and tj. Observe that if for some \(C = (e_{1},e_{2}) \in \mathcal{C}_{j}\) the path \(\mathcal{P}\) contained both e1 and e2, then in GS the cycle \(x_{e_{1}}^{C}, z_{1}^{C}, x_{e_{2}}^{C}, z_{2}^{C}\) would be unreachable from the rest of the graph G. Thus, \(\mathcal{P}\) is a feasible solution to the instance \((G_{j},s_{j},t_{j},\mathcal{C}_{j})\).

Degree Reduction

We now show how to modify the presented construction to obtain an instance with maximum degree 4. First note that if vV(G)∖(V0∪{r}) we clearly have dG(v)≤4. Moreover, if the degrees in \((G_{i},s_{i},t_{i},\mathcal{C}_{i})\) are bounded as in Lemma 5, then for any vV0∖{s,t} the number of unattached paths connecting v and r can be chosen so that v is even (balanced) and we have dG(v)≤4 in the undirected case and \(d_{G}^{in}(v), d_{G}^{out}(v) \leq 2\) in the directed one. Thus, we are left with the vertices s, t and r.

We first reduce the degree of vertices s and t. By duplicating some input instances we may ensure that their number is a power of two, p=2. We replace s and t with full binary trees Ts and Tt of height , rooted at sr and tr. In the directed case, the edges in the tree Ts are directed towards the leaves, whereas the edges in the tree Tt are directed towards the root tr. For each instance \((G_{j}, s_{j}, t_{j}, \mathcal{C}_{j})\) we identify sj with one leaf in Ts and tj with one leaf in Tt, so that each instance is assigned to different leaves in Ts and Tt. Finally, we connect each vertex of the trees Ts and Tt with r using one or two unattached paths of length two, so that dG(sr)=dG(tr)=3 (\(d_{G}^{out}(s^{r}) = 2 = 1 +d_{G}^{in}(s^{r})\) and \(d_{G}^{in}(t^{r}) = 2 = 1 + d_{G}^{out}(t^{r})\) in the directed case) and each other vertex in Ts and Tt is of degree 4 and, in the directed case, balanced.

As for the vertex r, we replace it with a (directed) cycle of length dG(r)/2, with each vertex on the cycle adjacent to exactly two edges previously incident to r (one incoming arc and one outgoing arc in the directed case). Finally, we set \(k = 2\ell + \max_{i=1}^{p} |V(G_{i}')|-1 = O(\log p + \max_{i=1}^{p} |V(G_{i})| + |\mathcal{C}_{i}|)\). Note that now a minimum solution S to the constructed Directed or Undirected Eulerian Edge Deletion instance needs to induce a simple path \(\mathcal{P}'\) from sr to tr that first goes down the tree Ts to a leaf sj (for some 1≤jp), then traverses the graph \(G_{j}'\), inducing a solution \(\mathcal{P}\) to the instance \((G_{j}, s_{j}, t_{j}, \mathcal{C}_{j})\), and finally goes up the tree Tt starting at the leaf tj.  □

5 Node-Deletion Problems

We first consider the following two node-deletion problems:
https://static-content.springer.com/image/art%3A10.1007%2Fs00453-012-9667-x/MediaObjects/453_2012_9667_Figg_HTML.gif

The undirected versions of these problems, namely Undirected Even and Undirected Eulerian Node Deletion, are defined analogously. While these undirected variants were already shown to be W[1]-hard with parameter k by Cai and Yang [9], the complexity of the directed versions has not been studied yet. The following theorem shows that they are intractable as well.

Theorem 7

Directed Balanced Node DeletionandDirected Eulerian Node Deletionare NP-hard and W[1]-hard with parameterk.

Proof

We firstly treat the balanced case, then we proceed to the Eulerian case.

Balanced Case

We present an FPT-reduction from the Disjoint Set Cover problem to Directed Balanced Node Deletion. The input of this problem is a triple \((U,\mathcal{F},k)\) where U is some universe, \(\mathcal{F}=\{F_{1}, \dots, F_{n}\}\) is a family of subsets of U, and k is an integer. The task is to decide whether there is a collection \(\mathcal{H} \subseteq \mathcal{F}\) with \(|\mathcal{H}|\leq k\) that covers each element of U exactly once, i.e., such that the sets in \(\mathcal{H}\) are pairwise disjoint and their union is U. Given such an input, we are going to construct a directed graph G such that (G,k) is a YES-instance of Directed Balanced Node Deletion if and only if \((U,\mathcal{F},k)\) is a YES-instance of Disjoint Set Cover. Moreover, the presented reduction will be polynomial-time computable. As Disjoint Set Cover is NP-hard, and also W[1]-hard with parameter k [25], this suffices to prove the theorem.

Given \((U,\mathcal{F},k)\), for any uU, let n(u) denote the number of sets in \(\mathcal{F}\) that contain u. For each uU, we introduce two vertices u1 and u2 in G, and connect them by n(u)−1 unattached paths of length k+2, each starting from u1 and leading to u2. We denote by D the set of all internal vertices on these paths, each having degree 2 in G. Furthermore, for each \(F_{i} \in \mathcal{F}\) we introduce a vertex fi, and add the arcs (fi,u1) and (u2,fi) for each uFi. This finishes the construction of G. It is not hard to see that the reduction is indeed polynomial.

Now, suppose that GS is balanced for some SV(G), |S|≤k. Note that if S contains any vertex d on a path of length k+2 leading from some u1 to u2 (allowing d=u1 or d=u2), then all k+1 internal vertices of this path should be in S, which contradicts |S|≤k. Thus, we get that \(S \subseteq \{f_{i} \mid F_{i} \in \mathcal{F} \}\). Observe also that for each uU, we get \(d_{G}^{in}(u^{1})=d_{G}^{out}(u^{1})+1=d_{G \setminus S}^{out}(u^{1})+1\), hence the deletion of S must decrease the indegree of each vertex u1 (uU) by exactly one. By the definition of G, this means that the sets Fi for fiS form a family of at most k pairwise disjoint sets together covering U, as required.

For the other direction, it is straightforward to see that if \(\mathcal{S} \subseteq \mathcal{F}\) is a solution for the Disjoint Set Cover instance, then deleting the vertex set \(\{ f_{i} \mid F_{i} \in \mathcal{S}\}\) from G results in a balanced graph. This observation relies on the fact that \(d_{G}^{in}(u^{1})=d_{G}^{out}(u^{1})+1\) and \(d_{G}^{in}(u^{2})=d_{G}^{out}(u^{2})-1\) hold for each uU, and that din(v)=dout(v) holds for each remaining vertex v. This proves our statement for Directed Balanced Node Deletion.

Eulerian Case

Now, we give a reduction from Directed Balanced Node Deletion problem to Directed Eulerian Node Deletion. Given an input (G,k) we construct (G′,k) in polynomial time such that there is a set SV(G) with |S|≤k for which GS is balanced if and only if there is a set S′⊆V(G′) with |S′|≤k for which G′∖S′ is Eulerian.

To construct G′, we simply add to G a new vertex r, and connect each vertex to r by a pair of twin arcs. On one hand, if G′∖S′ is Eulerian for some S′⊆V(G′), then G∖(S′∖{r}) must be balanced, as deleting r from the balanced graph G′∖S′ still yields a balanced graph. On the other hand, if GS is balanced for some SV(G), then observe that G′∖S is balanced as well. Furthermore, since each vertex in G′∖S is connected by a pair of twin arcs to r, G′∖S is Eulerian as well, finishing the proof.  □

As Table 1 shows, the node-deletion variant is W[1]-hard in all four cases, while the edge-deletion version is FPT or even polynomial-time solvable. What makes the node-deletion versions harder? One obvious difference is that in the edge-deletion problem the answer is trivially no if there are more than 2k odd/unbalanced vertices, but the node-deletion versions can have a solution even if the number of such nodes is unbounded. This suggests that the higher complexity comes from the ability of affecting the degree of many vertices by a single vertex deletion. Indeed, if every vertex has degree bounded by Δ, then we can solve all of the above defined node-deletion problems in O((Δ+1)k(|V(G)|+|E(G)|)) time by a simple branching algorithm. However, this interpretation is not fully correct: as we shall show, the node-deletion problems are hard even if we are allowed to delete only vertices of constant degree.

To this end, we define the following variation of the four different node-deletion problems, where α can be Undirected Even, Undirected Eulerian, Directed Balanced, or Directed Eulerian:
https://static-content.springer.com/image/art%3A10.1007%2Fs00453-012-9667-x/MediaObjects/453_2012_9667_Figh_HTML.gif

In other words, we require the solution to be disjoint from a set of forbidden vertices. A vertex is allowed, if it is not forbidden. For each of the four node-deletion problems, the above variant is at least as hard as the original problem, and in fact has the same complexity: this variant can easily be reduced to the original version, by attaching long unattached cycles to every forbidden vertex. Furthermore, we show that allowing only the deletion of bounded-degree vertices does not make the problem easier:

Theorem 8

Each of the problemsαNode Deletion with Forbidden NodeswhereαisUndirected Even, Undirected Eulerian, Directed Balanced,orDirected Eulerianremains W[1]-hard with parameterk, even if each allowed vertex has degree at most 4.

We prove Theorem 8 in two steps. Theorem 9 deals with the cases where we aim for an even or a balanced graph, while Theorem 10 handles the two Eulerian cases. Let Δa be the maximum degree taken over all allowed vertices.

Theorem 9

Undirected EvenandDirected Balanced Node Deletion with Forbidden Nodesremain W[1]-hard with parameterk, even ifΔa=4.

Proof

We firstly describe the undirected case, then we present how the construction can be refined for the directed case.

Undirected Case

We present a parameterized reduction from the W[1]-hard Multicoloured Clique problem [15] to Undirected Even Node Deletion with Forbidden Nodes with Δa=4. The input of Multicoloured Clique is a graph G=(V,E) and an integer k together with a partition V1,V2,…,Vk of V where each Vi is an independent set; the task is to find a clique of size k in G. W.l.o.g. we assume that k≥3, as otherwise the instance can be solved via brute-force.

Firstly, we claim that one can assume that for each vertex v and for each Vj it holds that |N(v)∩Vj| is even. This can be achieved without changing the answer to our instance in the following manner. For each pair i,j (1≤i,jk, ij) we introduce a new vertex ai,j into Vj and connect it with all the vertices of Vi having an odd number of neighbors in Vj. Consider the graph induced by ViVj∪{ai,j,aj,i}. By the definition of ai,j,aj,i we know that all the vertices of Vi and Vj have even degrees in this graph. As the sum of degrees in every graph is even, ai,j has odd degree if and only if aj,i has. Therefore, we introduce an edge ai,jaj,i if the degree of ai,j is odd. From the construction we infer that the claimed property holds, i.e., for each vertex v and for each Vj we have that |N(v)∩Vj| is even. Note that vertex ai,j cannot be contained in any k-clique in G, as N(ai,j)⊆Vi (recall that aj,i has been introduced into Vi). This ensures the correctness of the construction.

We are going to construct an instance (G′,F,k′) of Undirected Even Node Deletion with Forbidden Nodes with k′=k2+k. For each vertex vVi, we build a node gadget Gv as follows. We introduce vertices vj for each 0≤jk+1 and a vertex ev,z for each zNG(v). For each zNG(v)∩Vj where j<i we connect ev,z with vj and vj+1, and for each zNG(v)∩Vj where j>i we connect ev,z with vj−1 and vj. For each j∈{1,2,…,k}∖{i} we denote by Aj(v) the vertices connected to both vj and vj+1. Furthermore, we introduce edges v0v1, v1vk, and vkvk+1; this finishes the definition of Gv. Notice that each vertex in V(Gv)∖{v0,vk+1} has even degree, due to the property ensured in the previous paragraph. Moreover, the union of all the sets Aj(v) forms an independent set, and every member of this set has degree exactly 2. See Fig. 1 for reference.
https://static-content.springer.com/image/art%3A10.1007%2Fs00453-012-9667-x/MediaObjects/453_2012_9667_Fig1_HTML.gif
Fig. 1

Vertex gadget Gv for vVi

Let G′ contain the disjoint union of graphs Gv for vV, and let us add the vertex sets P={si,ti∣1≤ik} and D={dx,y,dy,xxyE} to G′. We connect each si with the vertices v0 where vVi, and similarly, each ti with the vertices vk+1 where vVi. In addition, for each edge xy in G we connect the vertices ex,y,dx,y,ey,x,dy,x in this order via a cycle of length 4. To finish the construction of G′, we add the edge siti in case si (and hence ti) would have an even degree otherwise. Notice that the odd degree vertices in G′ are exactly the vertices of P. Finally, we let the set of forbidden vertices to be F={vjvV,1≤jk}∪DP. As the allowed vertices are only the vertices of the form v0, vk+1, or ex,y, the claimed property Δa=4 indeed holds.

First suppose that X={x1,…,xk} is a clique in G with each xiVi. We prove that S={x0,xk+1xX}∪{ex,y,ey,xx,yX,xy} is a solution for (G′,F,k′). Clearly, |S|=k2+k=k′ and SF=∅ hold, so it suffices to show that G′∖S is an even graph. As X contains exactly one vertex from each partition Vi, each vertex in P has one neighbor in S, so the vertices of P will become even in G′∖S. Regarding D, only those vertices dx,y and dy,x have a neighbor in S, for which x,yX holds, and these vertices will lose exactly two neighbors, namely ex,y and ey,x, when deleting S. A vertex vj can only have a neighbor in S if vX, and in such a case it is not hard to verify that vj will have exactly two neighbors in S. Vertices ex,yS do not have neighbors in S, so they stay even. This shows that the first direction of the reduction is sound.

For the other direction, suppose that S is a solution for (G′,F,k′). For each i, the vertex si must have at least one neighbor in S; suppose that v0 is such a vertex. Then, since v1 is connected to v0 and N(v1)∖{v0}=A1(v), we know that |A1(v)∩S| is odd. Using that N(vj)∖Aj−1(v)=Aj(v) for each 2≤jk−1, and that v1,…,vk are forbidden vertices, we can deduce for each j=2,…,k−1 that |Aj(v)∩S| must be odd as well. Hence, vk+1S follows. Therefore, if S contains a vertex v0, then it must contain altogether at least k+1 vertices from the node gadget Gv. By our bound on the size of S, we obtain that S contains vertices from exactly k node gadgets, and if S contains a vertex from Gv, then it contains v0, vk+1, and one vertex from each of the sets A1(v),…,Ak−1(v). Let X contain those vertices x in G for which x0S, and let Y contain those pairs (x,y) for which ex,yS. By the previous observations, we know |Y|=k(k−1) and |X|=k. Suppose that (x,y)∈Y. Note that xX and yNG(x) are immediate from the definition of Gv. By looking at the forbidden vertices dx,y and dy,x, we get ey,xS, yielding (y,x)∈Y. Therefore, yX as well, and thus each pair in Y must contain the end-vertices of an edge connecting two vertices of X. By the size of X and Y we get that X must be a clique of size k, finishing the proof for the undirected case.

Directed Case

The reduction for the directed case is very similar to the one used in the undirected case, and hence we only describe the differences. First, we direct the edges of each cycle ex,y,dx,y,ey,x,dy,x in a way that they span a directed cycle. Then for each set Vi of the partition and for each vVi, we direct every edge e incident to a vertex of Gv, except for the edge v1vk, in the direction in which e is traversed when going from si to ti through e via a shortest path through Gv∖{v1vk}. We remove the edge v1vk, but for each vj with 1≤jk−1 we introduce a certain number of parallel arcs from vj+1 to vj in order to ensure each vertex of Gv to be balanced; this means |A1(v)|−1 arcs from v2 to v1, |Ak−1(v)|−1 arcs from vk to vk−1, and |Aj(v)| arcs from vj+1 to vj for each remaining j. As a result, each vertex of V(G)∖P becomes balanced. Finally, we add |Vi|−1 arcs from ti to si, for each i. The set of forbidden vertices F and the parameter k′ remains unchanged. Also, Δa=4 remains true.

Clearly, each si must lose an outgoing arc and each vertex ti must lose an incoming arc in a solution. Arguing along similar thoughts as above, one can show that the constructed instance is equivalent with the original one.

In case we want to get rid of parallel arcs, we can simply subdivide each arc contained in a set of parallel arcs with a newly introduced forbidden vertex of degree 2.  □

Theorem 10

UndirectedandDirected Eulerian Node Deletion with Forbidden Nodesremain W[1]-hard with parameterk, even ifΔa=4.

Proof

Considering the directed version of the problem, the theorem follows from the proof of Theorem 9.

Consider the construction given in the proof of Theorem 9. Observe that each allowed vertex is only connected to forbidden vertices. Thus, if we ensure that the forbidden vertices remain in one connected component of G after deleting an arbitrary set of allowed vertices, then we also ensure that the whole graph remains connected. This can be done by introducing a new forbidden vertex r, and connecting r to each forbidden vertex by a pair of twin arcs. As each allowed vertex has the same degree as originally, we can conclude that Δa=4 will still hold in the transformed instance.

For the undirected version we can use the modified version of the reduction above, by connecting each forbidden vertex to r using a pair of parallel edges (or two unattached paths of length 2 with middle vertices forbidden) instead of the twin arcs. □

Now we prove that if every vertex has bounded degree, then we can solve all of the αNode Deletion with Forbidden Nodes problems, even with forbidden nodes, efficiently. The following simple algorithm works:
  1. 1.

    If the parameter k is negative, or we aim for an Eulerian induced subgraph and G is disconnected, then stop and return NO.

     
  2. 2.

    If the given graph G is already balanced/even/Eulerian, then stop and return the solution collected so far.

     
  3. 3.

    Otherwise, choose an arbitrary vertex v that is not balanced/even, and branch on removing from G either v or one of its neighbors. In case the deleted vertex x was forbidden, stop and return NO in the corresponding branch. Otherwise, put the deleted vertex x into the solution, decrease the value of the parameter to k−1, and go to Step 1.

     
The above algorithm can clearly be implemented to run in O((Δ+1)k(|V(G)|+|E(G)|)) time. Its soundness can be proven easily by induction w.r.t. the size of the solution, using the simple observation that if v is a vertex that is not balanced/even, then either v or at least one of its neighbors must be in the solution. Thus, we can conclude:

Theorem 11

There is anO((Δ+1)k(|V(G)|+|E(G)|)) time algorithm that solves theαNode Deletion with Forbidden Nodesproblem, whereαcan beUndirected Even, Undirected Eulerian, Directed Balanced, orDirected Eulerian.

6 Conclusion

We completed the analysis of the complexity of making a graph Eulerian via edge or vertex deletions. There are two open problems that we would like to emphasize here.

First, do there exist FPT algorithms for the edge-deletions problems running in time cknO(1)? It seems hard to obtain such algorithms using our techniques, mainly due to the fact that the witness subgraph W may contain Ω(k2) close edges, as was discussed in Sect. 4.2.

Second, Cechlárová and Schlotter in [10] asked for the parameterized complexity of a related problem, where the task is to delete at most k arcs from a directed graph to obtain a graph where each strongly connected component is Eulerian. This problem seems to be significantly different than the problems considered in this paper, as for example it includes Directed Feedback Vertex Set [10], and, to the best of our knowledge, the question of its parameterized complexity still remains open.

Footnotes
1

Strictly speaking, the usual definition of being Eulerian requires only that the graph is connected after removing the isolated vertices. However, we feel that requiring connectivity instead leads to more natural and fundamental problems.

 

Acknowledgements

Authors from the University of Warsaw are partially supported by the Polish Ministry of Science grant N206 567140 and Foundation for Polish Science. Michał Pilipczuk is supported by the European Research Council (ERC) grant “Rigorous Theory of Preprocessing”, reference 267959. Ildikó Schlotter is supported by the Hungarian National Research Fund (grant OTKA 67651), and by the European Union and the European Social Fund (grant TÁMOP 4.2.1./B-09/1/KMR-2010-0003).

Open Access

This article is distributed under the terms of the Creative Commons Attribution License which permits any use, distribution, and reproduction in any medium, provided the original author(s) and the source are credited.

Copyright information

© The Author(s) 2012

Authors and Affiliations

  • Marek Cygan
    • 1
  • Dániel Marx
    • 2
  • Marcin Pilipczuk
    • 1
  • Michał Pilipczuk
    • 3
  • Ildikó Schlotter
    • 4
  1. 1.Institute of InformaticsUniversity of WarsawWarsawPoland
  2. 2.Institut für InformatikHumboldt-Universität zu BerlinBerlinGermany
  3. 3.Department of InformaticsUniversity of BergenBergenNorway
  4. 4.Department of Computer Science and Information TheoryBudapest University of Technology and EconomicsBudapestHungary