1 Introduction

In the Cutwidth problem we are given an n-vertex graph G together with an integer w. The task is to determine whether there exists a linear layout of the vertices of G such that any vertical line inserted between two consecutive vertices of the layout intersects with at most w edges (see Sect. 2 for a formal definition). The cutwidth (cw(G)) of G is the smallest w for which such a layout exists. The problem has numerous applications [10, 23, 24, 29], ranging from circuit design [1, 27] to protein engineering [4]. Unfortunately Cutwidth is NP-complete [18], and remains so even when the input is restricted to subcubic planar bipartite graphs [13, 28] or split graphs where all independent set vertices have degree 2 [20]. On the other hand, the problem has a factor O(log2(n))-approximation on general graphs [26] and is polynomial time solvable on trees [12, 32], graphs of constant treewidth and constant degree [31], threshold graphs [20], proper interval graphs [34] and bipartite permutation graphs [19].

In this article we study the complexity of computing cutwidth exactly on general graphs, where the running time is measured in terms of the size of the smallest vertex cover of the input graph G. A vertex cover of G is a vertex set S such that every edge of G has at least one endpoint in S. We show that Cutwidth can be solved in time 2k n O(1) where k is the size of the smallest vertex cover of G. An immediate consequence of our algorithm is that Cutwidth can be solved in time 2n/2 n O(1) on bipartite graphs. This is the first non-trivial exact exponential time algorithm for Cutwidth on a graph class where the problem is NP-complete. Furthermore, our algorithm improves considerably over the previous best algorithm for Cutwidth parameterized by vertex cover [15], whose running time is \(O(2^{2^{O(k)}}n^{O(1)})\) (however, it was not the focus of [15] to optimize the running time dependence on k).

Additionally, we show that Cutwidth parameterized by vertex cover does not admit a polynomial kernel unless NP⊆coNP/poly. A polynomial kernel for Cutwidth parameterized by vertex cover is a polynomial time algorithm that takes as input a Cutwidth instance (G,w), where G has a vertex cover of size at most k and outputs an equivalent instance (G′,w′) of Cutwidth such that G′ has at most k O(1) vertices. We show that unless NP⊆coNP/poly such a kernelization algorithm can not exist. This contrasts with the recent results of Bodlaender et al. [7, 8] that both Treewidth and Pathwidth parameterized by the vertex cover number of the input graph do admit polynomial size kernels.

Context of Our Work

The Cutwidth problem is one of many graph layout problems, where the task is to find a permutation of the vertices of the input graph that optimizes a problem specific objective function. Graph layout problems, such as Treewidth, Bandwidth and Hamiltonian Path are not amenable to “branching” techniques, and hence the design of faster exact exponential time algorithms for these problems has resulted in several new and useful tools. For example, Karp’s inclusion-exclusion based algorithm [25] for Hamiltonian Path was the first application of inclusion-exclusion in exact algorithms. Another example is the introduction of potential maximal cliques as a tool for the computation of treewidth. Most graph layout problems (with the exception of Bandwidth) admit an O(2n n O(1)) time dynamic programming algorithm [2, 21]. For several of these problems, faster algorithms with running time below O(2n) have been found [3, 16, 30], a stellar example is the recent algorithm by Björklund [3] for Hamiltonian Path. The Cutwidth problem is perhaps the best known graph layout problem for which a O(2n n O(1)) time algorithm is known, yet no better algorithm has been found. Hence, whether such an improved algorithm exists is a tantalizing open problem. While we do not resolve this problem in this article, we make considerable progress; hard instances of Cutwidth cannot contain any independent set of size cn for any c>0.

Our choice of the vertex cover number as a relevant parameter for the Cutwidth problem originates in a recent interest in structural parameters (see e.g. [68, 22]), in particular from the study of a very closely related problems of computing treewidth and pathwidth of the input graph. Note that both these problems can be easily seen to be AND-compositional when parameterized by the target treewidth or pathwidth of the graph (see [5] for discussion and relevant definitions) and an AND-composition, together with existence of a polynomial kernel, is now known to cause a collapse of the polynomial hierarchy [14]. This situation, together with the importance of the Treewidth and Pathwidth problems, motivated Bodlaender et al. [7, 8] to investigate their other, stronger parameterizations. Among many other results, they have proven that both these problems admit a polynomial kernel with respect to the vertex cover of the graph, while such a kernel is unlikely if we parameterize by the deletion distance to a clique. We show that, although Cutwidth seems very similar to Pathwidth, these problems behave differently with respect to polynomial kernelization: Cutwidth does not admit a polynomial kernel when parameterized by the vertex cover number unless NP⊆coNP/poly, which is known to imply a collapse of the polynomial hierarchy to its third level [11, 33].

Organization of the Paper

In Sect. 2 we present a dynamic programming algorithm which computes cutwidth in time O(2k n O(1)) for a given vertex cover of size k, whereas in Sect. 3 we show that Cutwidth parameterized by vertex cover does not admit a polynomial kernel unless NP⊆coNP/poly. Section 4 is devoted to concluding remarks.

Notation

All graphs in this paper are undirected and simple. For a vertex vV we define its neighbourhood N G (v)={u:uvE(G)} and closed neighbourhood N G [v]=N G (v)∪{v}. If G is clear from the context, we might omit the subscript. For XV we denote N G [X]=⋃ vX N G (v)∖X.

2 Faster Cutwidth Parameterized by Vertex Cover

In this section we show that given a graph G=(CI,E) such that C is a vertex cover of G of size k, we can compute the cutwidth of G in time O(2k n O(1)), using a dynamic programming approach. We start by showing that there always exists an optimal ordering of a specific form.

For an ordering σ=v 1v n of V=CI we define V i ={v j :ji}. For vertices u and vV we say that u σ v if u occurs before v in σ. Denote by δ(V i ) the number of edges between V i and VV i . The cutwidth of the ordering, cw σ (G), is defined as the maximum of δ(V i ) for i=1,2,…,|V|−1, and the cutwidth of the graph G is the minimum cutwidth over all possible orderings σ of V. The rank of a vertex v i with respect to an ordering σ is denoted by rank σ (v i ) and it is equal to |N(v i )∖V i |−|N(v i )∩V i |. Notice that δ(V i+1)=δ(V i )+rank σ (v i+1) and hence δ(V i )=∑ ji rank σ (v j ). Moving a vertex v p backward to position q with q<p results in the ordering

$$\sigma' = v_1v_2 \cdots v_{q-2}v_{q-1}{\bf v_p}v_qv_{q+1} \cdots v_{p-2}v_{p-1}v_{p+1}v_{p+2} \cdots v_n. $$

Moving v p forward to a position q with q>p results in the ordering

$$\sigma' = v_1v_2 \cdots v_{p-2}v_{p-1}v_{p+1}v_{p+2} \cdots v_{q-2}v_{q-1}{\bf v_p}v_qv_{q+1} \cdots v_n. $$

Notice that any vertex with odd degree must have (nonzero) odd rank. Moreover, moving a vertex backward cannot decrease its rank, whereas moving a vertex forward cannot increase its rank.

Lemma 1

If moving v p backward to position q results in an ordering σsuch that rank σ(v p )≤0 then cw σ(G)≤cw σ (G). If moving v p forward to position q results in an ordering σsuch that rank σ(v p )≥0 then cw σ(G)≤cw σ (G).

Proof

Suppose moving v p backward to position q results in an ordering σ′ such that rank σ(v p )≤0. For every non-negative integer i define \(V'_{i}\) to contain the first i vertices of σ′. Then, for every i<q and ip we have \(V_{i}' = V_{i}\) and hence \(\delta(V_{i}') = \delta(V_{i})\). For every i such that qi<p we have that \(V_{i}' = V_{i-1} \cup\{v_{p}\}\). Observe that for any other vertex v j , jp, rank σ(v j )≤rank σ (v j ), while rank σ(v p )≤0. Thus \(\delta(V_{i}') = \mathit{rank}_{\sigma '}(v_{p})+\sum_{j \leq{i-1}} \mathit{rank}_{\sigma'}(v_{j}) \leq\delta(V_{i-1})\) and cw σ(G)≤cw σ (G). The proof that if moving v p forward to position q results in an ordering σ′ such that rank σ(v p )≥0 then cw σ(G)≤cw σ (G) is analogous. □

Lemma 1 allows us to rearrange optimal orderings. Let σ be an optimal cutwidth ordering of G, c 1 c 2c k be the ordering which σ imposes on C and C i ={c 1,…,c i } for every i. Observe that if u and v are both in I then moving u does not affect the rank of v. In particular, if moving u yields the ordering σ′, then rank σ(v)=rank σ (v). For every vertex uI with odd degree and rank σ (u)<0 we move u backward to the leftmost position where u has rank −1. For every vertex uI with odd degree and rank σ (u)>0 we move u forward to the rightmost position where u has rank 1. For every vertex of the set I with even degree we move it (forward or backward) to the rightmost position where u has rank 0. This results in an optimal cutwidth ordering σ′ with the following properties.

  1. 1.

    For every vertex vI of even degree rank σ(v)=0 and every vertex vI of odd degree rank σ(v)∈{−1,1}.

  2. 2.

    For every vertex vI such that rank σ(v)≥0 and c i C we have c i σ v if and only if |N(v)∩C i |≤|N(v)∖C i |.

  3. 3.

    For every vertex vI such that rank σ(v)<0 and c i C we have c i σ v if and only if |N(v)∩C i−1|<|N(v)∖C i−1|.

Define \(I_{0}'\) and \(I_{k}'\) to be the set of vertices in I appearing before c 1 and after c k in σ′, respectively. For i between 1 and k−1 we denote \(I_{i}'\) the set of vertices in I appearing between c i and c i+1 in σ′. For any i, if \(I_{i}'\) contains any vertices of rank −1, we move them backward to the position right after c i . This results in an ordering σ″ where for every i, all the vertices of \(I_{i}'\) with negative rank appear before all the vertices of \(I_{i}'\) with non-negative rank. By Lemma 1 and the fact that moving a vertex from independent set does not affect the rank of another vertex from the independent set we have that σ″ is still an optimal cutwidth ordering. Also, σ″ satisfies the properties 1–3. We say that an ordering σ is C-good if it satisfies properties 1–3 and orders the vertices between vertices of C in such a way that all vertices of negative rank appear before all vertices of non-negative rank. The construction of σ″ from an optimal ordering σ proves the following lemma.

Lemma 2

Let G=(CI,E) be a graph and C be a vertex cover of G. There exists an optimal cutwidth ordering σ of G which is C-good.

In a C-good ordering σ, consider a position i such that c i C. Because of the properties of a C-good ordering we can essentially deduce V i I from V i C and the vertex c i . We will now formalize this idea. For a set SC and vertex vS we define the set X(S,v)⊆I as follows. A vertex uI of even degree is in X(S,v) if |N(u)∩S|>|N(u)∖S|. A vertex uI of odd degree is in X(S,v) if |N(u)∩(S∖{v})|>|N(u)∖(S∖{v})|. Now we define the set Y(S,v). A vertex uI is in Y(S,v) if uvE and |(N(u)∖{v})∩S|=|(N(u)∖{v})∖S|. Note that the vertices in Y(S,v) have odd degrees and Y(S,v) is disjoint with X(S,v). We refer to Fig. 1 for an illustration. The following observation follows directly from the properties of a C-good ordering.

Fig. 1
figure 1

Illustration of the definition of the sets X(S,v) and Y(S,v)

Observation 3

In a C-good ordering σ let i be an integer such that c i C and let S=V i C. Then X(S,c i )⊆V i IX(S,c i )∪Y(S,c i ).

A prefix ordering ϕ is a set V ϕ CI together with an ordering of V ϕ . The size of the prefix ordering ϕ is just |V ϕ |. Similarly to normal orderings we define \(V^{\phi}_{i} = \{v_{1} \cdots v_{i}\}\). Let \(c_{1}c_{2} \cdots c_{|V_{\phi}\cap C|}\) be the ordering imposed on V ϕ C by ϕ, and for every i≤|V ϕ C| we set \(C_{i}^{\phi}= \{c_{1}, \ldots, c_{i}\}\). The rank of a vertex vV ϕ with respect to ϕ is defined as \(\mathit{rank}_{\phi}(v_{i}) = |N(v_{i}) \setminus V^{\phi}_{i}| -~|N(v_{i}) \cap V^{\phi}_{i}|\). We now extend the notion of being C-good from orderings of G to prefix orderings of G in such a way that the restriction of any C-good ordering σ of G to the first t vertices, where v t C, must be C-good. We say that a prefix ordering ϕ=v 1v t of size t with v t C is C-good if the following conditions are satisfied.

  1. 1.

    For every vertex vV ϕ I of even degree, rank ϕ (v)=0 and for every vertex vV ϕ I of odd degree, rank ϕ (v)∈{−1,1}.

  2. 2.

    X(V ϕ C,v i )⊆V ϕ IX(V ϕ C,v i )∪Y(V ϕ C,v i )

  3. 3.

    For every vertex vX(V ϕ C,c i ) such that rank ϕ (v)≥0 and c i V ϕ C we have c i ϕ v if and only if \(|N(v) \cap C^{\phi}_{i}| \leq|N(v) \setminus C^{\phi}_{i}|\).

  4. 4.

    For every vertex vX(V ϕ C,c i ) such that rank ϕ (v)<0 and c i V ϕ C we have c i ϕ v if and only if \(|N(v) \cap C^{\phi}_{i-1}| < |N(v) \setminus C^{\phi}_{i-1}|\).

  5. 5.

    Between two vertices c i ,c i+1CV ϕ , all vertices with rank ϕ (v)<0 come before all vertices with rank ϕ (v)≥0.

Comparing the properties of C-good orderings and C-good prefix orderings it is easy to see that the following lemma holds.

Lemma 4

Let σ=v 1v n be a C-good ordering and let ϕ be the restriction of σ to the first t vertices, such that v t C. Then ϕ is a C-good prefix ordering.

For a prefix ordering ϕ define the cutwidth of G with respect to ϕ to be \(\mathit{cw}_{\phi}(G) = \max_{i \leq|V_{\phi}|} \delta (V_{i}^{\phi})\). For a subset S of C and vertex vS, define T(S,v) to be the minimum value of cw ϕ (G) where the minimum is taken over all C-good prefix orderings ϕ with V ϕ C=S and v being the last vertex of ϕ. Notice that property 5 of C-good prefix orderings implies that in a C-good prefix ordering ϕ there must be some i with v i CV ϕ such that cw ϕ (G)=δ(V i ) or cw ϕ (G)=δ(V i−1). Also, notice that for any set SC and vertices u,vS we have that X(S∖{v},u)⊆X(S,v) and Y(S∖{v},u)⊆X(S,v). Finally, observe that for any set SC and vertex vS, every vertex uY(S,v) is adjacent to v and satisfies |(N(u)∖{v})∩S|=|(N(u)∖{v})∖S|. Thus, for any set I′⊆I with X(S,v)⊆I′⊆X(S,v)∪Y(S,v) the value of δ(SI′) depends only on |Y(S,v)∩I′| and not on Y(S,v)∩I′ in general. We let Y i (S,v) be an arbitrary subset of Y(S,v) of size i. The discussion above yields that the following recurrence holds for T(S,v), where SC and vS.

$$ T(S,v) = \min_{u \in S} \min_{0 \leq i \leq|Y(S,v)|} \max \left \{ \begin{array}{l} \delta(S \cup X(S,v) \cup Y_i(S,v))\\ \delta((S \setminus\{v\}) \cup X(S,v) \cup Y_i(S,v))\\ T(S \setminus\{v\}, u) \end{array} \right \}. $$

Observe that cw(G)=min vC T(S,v) because in any ordering σ all vertices of I appearing after the last vertex of C must have negative rank. Thus the recurrence above naturally leads to a dynamic programming algorithm for Cutwidth running in time O(2k n O(1)). This proves the main theorem of this section.

Theorem 5

There is an algorithm that given a graph G=(CI,E) such that C is a vertex cover of G, computes the cutwidth of G in running time O(2|C|(|C|+|I|)O(1)). Thus, Minimum Cutwidth on bipartite graphs can be solved in time O(2n/2 n O(1)), where n is the number of vertices of the input graph.

3 Kernelization Lower Bound

In this section we show that Cutwidth parameterized by vertex cover does not admit a polynomial kernel unless NP⊆coNP/poly.

3.1 The Auxiliary Problem

We begin by introducing an auxiliary problem, namely Hypergraph Minimum Bisection. Let H=(V,E) be a multihypergraph with |V|=n, where n is even. A bisection of V is a colouring \(\mathcal{B}:V\to\{0,1\}\) such that \(|\mathcal{B}^{-1}(0)|=|\mathcal{B}^{-1}(1)|=n/2\). For a hyperedge e let us define the cost of e with respect to a bisection \(\mathcal{B}\) as \(\mathit{cost}(e,\mathcal{B})=\min (\vert e\cap\mathcal {B}^{-1}(0)\vert ,\vert e\cap\mathcal{B}^{-1}(1)\vert )\). The cost of a bisection is defined as the sum of the contributions of the hyperedges, i.e., \(\mathit{cost}(\mathcal{B})=\sum_{e\in E} \mathit{cost}(e,\mathcal{B})\).

figure a

In the case when all the hyperedges are in fact edges (have cardinalities 2) and there are no multiedges, the problem is equivalent to the classical Minimum Bisection problem. As Minimum Bisection is NP-hard, Hypergraph Minimum Bisection is also NP-hard, so NP-complete as well.

The goal now is to prove that Cutwidth parameterized by the size of vertex cover does not admit a polynomial kernel, unless NP⊆coNP/poly. We do it in two steps. First, using the OR-distillation technique of Bodlaender et al. [5] (with the backbone theorem proven by Fortnow and Santhanam [17]) we prove that Hypergraph Minimum Bisection does not admit a polynomial kernel, unless NP⊆coNP/poly. Second, we present a parameterized reduction from Hypergraph Minimum Bisection to Cutwidth parameterized by vertex cover.

3.2 No Polynomial Kernel for Hypergraph Minimum Bisection

We use the OR-distillation technique (first introduced by Bodlaender et al. [5]) put into the framework called cross-composition [6]. Let us recall the crucial definitions.

Definition 6

(Polynomial Equivalence Relation [6])

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 (max xS |x|)O(1) classes.

Definition 7

(Cross-Composition [6])

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

Theorem 8

[6, Theorem 9]

If LΣ is NP-hard under Karp reductions and L cross-composes into the parameterized problem Q that has a polynomial kernel, then NP⊆coNP/poly.

Lemma 9

Hypergraph Minimum Bisection, parameterized by the size of the universe, does not admit a polynomial kernel, unless NP⊆coNP/poly.

Proof

As Minimum Bisection is NP-hard under Karp reductions, it suffices to prove that it cross-composes into the Hypergraph Minimum Bisection problem, parameterized by n—the size of the universe. Let R be an equivalence relation on Σ defined as follows:

  • all words that do not correspond to instances of Minimum Bisection form one equivalence class;

  • all the well-formed instances are partitioned into equivalence classes having the same number of vertices, the same number of edges and the same demanded cost of the bisection.

It is straightforward that R is a polynomial equivalence relation. Therefore, we can assume that the composition algorithm is given a sequence of instances (G 0,k),(G 1,k),…,(G t−1,k) of Minimum Bisection with |V(G i )|=n and |E(G i )|=m for all i=0,1,…,t−1 (n is even). Moreover, by copying some instances if necessary we can assume without losing generality that t=2l for some integer l. Note that in this manner we do not increase the order of logt.

We now proceed to the construction of the composed Hypergraph Minimum Bisection instance (H,K). Let N=2m⋅((l+2)2l−1−1)+2k+1 and M=N(l 2l)+N. We begin by creating two sets of vertices A 0 and A 1, each of size 2nl. We introduce each set A 0,A 1 as a hyperedge of the constructed hypergraph M times.

Then, we introduce 2l vertices \(s^{0}_{i},s^{1}_{i}\) for i=0,1,…,l−1 and denote the set of all these vertices by S. For every i<j we put N times each hyperedge \(\{s^{0}_{i},s^{0}_{j}\}\), \(\{s^{0}_{i},s^{1}_{j}\}\), \(\{ s^{1}_{i},s^{0}_{j}\}\), \(\{s^{1}_{i},s^{1}_{j}\}\). Thus, the hypergraph induced by S is a clique without a matching, repeated N times. Furthermore, for every p=0,1 and i=0,1,…,l−1 we construct a set \(S^{p}_{i}\) of n−1 vertices and put \(S^{p}_{i}\cup\{s^{p}_{i}\}\) as a hyperedge of the constructed hypergraph M times.

Now, we construct a set of n vertices v 1,v 2,…,v n and denote it by W. For every instance G a we arbitrarily choose an ordering of its vertices and denote it by \(v^{a}_{1},v^{a}_{2},\ldots,v^{a}_{n}\). Let b l−1 b l−2b 1 b 0 be the binary representation of a, with trailing zeroes added so that its length is equal to l. For every edge \(e=v^{a}_{g}v^{a}_{h}\in E(G_{a})\) we create two hyperedges:

  • e 0, consisting of vertices v g , v h , \(s^{b_{i}}_{i}\) for all i=0,1,…,l−1 and l vertices from A 1, chosen arbitrarily;

  • e 1, consisting of vertices v g , v h , \(s^{1-b_{i}}_{i}\) for all i=0,1,…,l−1 and l vertices from A 0, chosen arbitrarily.

Finally, we set the expected cost of the bisection to K=M−1=N(l 2l)+2m⋅((l+2)2l−1−1)+2k. We refer to Fig. 2 for an illustration.

Fig. 2
figure 2

The constructed hypergraph H for l=3; encircled vertices indicate the hyperedge e 0 constructed for \(e=v^{5}_{1}v^{5}_{2}\in E(G_{5})\)

Assume that some graph G a has a bisection \(\mathcal{B}\) having cost at most k. Let b l−1 b l−2b 1 b 0 be the binary representation of a, as in the previous paragraph. We now construct a bisection \(\mathcal{B}'\) of H as follows:

  • for each uA 0 we set \(\mathcal{B}'(u)=0\), for each uA 1 we set \(\mathcal{B}'(u)=1\);

  • for each \(u\in S^{p}_{i}\cup\{s^{p}_{i}\}\) for p=0,1, i=0,1,…,l−1 we set \(\mathcal{B}'(u)=p+b_{i} \pmod{2}\);

  • for each v j W we set \(\mathcal{B}'(v_{j})=\mathcal{B}(v^{a}_{j})\).

Observe that \(\mathcal{B}'\) bisects each of the sets A 0A 1, S and W, so it is a bisection. We now prove that its cost is at most K. Let us count the contribution to the cost from every hyperedge of H.

Each copy of the hyperedges A 0,A 1 and \(S^{p}_{i}\cup\{s^{p}_{i}\}\) for p=0,1, i=0,1,…,l−1 has zero contribution, as it is monochromatic. The edges of H[S] have contribution 0 or 1, depending on whether the endpoints are coloured in the same or in a different way in \(\mathcal{B}'\). There are l vertices \(s^{p}_{i}\) that map to 0 in \(\mathcal{B}'\) and l that map to 1, so there are l 2 pairs of vertices coloured in a different way. Between every pair of vertices there are N edges, apart from the pairs \((s^{0}_{i},s^{1}_{i})\). Note that all these pairs are coloured differently; therefore, there are exactly N(l 2l) edges in H[S] contributing 1 to the cost.

Take c∈{0,1,…,t−1} such that ca. Let d l−1 d l−2d 0 be the binary representation of c. For eE(G c ) let us count the contribution to \(\mathit{cost}(\mathcal {B}')\) of the hyperedges e 0 and e 1. Suppose that q=|{i:b i d i }|>0. Among vertices of e 0, l from A 1 are coloured 1, q from S are coloured 1 as well and lq from S are coloured 0. In total, we have l+q vertices coloured 1 and lq coloured 0, so regardless of the colouring of the remaining two vertices from W, the contribution is equal to the number of vertices coloured 0 in e 0, namely \(l-q+|e^{0}\cap W \cap\mathcal{B}'^{-1}(0)|\). Analogously, the contribution of the hyperedge e 1 is equal to the number of vertices of e 1 coloured 1, namely \(l-q+|e^{1}\cap W\cap \mathcal{B}'^{-1}(1)|\). As there are exactly two vertices in e 0W=e 1W, \(\mathit{cost}(e^{0},\mathcal{B}')+\mathit {cost}(e^{1},\mathcal {B}')=2(l-q)+2\). Thus, the total contribution of hyperedges e 0, e 1 for eE(G c ) is equal to 2m(lq)+2m.

Now we count the contribution of the edges e 0 and e 1 for eE(G a ). Analogously as in the previous paragraph, both edges e 0, e 1 contain l vertices coloured 0, l vertices coloured 1 plus two vertices from W. If both these vertices are coloured in the same way, the sum of the contributions of e 0 and e 1 is equal to 2l; however, if the vertices are coloured differently, the sum is equal to 2l+2. As the cost of bisection \(\mathcal{B}\) was at most k, the total contribution of edges e 0, e 1 for eE(G a ) is at most 2ml+2k.

Finally, we sum up the contributions:

We proceed to the second direction. Assume that we have a bisection \(\mathcal{B}'\) of H such that \(\mathit{cost}(\mathcal{B}')\leq K\). Observe that as M>K, both the sets A 0,A 1 are monochromatic with respect to \(\mathcal{B}'\). Moreover, they have to be coloured differently, as they contain more than half of the vertices of the graph in total. Without losing generality we can assume that A 0 is coloured in colour 0, while A 1 is coloured in colour 1, by flipping the colours if necessary.

Now consider the set \(S^{i}_{p}\cup\{s^{i}_{p}\}\) for p=0,1, i=0,1,…,l−1. Analogously as in the previous paragraph, \(S^{i}_{p}\cup\{s^{i}_{p}\}\) has to be monochromatic. Furthermore, observe that exactly l such sets have to be coloured 0 in \(\mathcal{B}'\) and the same number have to be coloured 1, as every set \(S^{i}_{p}\cup\{s^{p}_{i}\}\) contains the same number of vertices as the set W and \(\mathcal{B}'\) is a bisection. Therefore, \(\mathcal{B}'\) has to bisect each of the sets A 0A 1, S and W.

Exactly l vertices \(s^{p}_{i}\) are coloured 0 in \(\mathcal{B}'\) and exactly l are coloured 1. Let r be the number of indices i, such that \(s^{0}_{i}\) and \(s^{1}_{i}\) are coloured differently. Observe that analogously to our previous arguments, the contribution of the edges of H[S] to \(\mathit{cost}(\mathcal{B}')\) is equal to N(l 2r)=N(l 2l)+N(lr). If r<l, then \(\mathit{cost}(\mathcal{B}')\geq N(l^{2}-l)+N>K\), a contradiction. Therefore, all the pairs \((s^{0}_{i},s^{1}_{i})\) are coloured differently.

Let a be a number with binary representation \(\mathcal {B}'(s^{0}_{l-1})\mathcal{B}'(s^{1}_{l-2})\cdots\mathcal{B}'(s^{1}_{0})\). Consider a bisection \(\mathcal{B}\) of G a defined as follows: \(\mathcal{B}(v^{a}_{i})=\mathcal{B}'(v_{i})\). We claim that the cost of \(\mathcal{B}\) is at most k. Indeed, the same computations as in the previous part of the proof show that

$$\mathit{cost}\bigl(\mathcal{B}'\bigr) = N\bigl(l^2-l \bigr)+2m\bigl((l+2)2^{l-1}-1\bigr)+2\mathit {cost}(\mathcal{B}) $$

Therefore, as \(\mathit{cost}(\mathcal{B}')\leq K\), then \(\mathit {cost}(\mathcal{B})\leq k\). □

3.3 From Hypergraph Minimum Bisection to Cutwidth

Let us briefly recall the notion of polynomial parameter transformations.

Definition 10

[9]

Let P and Q be parameterized problems. We say that P is polynomial parameter reducible to Q, written P p Q, if there exists a polynomial time computable function f:Σ ×ℕ→Σ ×ℕ and a polynomial p, such that for all (x,k)∈Σ ×ℕ the following holds: (x,k)∈P iff (x′,k′)=f(x,k)∈Q and k′≤p(k). The function f is called a polynomial parameter transformation.

Theorem 11

[9]

Let P and Q be parameterized problems and \(\tilde{P}\) and \(\tilde {Q}\) be the unparameterized versions of P and Q respectively. Suppose that \(\tilde{P}\) is NP-hard and \(\tilde{Q}\) is in NP. Assume there is a polynomial parameter transformation from P to Q. Then if Q admits a polynomial kernel, so does P.

We apply this notion to our case.

Lemma 12

There exists a polynomial-time algorithm that, given an instance of the Hypergraph Minimum Bisection problem with n vertices, outputs an equivalent instance of the Cutwidth problem along with its vertex cover of size n.

Proof

Let (H=(V,E),k) be an instance of Hypergraph Minimum Bisection given in the input, where |V|=n (n is even) and |E|=m. We construct a graph G as follows.

Let us denote N=mn+1. We begin by taking the whole set V to be the set of vertices of G. For every distinct u,vV we introduce N new vertices \(x^{i}_{u,v}\) for i=1,2,…,N, each connected only to u and v. Then, for every eE we introduce a new vertex y e connected to all ve. Denote the set of all vertices \(x^{i}_{u,v}\) by X and the set of all vertices y e by Y. This concludes the construction. Observe that V is a vertex cover of G of size n. We now prove that H has a bisection with cost at most k if and only if G has cutwidth at most n 2 N/4+k.

Assume that H has a bisection \(\mathcal{B}\) with cost at most k. Let us order the vertices of the graph G as follows. First, we order the vertices from V: we place \(\mathcal{B}^{-1}(0)\) first, in any order, and then \(\mathcal{B}^{-1}(1)\), in any order. Then, we place every \(x^{i}_{u,v}\) anywhere between u and v. At the end, for every eE we place y e at the beginning if at least half of the vertices of e are in \(\mathcal{B}^{-1}(0)\), and in the end otherwise. Vertices y e at the beginning and at the end are arranged in any order.

Now, we prove that the cutwidth of the constructed ordering is at most n 2 N/4+k. Consider any cut C, dividing the order on V(G) into a first part V 1 and a second part V 2. Suppose that |V 1V|=n/2−l for some −n/2≤ln/2, thus |V 2V|=n/2+l. Observe that C cuts exactly N(n/2−l)(n/2+l)=n 2 N/4−l 2 N edges between V and X. Note that there are not more than nm<N edges between V and Y. Therefore, if l≠0, then C can cut at most n 2 N/4−N+nm<n 2 N/4+k edges.

We are left with the case when l=0. Observe that \(V_{1}\cap V=\mathcal{B}^{-1}(0)\) and \(V_{2}\cap V=\mathcal{B}^{-1}(1)\). Moreover, the cut C cuts exactly n 2 N/4 edges between sets V and X. As far as edges between V and Y are concerned, for every hyperedge eE, the cut C cuts exactly \(\mathit{cost}(e,\mathcal{B})\) edges incident on y e . As \(\mathit{cost}(\mathcal{B})\leq k\), the cut C cuts at most n 2 N/4+k edges.

Now assume that there is an ordering of vertices of G that has cutwidth at most n 2 N/4+k. We construct a bisection \(\mathcal{B}\) of H as follows. Let \(\mathcal{B}(v)=0\) for every v among the first n/2 vertices from V with respect to the ordering, and \(\mathcal{B}(v)=1\) for v among the second n/2 vertices. We now prove that the cost of this bisection is at most k.

Let C be any cut dividing the order into the first part V 1 and the second part V 2, such that \(V_{1}\cap V=\mathcal{B}^{-1}(0)\) and \(V_{2}\cap V=\mathcal{B}^{-1}(1)\). As the cutwidth of the ordering is at most n 2 N/4+k, C cuts at most n 2 N/4+k edges. Observe that C needs to cut at least n 2 N/4 edges between sets V and X, therefore it cuts at most k edges between sets V and Y. For every hyperedge eE, C cuts at least \(\mathit{cost}(e,\mathcal{B})\) edges incident to y e , thus \(\mathit{cost}(\mathcal{B})\leq k\). □

From Lemmas 9, 12 and Theorem 11 we conclude the following.

Theorem 13

Cutwidth parameterized by the size of vertex cover does not admit a polynomial kernel, unless NP⊆coNP/poly.

4 Conclusions

In this paper we studied the complexity of computing the cutwidth of a graph parameterized by the size of a given vertex cover. We have shown an algorithm with running time O(2k n O(1)), where k is the cardinality of the vertex cover and n is the number of vertices of the graph. Moreover, we have proven that polynomial kernelization of the problem is unlikely, thus counterpoising the recent result of Bodlaender et al. [7].

The thrilling and natural question is whether the insight we have given into the problem can be a starting point to breaking the 2n barrier for an exact algorithm computing cutwidth. Our result implies that one can assume that in any hard instance all the independent sets are small, i.e., of size not larger than cn for an arbitrarily small constant c>0.