University of Electronic Science and Technology of China, Chengdu, [email protected] of Electronic Science and Technology of China, Chengdu, [email protected]://orcid.org/0000-0002-1012-2373 \CopyrightJ. Open Access and J. R. Public \ccsdesc[100]Theory of computation β†’β†’\rightarrowβ†’ Parameterized complexity and exact algorithms

Acknowledgements.
I want to thank …\EventEditorsJohn Q. Open and Joan R. Access \EventNoEds2 \EventLongTitle42nd Conference on Very Important Topics (CVIT 2016) \EventShortTitleCVIT 2016 \EventAcronymCVIT \EventYear2016 \EventDateDecember 24–27, 2016 \EventLocationLittle Whinging, United Kingdom \EventLogo \SeriesVolume42 \ArticleNo23

Solving Co-Path/Cycle Packing and Co-Path Packing Faster Than 3ksuperscript3π‘˜3^{k}3 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT

Yuxi Liu    Mingyu Xiao
Abstract

The Co-Path/Cycle Packing problem (resp. The Co-Path Packing problem) asks whether we can delete at most kπ‘˜kitalic_k vertices from the input graph such that the remaining graph is a collection of induced paths and cycles (resp. induced paths). These two problems are fundamental graph problems that have important applications in bioinformatics. Although these two problems have been extensively studied in parameterized algorithms, it seems hard to break the running time bound 3ksuperscript3π‘˜3^{k}3 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT. In 2015, Feng et al. provided an Oβˆ—β’(3k)superscript𝑂superscript3π‘˜O^{*}(3^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT )-time randomized algorithms for both of them. Recently, Tsur showed that they can be solved in Oβˆ—β’(3k)superscript𝑂superscript3π‘˜O^{*}(3^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time deterministically. In this paper, by combining several techniques such as path decomposition, dynamic programming, cut & count, and branch-and-search methods, we show that Co-Path/Cycle Packing can be solved in Oβˆ—β’(2.8192k)superscript𝑂superscript2.8192π‘˜O^{*}(2.8192^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.8192 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time deterministically and Co-Path Packing can be solved in Oβˆ—β’(2.9241k)superscript𝑂superscript2.9241π‘˜O^{*}(2.9241^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.9241 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time with failure probability ≀1/3absent13\leq 1/3≀ 1 / 3. As a by-product, we also show that the Co-Path Packing problem can be solved in Oβˆ—β’(5p)superscript𝑂superscript5𝑝O^{*}(5^{p})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 5 start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT ) time with probability at least 2/3 if a path decomposition of width p𝑝pitalic_p is given.

keywords:
Graph Algorithms, Parameterized Algorithms, Co-Path/Cycle Packing, Co-Path Packing, Cut & Count, Path Decomposition
category:
\relatedversion

1 Introduction

In the classic Vertex Cover problem, the input is a graph G𝐺Gitalic_G and an integer kπ‘˜kitalic_k, and the problem asks whether it is possible to delete at most kπ‘˜kitalic_k vertices such that the maximum degree of the remaining graph is at most 0. A natural generalization of Vertex Cover is that: can we delete at most kπ‘˜kitalic_k vertices such that the maximum degree of the remaining graph is at most d𝑑ditalic_d? Formally, for every integer dβ‰₯0𝑑0d\geq 0italic_d β‰₯ 0, we consider the following d𝑑ditalic_d-Bounded-Degree Vertex Deletion problem.

Β  d𝑑ditalic_d-Bounded-Degree Vertex Deletion
Instance: A graph G=(V,E)𝐺𝑉𝐸G=(V,E)italic_G = ( italic_V , italic_E ) and two integers d𝑑ditalic_d and kπ‘˜kitalic_k.
Question: Is there a set of at most kπ‘˜kitalic_k vertices whose removal from G𝐺Gitalic_G results in a graph with maximum degree at most d𝑑ditalic_d?
Β 

The d𝑑ditalic_d-Bounded-Degree Vertex Deletion problem finds applications in computational biologyΒ [7] and social network analysisΒ [16]. In this paper, we focus on the case that d=2𝑑2d=2italic_d = 2, which is referred to as the Co-Path/Cycle Packing problem. The Co-Path/Cycle Packing problem also has many applications in computational biologyΒ [4]. Formally, the Co-Path/Cycle Packing problem is defined as follows.

Β  Co-Path/Cycle Packing
Instance: A graph G=(V,E)𝐺𝑉𝐸G=(V,E)italic_G = ( italic_V , italic_E ) and an integer kπ‘˜kitalic_k.
Question: Is there a vertex subset SβŠ†V𝑆𝑉S\subseteq Vitalic_S βŠ† italic_V of size at most kπ‘˜kitalic_k whose deletion makes the graph a collection of induced paths and cycles?
Β 

We also focus on a similar problem called Co-Path Packing, which allows only paths in the remaining graph, defined as follows.

Β  Co-Path Packing
Instance: A graph G=(V,E)𝐺𝑉𝐸G=(V,E)italic_G = ( italic_V , italic_E ) and an integer kπ‘˜kitalic_k.
Question: Is there a vertex subset SβŠ†V𝑆𝑉S\subseteq Vitalic_S βŠ† italic_V of size at most kπ‘˜kitalic_k whose deletion makes the graph a collection of induced paths?
Β 

Related Work. In this paper, we mainly consider parameterized algorithms. When d𝑑ditalic_d is an input, the general d𝑑ditalic_d-Bounded-Degree Vertex Deletion problem is W[2]-hard with the parameter kπ‘˜kitalic_kΒ [7]. XiaoΒ [22] gave a deterministic algorithm that solves d𝑑ditalic_d-Bounded-Degree Vertex Deletion in Oβˆ—β’((d+1)k)superscript𝑂superscript𝑑1π‘˜O^{*}((d+1)^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( ( italic_d + 1 ) start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time for every dβ‰₯3𝑑3d\geq 3italic_d β‰₯ 3, which implies that the problem is FPT with parameter k+dπ‘˜π‘‘k+ditalic_k + italic_d. In term of treewidth (tw), van RooijΒ [21] gave an Oβˆ—β’((d+2)t⁒w)superscript𝑂superscript𝑑2𝑑𝑀O^{*}((d+2)^{tw})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( ( italic_d + 2 ) start_POSTSUPERSCRIPT italic_t italic_w end_POSTSUPERSCRIPT )-time algorithm to solve d𝑑ditalic_d-Bounded-Degree Vertex Deletion for every dβ‰₯1𝑑1d\geq 1italic_d β‰₯ 1. Lampis and VasilakisΒ [14] showed that no algorithm can solve d𝑑ditalic_d-Bounded-Degree Vertex Deletion in time (d+2βˆ’Ο΅)t⁒w⁒nO⁒(1)superscript𝑑2italic-ϡ𝑑𝑀superscript𝑛𝑂1(d+2-\epsilon)^{tw}n^{O(1)}( italic_d + 2 - italic_Ο΅ ) start_POSTSUPERSCRIPT italic_t italic_w end_POSTSUPERSCRIPT italic_n start_POSTSUPERSCRIPT italic_O ( 1 ) end_POSTSUPERSCRIPT, for any Ο΅>0italic-Ο΅0\epsilon>0italic_Ο΅ > 0 and for any fixed dβ‰₯1𝑑1d\geq 1italic_d β‰₯ 1 unless the SETH is false. The upper and lower bounds have matched. This problem has also been extensively studied in kernelization. Fellows et al.Β [7] and XiaoΒ [23] gave a generated form of the NT-theorem that then provided polynomial kernels for the problem with each fixed d𝑑ditalic_d.

For each fixed small d𝑑ditalic_d, d𝑑ditalic_d-Bounded-Degree Vertex Deletion has also been paid certain attention. The 00-Bounded-Degree Vertex Deletion problem is referred to as Vertex Cover, which is one of the most fundamental problems in parameterized algorithms. For a long period of time, the algorithm of Chen et al.Β [3] held the best-known running time of Oβˆ—β’(1.2738k)superscript𝑂superscript1.2738π‘˜O^{*}(1.2738^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 1.2738 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ), and recently this result was improved by Harris and NarayanaswamyΒ [11] to Oβˆ—β’(1.25284k)superscript𝑂superscript1.25284π‘˜O^{*}(1.25284^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 1.25284 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ). The 1111-Bounded-Degree Vertex Deletion problem is referred to as P3subscript𝑃3P_{3}italic_P start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT Vertex Cover, where TuΒ [20] achieved a running time of Oβˆ—β’(2k)superscript𝑂superscript2π‘˜O^{*}(2^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) by using iterative compression. This result was later improved by Katrenič [12] to Oβˆ—β’(1.8127k)superscript𝑂superscript1.8127π‘˜O^{*}(1.8127^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 1.8127 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ). Then, Chang et. al.Β [2] gave an Oβˆ—β’(1.7964k)superscript𝑂superscript1.7964π‘˜O^{*}(1.7964^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 1.7964 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT )-time polynomial-space algorithm and an Oβˆ—β’(1.7485k)superscript𝑂superscript1.7485π‘˜O^{*}(1.7485^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 1.7485 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT )-time exponential-space algorithm. Xiao and KouΒ [24] gave an Oβˆ—β’(1.7485k)superscript𝑂superscript1.7485π‘˜O^{*}(1.7485^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 1.7485 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT )-time polynomial-space algorithm. This result was improved by TsurΒ [18] to Oβˆ—β’(1.713k)superscript𝑂superscript1.713π‘˜O^{*}(1.713^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 1.713 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) through a branch-and-search approach and finally by Červenα»³ and Suchα»³Β [1] to Oβˆ—β’(1.708k)superscript𝑂superscript1.708π‘˜O^{*}(1.708^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 1.708 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) through using an automated framework for generating parameterized branching algorithms.

Co-Path/Cycle Packing is the special case of d𝑑ditalic_d-Bounded-Degree Vertex Deletion with d=2𝑑2d=2italic_d = 2. A closely related problem is Co-Path Packing, where even cycles are not allowed in the remaining graph. Chen et al.Β [4] initially showed that Co-Path/Cycle Packing and Co-Path Packing can be solved in Oβˆ—β’(3.24k)superscript𝑂superscript3.24π‘˜O^{*}(3.24^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3.24 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time, and a finding subsequently refined to Oβˆ—β’(3.07k)superscript𝑂superscript3.07π‘˜O^{*}(3.07^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3.07 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) for Co-Path/Cycle Packing by XiaoΒ [22]. Feng et al.Β [8] introduced a randomized Oβˆ—β’(3k)superscript𝑂superscript3π‘˜O^{*}(3^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT )-time algorithm for the Co-Path Packing, which also works for Co-Path/Cycle Packing. However, we do not know how to derandomize this algorithm. Recently, TsurΒ [19] provided Oβˆ—β’(3k)superscript𝑂superscript3π‘˜O^{*}(3^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT )-time algorithms solving Co-Path/Cycle Packing and Co-Path Packing deterministically. It seems that the bound 3ksuperscript3π‘˜3^{k}3 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT is hard to break for the two problems. As shown in Tsur’s algorithmsΒ [19], many cases, including the case of handling all degree-4 vertices, lead to the same bottleneck. One of the main targets in this paper is to break those bottlenecks. Previous results and our results for Co-Path/Cycle Packing and Co-Path Packing are summarized in TableΒ 1.

Table 1: Algorithms for Co-Path/Cycle Packing and Co-Path Packing
Years References Co-Path/Cycle Deterministic Co-Path Deterministic
2010 Chen et al.Β [4] Oβˆ—β’(3.24k)superscript𝑂superscript3.24π‘˜O^{*}(3.24^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3.24 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) Yes Oβˆ—β’(3.24k)superscript𝑂superscript3.24π‘˜O^{*}(3.24^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3.24 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) Yes
2015 Feng et al.Β [8] Oβˆ—β’(3k)superscript𝑂superscript3π‘˜O^{*}(3^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) No Oβˆ—β’(3k)superscript𝑂superscript3π‘˜O^{*}(3^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) No
2016 XiaoΒ [22] Oβˆ—β’(3.07k)superscript𝑂superscript3.07π‘˜O^{*}(3.07^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3.07 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) Yes - -
2022 TsurΒ [19] Oβˆ—β’(3k)superscript𝑂superscript3π‘˜O^{*}(3^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) Yes Oβˆ—β’(3k)superscript𝑂superscript3π‘˜O^{*}(3^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) Yes
2024 This paper Oβˆ—β’(2.8192k)superscript𝑂superscript2.8192π‘˜O^{*}(2.8192^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.8192 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) Yes Oβˆ—β’(2.9241k)superscript𝑂superscript2.9241π‘˜O^{*}(2.9241^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.9241 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) No

Our Contributions. The main contributions of this paper are a deterministic algorithm for Co-Path/Cycle Packing running in Oβˆ—β’(2.8192k)superscript𝑂superscript2.8192π‘˜O^{*}(2.8192^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.8192 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time and Oβˆ—β’(2.5199k)superscript𝑂superscript2.5199π‘˜O^{*}(2.5199^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.5199 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) space and a randomized algorithm for Co-Path Packing running in Oβˆ—β’(2.9241k)superscript𝑂superscript2.9241π‘˜O^{*}(2.9241^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.9241 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time and space with failure probability ≀1/3absent13\leq 1/3≀ 1 / 3. To obtain this result, we need to combine path decomposition, dynamic programming, branch-and-search and some other techniques. In the previous Oβˆ—β’(3k)superscript𝑂superscript3π‘˜O^{*}(3^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT )-time algorithms for both Co-Path/Cycle Packing and Co-Path Packing, many cases, including dealing with degree-4 vertices and several different types of degree-3 vertices, lead to the same bottleneck. It seems very hard to avoid all the bottleneck cases by simply modifying the previous algorithms. The main idea of the algorithm in this paper is as follows. We first design some new reduction and branching rules to handle some good structures of the graph. After this, we prove that the remaining graph has a small pathwidth and then design an efficient dynamic programming algorithm based on a path decomposition. Specifically, our algorithm firstly runs the branch-and-search algorithm to handle the degree-β‰₯5absent5\geq 5β‰₯ 5 vertices and the degree-4 vertices adjacent to at least one degree-β‰₯3absent3\geq 3β‰₯ 3 vertex. In the branch-and-search phase, our algorithm runs in Oβˆ—β’(2.8192k)superscript𝑂superscript2.8192π‘˜O^{*}(2.8192^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.8192 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time for both Co-Path/Cycle Packing and Co-Path Packing. When branching steps cannot be applied, we can construct a path decomposition of width at most 2⁒k/3+ϡ⁒k2π‘˜3italic-Ο΅π‘˜2k/3+\epsilon k2 italic_k / 3 + italic_Ο΅ italic_k for any Ο΅>0italic-Ο΅0\epsilon>0italic_Ο΅ > 0 and call our dynamic programming algorithm. The running time and space of the dynamic programming algorithm are bounded by Oβˆ—β’(2.5199k)superscript𝑂superscript2.5199π‘˜O^{*}(2.5199^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.5199 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) for Co-Path/Cycle Packing and bounded by Oβˆ—β’(2.9241k)superscript𝑂superscript2.9241π‘˜O^{*}(2.9241^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.9241 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) with failure probability ≀1/3absent13\leq 1/3≀ 1 / 3 for Co-Path Packing. Therefore, the whole algorithm runs in Oβˆ—β’(2.8192k)superscript𝑂superscript2.8192π‘˜O^{*}(2.8192^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.8192 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time and Oβˆ—β’(2.5199k)superscript𝑂superscript2.5199π‘˜O^{*}(2.5199^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.5199 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) space for Co-Path/Cycle Packing and runs in Oβˆ—β’(2.9241k)superscript𝑂superscript2.9241π‘˜O^{*}(2.9241^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.9241 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time and space with failure probability ≀1/3absent13\leq 1/3≀ 1 / 3 for Co-Path Packing.

For the dynamic programming algorithms based on a path decomposition, the first algorithm is an Oβˆ—β’((d+2)p)superscript𝑂superscript𝑑2𝑝O^{*}((d+2)^{p})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( ( italic_d + 2 ) start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT )-time algorithm to solve d𝑑ditalic_d-Bounded-Degree Vertex Deletion for every dβ‰₯1𝑑1d\geq 1italic_d β‰₯ 1, where p𝑝pitalic_p is the width of the given path decomposition. This was firstly found inΒ [21]. We also present it in our way to make this paper self-contained. The second algorithm is designed for Co-Path Packing. In this algorithm, we use an algorithm framework called cut & countΒ [6]. Given a path decomposition of width p𝑝pitalic_p, we show that Co-Path Packing can be solved in Oβˆ—β’(5p)superscript𝑂superscript5𝑝O^{*}(5^{p})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 5 start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT ) time and space with failure probability ≀1/3absent13\leq 1/3≀ 1 / 3.

Reading Guide. Section 2 begins with a review of fundamental definitions and the establishment of notation. In Section 3 we solve Co-Path/Cycle Packing and in section 4 we solve Co-Path Packing. In Section 3.1, we show that a proper graph has a small pathwidth and present a dynamic programming algorithm for Co-Path/Cycle Packing. In Section 3.2, we give the branch-and-search algorithm for Co-Path/Cycle Packing. Similarly, in Section 4.1, we present a randomized dynamic programming algorithm for Co-Path Packing. In Section 4.2, we give the branch-and-search algorithm for Co-Path Packing. Most of the content of this branching algorithm is the same as the branching algorithm for Co-Path/Cycle Packing. Due to lack of space, Sections 1-3 can be seen as the short version. In Section 5, we give a conclusion.

The proof of theorems marked ♣♣\clubsuit♣ is placed in the appendix.

2 Preliminaries

In this paper, we only consider simple and undirected graphs. Let G=(V,E)𝐺𝑉𝐸G=(V,E)italic_G = ( italic_V , italic_E ) be a graph with n=|V|𝑛𝑉n=|V|italic_n = | italic_V | vertices and m=|E|π‘šπΈm=|E|italic_m = | italic_E | edges. A vertex v𝑣vitalic_v is called a neighbor of a vertex u𝑒uitalic_u if there is an edge u⁒v∈E𝑒𝑣𝐸uv\in Eitalic_u italic_v ∈ italic_E. Let N⁒(v)𝑁𝑣N(v)italic_N ( italic_v ) denote the set of neighbors of v𝑣vitalic_v. For a subset of vertices X𝑋Xitalic_X, let N⁒(X)=⋃v∈XN⁒(v)βˆ–X𝑁𝑋subscript𝑣𝑋𝑁𝑣𝑋N(X)=\bigcup_{v\in X}N(v)\setminus Xitalic_N ( italic_X ) = ⋃ start_POSTSUBSCRIPT italic_v ∈ italic_X end_POSTSUBSCRIPT italic_N ( italic_v ) βˆ– italic_X and N⁒[X]=N⁒(X)βˆͺX𝑁delimited-[]𝑋𝑁𝑋𝑋N[X]=N(X)\cup Xitalic_N [ italic_X ] = italic_N ( italic_X ) βˆͺ italic_X. We use d⁒(v)=|N⁒(v)|𝑑𝑣𝑁𝑣d(v)=|N(v)|italic_d ( italic_v ) = | italic_N ( italic_v ) | to denote the degree of a vertex v𝑣vitalic_v in G𝐺Gitalic_G. A vertex of degree d𝑑ditalic_d is called a degree-d𝑑ditalic_d vertex. For a subset of vertices XβŠ†V𝑋𝑉X\subseteq Vitalic_X βŠ† italic_V, the subgraph induced by X𝑋Xitalic_X is denoted by G⁒[X]𝐺delimited-[]𝑋G[X]italic_G [ italic_X ]. The induced subgraph G⁒[Vβˆ–X]𝐺delimited-[]𝑉𝑋G[V\setminus X]italic_G [ italic_V βˆ– italic_X ] is also written as Gβˆ–X𝐺𝑋G\setminus Xitalic_G βˆ– italic_X. A path P𝑃Pitalic_P in G𝐺Gitalic_G is a sequence of vertices v1,v2,β‹―,vtsubscript𝑣1subscript𝑣2β‹―subscript𝑣𝑑v_{1},v_{2},\cdots,v_{t}italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , β‹― , italic_v start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT such that for any 1≀i<t,{vi⁒vi+1}∈Eformulae-sequence1𝑖𝑑subscript𝑣𝑖subscript𝑣𝑖1𝐸1\leq i<t,\{v_{i}v_{i+1}\}\in E1 ≀ italic_i < italic_t , { italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPT } ∈ italic_E. Two vertices u𝑒uitalic_u and v𝑣vitalic_v are reachable to each other if there is a path v1,v2,β‹―,vtsubscript𝑣1subscript𝑣2β‹―subscript𝑣𝑑v_{1},v_{2},\cdots,v_{t}italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , β‹― , italic_v start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT such that v1=usubscript𝑣1𝑒v_{1}=uitalic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = italic_u and vt=vsubscript𝑣𝑑𝑣v_{t}=vitalic_v start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT = italic_v. A connected component of a graph is a maximum subgraph such that any two vertices are reachable to each other. A vertex subset S𝑆Sitalic_S is called a cPCP-set of graph G𝐺Gitalic_G if the degree of any vertex in Gβˆ–S𝐺𝑆G\setminus Sitalic_G βˆ– italic_S is at most 2. A vertex subset S𝑆Sitalic_S is called a cPP-set of graph G𝐺Gitalic_G if Gβˆ–S𝐺𝑆G\setminus Sitalic_G βˆ– italic_S is a collection of disjoint paths. For a graph G𝐺Gitalic_G, we will use V⁒(G)𝑉𝐺V(G)italic_V ( italic_G ) and E⁒(G)𝐸𝐺E(G)italic_E ( italic_G ) to denote the vertex set and edge set of it, respectively. A complete graph with 3 vertices is called a triangle. A singleton {v}𝑣\{v\}{ italic_v } may be denoted as v𝑣vitalic_v.

Path decomposition. We will use the concepts of path decomposition and nice path decomposition of a graph.

Definition 2.1 ([5]).

A path decomposition of a graph G𝐺Gitalic_G is a sequence P=(X1,X2,β‹―,Xr)𝑃subscript𝑋1subscript𝑋2β‹―subscriptπ‘‹π‘ŸP=(X_{1},X_{2},\cdots,X_{r})italic_P = ( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , β‹― , italic_X start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT ) of vertex subsets XiβŠ†V⁒(G)subscript𝑋𝑖𝑉𝐺X_{i}\subseteq V(G)italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT βŠ† italic_V ( italic_G ) (i∈{1,2,β‹―,r})𝑖12β‹―π‘Ÿ(i\in\{1,2,\cdots,r\})( italic_i ∈ { 1 , 2 , β‹― , italic_r } ) such that:
(P1) ⋃i=1rXi=V⁒(G)superscriptsubscript𝑖1π‘Ÿsubscript𝑋𝑖𝑉𝐺\bigcup_{i=1}^{r}X_{i}=V(G)⋃ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_V ( italic_G ).
(P2) For every u⁒v∈E⁒(G)𝑒𝑣𝐸𝐺uv\in E(G)italic_u italic_v ∈ italic_E ( italic_G ), there exists l∈{1,2,β‹―,r}𝑙12β‹―π‘Ÿl\in\{1,2,\cdots,r\}italic_l ∈ { 1 , 2 , β‹― , italic_r } such that Xlsubscript𝑋𝑙X_{l}italic_X start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT contains both u𝑒uitalic_u and v𝑣vitalic_v.
(P3) For every u∈V⁒(G)𝑒𝑉𝐺u\in V(G)italic_u ∈ italic_V ( italic_G ), if u∈Xi∩Xk𝑒subscript𝑋𝑖subscriptπ‘‹π‘˜u\in X_{i}\cap X_{k}italic_u ∈ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∩ italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT for some i≀kπ‘–π‘˜i\leq kitalic_i ≀ italic_k, then u∈Xj𝑒subscript𝑋𝑗u\in X_{j}italic_u ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT for all i≀j≀kπ‘–π‘—π‘˜i\leq j\leq kitalic_i ≀ italic_j ≀ italic_k.

For a path decomposition (X1,X2,β‹―,Xr)subscript𝑋1subscript𝑋2β‹―subscriptπ‘‹π‘Ÿ(X_{1},X_{2},\cdots,X_{r})( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , β‹― , italic_X start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT ) of a graph, each vertex subset Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT in it is called a bag. The width of the path decomposition is maxi⁑{|Xi|}βˆ’1subscript𝑖subscript𝑋𝑖1\max_{i}\{|X_{i}|\}-1roman_max start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT { | italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | } - 1. The pathwidth of a graph G𝐺Gitalic_G, denoted by pw(G𝐺Gitalic_G), is the minimum possible width of a path decomposition of G𝐺Gitalic_G. A path decomposition (X1,X2,β‹―,Xr)subscript𝑋1subscript𝑋2β‹―subscriptπ‘‹π‘Ÿ(X_{1},X_{2},\cdots,X_{r})( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , β‹― , italic_X start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT ) is nice if X1=Xr=βˆ…subscript𝑋1subscriptπ‘‹π‘ŸX_{1}=X_{r}=\emptysetitalic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = italic_X start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT = βˆ… and for every i∈{1,2,β‹―,rβˆ’1}𝑖12β‹―π‘Ÿ1i\in\{1,2,\cdots,r-1\}italic_i ∈ { 1 , 2 , β‹― , italic_r - 1 } there is either a vertex vβˆ‰Xi𝑣subscript𝑋𝑖v\notin X_{i}italic_v βˆ‰ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT such that Xi+1=Xiβˆͺ{v}subscript𝑋𝑖1subscript𝑋𝑖𝑣X_{i+1}=X_{i}\cup\{v\}italic_X start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPT = italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT βˆͺ { italic_v }, or there is a vertex w∈Xi𝑀subscript𝑋𝑖w\in X_{i}italic_w ∈ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT such that Xi+1=Xiβˆ–{w}subscript𝑋𝑖1subscript𝑋𝑖𝑀X_{i+1}=X_{i}\setminus\{w\}italic_X start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPT = italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT βˆ– { italic_w }. The following lemma shows that any path decomposition can be turned into a nice path decomposition without increasing the width.

Lemma 2.2 ([5]).

If a graph G𝐺Gitalic_G admits a path decomposition of width at most p𝑝pitalic_p, then it also admits a nice path decomposition of width at most p𝑝pitalic_p. Moreover, given a path decomposition P=(X1,X2,β‹―,Xr)𝑃subscript𝑋1subscript𝑋2β‹―subscriptπ‘‹π‘ŸP=(X_{1},X_{2},\cdots,X_{r})italic_P = ( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , β‹― , italic_X start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT ) of G𝐺Gitalic_G of width at most p𝑝pitalic_p, one can in time O⁒(p2β‹…max⁑(r,|V⁒(G)|))𝑂⋅superscript𝑝2π‘Ÿπ‘‰πΊO(p^{2}\cdot\max(r,|V(G)|))italic_O ( italic_p start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT β‹… roman_max ( italic_r , | italic_V ( italic_G ) | ) ) compute a nice path decomposition of G𝐺Gitalic_G of width at most p𝑝pitalic_p.

There are also easy ways to reduce the length rπ‘Ÿritalic_r of a path decomposition to a polynomial of the graph size. Next, we will also assume that rπ‘Ÿritalic_r is bounded by a polynomial of the number of vertices. In terms of the pathwidth, there is a known bound.

Theorem 2.3 ([10]).

For any Ο΅>0italic-Ο΅0\epsilon>0italic_Ο΅ > 0, there exists an integer nΟ΅subscript𝑛italic-Ο΅n_{\epsilon}italic_n start_POSTSUBSCRIPT italic_Ο΅ end_POSTSUBSCRIPT such that for every graph G𝐺Gitalic_G with n>nϡ𝑛subscript𝑛italic-Ο΅n>n_{\epsilon}italic_n > italic_n start_POSTSUBSCRIPT italic_Ο΅ end_POSTSUBSCRIPT vertices,

pw⁒(G)≀16⁒n3+13⁒n4+nβ‰₯5+ϡ⁒n,pw𝐺16subscript𝑛313subscript𝑛4subscript𝑛absent5italic-ϡ𝑛\text{pw}(G)\leq\frac{1}{6}n_{3}+\frac{1}{3}n_{4}+n_{\geq 5}+\epsilon n,pw ( italic_G ) ≀ divide start_ARG 1 end_ARG start_ARG 6 end_ARG italic_n start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT + divide start_ARG 1 end_ARG start_ARG 3 end_ARG italic_n start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT + italic_n start_POSTSUBSCRIPT β‰₯ 5 end_POSTSUBSCRIPT + italic_Ο΅ italic_n ,

where nisubscript𝑛𝑖n_{i}italic_n start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT i∈{3,4}𝑖34i\in\{3,4\}italic_i ∈ { 3 , 4 } is the number of vertices of degree i𝑖iitalic_i in G𝐺Gitalic_G and nβ‰₯5subscript𝑛absent5n_{\geq 5}italic_n start_POSTSUBSCRIPT β‰₯ 5 end_POSTSUBSCRIPT is the number of vertices of degree at least 5. Moreover, a path decomposition of the corresponding width can be constructed in polynomial time.

Branch-and-Search Algorithm. For a branch-and-search algorithm, we use a parameter kπ‘˜kitalic_k of the instance to measure the running time of the algorithm. Let T⁒(k)π‘‡π‘˜T(k)italic_T ( italic_k ) denote the maximum size of the search tree generated by the algorithm when running on an instance with the parameter no greater than kπ‘˜kitalic_k. Assume that a branching operation generates l𝑙litalic_l branches and the measure kπ‘˜kitalic_k in the i𝑖iitalic_i-th instance decreases by at least cisubscript𝑐𝑖c_{i}italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. This operation generates a recurrence relation

T⁒(k)≀T⁒(kβˆ’c1)+T⁒(kβˆ’c2)+…+T⁒(kβˆ’cl)+1.π‘‡π‘˜π‘‡π‘˜subscript𝑐1π‘‡π‘˜subscript𝑐2β€¦π‘‡π‘˜subscript𝑐𝑙1T(k)\leq T(k-c_{1})+T(k-c_{2})+...+T(k-c_{l})+1.italic_T ( italic_k ) ≀ italic_T ( italic_k - italic_c start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) + italic_T ( italic_k - italic_c start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) + … + italic_T ( italic_k - italic_c start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT ) + 1 .

The largest root of the function f⁒(x)=1βˆ’βˆ‘i=1lxβˆ’ci𝑓π‘₯1superscriptsubscript𝑖1𝑙superscriptπ‘₯subscript𝑐𝑖f(x)=1-\sum_{i=1}^{l}x^{-c_{i}}italic_f ( italic_x ) = 1 - βˆ‘ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT italic_x start_POSTSUPERSCRIPT - italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT is called the branching factor of the recurrence. Let γ𝛾\gammaitalic_Ξ³ denote the maximum branching factor among all branching factors in the search tree. The running time of the algorithm is bounded by Oβˆ—β’(Ξ³k)superscript𝑂superscriptπ›Ύπ‘˜O^{*}(\gamma^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( italic_Ξ³ start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ). For more details about analyzing branch-and-search algorithms, please refer toΒ [13].

3 A Parameterized Algorithm for Co-Path/Cycle Packing

In this section, we propose a parameterized algorithm for Co-Path/Cycle Packing. First, in Section 3.1, we show that Co-Path/Cycle Packing on a special graph class, called proper graph, can be quickly solved by using the dynamic programming algorithm based on path decompositions in Theorem 3.5. The key point in this section is to bound the pathwidth of proper graphs by 2⁒k/3+ϡ⁒k2π‘˜3italic-Ο΅π‘˜2k/3+\epsilon k2 italic_k / 3 + italic_Ο΅ italic_k for any Ο΅>0italic-Ο΅0\epsilon>0italic_Ο΅ > 0. Second, in Section 3.2, we give a branch-and-search algorithm that will implement some branching steps on special local graph structures. When there is no good structure to apply our branching rules, we show that the graph must be a proper graph and then the algorithm in Section 3.1 can be called directly to solve the problem.

3.1 Proper Graphs with Small Pathwidth

A graph is called proper if it satisfies the following conditions:

  1. 1.

    The maximum degree of G𝐺Gitalic_G is at most 4.

  2. 2.

    For any degree-4 vertex v𝑣vitalic_v, all neighbors are of degree at most 2.

  3. 3.

    For any degree-2 vertex v𝑣vitalic_v, at least one vertex in N⁒(v)𝑁𝑣N(v)italic_N ( italic_v ) is of degree at least 3.

  4. 4.

    Each connected component contains at least 6 vertices.

We are going to solve Co-Path/Cycle Packing on proper graphs first. Next, we try to bound the pathwidth of proper graphs.

Lemma 3.1.

Let G𝐺Gitalic_G be a proper graph. If G𝐺Gitalic_G has a c⁒P⁒C⁒P𝑐𝑃𝐢𝑃cPCPitalic_c italic_P italic_C italic_P-set (resp. c⁒P⁒P𝑐𝑃𝑃cPPitalic_c italic_P italic_P-set) of size at most kπ‘˜kitalic_k, then it holds that

|V⁒(G)|≀100⁒kandn36+n43≀2⁒k3,formulae-sequence𝑉𝐺100π‘˜andsubscript𝑛36subscript𝑛432π‘˜3|V(G)|\leq 100k\leavevmode\nobreak\ \leavevmode\nobreak\ \leavevmode\nobreak\ % \mbox{and}\leavevmode\nobreak\ \leavevmode\nobreak\ \leavevmode\nobreak\ \frac% {n_{3}}{6}+\frac{n_{4}}{3}\leq\frac{2k}{3},| italic_V ( italic_G ) | ≀ 100 italic_k and divide start_ARG italic_n start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_ARG start_ARG 6 end_ARG + divide start_ARG italic_n start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT end_ARG start_ARG 3 end_ARG ≀ divide start_ARG 2 italic_k end_ARG start_ARG 3 end_ARG , (1)

where n3subscript𝑛3n_{3}italic_n start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and n4subscript𝑛4n_{4}italic_n start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT are the number of degree-3 and degree-4 vertices in G𝐺Gitalic_G, respectively.

Proof 3.2.
Refer to caption
Figure 1: Sets S𝑆Sitalic_S, A𝐴Aitalic_A, A3subscript𝐴3A_{3}italic_A start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and A4subscript𝐴4A_{4}italic_A start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT in the proof of Lemma 3.1.

Assume that there is a cPCP-set (resp. cPP-set) S𝑆Sitalic_S of size at most kπ‘˜kitalic_k. Let A=V⁒(G)βˆ–S𝐴𝑉𝐺𝑆A=V(G)\setminus Sitalic_A = italic_V ( italic_G ) βˆ– italic_S. Let V3subscript𝑉3V_{3}italic_V start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and V4subscript𝑉4V_{4}italic_V start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT be the set of degree-3 and degree-4 vertices in G𝐺Gitalic_G, respectively. Let A3=A∩V3subscript𝐴3𝐴subscript𝑉3A_{3}=A\cap V_{3}italic_A start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT = italic_A ∩ italic_V start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and A4=A∩V4subscript𝐴4𝐴subscript𝑉4A_{4}=A\cap V_{4}italic_A start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT = italic_A ∩ italic_V start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT. Let xπ‘₯xitalic_x be the number of degree-4 vertices in S𝑆Sitalic_S. See Figure 1 for an illustration.

Since the degree of any vertex in G⁒[A]𝐺delimited-[]𝐴G[A]italic_G [ italic_A ] is at most 2, the number of edges between A3βˆͺA4subscript𝐴3subscript𝐴4A_{3}\cup A_{4}italic_A start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT βˆͺ italic_A start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT and S𝑆Sitalic_S is at least |A3|+2⁒|A4|subscript𝐴32subscript𝐴4|A_{3}|+2|A_{4}|| italic_A start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT | + 2 | italic_A start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT |. Since G𝐺Gitalic_G is proper, for any degree-4 vertex v𝑣vitalic_v, there is no degree-β‰₯3absent3\geq 3β‰₯ 3 vertex in N⁒(v)𝑁𝑣N(v)italic_N ( italic_v ). So we have that the number of edges between A3βˆͺA4subscript𝐴3subscript𝐴4A_{3}\cup A_{4}italic_A start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT βˆͺ italic_A start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT and S𝑆Sitalic_S is at most 3⁒(kβˆ’x)3π‘˜π‘₯3(k-x)3 ( italic_k - italic_x ). So we have that

3⁒(kβˆ’x)β‰₯|A3|+2⁒|A4|.3π‘˜π‘₯subscript𝐴32subscript𝐴43(k-x)\geq|A_{3}|+2|A_{4}|.3 ( italic_k - italic_x ) β‰₯ | italic_A start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT | + 2 | italic_A start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT | . (2)

Let nisubscript𝑛𝑖n_{i}italic_n start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT be the number of degree-i𝑖iitalic_i vertices in G𝐺Gitalic_G for any i∈{0,1,2,3,4}𝑖01234i\in\{0,1,2,3,4\}italic_i ∈ { 0 , 1 , 2 , 3 , 4 }. By the fourth condition of the proper graph, we have that n0=0subscript𝑛00n_{0}=0italic_n start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT = 0. We also have that n3≀kβˆ’x+|A3|subscript𝑛3π‘˜π‘₯subscript𝐴3n_{3}\leq k-x+|A_{3}|italic_n start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ≀ italic_k - italic_x + | italic_A start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT |, n4=|A4|+xsubscript𝑛4subscript𝐴4π‘₯n_{4}=|A_{4}|+xitalic_n start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT = | italic_A start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT | + italic_x. Inequality (2) implies that

n3+n4≀k+|A3|+|A4|≀k+|A3|+2⁒|A4|≀4⁒k.subscript𝑛3subscript𝑛4π‘˜subscript𝐴3subscript𝐴4π‘˜subscript𝐴32subscript𝐴44π‘˜n_{3}+n_{4}\leq k+|A_{3}|+|A_{4}|\leq k+|A_{3}|+2|A_{4}|\leq 4k.italic_n start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT + italic_n start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ≀ italic_k + | italic_A start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT | + | italic_A start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT | ≀ italic_k + | italic_A start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT | + 2 | italic_A start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT | ≀ 4 italic_k . (3)

By the third condition of the proper graph, we have that

n2≀4⁒(n3+n4)≀16⁒k.subscript𝑛24subscript𝑛3subscript𝑛416π‘˜n_{2}\leq 4(n_{3}+n_{4})\leq 16k.italic_n start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ≀ 4 ( italic_n start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT + italic_n start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ) ≀ 16 italic_k . (4)

For degree-1 vertices, also by the fourth condition of the proper graph, we have that

n1≀4⁒(n2+n3+n4)≀4⁒(16⁒k+4⁒k)=80⁒k.subscript𝑛14subscript𝑛2subscript𝑛3subscript𝑛4416π‘˜4π‘˜80π‘˜n_{1}\leq 4(n_{2}+n_{3}+n_{4})\leq 4(16k+4k)=80k.italic_n start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ≀ 4 ( italic_n start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT + italic_n start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT + italic_n start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ) ≀ 4 ( 16 italic_k + 4 italic_k ) = 80 italic_k . (5)

Inequalities (3), (4) and (5) together imply that

|V⁒(G)|=n0+n1+n2+n3+n4≀100⁒k.𝑉𝐺subscript𝑛0subscript𝑛1subscript𝑛2subscript𝑛3subscript𝑛4100π‘˜|V(G)|=n_{0}+n_{1}+n_{2}+n_{3}+n_{4}\leq 100k.| italic_V ( italic_G ) | = italic_n start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT + italic_n start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + italic_n start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT + italic_n start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT + italic_n start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ≀ 100 italic_k . (6)

Since xβ‰₯0π‘₯0x\geq 0italic_x β‰₯ 0, inequality (2) implies that

n36+n43≀kβˆ’x+|A3|6+|A4|+x3=k+x+|A3|+2⁒|A4|6≀4⁒kβˆ’2⁒x6≀2⁒k3.subscript𝑛36subscript𝑛43π‘˜π‘₯subscript𝐴36subscript𝐴4π‘₯3π‘˜π‘₯subscript𝐴32subscript𝐴464π‘˜2π‘₯62π‘˜3\frac{n_{3}}{6}+\frac{n_{4}}{3}\leq\frac{k-x+|A_{3}|}{6}+\frac{|A_{4}|+x}{3}=% \frac{k+x+|A_{3}|+2|A_{4}|}{6}\leq\frac{4k-2x}{6}\leq\frac{2k}{3}.divide start_ARG italic_n start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_ARG start_ARG 6 end_ARG + divide start_ARG italic_n start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT end_ARG start_ARG 3 end_ARG ≀ divide start_ARG italic_k - italic_x + | italic_A start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT | end_ARG start_ARG 6 end_ARG + divide start_ARG | italic_A start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT | + italic_x end_ARG start_ARG 3 end_ARG = divide start_ARG italic_k + italic_x + | italic_A start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT | + 2 | italic_A start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT | end_ARG start_ARG 6 end_ARG ≀ divide start_ARG 4 italic_k - 2 italic_x end_ARG start_ARG 6 end_ARG ≀ divide start_ARG 2 italic_k end_ARG start_ARG 3 end_ARG .
Lemma 3.3.

Let G𝐺Gitalic_G be a proper graph. For any Ο΅>0italic-Ο΅0\epsilon>0italic_Ο΅ > 0, in polynomial time we can either decide that G𝐺Gitalic_G has no cPCP-set (resp. cPP-set) of size at most kπ‘˜kitalic_k or compute a path decomposition of width at most 2⁒k3+ϡ⁒k2π‘˜3italic-Ο΅π‘˜\frac{2k}{3}+\epsilon kdivide start_ARG 2 italic_k end_ARG start_ARG 3 end_ARG + italic_Ο΅ italic_k.

Proof 3.4.

Our algorithm is defined as follows. Let n3subscript𝑛3n_{3}italic_n start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and n4subscript𝑛4n_{4}italic_n start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT be the number of degree-3 and degree-4 vertices in G𝐺Gitalic_G, respectively. First, we check whether |V⁒(G)|≀100⁒k𝑉𝐺100π‘˜|V(G)|\leq 100k| italic_V ( italic_G ) | ≀ 100 italic_k and n36+n43≀2⁒k3subscript𝑛36subscript𝑛432π‘˜3\frac{n_{3}}{6}+\frac{n_{4}}{3}\leq\frac{2k}{3}divide start_ARG italic_n start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_ARG start_ARG 6 end_ARG + divide start_ARG italic_n start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT end_ARG start_ARG 3 end_ARG ≀ divide start_ARG 2 italic_k end_ARG start_ARG 3 end_ARG in polynomial time. If |V⁒(G)|>100⁒k𝑉𝐺100π‘˜|V(G)|>100k| italic_V ( italic_G ) | > 100 italic_k oder n36+n43>2⁒k3subscript𝑛36subscript𝑛432π‘˜3\frac{n_{3}}{6}+\frac{n_{4}}{3}>\frac{2k}{3}divide start_ARG italic_n start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_ARG start_ARG 6 end_ARG + divide start_ARG italic_n start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT end_ARG start_ARG 3 end_ARG > divide start_ARG 2 italic_k end_ARG start_ARG 3 end_ARG, by Lemma 3.1, we can decide that G𝐺Gitalic_G has no cPCP-set (resp. cPP-set) of size at most kπ‘˜kitalic_k. Otherwise, let Ο΅β€²=Ο΅/100superscriptitalic-Ο΅β€²italic-Ο΅100\epsilon^{\prime}=\epsilon/100italic_Ο΅ start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT = italic_Ο΅ / 100. By Theorem 2.3, we can obtain a path decomposition Pβ€²superscript𝑃′P^{\prime}italic_P start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT of width at most pβ€²=n36+n43+ϡ′⁒|V⁒(G)|≀2⁒k3+100⁒ϡ′⁒k=2⁒k3+ϡ⁒ksuperscript𝑝′subscript𝑛36subscript𝑛43superscriptitalic-ϡ′𝑉𝐺2π‘˜3100superscriptitalic-Ο΅β€²π‘˜2π‘˜3italic-Ο΅π‘˜p^{\prime}=\frac{n_{3}}{6}+\frac{n_{4}}{3}+\epsilon^{\prime}|V(G)|\leq\frac{2k% }{3}+100\epsilon^{\prime}k=\frac{2k}{3}+\epsilon kitalic_p start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT = divide start_ARG italic_n start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_ARG start_ARG 6 end_ARG + divide start_ARG italic_n start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT end_ARG start_ARG 3 end_ARG + italic_Ο΅ start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT | italic_V ( italic_G ) | ≀ divide start_ARG 2 italic_k end_ARG start_ARG 3 end_ARG + 100 italic_Ο΅ start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT italic_k = divide start_ARG 2 italic_k end_ARG start_ARG 3 end_ARG + italic_Ο΅ italic_k. This lemma holds.

The following theorem shows that there exists an algorithm for the general d𝑑ditalic_d-Bounded-Degree Vertex Deletion problem based on a given path decomposition of the graph. The running time bound of the algorithm is Oβˆ—β’((d+2)p)superscript𝑂superscript𝑑2𝑝O^{*}((d+2)^{p})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( ( italic_d + 2 ) start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT ), where p𝑝pitalic_p is the width of the given path decomposition. Previously, an Oβˆ—β’(3p)superscript𝑂superscript3𝑝O^{*}(3^{p})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3 start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT )-time algorithm for 1111-Bounded-Degree Vertex Deletion was knownΒ [2]. Recently, this result was extended for any dβ‰₯1𝑑1d\geq 1italic_d β‰₯ 1 by van RooijΒ [21]. We also present it (in the appendix) in our way to make this paper self-contained.

Theorem 3.5 (♣♣\clubsuit♣).

Given a path decomposition of G𝐺Gitalic_G with width p𝑝pitalic_p. For any dβ‰₯1𝑑1d\geq 1italic_d β‰₯ 1, d𝑑ditalic_d-Bounded-Degree Vertex Deletion can be solved in Oβˆ—β’((d+2)p)superscript𝑂superscript𝑑2𝑝O^{*}((d+2)^{p})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( ( italic_d + 2 ) start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT ) time and space.

However, the algorithm given in Theorem 3.5 cannot be used to solve Co-Path Packing since there is a global connectivity constraint for Co-Path Packing. We will discuss it in Section 4. Based on Theorem 3.5, we have the following lemma.

Lemma 3.6.

Co-Path/Cycle Packing on proper graphs can be solved in Oβˆ—β’(2.5199k)superscript𝑂superscript2.5199π‘˜O^{*}(2.5199^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.5199 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time.

Proof 3.7.

We first call the algorithm in Lemma 3.3. If the algorithm decides that G𝐺Gitalic_G has no c⁒P⁒C⁒P𝑐𝑃𝐢𝑃cPCPitalic_c italic_P italic_C italic_P-set of size at most kπ‘˜kitalic_k, we claim that (G,k)πΊπ‘˜(G,k)( italic_G , italic_k ) is a no-instance. Otherwise, we can obtain a nice path decomposition of width at most 2⁒k3+ϡ⁒k2π‘˜3italic-Ο΅π‘˜\frac{2k}{3}+\epsilon kdivide start_ARG 2 italic_k end_ARG start_ARG 3 end_ARG + italic_Ο΅ italic_k. Then we call the algorithm in Theorem 3.5. This algorithm runs in Oβˆ—β’(42⁒k/3+ϡ⁒k)=Oβˆ—β’(2.5199k)superscript𝑂superscript42π‘˜3italic-Ο΅π‘˜superscript𝑂superscript2.5199π‘˜O^{*}(4^{2k/3+\epsilon k})=O^{*}(2.5199^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 4 start_POSTSUPERSCRIPT 2 italic_k / 3 + italic_Ο΅ italic_k end_POSTSUPERSCRIPT ) = italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.5199 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ), where we choose Ο΅<10βˆ’6italic-Ο΅superscript106\epsilon<10^{-6}italic_Ο΅ < 10 start_POSTSUPERSCRIPT - 6 end_POSTSUPERSCRIPT. This lemma holds.

3.2 A Branch-and-Search Algorithm

In this subsection, we provide a branch-and-search algorithm for Co-Path/Cycle Packing, which is denoted by πšŒπ™Ώπ™²π™Ώβ’(G,k)πšŒπ™Ώπ™²π™ΏπΊπ‘˜{\tt cPCP}(G,k)typewriter_cPCP ( italic_G , italic_k ). Our algorithm contains several reduction and branching steps. After recursively executing these steps, we will get a proper graph and then call the dynamic programming algorithm in Section 3.1 to solve it.

3.2.1 Reduction and Branching Rules

Firstly we have a reduction rule to reduce small connected components.

Reduction-Rule 1.

If there is a connected component C𝐢Citalic_C of the graph such that |V⁒(C)|≀6𝑉𝐢6|V(C)|\leq 6| italic_V ( italic_C ) | ≀ 6, then run a brute force algorithm to find a minimum cPCP-set S𝑆Sitalic_S in C𝐢Citalic_C, delete C𝐢Citalic_C and include S𝑆Sitalic_S in the deletion set.

Lemma 3.8.

Let u𝑒uitalic_u and v𝑣vitalic_v be two adjacent vertices of degree at most 2 in G𝐺Gitalic_G and Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT be the graph after deleting edge u⁒v𝑒𝑣uvitalic_u italic_v from G𝐺Gitalic_G. Then (G,k)πΊπ‘˜(G,k)( italic_G , italic_k ) is a yes-instance if and only if (Gβ€²,k)superscriptπΊβ€²π‘˜(G^{\prime},k)( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_k ) is a yes-instance.

This lemma holds because adding an edge between two vertices of degree at most 1 back to a graph will not make the two vertices of degree greater than 2. Based on this lemma, we have the following reduction rule.

Reduction-Rule 2.

If there are two adjacent vertices u𝑒uitalic_u and v𝑣vitalic_v of degree at most 2, then return πšŒπ™Ώπ™²π™Ώβ’(Gβ€²=(V⁒(G),E⁒(G)βˆ–{u⁒v}),k)πšŒπ™Ώπ™²π™ΏsuperscriptπΊβ€²π‘‰πΊπΈπΊπ‘’π‘£π‘˜{\tt cPCP}(G^{\prime}=(V(G),E(G)\setminus\{uv\}),k)typewriter_cPCP ( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT = ( italic_V ( italic_G ) , italic_E ( italic_G ) βˆ– { italic_u italic_v } ) , italic_k ).

Lemma 3.9.

Let {u,v,w}𝑒𝑣𝑀\{u,v,w\}{ italic_u , italic_v , italic_w } be a triangle such that |N⁒({u,v,w})|=1𝑁𝑒𝑣𝑀1|N(\{u,v,w\})|=1| italic_N ( { italic_u , italic_v , italic_w } ) | = 1. Let xπ‘₯xitalic_x be the vertex in N⁒({u,v,w})𝑁𝑒𝑣𝑀N(\{u,v,w\})italic_N ( { italic_u , italic_v , italic_w } ). There is a minimum cPCP-set containing xπ‘₯xitalic_x.

This lemma holds because we must delete at least one vertex in {u,v,w,x}𝑒𝑣𝑀π‘₯\{u,v,w,x\}{ italic_u , italic_v , italic_w , italic_x } and delete any vertex in {u,v,w}𝑒𝑣𝑀\{u,v,w\}{ italic_u , italic_v , italic_w } cannot decrease the degree of vertices in V⁒(G)βˆ–{u,v,w,x}𝑉𝐺𝑒𝑣𝑀π‘₯V(G)\setminus\{u,v,w,x\}italic_V ( italic_G ) βˆ– { italic_u , italic_v , italic_w , italic_x }. Based on this lemma, we have the following reduction rule.

Reduction-Rule 3.

If there is a triangle {u,v,w}𝑒𝑣𝑀\{u,v,w\}{ italic_u , italic_v , italic_w } such that |N⁒({u,v,w})|=1𝑁𝑒𝑣𝑀1|N(\{u,v,w\})|=1| italic_N ( { italic_u , italic_v , italic_w } ) | = 1, then return πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–N⁒[{u,v,w}],kβˆ’1)πšŒπ™Ώπ™²π™ΏπΊπ‘delimited-[]π‘’π‘£π‘€π‘˜1{\tt cPCP}(G\setminus N[\{u,v,w\}],k-1)typewriter_cPCP ( italic_G βˆ– italic_N [ { italic_u , italic_v , italic_w } ] , italic_k - 1 ).

After applying the three simple reduction rules, we will execute some branching steps. Although we have several branching steps, most of them are based on the following two branching rules.

For a vertex v𝑣vitalic_v of degree at least 3, either it is included in the deletion set or it remains in the graph. For the latter case, there are at most two vertices in N⁒(v)𝑁𝑣N(v)italic_N ( italic_v ) that can remain in the graph. So we have the following branching rule.

Branching-Rule (B1). For a vertex v𝑣vitalic_v of degree at least 3, branch on it to generate (|N⁒(v)|2)+1binomial𝑁𝑣21{|N(v)|\choose 2}+1( binomial start_ARG | italic_N ( italic_v ) | end_ARG start_ARG 2 end_ARG ) + 1 branches by either (i) deleting v𝑣vitalic_v from the graph and including it in the deletion set, or (ii) for every pair of vertices u𝑒uitalic_u and w𝑀witalic_w in N⁒(v)𝑁𝑣N(v)italic_N ( italic_v ), deleting N⁒(v)βˆ–{u,w}𝑁𝑣𝑒𝑀N(v)\setminus\{u,w\}italic_N ( italic_v ) βˆ– { italic_u , italic_w } from the graph and including N⁒(v)βˆ–{u,w}𝑁𝑣𝑒𝑀N(v)\setminus\{u,w\}italic_N ( italic_v ) βˆ– { italic_u , italic_w } in the deletion set.

A vertex v𝑣vitalic_v dominates a vertex u𝑒uitalic_u if N⁒[u]βŠ†N⁒[v]𝑁delimited-[]𝑒𝑁delimited-[]𝑣N[u]\subseteq N[v]italic_N [ italic_u ] βŠ† italic_N [ italic_v ]. We have the following property for dominated vertices.

Lemma 3.10.

If a vertex v𝑣vitalic_v dominates a vertex u𝑒uitalic_u, then there is a minimum cPCP-set either containing v𝑣vitalic_v or containing none of v𝑣vitalic_v and u𝑒uitalic_u.

Proof 3.11.

Let S𝑆Sitalic_S be a cPCP-set. Assume to the contrary that S∩{v,u}={u}𝑆𝑣𝑒𝑒S\cap\{v,u\}=\{u\}italic_S ∩ { italic_v , italic_u } = { italic_u }. Since v𝑣vitalic_v dominates u𝑒uitalic_u, we know that Sβ€²=Sβˆ–{u}βˆͺ{v}superscript𝑆′𝑆𝑒𝑣S^{\prime}=S\setminus\{u\}\cup\{v\}italic_S start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT = italic_S βˆ– { italic_u } βˆͺ { italic_v } is still a feasible cPCP-set with |Sβ€²|=|S|superscript𝑆′𝑆|S^{\prime}|=|S|| italic_S start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT | = | italic_S |. There is a minimum cPCP-set containing v𝑣vitalic_v. This lemma holds.

Assume that v𝑣vitalic_v dominates u𝑒uitalic_u. By LemmaΒ 3.10, we know that either v𝑣vitalic_v is included in the deletion set or both of v𝑣vitalic_v and u𝑒uitalic_u remain in the graph. For the latter case, there are at most two vertices in N⁒(v)𝑁𝑣N(v)italic_N ( italic_v ) that can remain in the graph. Thus, at least |N⁒(v)|βˆ’2𝑁𝑣2|N(v)|-2| italic_N ( italic_v ) | - 2 vertices in N⁒(v)βˆ–{u}𝑁𝑣𝑒N(v)\setminus\{u\}italic_N ( italic_v ) βˆ– { italic_u } will be deleted. We get the following branching rule.

Branching-Rule (B2). Assume that a vertex v𝑣vitalic_v of degree at least 3 dominates a vertex u𝑒uitalic_u. Branch on v𝑣vitalic_v to generate 1+(|N⁒(v)|βˆ’1)=|N⁒(v)|1𝑁𝑣1𝑁𝑣1+(|N(v)|-1)=|N(v)|1 + ( | italic_N ( italic_v ) | - 1 ) = | italic_N ( italic_v ) | branches by either (i) deleting v𝑣vitalic_v from the graph and including it in the deletion set, or (ii) for each vertex w∈N⁒(v)βˆ–{u}𝑀𝑁𝑣𝑒w\in N(v)\setminus\{u\}italic_w ∈ italic_N ( italic_v ) βˆ– { italic_u }, deleting N⁒(v)βˆ–{u,w}𝑁𝑣𝑒𝑀N(v)\setminus\{u,w\}italic_N ( italic_v ) βˆ– { italic_u , italic_w } from the graph and including N⁒(v)βˆ–{u,w}𝑁𝑣𝑒𝑀N(v)\setminus\{u,w\}italic_N ( italic_v ) βˆ– { italic_u , italic_w } in the deletion set.

3.2.2 Steps

When we execute one step, we assume that all previous steps are not applicable in the current graph anymore. We will analyze each step after describing it.

Step 1 (Vertices of degree at least 5). If there is a vertex v𝑣vitalic_v of d⁒(v)β‰₯5𝑑𝑣5d(v)\geq 5italic_d ( italic_v ) β‰₯ 5, then branch on v𝑣vitalic_v with Branching-Rule (B1) to generate (d⁒(v)d⁒(v)βˆ’2)+1binomial𝑑𝑣𝑑𝑣21{d(v)\choose d(v)-2}+1( binomial start_ARG italic_d ( italic_v ) end_ARG start_ARG italic_d ( italic_v ) - 2 end_ARG ) + 1 branches and return the best of

πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–{v},kβˆ’1)andπšŒπ™Ώπ™²π™Ώβ’(Gβˆ–(N⁒(v)βˆ–{u,w}),kβˆ’|N⁒(v)βˆ–{u,w}|)⁒ for each pairΒ {u,w}βŠ†N⁒(v).πšŒπ™Ώπ™²π™ΏπΊπ‘£π‘˜1andπšŒπ™Ώπ™²π™ΏπΊπ‘π‘£π‘’π‘€π‘˜π‘π‘£π‘’π‘€Β for each pairΒ {u,w}βŠ†N⁒(v)\begin{split}&{\tt cPCP}(G\setminus\{v\},k-1)\\ \mbox{and}\quad&{\tt cPCP}(G\setminus(N(v)\setminus\{u,w\}),k-|N(v)\setminus\{% u,w\}|)\mbox{\leavevmode\nobreak\ for each pair $\{u,w\}\subseteq N(v)$}.\end{split}start_ROW start_CELL end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– { italic_v } , italic_k - 1 ) end_CELL end_ROW start_ROW start_CELL and end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– ( italic_N ( italic_v ) βˆ– { italic_u , italic_w } ) , italic_k - | italic_N ( italic_v ) βˆ– { italic_u , italic_w } | ) for each pair { italic_u , italic_w } βŠ† italic_N ( italic_v ) . end_CELL end_ROW

For this step, we get a recurrence

T⁒(k)≀T⁒(kβˆ’1)+(d⁒(v)d⁒(v)βˆ’2)Γ—T⁒(kβˆ’(d⁒(v)βˆ’2))+1,π‘‡π‘˜π‘‡π‘˜1binomial𝑑𝑣𝑑𝑣2π‘‡π‘˜π‘‘π‘£21T(k)\leq T(k-1)+{d(v)\choose d(v)-2}\times T(k-(d(v)-2))+1,italic_T ( italic_k ) ≀ italic_T ( italic_k - 1 ) + ( binomial start_ARG italic_d ( italic_v ) end_ARG start_ARG italic_d ( italic_v ) - 2 end_ARG ) Γ— italic_T ( italic_k - ( italic_d ( italic_v ) - 2 ) ) + 1 ,

where d⁒(v)β‰₯5𝑑𝑣5d(v)\geq 5italic_d ( italic_v ) β‰₯ 5. For the worst case that d⁒(v)=5𝑑𝑣5d(v)=5italic_d ( italic_v ) = 5, the branching factor of it is 2.5445.

After Step 1, the graph contains only vertices with degree at most 4.

Step 2 (Degree-4 vertices dominating some vertex of degree at least 3). Assume that there is a degree-4 vertex v𝑣vitalic_v that dominates a vertex u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, where d⁒(u1)β‰₯3𝑑subscript𝑒13d(u_{1})\geq 3italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) β‰₯ 3. Without loss of generality, we assume that the other three neighbors of v𝑣vitalic_v are u2,u3subscript𝑒2subscript𝑒3u_{2},u_{3}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT, and u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is adjacent to u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT (u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is further adjacent to u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT if d⁒(u1)=4𝑑subscript𝑒14d(u_{1})=4italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) = 4). See Figure 2 for an illustration. We branch on v𝑣vitalic_v with Branching-Rule (B2) and get |N⁒(v)|𝑁𝑣|N(v)|| italic_N ( italic_v ) | branches

πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–{v},kβˆ’1),πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–{u2,u3},kβˆ’2),πšŒπ™Ώπ™²π™ΏπΊπ‘£π‘˜1πšŒπ™Ώπ™²π™ΏπΊsubscript𝑒2subscript𝑒3π‘˜2{\tt cPCP}(G\setminus\{v\},k-1),{\tt cPCP}(G\setminus\{u_{2},u_{3}\},k-2),typewriter_cPCP ( italic_G βˆ– { italic_v } , italic_k - 1 ) , typewriter_cPCP ( italic_G βˆ– { italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT } , italic_k - 2 ) ,
πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–{u2,u4},kβˆ’2),andβ’πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–{u3,u4},kβˆ’2).πšŒπ™Ώπ™²π™ΏπΊsubscript𝑒2subscript𝑒4π‘˜2andπšŒπ™Ώπ™²π™ΏπΊsubscript𝑒3subscript𝑒4π‘˜2{\tt cPCP}(G\setminus\{u_{2},u_{4}\},k-2),\leavevmode\nobreak\ \mbox{and}% \leavevmode\nobreak\ {\tt cPCP}(G\setminus\{u_{3},u_{4}\},k-2).typewriter_cPCP ( italic_G βˆ– { italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT } , italic_k - 2 ) , and typewriter_cPCP ( italic_G βˆ– { italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT } , italic_k - 2 ) .
Refer to caption
Figure 2: Degree-4 vertex v𝑣vitalic_v dominates a degree-3 vertex u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT.

The corresponding recurrence is

T⁒(k)≀T⁒(kβˆ’1)+3Γ—T⁒(kβˆ’2)+1,π‘‡π‘˜π‘‡π‘˜13π‘‡π‘˜21T(k)\leq T(k-1)+3\times T(k-2)+1,italic_T ( italic_k ) ≀ italic_T ( italic_k - 1 ) + 3 Γ— italic_T ( italic_k - 2 ) + 1 ,

which has a branching factor of 2.3028.

A triangle {u,v,w}𝑒𝑣𝑀\{u,v,w\}{ italic_u , italic_v , italic_w } is called heavy if it holds that |N⁒({u,v,w})|β‰₯4𝑁𝑒𝑣𝑀4|N(\{u,v,w\})|\geq 4| italic_N ( { italic_u , italic_v , italic_w } ) | β‰₯ 4.

Step 3 (Degree-4 vertices in a heavy triangle). Assume that a degree-4 vertex v𝑣vitalic_v is in a heavy triangle. Let u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT be the four neighbors of v𝑣vitalic_v, where we assume without loss of generality that {v,u1,u2}𝑣subscript𝑒1subscript𝑒2\{v,u_{1},u_{2}\}{ italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } is a heavy triangle. See Figure 3 for an illustration. We branch on v𝑣vitalic_v with Branching-Rule (B1). In the branch of deleting {u3,u4}subscript𝑒3subscript𝑒4\{u_{3},u_{4}\}{ italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT }, we can simply assume that the three vertices v,u1𝑣subscript𝑒1v,u_{1}italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT are not deleted, otherwise this branch can be covered by another branch and then it can be ignored. Since v,u1𝑣subscript𝑒1v,u_{1}italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT form a triangle, we need to delete all the vertices in N⁒({v,u1,u2})𝑁𝑣subscript𝑒1subscript𝑒2N(\{v,u_{1},u_{2}\})italic_N ( { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) in this branch. Note that {v,u1,v2}𝑣subscript𝑒1subscript𝑣2\{v,u_{1},v_{2}\}{ italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } is a heavy triangle and we have that |N⁒({v,u1,u2})|β‰₯4𝑁𝑣subscript𝑒1subscript𝑒24|N(\{v,u_{1},u_{2}\})|\geq 4| italic_N ( { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) | β‰₯ 4. We generate the following (42)binomial42{4\choose 2}( binomial start_ARG 4 end_ARG start_ARG 2 end_ARG ) + 1 branches

πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–{v},kβˆ’1),πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–({u1,ui}),kβˆ’|{u1,ui}|)⁒ for eachΒ i=2,3,4,πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–({u2,ui}),kβˆ’|{u2,ui}|)⁒ for eachΒ i=3,4,andπšŒπ™Ώπ™²π™Ώβ’(Gβˆ–N⁒({v,u1,u2}),kβˆ’|N⁒({v,u1,u2})|).πšŒπ™Ώπ™²π™ΏπΊπ‘£π‘˜1πšŒπ™Ώπ™²π™ΏπΊsubscript𝑒1subscriptπ‘’π‘–π‘˜subscript𝑒1subscript𝑒𝑖 for eachΒ i=2,3,4πšŒπ™Ώπ™²π™ΏπΊsubscript𝑒2subscriptπ‘’π‘–π‘˜subscript𝑒2subscript𝑒𝑖 for eachΒ i=3,4andπšŒπ™Ώπ™²π™ΏπΊπ‘π‘£subscript𝑒1subscript𝑒2π‘˜π‘π‘£subscript𝑒1subscript𝑒2\begin{split}&{\tt cPCP}(G\setminus\{v\},k-1),\\ &{\tt cPCP}(G\setminus(\{u_{1},u_{i}\}),k-|\{u_{1},u_{i}\}|)\mbox{\leavevmode% \nobreak\ for each $i=2,3,4$},\\ &{\tt cPCP}(G\setminus(\{u_{2},u_{i}\}),k-|\{u_{2},u_{i}\}|)\mbox{\leavevmode% \nobreak\ for each $i=3,4$},\\ \mbox{and}\quad&{\tt cPCP}(G\setminus N(\{v,u_{1},u_{2}\}),k-|N(\{v,u_{1},u_{2% }\})|).\end{split}start_ROW start_CELL end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– { italic_v } , italic_k - 1 ) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– ( { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT } ) , italic_k - | { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT } | ) for each italic_i = 2 , 3 , 4 , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– ( { italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT } ) , italic_k - | { italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT } | ) for each italic_i = 3 , 4 , end_CELL end_ROW start_ROW start_CELL and end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– italic_N ( { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) , italic_k - | italic_N ( { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) | ) . end_CELL end_ROW
Refer to caption
Figure 3: Degree-4 vertex v𝑣vitalic_v is in a heavy triangle {v,u1,u2}𝑣subscript𝑒1subscript𝑒2\{v,u_{1},u_{2}\}{ italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT }.

The corresponding recurrence is

T⁒(k)≀T⁒(kβˆ’1)+((42)βˆ’1)Γ—T⁒(kβˆ’2)+T⁒(kβˆ’|N⁒({v,u1,u2})|)+1,π‘‡π‘˜π‘‡π‘˜1binomial421π‘‡π‘˜2π‘‡π‘˜π‘π‘£subscript𝑒1subscript𝑒21T(k)\leq T(k-1)+({4\choose 2}-1)\times T(k-2)+T(k-|N(\{v,u_{1},u_{2}\})|)+1,italic_T ( italic_k ) ≀ italic_T ( italic_k - 1 ) + ( ( binomial start_ARG 4 end_ARG start_ARG 2 end_ARG ) - 1 ) Γ— italic_T ( italic_k - 2 ) + italic_T ( italic_k - | italic_N ( { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) | ) + 1 ,

where |N⁒({v,u1,u2})|β‰₯4𝑁𝑣subscript𝑒1subscript𝑒24|N(\{v,u_{1},u_{2}\})|\geq 4| italic_N ( { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) | β‰₯ 4. For the worst case that |N⁒({v,u1,u2})|=4𝑁𝑣subscript𝑒1subscript𝑒24|N(\{v,u_{1},u_{2}\})|=4| italic_N ( { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) | = 4, the branching factor of it is 2.8186.

Lemma 3.12.

If a vertex v𝑣vitalic_v has two degree-1 neighbors u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, then there is a minimum cPCP-set containing none of u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. Furthermore, If v𝑣vitalic_v is a vertex of degree at most 3, then there is a minimum cPCP-set containing none of v𝑣vitalic_v, u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT.

Proof 3.13.

Let S𝑆Sitalic_S be a minimum cPCP-set. If v∈S𝑣𝑆v\in Sitalic_v ∈ italic_S, then Sβˆ–{u1,u2}𝑆subscript𝑒1subscript𝑒2S\setminus\{u_{1},u_{2}\}italic_S βˆ– { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } is still a minimum cPCP-set. Next, we assume that vβˆ‰S𝑣𝑆v\not\in Sitalic_v βˆ‰ italic_S. If at least one of u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT is in S𝑆Sitalic_S, then Sβ€²=(Sβˆ–{u1,u2})βˆͺ{v}superscript𝑆′𝑆subscript𝑒1subscript𝑒2𝑣S^{\prime}=(S\setminus\{u_{1},u_{2}\})\cup\{v\}italic_S start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT = ( italic_S βˆ– { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) βˆͺ { italic_v } is a cPCP-set with |Sβ€²|≀|S|superscript𝑆′𝑆|S^{\prime}|\leq|S|| italic_S start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT | ≀ | italic_S |. Thus, Sβ€²superscript𝑆′S^{\prime}italic_S start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT is a minimum cPCP-set not containing u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT.

If v𝑣vitalic_v is a degree-2 vertex, then the component containing v𝑣vitalic_v is a path of three vertices. None of the three vertices should be deleted. If v𝑣vitalic_v is a degree-3 vertex, we let u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT be the third neighbor of v𝑣vitalic_v. Note that at least one vertex in {v,u1,u2,u3}𝑣subscript𝑒1subscript𝑒2subscript𝑒3\{v,u_{1},u_{2},u_{3}\}{ italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT } should be deleted and then any solution S𝑆Sitalic_S will contain at least one vertex in {v,u1,u2,u3}𝑣subscript𝑒1subscript𝑒2subscript𝑒3\{v,u_{1},u_{2},u_{3}\}{ italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT }. We can see that Sβ€²=(Sβˆ–{v,u1,u2,u3})βˆͺ{u3}superscript𝑆′𝑆𝑣subscript𝑒1subscript𝑒2subscript𝑒3subscript𝑒3S^{\prime}=(S\setminus\{v,u_{1},u_{2},u_{3}\})\cup\{u_{3}\}italic_S start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT = ( italic_S βˆ– { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT } ) βˆͺ { italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT } is still a cPCP-set with size |Sβ€²|≀|S|superscript𝑆′𝑆|S^{\prime}|\leq|S|| italic_S start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT | ≀ | italic_S |. There is always a minimum cPCP-set containing none of v𝑣vitalic_v, u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT.

Step 4 (Degree-4 vertices in a triangle). Assume that there is still a degree-4 vertex v𝑣vitalic_v in a triangle {v,u1,u2}𝑣subscript𝑒1subscript𝑒2\{v,u_{1},u_{2}\}{ italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT }. We also let u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT be the four neighbors of v𝑣vitalic_v. Since triangle {v,u1,u2}𝑣subscript𝑒1subscript𝑒2\{v,u_{1},u_{2}\}{ italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } can not be a heavy triangle now, we know that |N⁒({v,u1,u2})|≀3𝑁𝑣subscript𝑒1subscript𝑒23|N(\{v,u_{1},u_{2}\})|\leq 3| italic_N ( { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) | ≀ 3. First, we show that it is impossible |N⁒({v,u1,u2})|=2𝑁𝑣subscript𝑒1subscript𝑒22|N(\{v,u_{1},u_{2}\})|=2| italic_N ( { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) | = 2. Assume to the contrary that |N⁒({v,u1,u2})|=2𝑁𝑣subscript𝑒1subscript𝑒22|N(\{v,u_{1},u_{2}\})|=2| italic_N ( { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) | = 2. Then u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT can only be adjacent to vertices in N⁒[v]𝑁delimited-[]𝑣N[v]italic_N [ italic_v ]. If both of u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT are degree-2 vertices, then Reduction-Rule 1 should be applied. If one of u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT is a vertex of degree at least 3, then v𝑣vitalic_v would dominate this vertex, and then the condition of Step 2 would hold. Any case is impossible. Next, we assume that |N⁒({v,u1,u2})|=3𝑁𝑣subscript𝑒1subscript𝑒23|N(\{v,u_{1},u_{2}\})|=3| italic_N ( { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) | = 3 and let u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT denote the third vertex in N⁒({v,u1,u2})𝑁𝑣subscript𝑒1subscript𝑒2N(\{v,u_{1},u_{2}\})italic_N ( { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ). We further consider several different cases.

Case 1: One of u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, say u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is a degree-4 vertex. For this case, vertex u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is adjacent to u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT, otherwise the degree-4 vertex v𝑣vitalic_v would dominate the degree-4 vertex u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. Since u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is of degree 4, we know that u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is also adjacent to one of u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT, say u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT. Vertices u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT can only be adjacent to vertices in N⁒[v]βˆͺ{u5}𝑁delimited-[]𝑣subscript𝑒5N[v]\cup\{u_{5}\}italic_N [ italic_v ] βˆͺ { italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT }, otherwise {v,u1,u2}𝑣subscript𝑒1subscript𝑒2\{v,u_{1},u_{2}\}{ italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } oder {v,u1,u3}𝑣subscript𝑒1subscript𝑒3\{v,u_{1},u_{3}\}{ italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT } would form a heavy triangle and Step 3 should be applied. Thus, neither u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT nor u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT can be a degree-3 vertex, otherwise degree-4 vertex u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT oder v𝑣vitalic_v dominates a degree-3 vertex u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT oder u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and then Step 2 should be applied. Thus, we have that either d⁒(u2)=d⁒(u3)=2𝑑subscript𝑒2𝑑subscript𝑒32d(u_{2})=d(u_{3})=2italic_d ( italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = italic_d ( italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) = 2 oder d⁒(u2)=d⁒(u3)=4𝑑subscript𝑒2𝑑subscript𝑒34d(u_{2})=d(u_{3})=4italic_d ( italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = italic_d ( italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) = 4. We further consider the following three cases:

Case 1.1: d⁒(u2)=d⁒(u3)=2𝑑subscript𝑒2𝑑subscript𝑒32d(u_{2})=d(u_{3})=2italic_d ( italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = italic_d ( italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) = 2. For this case, we have that v𝑣vitalic_v dominates u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT. By Lemma 3.10, we have that there is a minimum cPCP-set either containing v𝑣vitalic_v or containing none of v𝑣vitalic_v, u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT. For the first branch, we delete v𝑣vitalic_v from the graph and include it in the deletion set. For the second branch, we delete u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT from the graph and include it in the deletion set. The corresponding recurrence is

T⁒(k)≀T⁒(kβˆ’1)+T⁒(kβˆ’2)+1,π‘‡π‘˜π‘‡π‘˜1π‘‡π‘˜21T(k)\leq T(k-1)+T(k-2)+1,italic_T ( italic_k ) ≀ italic_T ( italic_k - 1 ) + italic_T ( italic_k - 2 ) + 1 ,

the branching factor of which is 1.6181.

Case 1.2: d⁒(u2)=d⁒(u3)=4𝑑subscript𝑒2𝑑subscript𝑒34d(u_{2})=d(u_{3})=4italic_d ( italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = italic_d ( italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) = 4 and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT are not adjacent. For this case, both of u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT are adjacent to u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT and u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT. Since v𝑣vitalic_v does not dominate u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT, we know that u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT is adjacent to at least one vertex out of N⁒[v]𝑁delimited-[]𝑣N[v]italic_N [ italic_v ]. Since triangle {v,u2,u4}𝑣subscript𝑒2subscript𝑒4\{v,u_{2},u_{4}\}{ italic_v , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT } is not a heavy triangle, we know that u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT is not adjacent to any vertex other than N⁒[v]βˆͺ{u5}𝑁delimited-[]𝑣subscript𝑒5N[v]\cup\{u_{5}\}italic_N [ italic_v ] βˆͺ { italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT }. Thus, u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT is also adjacent to u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT. Since the maximum degree of the graph is 4 now, we know that this component only contains six degree-4 vertices N⁒[v]βˆͺ{u5}𝑁delimited-[]𝑣subscript𝑒5N[v]\cup\{u_{5}\}italic_N [ italic_v ] βˆͺ { italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT }, which should be eliminated by Reduction-Rule 2.

Case 1.3: d⁒(u2)=d⁒(u3)=4𝑑subscript𝑒2𝑑subscript𝑒34d(u_{2})=d(u_{3})=4italic_d ( italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = italic_d ( italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) = 4 and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT are adjacent. For this case, since v𝑣vitalic_v does not dominate u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT, we know that u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT is adjacent to at least one vertex out of N⁒[v]𝑁delimited-[]𝑣N[v]italic_N [ italic_v ]. This vertex can only be u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT. Thus, the four neighbors of u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT are v,u1𝑣subscript𝑒1v,u_{1}italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, and u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT. Now u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is a degree-4 vertex dominating a degree-4 vertex u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT. Step 2 should be applied. Thus, this case is impossible.

Refer to caption
Figure 4: In the Case 2 of Step 4, degree-4 vertex v𝑣vitalic_v is in a triangle {v,u1,u2}𝑣subscript𝑒1subscript𝑒2\{v,u_{1},u_{2}\}{ italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } and both of u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT are degree-3 vertices.

Case 2: Both of u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT are degree-3 vertices. It holds that N⁒(u1)={v,u2,u5}𝑁subscript𝑒1𝑣subscript𝑒2subscript𝑒5N(u_{1})=\{v,u_{2},u_{5}\}italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) = { italic_v , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT } and N⁒(u2)={v,u1,u5}𝑁subscript𝑒2𝑣subscript𝑒1subscript𝑒5N(u_{2})=\{v,u_{1},u_{5}\}italic_N ( italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = { italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT }, otherwise vertex v𝑣vitalic_v would dominate u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT oder u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. See Figure 4 for an illustration. For this case, we first branch on v𝑣vitalic_v with Branching-Rule (B1) to generate (d⁒(v)d⁒(v)βˆ’2)+1binomial𝑑𝑣𝑑𝑣21{d(v)\choose d(v)-2}+1( binomial start_ARG italic_d ( italic_v ) end_ARG start_ARG italic_d ( italic_v ) - 2 end_ARG ) + 1 branches. We can only get a recurrence relation

T⁒(k)≀T⁒(kβˆ’1)+(42)⁒T⁒(kβˆ’2)+1.π‘‡π‘˜π‘‡π‘˜1binomial42π‘‡π‘˜21T(k)\leq T(k-1)+{4\choose 2}T(k-2)+1.italic_T ( italic_k ) ≀ italic_T ( italic_k - 1 ) + ( binomial start_ARG 4 end_ARG start_ARG 2 end_ARG ) italic_T ( italic_k - 2 ) + 1 .

This recurrence is not good enough. Next, we look at the branch of deleting v𝑣vitalic_v and try to get some improvements on this subbranch. After deleting v𝑣vitalic_v, vertices u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT become degree-2 vertices in a triangle. We first apply Reduction-Rule 1 to delete edge u1⁒u2subscript𝑒1subscript𝑒2u_{1}u_{2}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT between u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. Then, vertices u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT become degree-1 vertices adjacent to u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT.

Case 2.1: u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT is a degree-2 vertex. This case is impossible otherwise Reduction Rule 3 would be applied before this step.

Case 2.2: u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT is a degree-3 vertex. By Lemma 3.12, we can delete N⁒[u5]𝑁delimited-[]subscript𝑒5N[u_{5}]italic_N [ italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT ] directly and include the third neighbor of u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT in the deletion set. We generate the following (42)binomial42{4\choose 2}( binomial start_ARG 4 end_ARG start_ARG 2 end_ARG ) + 1 branches

πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–({v}βˆͺN⁒[u5]),kβˆ’2)andπšŒπ™Ώπ™²π™Ώβ’(Gβˆ–(N⁒(v)βˆ–{u,w}),kβˆ’|N⁒(v)βˆ–{u,w}|)⁒ for each pairΒ {u,w}βŠ†N⁒(v).πšŒπ™Ώπ™²π™ΏπΊπ‘£π‘delimited-[]subscript𝑒5π‘˜2andπšŒπ™Ώπ™²π™ΏπΊπ‘π‘£π‘’π‘€π‘˜π‘π‘£π‘’π‘€Β for each pairΒ {u,w}βŠ†N⁒(v)\begin{split}&{\tt cPCP}(G\setminus(\{v\}\cup N[u_{5}]),k-2)\\ \mbox{and}\quad&{\tt cPCP}(G\setminus(N(v)\setminus\{u,w\}),k-|N(v)\setminus\{% u,w\}|)\mbox{\leavevmode\nobreak\ for each pair $\{u,w\}\subseteq N(v)$}.\end{split}start_ROW start_CELL end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– ( { italic_v } βˆͺ italic_N [ italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT ] ) , italic_k - 2 ) end_CELL end_ROW start_ROW start_CELL and end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– ( italic_N ( italic_v ) βˆ– { italic_u , italic_w } ) , italic_k - | italic_N ( italic_v ) βˆ– { italic_u , italic_w } | ) for each pair { italic_u , italic_w } βŠ† italic_N ( italic_v ) . end_CELL end_ROW

The corresponding recurrence is

T⁒(k)≀T⁒(kβˆ’2)+(42)⁒T⁒(kβˆ’2)+1.π‘‡π‘˜π‘‡π‘˜2binomial42π‘‡π‘˜21T(k)\leq T(k-2)+{4\choose 2}T(k-2)+1.italic_T ( italic_k ) ≀ italic_T ( italic_k - 2 ) + ( binomial start_ARG 4 end_ARG start_ARG 2 end_ARG ) italic_T ( italic_k - 2 ) + 1 .

which has a branching factor of 2.6458.

Case 2.3: u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT is a degree-4 vertex. By Lemma 3.12, we know that there is a minimum cPCP-set either containing u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT or containing none of u5,u1subscript𝑒5subscript𝑒1u_{5},u_{1}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. For the first case, we delete u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT and include it in the deletion set. For the second case, we delete N⁒[u5]𝑁delimited-[]subscript𝑒5N[u_{5}]italic_N [ italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT ] from the graph and include N⁒(u5)βˆ–{u5,u1,u2}𝑁subscript𝑒5subscript𝑒5subscript𝑒1subscript𝑒2N(u_{5})\setminus\{u_{5},u_{1},u_{2}\}italic_N ( italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT ) βˆ– { italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } in the deletion set. Note that |N⁒(u5)βˆ–{u5,u1,u2}|=2𝑁subscript𝑒5subscript𝑒5subscript𝑒1subscript𝑒22|N(u_{5})\setminus\{u_{5},u_{1},u_{2}\}|=2| italic_N ( italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT ) βˆ– { italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } | = 2 since u5subscript𝑒5u_{5}italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT is a degree-4 vertex. Combining with the previous branching on v𝑣vitalic_v, we get the following (42)binomial42{4\choose 2}( binomial start_ARG 4 end_ARG start_ARG 2 end_ARG ) + 2 branches

πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–{v,u5},kβˆ’2),πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–({v}βˆͺN⁒[u5]),kβˆ’3),andπšŒπ™Ώπ™²π™Ώβ’(Gβˆ–(N⁒(v)βˆ–{u,w}),kβˆ’|N⁒(v)βˆ–{u,w}|)⁒ for each pairΒ {u,w}βŠ†N⁒(v).πšŒπ™Ώπ™²π™ΏπΊπ‘£subscript𝑒5π‘˜2πšŒπ™Ώπ™²π™ΏπΊπ‘£π‘delimited-[]subscript𝑒5π‘˜3andπšŒπ™Ώπ™²π™ΏπΊπ‘π‘£π‘’π‘€π‘˜π‘π‘£π‘’π‘€Β for each pairΒ {u,w}βŠ†N⁒(v)\begin{split}&{\tt cPCP}(G\setminus\{v,u_{5}\},k-2),\\ &{\tt cPCP}(G\setminus(\{v\}\cup N[u_{5}]),k-3),\\ \mbox{and}\quad&{\tt cPCP}(G\setminus(N(v)\setminus\{u,w\}),k-|N(v)\setminus\{% u,w\}|)\mbox{\leavevmode\nobreak\ for each pair $\{u,w\}\subseteq N(v)$}.\end{split}start_ROW start_CELL end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– { italic_v , italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT } , italic_k - 2 ) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– ( { italic_v } βˆͺ italic_N [ italic_u start_POSTSUBSCRIPT 5 end_POSTSUBSCRIPT ] ) , italic_k - 3 ) , end_CELL end_ROW start_ROW start_CELL and end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– ( italic_N ( italic_v ) βˆ– { italic_u , italic_w } ) , italic_k - | italic_N ( italic_v ) βˆ– { italic_u , italic_w } | ) for each pair { italic_u , italic_w } βŠ† italic_N ( italic_v ) . end_CELL end_ROW

The corresponding recurrence is

T⁒(k)≀T⁒(kβˆ’1βˆ’1)+T⁒(kβˆ’1βˆ’2)+(42)⁒T⁒(kβˆ’2)+1,π‘‡π‘˜π‘‡π‘˜11π‘‡π‘˜12binomial42π‘‡π‘˜21T(k)\leq T(k-1-1)+T(k-1-2)+{4\choose 2}T(k-2)+1,italic_T ( italic_k ) ≀ italic_T ( italic_k - 1 - 1 ) + italic_T ( italic_k - 1 - 2 ) + ( binomial start_ARG 4 end_ARG start_ARG 2 end_ARG ) italic_T ( italic_k - 2 ) + 1 ,

which has a branching factor of 2.7145.

After Step 4, no degree-4 vertex is in a triangle.

Step 5 (Degree-4 vertices adjacent to some vertex of degree at least 3). Assume there is a degree-4 vertex v𝑣vitalic_v adjacent to at least one vertex of degree at least 3. Let u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT be the four neighbors of v𝑣vitalic_v, where we assume without loss of generality that d⁒(u1)β‰₯3𝑑subscript𝑒13d(u_{1})\geq 3italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) β‰₯ 3. First, we branch on v𝑣vitalic_v by either (b1) including it in the solution set or (b2) excluding it from the solution set. Next, we focus on the latter case (b2). In (b2), we further branch on u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT by (b2.1) either including it in the solution set or (b2.2) excluding it from the solution set. For case (b2.1), there are at least |N⁒(v)|βˆ’2=2𝑁𝑣22|N(v)|-2=2| italic_N ( italic_v ) | - 2 = 2 vertices in N⁒(v)𝑁𝑣N(v)italic_N ( italic_v ) that should be deleted by the same argument for Branching-Rule (B1). Thus, we can generate three subbranches by deleting {u1,u2}subscript𝑒1subscript𝑒2\{u_{1},u_{2}\}{ italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT }, {u1,u3}subscript𝑒1subscript𝑒3\{u_{1},u_{3}\}{ italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT }, and {u1,u3}subscript𝑒1subscript𝑒3\{u_{1},u_{3}\}{ italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT }, respectively. For case (b2.2), there are still at least |N⁒(v)|βˆ’2=2𝑁𝑣22|N(v)|-2=2| italic_N ( italic_v ) | - 2 = 2 vertices in N⁒(v)𝑁𝑣N(v)italic_N ( italic_v ) that should be deleted, which can be one of the following three sets {u2,u3}subscript𝑒2subscript𝑒3\{u_{2},u_{3}\}{ italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT }, {u2,u4}subscript𝑒2subscript𝑒4\{u_{2},u_{4}\}{ italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT }, and {u3,u4}subscript𝑒3subscript𝑒4\{u_{3},u_{4}\}{ italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT }. Furthermore, there are also at least |N⁒(u1)|βˆ’2β‰₯1𝑁subscript𝑒121|N(u_{1})|-2\geq 1| italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) | - 2 β‰₯ 1 vertices in N⁒(u1)𝑁subscript𝑒1N(u_{1})italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) that should be deleted. Note that v∈N⁒(u1)𝑣𝑁subscript𝑒1v\in N(u_{1})italic_v ∈ italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) is not allowed to be deleted now. Thus, at least |N⁒(u1)βˆ–{v}|βˆ’1𝑁subscript𝑒1𝑣1|N(u_{1})\setminus\{v\}|-1| italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } | - 1 vertices in N⁒(u1)βˆ–{v}𝑁subscript𝑒1𝑣N(u_{1})\setminus\{v\}italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } should be deleted. We will generate (|N⁒(u1)βˆ–{v}||N⁒(u1)βˆ–{v}|βˆ’1)=|N⁒(u1)βˆ–{v}|=d⁒(u1)βˆ’1binomial𝑁subscript𝑒1𝑣𝑁subscript𝑒1𝑣1𝑁subscript𝑒1𝑣𝑑subscript𝑒11{{|N(u_{1})\setminus\{v\}|}\choose{|N(u_{1})\setminus\{v\}|-1}}=|N(u_{1})% \setminus\{v\}|=d(u_{1})-1( binomial start_ARG | italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } | end_ARG start_ARG | italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } | - 1 end_ARG ) = | italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } | = italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - 1 branches by decreasing kπ‘˜kitalic_k by |N⁒(u1)βˆ–{v}|βˆ’1=d⁒(u1)βˆ’2𝑁subscript𝑒1𝑣1𝑑subscript𝑒12|N(u_{1})\setminus\{v\}|-1=d(u_{1})-2| italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } | - 1 = italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - 2. Since after Step 3, the degree-4 vertex v𝑣vitalic_v is not in any triangle, we know that N⁒(u1)βˆ–{v}𝑁subscript𝑒1𝑣N(u_{1})\setminus\{v\}italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } is disjoint with {u2,u3,u4}subscript𝑒2subscript𝑒3subscript𝑒4\{u_{2},u_{3},u_{4}\}{ italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT }. For case (b2.2), we will generate 3Γ—(d⁒(u1)βˆ’1)3𝑑subscript𝑒113\times(d(u_{1})-1)3 Γ— ( italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - 1 ) subbranches by decreasing kπ‘˜kitalic_k by at least 2+d⁒(u1)βˆ’2=d⁒(u1)2𝑑subscript𝑒12𝑑subscript𝑒12+d(u_{1})-2=d(u_{1})2 + italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - 2 = italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) in each, where d⁒(u1)=3𝑑subscript𝑒13d(u_{1})=3italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) = 3 or 4. See Figure 5 for an illustration. In total, we will generate the following 1+3+3Γ—(d⁒(u1)βˆ’1)3𝑑subscript𝑒113\times(d(u_{1})-1)3 Γ— ( italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - 1 ) branches

πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–{v},kβˆ’1),πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–({u1,ui}),kβˆ’2)⁒ for eachΒ i=2,3,4,πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–({u2,u3}βˆͺ(N⁒(u1)βˆ–{v,w})),kβˆ’d⁒(u1)),for eachΒ w∈N⁒(u1)βˆ–{v},πšŒπ™Ώπ™²π™Ώβ’(Gβˆ–({u2,u4}βˆͺ(N⁒(u1)βˆ–{v,w})),kβˆ’d⁒(u1)),for eachΒ w∈N⁒(u1)βˆ–{v},andπšŒπ™Ώπ™²π™Ώβ’(Gβˆ–({u3,u4}βˆͺ(N⁒(u1)βˆ–{v,w})),kβˆ’d⁒(u1)),for eachΒ w∈N⁒(u1)βˆ–{v}.πšŒπ™Ώπ™²π™ΏπΊπ‘£π‘˜1πšŒπ™Ώπ™²π™ΏπΊsubscript𝑒1subscriptπ‘’π‘–π‘˜2Β for eachΒ i=2,3,4πšŒπ™Ώπ™²π™ΏπΊsubscript𝑒2subscript𝑒3𝑁subscript𝑒1π‘£π‘€π‘˜π‘‘subscript𝑒1for eachΒ w∈N⁒(u1)βˆ–{v}πšŒπ™Ώπ™²π™ΏπΊsubscript𝑒2subscript𝑒4𝑁subscript𝑒1π‘£π‘€π‘˜π‘‘subscript𝑒1for eachΒ w∈N⁒(u1)βˆ–{v}andπšŒπ™Ώπ™²π™ΏπΊsubscript𝑒3subscript𝑒4𝑁subscript𝑒1π‘£π‘€π‘˜π‘‘subscript𝑒1for eachΒ w∈N⁒(u1)βˆ–{v}\begin{split}&{\tt cPCP}(G\setminus\{v\},k-1),\\ &{\tt cPCP}(G\setminus(\{u_{1},u_{i}\}),k-2)\mbox{\leavevmode\nobreak\ for % each $i=2,3,4$},\\ &{\tt cPCP}(G\setminus(\{u_{2},u_{3}\}\cup(N(u_{1})\setminus\{v,w\})),k-d(u_{1% })),\leavevmode\nobreak\ \mbox{for each $w\in N(u_{1})\setminus\{v\}$},\\ &{\tt cPCP}(G\setminus(\{u_{2},u_{4}\}\cup(N(u_{1})\setminus\{v,w\})),k-d(u_{1% })),\leavevmode\nobreak\ \mbox{for each $w\in N(u_{1})\setminus\{v\}$},\\ \mbox{and}\leavevmode\nobreak\ &{\tt cPCP}(G\setminus(\{u_{3},u_{4}\}\cup(N(u_% {1})\setminus\{v,w\})),k-d(u_{1})),\leavevmode\nobreak\ \mbox{for each $w\in N% (u_{1})\setminus\{v\}$}.\end{split}start_ROW start_CELL end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– { italic_v } , italic_k - 1 ) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– ( { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT } ) , italic_k - 2 ) for each italic_i = 2 , 3 , 4 , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– ( { italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT } βˆͺ ( italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v , italic_w } ) ) , italic_k - italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ) , for each italic_w ∈ italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– ( { italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT } βˆͺ ( italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v , italic_w } ) ) , italic_k - italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ) , for each italic_w ∈ italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } , end_CELL end_ROW start_ROW start_CELL and end_CELL start_CELL typewriter_cPCP ( italic_G βˆ– ( { italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT } βˆͺ ( italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v , italic_w } ) ) , italic_k - italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ) , for each italic_w ∈ italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } . end_CELL end_ROW
Refer to caption
Figure 5: Vertices in the deletion set are denoted by black vertices, and vertices not allowed to be deleted are denoted by grey vertices.

We get a recurrence

T⁒(k)≀T⁒(kβˆ’1)+3Γ—T⁒(kβˆ’2)+3⁒(d⁒(u1)βˆ’1)Γ—T⁒(kβˆ’d⁒(u1))+1,π‘‡π‘˜π‘‡π‘˜13π‘‡π‘˜23𝑑subscript𝑒11π‘‡π‘˜π‘‘subscript𝑒11T(k)\leq T(k-1)+3\times T(k-2)+3(d(u_{1})-1)\times T(k-d(u_{1}))+1,italic_T ( italic_k ) ≀ italic_T ( italic_k - 1 ) + 3 Γ— italic_T ( italic_k - 2 ) + 3 ( italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - 1 ) Γ— italic_T ( italic_k - italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ) + 1 ,

where d⁒(u1)=3𝑑subscript𝑒13d(u_{1})=3italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) = 3 or 4. For the case that d⁒(u1)=3𝑑subscript𝑒13d(u_{1})=3italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) = 3, the branching factor is 2.8192, and for the case that d⁒(u1)=4𝑑subscript𝑒14d(u_{1})=4italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) = 4, the branching factor is 2.6328.

The worst branching factors in the above five steps are listed in Table 2. After Step 5, any degree-4 vertex can be only adjacent to vertices of degree at most 2. It is easy to see that the remaining graph after Step 5 is a proper graph. We call the algorithm in Lemma 3.6 to solve the instance in Oβˆ—β’(2.5199k)superscript𝑂superscript2.5199π‘˜O^{*}(2.5199^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.5199 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time.

Table 2: The branching factors of each of the first five steps
Steps Step 1 Step 2 Step 3 Step 4 Step 5
Branching factors 2.5445 2.3028 2.8186 2.7145 2.8192
Theorem 3.14.

Co-Path/Cycle Packing can be solved in Oβˆ—β’(2.8192k)superscript𝑂superscript2.8192π‘˜O^{*}(2.8192^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.8192 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time.

Fomin et al.Β [9] introduced the monotone local search technique for deriving exact exponential-time algorithms from parameterized algorithms. Under some conditions, a ck⁒nO⁒(1)superscriptπ‘π‘˜superscript𝑛𝑂1c^{k}n^{O(1)}italic_c start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT italic_n start_POSTSUPERSCRIPT italic_O ( 1 ) end_POSTSUPERSCRIPT-time algorithm implies an algorithm with running time (2βˆ’1/c)n+o⁒(n)superscript21π‘π‘›π‘œπ‘›(2-1/c)^{n+o(n)}( 2 - 1 / italic_c ) start_POSTSUPERSCRIPT italic_n + italic_o ( italic_n ) end_POSTSUPERSCRIPT. By applying this technique on our Oβˆ—β’(2.8192k)superscript𝑂superscript2.8192π‘˜O^{*}(2.8192^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.8192 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT )-time algorithm in Theorem 3.14, we know that Co-Path/Cycle Packing can be solved in (2βˆ’1/2.8192)n+o⁒(n)=O⁒(1.6453n)superscript212.8192π‘›π‘œπ‘›π‘‚superscript1.6453𝑛(2-1/2.8192)^{n+o(n)}=O(1.6453^{n})( 2 - 1 / 2.8192 ) start_POSTSUPERSCRIPT italic_n + italic_o ( italic_n ) end_POSTSUPERSCRIPT = italic_O ( 1.6453 start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ) time.

Corollary 3.15.

Co-Path/Cycle Packing can be solved in O⁒(1.6453n)𝑂superscript1.6453𝑛O(1.6453^{n})italic_O ( 1.6453 start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ) time.

4 A Parameterized Algorithm for Co-Path Packing

In this section, we show a randomized Oβˆ—β’(2.9241k)superscript𝑂superscript2.9241π‘˜O^{*}(2.9241^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.9241 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time algorithm for Co-Path Packing. We also use the method for Co-Path/Cycle Packing, which consists of two phases. The first one is the dynamic programming phase, and the second one is the branch-and-search phase.

In the dynamic programming phase, it is more difficult to solve Co-Path Packing based on a path decomposition in comparison to Co-Path/Cycle Packing. The reason is that Co-Path/Cycle Packing involves only local constraints, which means that the object’s properties can be verified by checking each vertex’s neighborhood independently. For this problem, a typical dynamic programming approach can be used to design a cp⁒w⁒(G)⁒|V⁒(G)|O⁒(1)superscript𝑐𝑝𝑀𝐺superscript𝑉𝐺𝑂1c^{pw(G)}|V(G)|^{O(1)}italic_c start_POSTSUPERSCRIPT italic_p italic_w ( italic_G ) end_POSTSUPERSCRIPT | italic_V ( italic_G ) | start_POSTSUPERSCRIPT italic_O ( 1 ) end_POSTSUPERSCRIPT time algorithm straightforwardly. In contrast, there is a global connectivity constraint for Co-Path Packing. The problem with global connectivity constraint is also called connectivity-type problem. For connectivity-type problems, the typical dynamic programming approach has to keep track of all possible ways the solution can traverse the corresponding separator of the path decomposition that is Ω⁒(ll)Ξ©superscript𝑙𝑙\Omega(l^{l})roman_Ξ© ( italic_l start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT ), where l𝑙litalic_l is the size of the separator and hence the pathwidthΒ [6].

To obtain a single exponential algorithm parametrized by pathwidth for Co-Path Packing, we use the cut & count framework. Previously, cut & count significantly improved the known bounds for various well-studied connectivity-type problems, such as Hamiltonian Path, Steiner Tree, and Feedback Vertex SetΒ [6]. Additionally, for kπ‘˜kitalic_k-Co-Path Set, cut & count has been used to obtain a fast parameterized algorithmΒ [17]. In Section 4.1, we present a randomized fpt algorithm with complexity Oβˆ—β’(5p⁒w⁒(G))superscript𝑂superscript5𝑝𝑀𝐺O^{*}(5^{pw(G)})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 5 start_POSTSUPERSCRIPT italic_p italic_w ( italic_G ) end_POSTSUPERSCRIPT ) for Co-Path Packing.

In the branch-and-search phase, our algorithm for Co-Path Packing is similar to the branching algorithm for Co-Path/Cycle Packing. Specifically, our branching algorithm for Co-Path Packing contains two reduction rules, two branching rules, and four steps, while the first reduction rule, both two branching rules, the first two steps, and the last step are the same as the branching algorithm for Co-Path/Cycle Packing. The branch-and-search phase is shown in Section 4.2.

4.1 A DP Algorithm via Cut & Count for Co-Path Packing

In this section, we use the cut & count framework to design a 5p⁒w⁒nO⁒(1)superscript5𝑝𝑀superscript𝑛𝑂15^{pw}n^{O(1)}5 start_POSTSUPERSCRIPT italic_p italic_w end_POSTSUPERSCRIPT italic_n start_POSTSUPERSCRIPT italic_O ( 1 ) end_POSTSUPERSCRIPT one-sided error Monte Carlo algorithm with a constant probability of a false negative for Co-Path Packing.

4.1.1 Cutting

In this subsection, we first introduce the definitions of consistent cuts and marked consistent cuts. Then we show the Isolation Lemma.

Definition 4.1.

A partition (V1,V2)subscript𝑉1subscript𝑉2(V_{1},V_{2})( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) of V⁒(G)𝑉𝐺V(G)italic_V ( italic_G ) is a consistent cut of a graph G𝐺Gitalic_G if there is no edge u⁒v𝑒𝑣uvitalic_u italic_v such that u∈V1𝑒subscript𝑉1u\in V_{1}italic_u ∈ italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and v∈V2𝑣subscript𝑉2v\in V_{2}italic_v ∈ italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. Furthermore, all degree-0 vertices are contained in V1subscript𝑉1V_{1}italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT.

By the definition of consistent cut, each non-isolate connected component must be contained fully in V1subscript𝑉1V_{1}italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT oder V2subscript𝑉2V_{2}italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. So we have that a graph G𝐺Gitalic_G has exactly 2c⁒c⁒(G)βˆ’n0⁒(G)superscript2𝑐𝑐𝐺subscript𝑛0𝐺2^{cc(G)-n_{0}(G)}2 start_POSTSUPERSCRIPT italic_c italic_c ( italic_G ) - italic_n start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ( italic_G ) end_POSTSUPERSCRIPT consistent cuts, where c⁒c⁒(G)𝑐𝑐𝐺cc(G)italic_c italic_c ( italic_G ) is the number of connected components and n0⁒(G)subscript𝑛0𝐺n_{0}(G)italic_n start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ( italic_G ) is the number of degree-0 vertices. A marker set is an edge set MβŠ†E⁒(G)𝑀𝐸𝐺M\subseteq E(G)italic_M βŠ† italic_E ( italic_G ).

Definition 4.2.

A triple (V1,V2,M)subscript𝑉1subscript𝑉2𝑀(V_{1},V_{2},M)( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_M ) is a marked consistent cut of a graph G𝐺Gitalic_G if (V1,V2)subscript𝑉1subscript𝑉2(V_{1},V_{2})( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) is a consistent cut and MβŠ†E⁒(G⁒[V1])𝑀𝐸𝐺delimited-[]subscript𝑉1M\subseteq E(G[V_{1}])italic_M βŠ† italic_E ( italic_G [ italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] ). A marker set is proper if it contains at least one edge in each non-isolate connected component of G𝐺Gitalic_G.

Note that if a marked consistent cut contains a proper marker set, all vertices are contained in V1subscript𝑉1V_{1}italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. The reason is that by the definition of marked consistent cut, any non-isolate connected component containing a marker must be contained in V1subscript𝑉1V_{1}italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. Additionally, all degree-0 vertices are contained in V1subscript𝑉1V_{1}italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. Therefore, If M𝑀Mitalic_M is a proper marker set, there exists exactly one corresponding consistent cut with M𝑀Mitalic_M. Conversely, if M𝑀Mitalic_M is not a proper marker set, there are an even number of consistent cuts with M𝑀Mitalic_M, since there exists at least one unmarked non-isolate connected component that could be contained in either V1subscript𝑉1V_{1}italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT oder V2subscript𝑉2V_{2}italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT.

We call an induced subgraph Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT of G𝐺Gitalic_G a cc-solution if Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT is a collection of disjoint paths.

Definition 4.3.

A pair (Gβ€²,Mβ€²)superscript𝐺′superscript𝑀′(G^{\prime},M^{\prime})( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) is a marked-cc-solution of a graph G𝐺Gitalic_G if Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT is a cc-solution and Mβ€²superscript𝑀′M^{\prime}italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT is a proper marker set with size exactly equals to the number of non-isolate connected components of Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT.

If there exists a cc-solution with |V⁒(G)|βˆ’kπ‘‰πΊπ‘˜|V(G)|-k| italic_V ( italic_G ) | - italic_k vertices, then we can claim that there exists a cPP-set with size kπ‘˜kitalic_k. Furthermore, if there exists a marked-cc-solution with |V⁒(G)|βˆ’kπ‘‰πΊπ‘˜|V(G)|-k| italic_V ( italic_G ) | - italic_k vertices, which means that there exists a cc-solution with |V⁒(G)|βˆ’kπ‘‰πΊπ‘˜|V(G)|-k| italic_V ( italic_G ) | - italic_k vertices, then we can also claim that there exists a cPP-set with size kπ‘˜kitalic_k.

A function Ο‰:Uβ†’β„€:πœ”β†’π‘ˆβ„€\omega:U\rightarrow\mathbb{Z}italic_Ο‰ : italic_U β†’ blackboard_Z isolates a set family β„±βŠ†2Uβ„±superscript2π‘ˆ\mathcal{F}\subseteq 2^{U}caligraphic_F βŠ† 2 start_POSTSUPERSCRIPT italic_U end_POSTSUPERSCRIPT if there is an unique Sβ€²βˆˆβ„±superscript𝑆′ℱS^{\prime}\in\mathcal{F}italic_S start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ∈ caligraphic_F with ω⁒(Sβ€²)=minSβˆˆβ„±β‘Ο‰β’(S)πœ”superscript𝑆′subscriptπ‘†β„±πœ”π‘†\omega(S^{\prime})=\min_{S\in\mathcal{F}}\omega(S)italic_Ο‰ ( italic_S start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) = roman_min start_POSTSUBSCRIPT italic_S ∈ caligraphic_F end_POSTSUBSCRIPT italic_Ο‰ ( italic_S ), where ω⁒(X)=βˆ‘x∈Xω⁒(x)πœ”π‘‹subscriptπ‘₯π‘‹πœ”π‘₯\omega(X)=\sum_{x\in X}\omega(x)italic_Ο‰ ( italic_X ) = βˆ‘ start_POSTSUBSCRIPT italic_x ∈ italic_X end_POSTSUBSCRIPT italic_Ο‰ ( italic_x ).

Lemma 4.4 (Isolation LemmaΒ [15]).

Let β„±βŠ†2Uβ„±superscript2π‘ˆ\mathcal{F}\subseteq 2^{U}caligraphic_F βŠ† 2 start_POSTSUPERSCRIPT italic_U end_POSTSUPERSCRIPT be a set family over an universe Uπ‘ˆUitalic_U with |β„±|>0β„±0|\mathcal{F}|>0| caligraphic_F | > 0. For each u∈Uπ‘’π‘ˆu\in Uitalic_u ∈ italic_U, choose a weight ω⁒(u)∈{1,2,…,N}πœ”π‘’12…𝑁\omega(u)\in\{1,2,\dots,N\}italic_Ο‰ ( italic_u ) ∈ { 1 , 2 , … , italic_N } uniformly and independently at random. Then

Pr⁑(ω⁒ isolates ⁒ℱ)β‰₯1βˆ’|U|N.Prπœ”Β isolatesΒ β„±1π‘ˆπ‘\Pr(\omega\text{ isolates }\mathcal{F})\geq 1-\frac{|U|}{N}.roman_Pr ( italic_Ο‰ isolates caligraphic_F ) β‰₯ 1 - divide start_ARG | italic_U | end_ARG start_ARG italic_N end_ARG .

4.1.2 Counting

Definition 4.5.

For some values nβ‰₯0𝑛0n\geq 0italic_n β‰₯ 0, eβ‰₯0𝑒0e\geq 0italic_e β‰₯ 0 and mβ‰₯0π‘š0m\geq 0italic_m β‰₯ 0, A pair (Gβ€²,(V1,V2,Mβ€²))superscript𝐺′subscript𝑉1subscript𝑉2superscript𝑀′(G^{\prime},(V_{1},V_{2},M^{\prime}))( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , ( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) ) is a cc-candidate of a graph G𝐺Gitalic_G if Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT is an induced subgraph of G𝐺Gitalic_G with maximum degree 2, exactly n𝑛nitalic_n vertices and e𝑒eitalic_e edges, and (V1,V2,Mβ€²)subscript𝑉1subscript𝑉2superscript𝑀′(V_{1},V_{2},M^{\prime})( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) is a marked consistent cut of Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT with mπ‘šmitalic_m markers.

Counting marked-cc-solutions remains difficult on a path decomposition since any feasible marked-cc-solution (Gβ€²,Mβ€²)superscript𝐺′superscript𝑀′(G^{\prime},M^{\prime})( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) must include a cycle-free induced subgraph Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT. However, it is important to note that there is no global connectivity constraint for cc-candidates. Therefore, counting cc-candidates is easier than counting marked-cc-solutions. The following lemma shows that we can count cc-candidates instead of marked-cc-solutions in β„€2subscriptβ„€2\mathbb{Z}_{2}blackboard_Z start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT.For a graph G𝐺Gitalic_G, assuming there is a weight function Ο‰:V⁒(G)βˆͺE⁒(G)β†’β„€:πœ”β†’π‘‰πΊπΈπΊβ„€\omega:V(G)\cup E(G)\rightarrow\mathbb{Z}italic_Ο‰ : italic_V ( italic_G ) βˆͺ italic_E ( italic_G ) β†’ blackboard_Z. The weight of a marked-cc-solution (Gβ€²,Mβ€²)superscript𝐺′superscript𝑀′(G^{\prime},M^{\prime})( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) is defined as βˆ‘v∈V⁒(Gβ€²)ω⁒(v)+βˆ‘e∈M′ω⁒(e)subscript𝑣𝑉superscriptπΊβ€²πœ”π‘£subscript𝑒superscriptπ‘€β€²πœ”π‘’\sum_{v\in V(G^{\prime})}\omega(v)+\sum_{e\in M^{\prime}}\omega(e)βˆ‘ start_POSTSUBSCRIPT italic_v ∈ italic_V ( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) end_POSTSUBSCRIPT italic_Ο‰ ( italic_v ) + βˆ‘ start_POSTSUBSCRIPT italic_e ∈ italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_Ο‰ ( italic_e ). The weight of a cc-candidates (Gβ€²,(V1,V2,Mβ€²))superscript𝐺′subscript𝑉1subscript𝑉2superscript𝑀′(G^{\prime},(V_{1},V_{2},M^{\prime}))( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , ( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) ) is also defined as βˆ‘v∈V⁒(Gβ€²)ω⁒(v)+βˆ‘e∈M′ω⁒(e)subscript𝑣𝑉superscriptπΊβ€²πœ”π‘£subscript𝑒superscriptπ‘€β€²πœ”π‘’\sum_{v\in V(G^{\prime})}\omega(v)+\sum_{e\in M^{\prime}}\omega(e)βˆ‘ start_POSTSUBSCRIPT italic_v ∈ italic_V ( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) end_POSTSUBSCRIPT italic_Ο‰ ( italic_v ) + βˆ‘ start_POSTSUBSCRIPT italic_e ∈ italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_Ο‰ ( italic_e ).

Lemma 4.6.

The parity of the number of marked-cc-solutions (Gβ€²,Mβ€²)superscript𝐺′superscript𝑀′(G^{\prime},M^{\prime})( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) in G𝐺Gitalic_G with n𝑛nitalic_n vertices, e𝑒eitalic_e edges and weight w𝑀witalic_w is the same as the parity of the number of cc-candidates (Gβ€²,(V1,V2,Mβ€²))superscript𝐺′subscript𝑉1subscript𝑉2superscript𝑀′(G^{\prime},(V_{1},V_{2},M^{\prime}))( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , ( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) ) with n𝑛nitalic_n vertices, e𝑒eitalic_e edges, nβˆ’eβˆ’n0⁒(Gβ€²)𝑛𝑒subscript𝑛0superscript𝐺′n-e-n_{0}(G^{\prime})italic_n - italic_e - italic_n start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) markers, and weight w𝑀witalic_w.

Proof 4.7.

Consider an induced subgraph Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT of G𝐺Gitalic_G and a marker set Mβ€²superscript𝑀′M^{\prime}italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT of Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT. Now we consider the following three cases.

Case 1. |V⁒(Gβ€²)|β‰ n𝑉superscript𝐺′𝑛|V(G^{\prime})|\neq n| italic_V ( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) | β‰  italic_n oder |E⁒(Gβ€²)|β‰ e𝐸superscript𝐺′𝑒|E(G^{\prime})|\neq e| italic_E ( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) | β‰  italic_e oder |Mβ€²|β‰ nβˆ’esuperscript𝑀′𝑛𝑒|M^{\prime}|\neq n-e| italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT | β‰  italic_n - italic_e oder βˆ‘v∈V⁒(Gβ€²)ω⁒(v)+βˆ‘m∈M′ω⁒(m)β‰ wsubscript𝑣𝑉superscriptπΊβ€²πœ”π‘£subscriptπ‘šsuperscriptπ‘€β€²πœ”π‘šπ‘€\sum_{v\in V(G^{\prime})}\omega(v)+\sum_{m\in M^{\prime}}\omega(m)\neq wβˆ‘ start_POSTSUBSCRIPT italic_v ∈ italic_V ( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) end_POSTSUBSCRIPT italic_Ο‰ ( italic_v ) + βˆ‘ start_POSTSUBSCRIPT italic_m ∈ italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_Ο‰ ( italic_m ) β‰  italic_w: In this case, (Gβ€²,Mβ€²)superscript𝐺′superscript𝑀′(G^{\prime},M^{\prime})( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) contributes 0 to both the number of marked-cc-solutions and the number of cc-candidates, respectively.

Case 2. There is a cycle in Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT: In this case, (Gβ€²,Mβ€²)superscript𝐺′superscript𝑀′(G^{\prime},M^{\prime})( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) is not a feasible marked-cc-solution and contributes 0 to the number of marked-cc-solutions. Since there is a cycle in Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT, we know that c⁒c⁒(Gβ€²)>nβˆ’e𝑐𝑐superscript𝐺′𝑛𝑒cc(G^{\prime})>n-eitalic_c italic_c ( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) > italic_n - italic_e. The number of non-isolate connected components is greater than nβˆ’eβˆ’n0⁒(Gβ€²)𝑛𝑒subscript𝑛0superscript𝐺′n-e-n_{0}(G^{\prime})italic_n - italic_e - italic_n start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ). So, there exists one non-isolate connected component containing no marker. Since this connected component could be contained in either V1subscript𝑉1V_{1}italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT oder V2subscript𝑉2V_{2}italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, we have that there are an even number of feasible consistent cuts (V1,V2)subscript𝑉1subscript𝑉2(V_{1},V_{2})( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) such that (Gβ€²,(V1,V2,Mβ€²))superscript𝐺′subscript𝑉1subscript𝑉2superscript𝑀′(G^{\prime},(V_{1},V_{2},M^{\prime}))( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , ( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) ) is a cc-candidate. Thus, (Gβ€²,Mβ€²)superscript𝐺′superscript𝑀′(G^{\prime},M^{\prime})( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) contributes an even number to the number of cc-candidates.

Case 3. There is no cycle in Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT: In this case, Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT is a feasible cc-solution. We further consider two cases.

Case 3.1. Mβ€²superscript𝑀′M^{\prime}italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT is not a proper marker set: In this case, (Gβ€²,Mβ€²)superscript𝐺′superscript𝑀′(G^{\prime},M^{\prime})( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) is also not a feasible marked-cc-solution and contributes 0 to the number of marked-cc-solutions. By the definition of proper marker set, we have that there is one non-isolate connected component containing no marker. Following a similar argument in Case 2, we have that (Gβ€²,Mβ€²)superscript𝐺′superscript𝑀′(G^{\prime},M^{\prime})( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) contributes an even number to the number of cc-candidates.

Case 3.2. Mβ€²superscript𝑀′M^{\prime}italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT is a proper marker set: In this case, (Gβ€²,Mβ€²)superscript𝐺′superscript𝑀′(G^{\prime},M^{\prime})( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) is a feasible marked-cc-solution and contributes 1 to the number of marked-cc-solutions. By the definition of proper marker set, we have that every non-isolate connected component contains a marker. Therefore, each connected component can only be contained in V1subscript𝑉1V_{1}italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. There is exactly one feasible consistent cut (V1,V2)subscript𝑉1subscript𝑉2(V_{1},V_{2})( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) such that (Gβ€²,(V1,V2,Mβ€²))superscript𝐺′subscript𝑉1subscript𝑉2superscript𝑀′(G^{\prime},(V_{1},V_{2},M^{\prime}))( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , ( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) ) is a cc-candidate. Thus, (Gβ€²,Mβ€²)superscript𝐺′superscript𝑀′(G^{\prime},M^{\prime})( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) contributes 1 to the number of cc-candidates.

Thus, For any subgraph Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT of G𝐺Gitalic_G and any marker set Mβ€²superscript𝑀′M^{\prime}italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT of Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT, (Gβ€²,Mβ€²)superscript𝐺′superscript𝑀′(G^{\prime},M^{\prime})( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) either contributes 1 to both the number of marked-cc-solutions and cc-candidates, or contributes 0 to marked-cc-solutions and an even number to cc-candidates. This lemma holds.

The following lemma shows the algorithm to count the number of cc-candidates in a given path decomposition.

Lemma 4.8.

Given a graph G𝐺Gitalic_G and a path decomposition of G𝐺Gitalic_G with width p𝑝pitalic_p. For any a,n,e,w,mβ‰₯0π‘Žπ‘›π‘’π‘€π‘š0a,n,e,w,m\geq 0italic_a , italic_n , italic_e , italic_w , italic_m β‰₯ 0 Determining the parity of the number of cc-candidates (Gβ€²,(V1,V2,Mβ€²))superscript𝐺′subscript𝑉1subscript𝑉2superscript𝑀′(G^{\prime},(V_{1},V_{2},M^{\prime}))( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , ( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) ) of G𝐺Gitalic_G with aπ‘Žaitalic_a degree-0 vertices, n𝑛nitalic_n vertices, e𝑒eitalic_e edges, mπ‘šmitalic_m markers, and weight w𝑀witalic_w can be solved in Oβˆ—β’(5p)superscript𝑂superscript5𝑝O^{*}(5^{p})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 5 start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT ) time and space.

Proof 4.9.

Similar to the proof of Theorem 3.5. We simply assume that the path decomposition P=(X1,X2,β‹―,Xr)𝑃subscript𝑋1subscript𝑋2β‹―subscriptπ‘‹π‘ŸP=(X_{1},X_{2},\cdots,X_{r})italic_P = ( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , β‹― , italic_X start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT ) is a nice path decomposition by Lemma 2.2.

Let Vi=⋃j=1iXisubscript𝑉𝑖superscriptsubscript𝑗1𝑖subscript𝑋𝑖V_{i}=\bigcup_{j=1}^{i}X_{i}italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ⋃ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for each i∈{1,2,β‹―,r}𝑖12β‹―π‘Ÿi\in\{1,2,\cdots,r\}italic_i ∈ { 1 , 2 , β‹― , italic_r }. We have Vr=Vsubscriptπ‘‰π‘Ÿπ‘‰V_{r}=Vitalic_V start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT = italic_V. For any i∈{1,2,β‹―,r}𝑖12β‹―π‘Ÿi\in\{1,2,\cdots,r\}italic_i ∈ { 1 , 2 , β‹― , italic_r }, let {D,R0,R11,R12,R2}𝐷subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2\{D,R_{0},R_{1}^{1},R_{1}^{2},R_{2}\}{ italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } be an arbitrary partition of Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. We consider the following subproblem: to count the number of cc-candidates (Gβ€²,(V1,V2,Mβ€²))superscript𝐺′subscript𝑉1subscript𝑉2superscript𝑀′(G^{\prime},(V_{1},V_{2},M^{\prime}))( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , ( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) ) of the induced graph G⁒[Vi]𝐺delimited-[]subscript𝑉𝑖G[V_{i}]italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] such that (Gβ€²,(V1,V2,Mβ€²))superscript𝐺′subscript𝑉1subscript𝑉2superscript𝑀′(G^{\prime},(V_{1},V_{2},M^{\prime}))( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , ( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) ) is a feasible cc-candidate with aπ‘Žaitalic_a degree-0 vertices, n𝑛nitalic_n vertices, e𝑒eitalic_e edges, mπ‘šmitalic_m markers, and weight w𝑀witalic_w. And each vertex in R0subscript𝑅0R_{0}italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT is a degree-0 vertex in V1subscript𝑉1V_{1}italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT; each vertex in R1jsuperscriptsubscript𝑅1𝑗R_{1}^{j}italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT is a degree-1 vertex in Vjsubscript𝑉𝑗V_{j}italic_V start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (j=1,2)𝑗12(j=1,2)( italic_j = 1 , 2 ); each vertex in R2subscript𝑅2R_{2}italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT is a degree-2 vertex in V1subscript𝑉1V_{1}italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT oder V2subscript𝑉2V_{2}italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. We also let s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) denote the corresponding number of the cc-candidates to this problem. We only need to check the value s⁒(i=r,a,n,e,w,m,βˆ…,βˆ…,βˆ…,βˆ…,βˆ…)π‘ π‘–π‘Ÿπ‘Žπ‘›π‘’π‘€π‘šs(i=r,a,n,e,w,m,\emptyset,\emptyset,\emptyset,\emptyset,\emptyset)italic_s ( italic_i = italic_r , italic_a , italic_n , italic_e , italic_w , italic_m , βˆ… , βˆ… , βˆ… , βˆ… , βˆ… ) since Xr=βˆ…subscriptπ‘‹π‘ŸX_{r}=\emptysetitalic_X start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT = βˆ…. Next, we use a dynamic programming method to compute all s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ).

For the case that i=1𝑖1i=1italic_i = 1, X1=βˆ…subscript𝑋1X_{1}=\emptysetitalic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = βˆ… and it trivially holds that s⁒(1,0,0,0,0,0,βˆ…,βˆ…,βˆ…,βˆ…,βˆ…)=1𝑠1000001s(1,0,0,0,0,0,\emptyset,\emptyset,\emptyset,\emptyset,\emptyset)=1italic_s ( 1 , 0 , 0 , 0 , 0 , 0 , βˆ… , βˆ… , βˆ… , βˆ… , βˆ… ) = 1 and other input equals to 0. Since the path decomposition is nice, there are two cases for each iβ‰₯2𝑖2i\geq 2italic_i β‰₯ 2.

Case 1: Xi=Xiβˆ’1βˆͺvsubscriptXisubscriptXi1vX_{i}=X_{i-1}\cup vitalic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT βˆͺ italic_v for some vβˆ‰Xiβˆ’1vsubscriptXi1v\notin X_{i-1}italic_v βˆ‰ italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT. By the definition of path decomposition, we know that all neighbors of vvvitalic_v in the graph G⁒[Vi]Gdelimited-[]subscriptViG[V_{i}]italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] must be in Xiβˆ’1subscriptXi1X_{i-1}italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT. For every parameter combination (a,n,e,w,m)anewm(a,n,e,w,m)( italic_a , italic_n , italic_e , italic_w , italic_m ) and every partition (D,R0,R11,R12,R2)DsubscriptR0superscriptsubscriptR11superscriptsubscriptR12subscriptR2(D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})( italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) of XisubscriptXiX_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, the following holds.

  1. 1.

    v∈D𝑣𝐷v\in Ditalic_v ∈ italic_D. It holds s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=s⁒(iβˆ’1,a,n,e,w,m,Dβˆ–v,R0,R11,R12,R2)π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2𝑠𝑖1π‘Žπ‘›π‘’π‘€π‘šπ·π‘£subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=s(i-1,a,n,e,w,m,D\setminus v,% R_{0},R_{1}^{1},R_{1}^{2},R_{2})italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = italic_s ( italic_i - 1 , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D βˆ– italic_v , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ).

  2. 2.

    v∈R1j𝑣superscriptsubscript𝑅1𝑗v\in R_{1}^{j}italic_v ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_j end_POSTSUPERSCRIPT for some j∈{1,2}𝑗12j\in\{1,2\}italic_j ∈ { 1 , 2 }. Let Rβ€²=R11βˆͺR12βˆͺR2superscript𝑅′superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2R^{\prime}=R_{1}^{1}\cup R_{1}^{2}\cup R_{2}italic_R start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT = italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT βˆͺ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT βˆͺ italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. We further consider two subcases.

    Case (a): NG⁒[Vi]⁒(v)∩R0β‰ βˆ…subscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣subscript𝑅0N_{G[V_{i}]}(v)\cap R_{0}\neq\emptysetitalic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT β‰  βˆ… oder |NG⁒[Vi]⁒(v)∩Rβ€²|β‰ 1subscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣superscript𝑅′1|N_{G[V_{i}]}(v)\cap R^{\prime}|\neq 1| italic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ italic_R start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT | β‰  1:

    For this case, the partition (D,R0,R11,R12,R2)𝐷subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2(D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})( italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) is infeasible and we simply have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=0.π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅20s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=0.italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = 0 .

    Case (b): NG⁒[Vi]⁒(v)∩R0=βˆ…subscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣subscript𝑅0N_{G[V_{i}]}(v)\cap R_{0}=\emptysetitalic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT = βˆ… and |NG⁒[Vi]⁒(v)∩Rβ€²|=1subscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣superscript𝑅′1|N_{G[V_{i}]}(v)\cap R^{\prime}|=1| italic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ italic_R start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT | = 1. Let u𝑒uitalic_u be the vertex contained in NG⁒[Vi]⁒(v)∩Rβ€²subscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣superscript𝑅′N_{G[V_{i}]}(v)\cap R^{\prime}italic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ italic_R start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT. We further consider two cases.

    Case (b.1): v∈R11𝑣superscriptsubscript𝑅11v\in R_{1}^{1}italic_v ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT:

    (i) If u∈R12𝑒superscriptsubscript𝑅12u\in R_{1}^{2}italic_u ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT, the consistent cut corresponding to (R11,R12)superscriptsubscript𝑅11superscriptsubscript𝑅12(R_{1}^{1},R_{1}^{2})( italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) is infeasible and we simply have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=0.π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅20s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=0.italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = 0 .

    (ii) If u∈R11𝑒superscriptsubscript𝑅11u\in R_{1}^{1}italic_u ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT, we have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=s⁒(iβˆ’1,a+1,nβˆ’1,eβˆ’1,wβˆ’w⁒(v),m,D,R0βˆͺu,R11βˆ–{u,v},R12,R2)+s⁒(iβˆ’1,a+1,nβˆ’1,eβˆ’1,wβˆ’w⁒(v)βˆ’w⁒(u⁒v),mβˆ’1,D,R0βˆͺu,R11βˆ–{u,v},R12,R2).π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2𝑠𝑖1π‘Ž1𝑛1𝑒1π‘€π‘€π‘£π‘šπ·subscript𝑅0𝑒superscriptsubscript𝑅11𝑒𝑣superscriptsubscript𝑅12subscript𝑅2𝑠𝑖1π‘Ž1𝑛1𝑒1π‘€π‘€π‘£π‘€π‘’π‘£π‘š1𝐷subscript𝑅0𝑒superscriptsubscript𝑅11𝑒𝑣superscriptsubscript𝑅12subscript𝑅2\begin{split}&s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=\\ &s(i-1,a+1,n-1,e-1,w-w(v),m,D,R_{0}\cup u,R_{1}^{1}\setminus\{u,v\},R_{1}^{2},% R_{2})+\\ &s(i-1,a+1,n-1,e-1,w-w(v)-w(uv),m-1,D,R_{0}\cup u,R_{1}^{1}\setminus\{u,v\},R_% {1}^{2},R_{2}).\end{split}start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_a + 1 , italic_n - 1 , italic_e - 1 , italic_w - italic_w ( italic_v ) , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT βˆͺ italic_u , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT βˆ– { italic_u , italic_v } , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) + end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_a + 1 , italic_n - 1 , italic_e - 1 , italic_w - italic_w ( italic_v ) - italic_w ( italic_u italic_v ) , italic_m - 1 , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT βˆͺ italic_u , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT βˆ– { italic_u , italic_v } , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) . end_CELL end_ROW

    (iii) If u∈R2𝑒subscript𝑅2u\in R_{2}italic_u ∈ italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, we have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=s⁒(iβˆ’1,a,nβˆ’1,eβˆ’1,wβˆ’w⁒(v),m,D,R0,R11βˆ–vβˆͺu,R12,R2βˆ–u)+s⁒(iβˆ’1,a,nβˆ’1,eβˆ’1,wβˆ’w⁒(v)βˆ’w⁒(u⁒v),mβˆ’1,D,R0,R11βˆ–vβˆͺu,R12,R2βˆ–u).π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2𝑠𝑖1π‘Žπ‘›1𝑒1π‘€π‘€π‘£π‘šπ·subscript𝑅0superscriptsubscript𝑅11𝑣𝑒superscriptsubscript𝑅12subscript𝑅2𝑒𝑠𝑖1π‘Žπ‘›1𝑒1π‘€π‘€π‘£π‘€π‘’π‘£π‘š1𝐷subscript𝑅0superscriptsubscript𝑅11𝑣𝑒superscriptsubscript𝑅12subscript𝑅2𝑒\begin{split}&s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=\\ &s(i-1,a,n-1,e-1,w-w(v),m,D,R_{0},R_{1}^{1}\setminus v\cup u,R_{1}^{2},R_{2}% \setminus u)+\\ &s(i-1,a,n-1,e-1,w-w(v)-w(uv),m-1,D,R_{0},R_{1}^{1}\setminus v\cup u,R_{1}^{2}% ,R_{2}\setminus u).\end{split}start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_a , italic_n - 1 , italic_e - 1 , italic_w - italic_w ( italic_v ) , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT βˆ– italic_v βˆͺ italic_u , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT βˆ– italic_u ) + end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_a , italic_n - 1 , italic_e - 1 , italic_w - italic_w ( italic_v ) - italic_w ( italic_u italic_v ) , italic_m - 1 , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT βˆ– italic_v βˆͺ italic_u , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT βˆ– italic_u ) . end_CELL end_ROW

    Case (b.2): v∈R12𝑣superscriptsubscript𝑅12v\in R_{1}^{2}italic_v ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT:

    (i) If u∈R11𝑒superscriptsubscript𝑅11u\in R_{1}^{1}italic_u ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT, the consistent cut corresponding to (R11,R12)superscriptsubscript𝑅11superscriptsubscript𝑅12(R_{1}^{1},R_{1}^{2})( italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) is infeasible and we simply have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=0.π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅20s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=0.italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = 0 .

    (ii) If u∈R12𝑒superscriptsubscript𝑅12u\in R_{1}^{2}italic_u ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT, we have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=s⁒(iβˆ’1,a+1,nβˆ’1,eβˆ’1,wβˆ’w⁒(v),m,D,R0βˆͺu,R11,R12βˆ–{u,v},R2).π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2𝑠𝑖1π‘Ž1𝑛1𝑒1π‘€π‘€π‘£π‘šπ·subscript𝑅0𝑒superscriptsubscript𝑅11superscriptsubscript𝑅12𝑒𝑣subscript𝑅2\begin{split}&s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=\\ &s(i-1,a+1,n-1,e-1,w-w(v),m,D,R_{0}\cup u,R_{1}^{1},R_{1}^{2}\setminus\{u,v\},% R_{2}).\end{split}start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_a + 1 , italic_n - 1 , italic_e - 1 , italic_w - italic_w ( italic_v ) , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT βˆͺ italic_u , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT βˆ– { italic_u , italic_v } , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) . end_CELL end_ROW

    (iii) If u∈R2𝑒subscript𝑅2u\in R_{2}italic_u ∈ italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, we have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=s⁒(iβˆ’1,a,nβˆ’1,eβˆ’1,wβˆ’w⁒(v),m,D,R0,R11,R12βˆ–vβˆͺu,R2βˆ–u).π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2𝑠𝑖1π‘Žπ‘›1𝑒1π‘€π‘€π‘£π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12𝑣𝑒subscript𝑅2𝑒\begin{split}&s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=\\ &s(i-1,a,n-1,e-1,w-w(v),m,D,R_{0},R_{1}^{1},R_{1}^{2}\setminus v\cup u,R_{2}% \setminus u).\end{split}start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_a , italic_n - 1 , italic_e - 1 , italic_w - italic_w ( italic_v ) , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT βˆ– italic_v βˆͺ italic_u , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT βˆ– italic_u ) . end_CELL end_ROW
  3. 3.

    v∈R2𝑣subscript𝑅2v\in R_{2}italic_v ∈ italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. Let Rβ€²=R11βˆͺR12βˆͺR2superscript𝑅′superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2R^{\prime}=R_{1}^{1}\cup R_{1}^{2}\cup R_{2}italic_R start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT = italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT βˆͺ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT βˆͺ italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. We further consider two subcases.

    Case (a): NG⁒[Vi]⁒(v)∩R0β‰ βˆ…subscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣subscript𝑅0N_{G[V_{i}]}(v)\cap R_{0}\neq\emptysetitalic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT β‰  βˆ… oder |NG⁒[Vi]⁒(v)∩Rβ€²|β‰ 2subscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣superscript𝑅′2|N_{G[V_{i}]}(v)\cap R^{\prime}|\neq 2| italic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ italic_R start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT | β‰  2:

    For this case, the partition (D,R0,R11,R12,R2)𝐷subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2(D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})( italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) is infeasible and we simply have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=0.π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅20s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=0.italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = 0 .

    Case (b): NG⁒[Vi]⁒(v)∩R0=βˆ…subscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣subscript𝑅0N_{G[V_{i}]}(v)\cap R_{0}=\emptysetitalic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT = βˆ… and |NG⁒[Vi]⁒(v)∩Rβ€²|=2subscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣superscript𝑅′2|N_{G[V_{i}]}(v)\cap R^{\prime}|=2| italic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ italic_R start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT | = 2: Let u1,u2subscript𝑒1subscript𝑒2u_{1},u_{2}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT be the two vertices contained in NG⁒[Vi]⁒(v)∩Rβ€²subscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣superscript𝑅′N_{G[V_{i}]}(v)\cap R^{\prime}italic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ italic_R start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT. If u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT are both contained in V1subscript𝑉1V_{1}italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, the edges u1⁒vsubscript𝑒1𝑣u_{1}vitalic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_v and u2⁒vsubscript𝑒2𝑣u_{2}vitalic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT italic_v can be marked or not. Let P={(wβˆ’w⁒(v),m),(wβˆ’w⁒(v)βˆ’w⁒(u1⁒v),mβˆ’1),(wβˆ’w⁒(v)βˆ’w⁒(u2⁒w),mβˆ’1),(wβˆ’w⁒(v)βˆ’w⁒(u1⁒v)βˆ’w⁒(u2⁒v),mβˆ’2)},π‘ƒπ‘€π‘€π‘£π‘šπ‘€π‘€π‘£π‘€subscript𝑒1π‘£π‘š1𝑀𝑀𝑣𝑀subscript𝑒2π‘€π‘š1𝑀𝑀𝑣𝑀subscript𝑒1𝑣𝑀subscript𝑒2π‘£π‘š2P=\{(w-w(v),m),(w-w(v)-w(u_{1}v),m-1),(w-w(v)-w(u_{2}w),m-1),(w-w(v)-w(u_{1}v)% -w(u_{2}v),m-2)\},italic_P = { ( italic_w - italic_w ( italic_v ) , italic_m ) , ( italic_w - italic_w ( italic_v ) - italic_w ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_v ) , italic_m - 1 ) , ( italic_w - italic_w ( italic_v ) - italic_w ( italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT italic_w ) , italic_m - 1 ) , ( italic_w - italic_w ( italic_v ) - italic_w ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_v ) - italic_w ( italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT italic_v ) , italic_m - 2 ) } , which is the possible parameter combination set for the case that u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT are contained in V1subscript𝑉1V_{1}italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. Now we consider all possible cases for {u1,u2}subscript𝑒1subscript𝑒2\{u_{1},u_{2}\}{ italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT }.

    (i) If u1,u2∈R11subscript𝑒1subscript𝑒2superscriptsubscript𝑅11u_{1},u_{2}\in R_{1}^{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT, we have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=βˆ‘p∈Ps⁒(iβˆ’1,a+2,nβˆ’1,eβˆ’2,(p),D,R0βˆͺ{u1,u2},R11βˆ–{u1,u2},R12,R2βˆ–v).π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2subscript𝑝𝑃𝑠𝑖1π‘Ž2𝑛1𝑒2𝑝𝐷subscript𝑅0subscript𝑒1subscript𝑒2superscriptsubscript𝑅11subscript𝑒1subscript𝑒2superscriptsubscript𝑅12subscript𝑅2𝑣\begin{split}&s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=\\ &\sum_{p\in P}s(i-1,a+2,n-1,e-2,(p),D,R_{0}\cup\{u_{1},u_{2}\},R_{1}^{1}% \setminus\{u_{1},u_{2}\},R_{1}^{2},R_{2}\setminus v).\end{split}start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL βˆ‘ start_POSTSUBSCRIPT italic_p ∈ italic_P end_POSTSUBSCRIPT italic_s ( italic_i - 1 , italic_a + 2 , italic_n - 1 , italic_e - 2 , ( italic_p ) , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT βˆͺ { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT βˆ– { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT βˆ– italic_v ) . end_CELL end_ROW

    (ii) If u1∈R11subscript𝑒1superscriptsubscript𝑅11u_{1}\in R_{1}^{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT and u2∈R12subscript𝑒2superscriptsubscript𝑅12u_{2}\in R_{1}^{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT oder u1∈R12subscript𝑒1superscriptsubscript𝑅12u_{1}\in R_{1}^{2}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT and u2∈R11subscript𝑒2superscriptsubscript𝑅11u_{2}\in R_{1}^{1}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT the consistent cut corresponding to (R11,R12)superscriptsubscript𝑅11superscriptsubscript𝑅12(R_{1}^{1},R_{1}^{2})( italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) is infeasible and we simply have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=0.π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅20s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=0.italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = 0 .

    (iii) If u1,u2∈R12subscript𝑒1subscript𝑒2superscriptsubscript𝑅12u_{1},u_{2}\in R_{1}^{2}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT we have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=s⁒(iβˆ’1,a+2,nβˆ’1,eβˆ’2,wβˆ’w⁒(v),m,D,R0βˆͺ{u1,u2},R11,R12βˆ–{u1,u2},R2βˆ–v).π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2𝑠𝑖1π‘Ž2𝑛1𝑒2π‘€π‘€π‘£π‘šπ·subscript𝑅0subscript𝑒1subscript𝑒2superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑒1subscript𝑒2subscript𝑅2𝑣\begin{split}&s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=\\ &s(i-1,a+2,n-1,e-2,w-w(v),m,D,R_{0}\cup\{u_{1},u_{2}\},R_{1}^{1},R_{1}^{2}% \setminus\{u_{1},u_{2}\},R_{2}\setminus v).\end{split}start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_a + 2 , italic_n - 1 , italic_e - 2 , italic_w - italic_w ( italic_v ) , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT βˆͺ { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT βˆ– { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT βˆ– italic_v ) . end_CELL end_ROW

    (iv) If u1∈R2subscript𝑒1subscript𝑅2u_{1}\in R_{2}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and u2∈R11subscript𝑒2superscriptsubscript𝑅11u_{2}\in R_{1}^{1}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT oder u2∈R2subscript𝑒2subscript𝑅2u_{2}\in R_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and u1∈R11subscript𝑒1superscriptsubscript𝑅11u_{1}\in R_{1}^{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT, we only consider the latter case without loss of generality. We have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=βˆ‘p∈Ps⁒(iβˆ’1,a+1,nβˆ’1,eβˆ’2,(p),D,R0βˆͺu1,R11βˆ–u1βˆͺu2,R12,R2βˆ–{v,u2}).π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2subscript𝑝𝑃𝑠𝑖1π‘Ž1𝑛1𝑒2𝑝𝐷subscript𝑅0subscript𝑒1superscriptsubscript𝑅11subscript𝑒1subscript𝑒2superscriptsubscript𝑅12subscript𝑅2𝑣subscript𝑒2\begin{split}&s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=\\ &\sum_{p\in P}s(i-1,a+1,n-1,e-2,(p),D,R_{0}\cup u_{1},R_{1}^{1}\setminus u_{1}% \cup u_{2},R_{1}^{2},R_{2}\setminus\{v,u_{2}\}).\end{split}start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL βˆ‘ start_POSTSUBSCRIPT italic_p ∈ italic_P end_POSTSUBSCRIPT italic_s ( italic_i - 1 , italic_a + 1 , italic_n - 1 , italic_e - 2 , ( italic_p ) , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT βˆͺ italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT βˆ– italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT βˆͺ italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT βˆ– { italic_v , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) . end_CELL end_ROW

    (v) If u1∈R2subscript𝑒1subscript𝑅2u_{1}\in R_{2}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and u2∈R12subscript𝑒2superscriptsubscript𝑅12u_{2}\in R_{1}^{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT oder u2∈R2subscript𝑒2subscript𝑅2u_{2}\in R_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and u1∈R12subscript𝑒1superscriptsubscript𝑅12u_{1}\in R_{1}^{2}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT, we only consider the latter case without loss of generality. We have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=s⁒(iβˆ’1,a+1,nβˆ’1,eβˆ’2,wβˆ’w⁒(v),m,D,R0βˆͺu1,R11,R12βˆ–u1βˆͺu2,R2βˆ–{v,u2}).π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2𝑠𝑖1π‘Ž1𝑛1𝑒2π‘€π‘€π‘£π‘šπ·subscript𝑅0subscript𝑒1superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑒1subscript𝑒2subscript𝑅2𝑣subscript𝑒2\begin{split}&s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=\\ &s(i-1,a+1,n-1,e-2,w-w(v),m,D,R_{0}\cup u_{1},R_{1}^{1},R_{1}^{2}\setminus u_{% 1}\cup u_{2},R_{2}\setminus\{v,u_{2}\}).\end{split}start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_a + 1 , italic_n - 1 , italic_e - 2 , italic_w - italic_w ( italic_v ) , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT βˆͺ italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT βˆ– italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT βˆͺ italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT βˆ– { italic_v , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } ) . end_CELL end_ROW

    (vi) If u1,u2∈R2subscript𝑒1subscript𝑒2subscript𝑅2u_{1},u_{2}\in R_{2}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∈ italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT we have that

    s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=s⁒(iβˆ’1,a,nβˆ’1,eβˆ’2,wβˆ’w⁒(v),m,D,R0,R11,R12βˆͺ{u1,u2},R2βˆ–{u1,u2,v})+βˆ‘p∈Ps⁒(iβˆ’1,a,nβˆ’1,eβˆ’2,(p),D,R0,R11βˆͺ{u1,u2},R12,R2βˆ–{u1,u2,v})π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2𝑠𝑖1π‘Žπ‘›1𝑒2π‘€π‘€π‘£π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑒1subscript𝑒2subscript𝑅2subscript𝑒1subscript𝑒2𝑣subscript𝑝𝑃𝑠𝑖1π‘Žπ‘›1𝑒2𝑝𝐷subscript𝑅0superscriptsubscript𝑅11subscript𝑒1subscript𝑒2superscriptsubscript𝑅12subscript𝑅2subscript𝑒1subscript𝑒2𝑣\begin{split}&s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=\\ &s(i-1,a,n-1,e-2,w-w(v),m,D,R_{0},R_{1}^{1},R_{1}^{2}\cup\{u_{1},u_{2}\},R_{2}% \setminus\{u_{1},u_{2},v\})+\\ &\sum_{p\in P}s(i-1,a,n-1,e-2,(p),D,R_{0},R_{1}^{1}\cup\{u_{1},u_{2}\},R_{1}^{% 2},R_{2}\setminus\{u_{1},u_{2},v\})\end{split}start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_a , italic_n - 1 , italic_e - 2 , italic_w - italic_w ( italic_v ) , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT βˆͺ { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT βˆ– { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_v } ) + end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL βˆ‘ start_POSTSUBSCRIPT italic_p ∈ italic_P end_POSTSUBSCRIPT italic_s ( italic_i - 1 , italic_a , italic_n - 1 , italic_e - 2 , ( italic_p ) , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT βˆͺ { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT βˆ– { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_v } ) end_CELL end_ROW

Case 2: Xi=Xiβˆ’1βˆ–vsubscriptXisubscriptXi1vX_{i}=X_{i-1}\setminus vitalic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT βˆ– italic_v for some v∈Xiβˆ’1vsubscriptXi1v\in X_{i-1}italic_v ∈ italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT. It is not hard to see that the following equation holds.

s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)=s⁒(iβˆ’1,a,n,e,w,m,Dβˆͺv,R0,R11,R12,R2)+s⁒(iβˆ’1,a,n,e,w,m,D,R0βˆͺv,R11,R12,R2)+s⁒(iβˆ’1,a,n,e,w,m,D,R0,R11βˆͺv,R12,R2)+s⁒(iβˆ’1,a,n,e,w,m,D,R0,R11,R12βˆͺv,R2)+s⁒(iβˆ’1,a,n,e,w,m,D,R0,R11,R12,R2βˆͺv).π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2𝑠𝑖1π‘Žπ‘›π‘’π‘€π‘šπ·π‘£subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2𝑠𝑖1π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0𝑣superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2𝑠𝑖1π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11𝑣superscriptsubscript𝑅12subscript𝑅2𝑠𝑖1π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12𝑣subscript𝑅2𝑠𝑖1π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2𝑣\begin{split}s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})=&s(i-1,a,n,e,w,m% ,D\cup v,R_{0},R_{1}^{1},R_{1}^{2},R_{2})+\\ &s(i-1,a,n,e,w,m,D,R_{0}\cup v,R_{1}^{1},R_{1}^{2},R_{2})+\\ &s(i-1,a,n,e,w,m,D,R_{0},R_{1}^{1}\cup v,R_{1}^{2},R_{2})+\\ &s(i-1,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2}\cup v,R_{2})+\\ &s(i-1,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2}\cup v).\end{split}start_ROW start_CELL italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = end_CELL start_CELL italic_s ( italic_i - 1 , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D βˆͺ italic_v , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) + end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT βˆͺ italic_v , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) + end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT βˆͺ italic_v , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) + end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT βˆͺ italic_v , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) + end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT βˆͺ italic_v ) . end_CELL end_ROW

For each bag Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, there are at most 5|Xi|superscript5subscript𝑋𝑖5^{|X_{i}|}5 start_POSTSUPERSCRIPT | italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | end_POSTSUPERSCRIPT different partitions, where |Xi|≀p+1subscript𝑋𝑖𝑝1|X_{i}|\leq p+1| italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | ≀ italic_p + 1. The values {a,n,e,w,m}π‘Žπ‘›π‘’π‘€π‘š\{a,n,e,w,m\}{ italic_a , italic_n , italic_e , italic_w , italic_m } are bounded by a polynomial of the graph size. For i𝑖iitalic_i and each partition {D,R0,R11,R12,R2}𝐷subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2\{D,R_{0},R_{1}^{1},R_{1}^{2},R_{2}\}{ italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } of Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, it takes constant time to compute s⁒(i,a,n,e,w,m,D,R0,R11,R12,R2)π‘ π‘–π‘Žπ‘›π‘’π‘€π‘šπ·subscript𝑅0superscriptsubscript𝑅11superscriptsubscript𝑅12subscript𝑅2s(i,a,n,e,w,m,D,R_{0},R_{1}^{1},R_{1}^{2},R_{2})italic_s ( italic_i , italic_a , italic_n , italic_e , italic_w , italic_m , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) by using the above recurrence relations. Therefore, our dynamic programming algorithm runs in O⁒(5p+1β‹…rβ‹…poly⁒(n))𝑂⋅superscript5𝑝1π‘Ÿpoly𝑛O(5^{p+1}\cdot r\cdot\text{poly}(n))italic_O ( 5 start_POSTSUPERSCRIPT italic_p + 1 end_POSTSUPERSCRIPT β‹… italic_r β‹… poly ( italic_n ) ) time, where rπ‘Ÿritalic_r is bounded by a polynomial of the graph size. This lemma holds.

Now we are ready to prove the main theorem in this section.

Theorem 4.10.

Given a path decomposition of G𝐺Gitalic_G with width p𝑝pitalic_p. Co-Path Packing can be solved in Oβˆ—β’(5p)superscript𝑂superscript5𝑝O^{*}(5^{p})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 5 start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT ) time and space with failure probability ≀1/3absent13\leq 1/3≀ 1 / 3.

Proof 4.11.

Let β„±β„±\mathcal{F}caligraphic_F be the set of (Vβ€²,Mβ€²)superscript𝑉′superscript𝑀′(V^{\prime},M^{\prime})( italic_V start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) where (G⁒[Vβ€²],Mβ€²)𝐺delimited-[]superscript𝑉′superscript𝑀′(G[V^{\prime}],M^{\prime})( italic_G [ italic_V start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ] , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) is a feasible marked-cc-solution. Let Uπ‘ˆUitalic_U contain V⁒(G)𝑉𝐺V(G)italic_V ( italic_G ) and E⁒(G)𝐸𝐺E(G)italic_E ( italic_G ). Then 2Usuperscript2π‘ˆ2^{U}2 start_POSTSUPERSCRIPT italic_U end_POSTSUPERSCRIPT denotes all pairs of a vertex subset and an edge subset, which are potential marked-cc-solutions. Let N=3⁒|U|=3⁒(|V⁒(G)|+|E⁒(G)|)𝑁3π‘ˆ3𝑉𝐺𝐸𝐺N=3|U|=3(|V(G)|+|E(G)|)italic_N = 3 | italic_U | = 3 ( | italic_V ( italic_G ) | + | italic_E ( italic_G ) | ). Each vertex and edge is assigned a weight in [1,N]1𝑁[1,N][ 1 , italic_N ] uniformly at random by Ο‰πœ”\omegaitalic_Ο‰ and the probability of finding an isolating Ο‰πœ”\omegaitalic_Ο‰ is 2/3 by Lemma 4.4. Based on such Ο‰πœ”\omegaitalic_Ο‰, we have that there exists a weight w𝑀witalic_w such that there is exactly one marked-cc-solution with weight w𝑀witalic_w (if β„±β‰ βˆ…β„±\mathcal{F}\neq\emptysetcaligraphic_F β‰  βˆ…). It is easy to see that there exists a cPP-set with size at most kπ‘˜kitalic_k if and only if there exists a marked-cc-solution with nβ‰₯|V⁒(G)|βˆ’kπ‘›π‘‰πΊπ‘˜n\geq|V(G)|-kitalic_n β‰₯ | italic_V ( italic_G ) | - italic_k and any possible e𝑒eitalic_e and w𝑀witalic_w. Thus, for any possible e𝑒eitalic_e and w𝑀witalic_w, by Lemma 4.6, we call the algorithm given in Lemma 4.8, then check the parity of the number of cc-candidates (Gβ€²,(V1,V2,Mβ€²))superscript𝐺′subscript𝑉1subscript𝑉2superscript𝑀′(G^{\prime},(V_{1},V_{2},M^{\prime}))( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , ( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) ) of G𝐺Gitalic_G with any possible aβ‰₯0π‘Ž0a\geq 0italic_a β‰₯ 0 degree-0 vertices, nβ‰₯|V⁒(G)|βˆ’kπ‘›π‘‰πΊπ‘˜n\geq|V(G)|-kitalic_n β‰₯ | italic_V ( italic_G ) | - italic_k vertices, e𝑒eitalic_e edges, nβˆ’eβˆ’aπ‘›π‘’π‘Žn-e-aitalic_n - italic_e - italic_a markers and weight w𝑀witalic_w to determine the existence of the number of marked-cc-solution (Gβ€²,Mβ€²)superscript𝐺′superscript𝑀′(G^{\prime},M^{\prime})( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_M start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) with nβ‰₯|V⁒(G)|βˆ’kπ‘›π‘‰πΊπ‘˜n\geq|V(G)|-kitalic_n β‰₯ | italic_V ( italic_G ) | - italic_k and weight w𝑀witalic_w. Thus, this lemma holds.

4.2 The Whole Algorithm

In this section, we propose a parameterized algorithm for Co-Path Packing. First, in Section 4.2.1, we show that Co-Path Packing on a proper graph class can be quickly solved by using the dynamic programming algorithm based on path decompositions in Theorem 4.10. Similarly, we will use Lemma 3.3 to conclude this result. Second, in Section 4.2.2, we give a branch-and-search algorithm that will implement some branching steps on special local graph structures. Our branching algorithm for Co-Path Packing is similar to the branching algorithm for Co-Path/Cycle Packing. Specifically, our branching algorithm for Co-Path Packing contains two reduction rules, two branching rules, and four steps, while the first reduction rule, both two branching rules, the first two steps and the last step are the same as the branching algorithm for Co-Path/Cycle Packing. When all the steps cannot be applied, we show that the graph must be a proper graph and then the algorithm in Section 4.1 can be called directly to solve the problems.

4.2.1 Proper Graphs with Small Pathwidth

Recall that a graph is called proper if it satisfies the following conditions:

  1. 1.

    The maximum degree of G𝐺Gitalic_G is at most 4.

  2. 2.

    For any degree-4 vertex v𝑣vitalic_v, all neighbors are of degree at most 2.

  3. 3.

    For any degree-2 vertex v𝑣vitalic_v, at least one vertex in N⁒(v)𝑁𝑣N(v)italic_N ( italic_v ) is of degree at least 3.

  4. 4.

    Each connected component contains at least 6 vertices.

Combine Lemma 3.3 for Co-Path Packing with Lemma 4.10, we have the following lemma.

Lemma 4.12.

Co-Path Packing on proper graphs can be solved in Oβˆ—β’(2.9241k)superscript𝑂superscript2.9241π‘˜O^{*}(2.9241^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.9241 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time with probability at least 2/3.

Proof 4.13.

We first call the algorithm in Lemma 3.3. If the algorithm decides that G𝐺Gitalic_G has no c⁒P⁒P𝑐𝑃𝑃cPPitalic_c italic_P italic_P-set of size at most kπ‘˜kitalic_k, we claim that (G,k)πΊπ‘˜(G,k)( italic_G , italic_k ) is a no-instance. Otherwise, we can obtain a nice path decomposition of width at most 2⁒k3+ϡ⁒k2π‘˜3italic-Ο΅π‘˜\frac{2k}{3}+\epsilon kdivide start_ARG 2 italic_k end_ARG start_ARG 3 end_ARG + italic_Ο΅ italic_k. Then, we call the algorithm in Theorem 4.10. This algorithm runs in Oβˆ—β’(52⁒k/3+ϡ⁒k)=Oβˆ—β’(2.9241k)superscript𝑂superscript52π‘˜3italic-Ο΅π‘˜superscript𝑂superscript2.9241π‘˜O^{*}(5^{2k/3+\epsilon k})=O^{*}(2.9241^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 5 start_POSTSUPERSCRIPT 2 italic_k / 3 + italic_Ο΅ italic_k end_POSTSUPERSCRIPT ) = italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.9241 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) with failure probability ≀1/3absent13\leq 1/3≀ 1 / 3, where we choose Ο΅<10βˆ’6italic-Ο΅superscript106\epsilon<10^{-6}italic_Ο΅ < 10 start_POSTSUPERSCRIPT - 6 end_POSTSUPERSCRIPT. This lemma holds.

4.2.2 A Branch-and-Search Algorithm

In this subsection, we provide a branch-and-search algorithm for Co-Path Packing, which is denoted by πšŒπ™Ώπ™Ώβ’(G,k)πšŒπ™Ώπ™ΏπΊπ‘˜{\tt cPP}(G,k)typewriter_cPP ( italic_G , italic_k ). Our algorithm contains several reduction and branching steps. After recursively executing these steps, we will get a proper graph and then call the dynamic programming algorithm in Lemma 4.12 to solve it.

4.2.2.1. Reduction and Branching Rules.

Firstly, we present two reduction rules. The first reduction rule is Reduction Rule 1 for Co-Path/Cycle Packing and Reduction Rule *2 is a new reduction rule for Co-Path Packing.

Reduction-Rule 1. If there is a connected component C𝐢Citalic_C of the graph such that |V⁒(C)|≀6𝑉𝐢6|V(C)|\leq 6| italic_V ( italic_C ) | ≀ 6, then run a brute force algorithm to find a minimum cPP-set S𝑆Sitalic_S in C𝐢Citalic_C, delete C𝐢Citalic_C and include S𝑆Sitalic_S in the deletion set.

A path v0⁒v1⁒…⁒vhβˆ’1⁒vhsubscript𝑣0subscript𝑣1…subscriptπ‘£β„Ž1subscriptπ‘£β„Žv_{0}v_{1}\dots v_{h-1}v_{h}italic_v start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT … italic_v start_POSTSUBSCRIPT italic_h - 1 end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT is called a degree-two-path if the two vertices v0subscript𝑣0v_{0}italic_v start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT and vhsubscriptπ‘£β„Žv_{h}italic_v start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT are of degree not 2 and the other vertices v1⁒…⁒vhβˆ’1subscript𝑣1…subscriptπ‘£β„Ž1v_{1}\dots v_{h-1}italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT … italic_v start_POSTSUBSCRIPT italic_h - 1 end_POSTSUBSCRIPT are of degree 2, where we allow v0=vhsubscript𝑣0subscriptπ‘£β„Žv_{0}=v_{h}italic_v start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT = italic_v start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT.

Lemma 4.14.

For a degree-two-path P=v0⁒v1⁒…⁒vhβˆ’1⁒vh𝑃subscript𝑣0subscript𝑣1…subscriptπ‘£β„Ž1subscriptπ‘£β„ŽP=v_{0}v_{1}\dots v_{h-1}v_{h}italic_P = italic_v start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT … italic_v start_POSTSUBSCRIPT italic_h - 1 end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT with hβ‰₯4β„Ž4h\geq 4italic_h β‰₯ 4 in G=(V,E)𝐺𝑉𝐸G=(V,E)italic_G = ( italic_V , italic_E ), let Gβ€²=(Vβˆ–v2,Eβˆ–{v1⁒v2,v2⁒v3}βˆͺ{v1⁒v3})superscript𝐺′𝑉subscript𝑣2𝐸subscript𝑣1subscript𝑣2subscript𝑣2subscript𝑣3subscript𝑣1subscript𝑣3G^{\prime}=(V\setminus v_{2},E\setminus\{v_{1}v_{2},v_{2}v_{3}\}\cup\{v_{1}v_{% 3}\})italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT = ( italic_V βˆ– italic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_E βˆ– { italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT } βˆͺ { italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT } ), we have that (G,k)πΊπ‘˜(G,k)( italic_G , italic_k ) is a yes-instance if and only if (Gβ€²,k)superscriptπΊβ€²π‘˜(G^{\prime},k)( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_k ) is a yes-instance.

Proof 4.15.

If one of {v0,vh}subscript𝑣0subscriptπ‘£β„Ž\{v_{0},v_{h}\}{ italic_v start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_v start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT } is a degree-1 vertex, without loss of generality, we say v0subscript𝑣0v_{0}italic_v start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT is a degree-1 vertex. In this case, it is easy to see that vertices {v0,v1,…,vhβˆ’1}subscript𝑣0subscript𝑣1…subscriptπ‘£β„Ž1\{v_{0},v_{1},\dots,v_{h-1}\}{ italic_v start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_v start_POSTSUBSCRIPT italic_h - 1 end_POSTSUBSCRIPT } are not contained in any minimum solution, and this lemma holds.

If v0subscript𝑣0v_{0}italic_v start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT is of degree at least 3, let S𝑆Sitalic_S be a minimum cPP-set for G𝐺Gitalic_G. We consider the following cases.

(i) v1∈Ssubscript𝑣1𝑆v_{1}\in Sitalic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ italic_S: In this case, v2βˆ‰Ssubscript𝑣2𝑆v_{2}\notin Sitalic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT βˆ‰ italic_S since S𝑆Sitalic_S is a minimum cPP-set. Vertex set S𝑆Sitalic_S is also a minimum cPP-set for Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT.

(ii) v1βˆ‰Ssubscript𝑣1𝑆v_{1}\notin Sitalic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT βˆ‰ italic_S: If v2∈Ssubscript𝑣2𝑆v_{2}\in Sitalic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∈ italic_S, it is easy to check that Sβ€²=Sβˆ–v2βˆͺv1superscript𝑆′𝑆subscript𝑣2subscript𝑣1S^{\prime}=S\setminus v_{2}\cup v_{1}italic_S start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT = italic_S βˆ– italic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT βˆͺ italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is a feasible cPP-set with size |S|𝑆|S|| italic_S |. Vertex set Sβ€²superscript𝑆′S^{\prime}italic_S start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT is a minimum cPP-set for Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT. If v2βˆ‰Ssubscript𝑣2𝑆v_{2}\notin Sitalic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT βˆ‰ italic_S, clearly S𝑆Sitalic_S is also a minimum cPP-set for Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT.

Let Sβ€²superscript𝑆′S^{\prime}italic_S start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT be a minimum cPP-set for Gβ€²superscript𝐺′G^{\prime}italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT. By the similar argument, there exists a minimum cPP-set Sβ€²β€²superscript𝑆′′S^{\prime\prime}italic_S start_POSTSUPERSCRIPT β€² β€² end_POSTSUPERSCRIPT with size |Sβ€²|superscript𝑆′|S^{\prime}|| italic_S start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT | for G𝐺Gitalic_G.

Based on this lemma, we have the following reduction rule for Co-Path Packing.

Reduction-Rule *2. If there is a degree-two-path P=v0⁒v1⁒…⁒vhβˆ’1⁒vh𝑃subscript𝑣0subscript𝑣1…subscriptπ‘£β„Ž1subscriptπ‘£β„ŽP=v_{0}v_{1}\dots v_{h-1}v_{h}italic_P = italic_v start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT … italic_v start_POSTSUBSCRIPT italic_h - 1 end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT with hβ‰₯4β„Ž4h\geq 4italic_h β‰₯ 4, then return πšŒπ™Ώπ™Ώβ’(Gβ€²=(Vβˆ–v2,Eβˆ–{v1⁒v2,v2⁒v3}βˆͺ{v1⁒v3}),k)πšŒπ™Ώπ™Ώsuperscript𝐺′𝑉subscript𝑣2𝐸subscript𝑣1subscript𝑣2subscript𝑣2subscript𝑣3subscript𝑣1subscript𝑣3π‘˜{\tt cPP}(G^{\prime}=(V\setminus v_{2},E\setminus\{v_{1}v_{2},v_{2}v_{3}\}\cup% \{v_{1}v_{3}\}),k)typewriter_cPP ( italic_G start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT = ( italic_V βˆ– italic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_E βˆ– { italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT } βˆͺ { italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT } ) , italic_k ).

If Reduction Rules 1 and *2 cannot be applied, we have a property that for any degree-2 vertex v𝑣vitalic_v, at least one vertex in N⁒(v)𝑁𝑣N(v)italic_N ( italic_v ) is of degree at least 3.

After applying the three simple reduction rules, we will execute some branching steps. For Co-Path Packing, we have two branching rules, which are the same as the two branching rules for Co-Path/Cycle Packing. The correctnesses of these two branching rules for Co-Path Packing are similar to the two branching rules for Co-Path/Cycle Packing.

Branching-Rule (B1). For a vertex v𝑣vitalic_v of degree at least 3, branch on it to generate (|N⁒(v)|2)+1binomial𝑁𝑣21{|N(v)|\choose 2}+1( binomial start_ARG | italic_N ( italic_v ) | end_ARG start_ARG 2 end_ARG ) + 1 branches by either (i) deleting v𝑣vitalic_v from the graph and including it in the deletion set, or (ii) for every pair of vertices u𝑒uitalic_u and w𝑀witalic_w in N⁒(v)𝑁𝑣N(v)italic_N ( italic_v ), deleting N⁒(v)βˆ–{u,w}𝑁𝑣𝑒𝑀N(v)\setminus\{u,w\}italic_N ( italic_v ) βˆ– { italic_u , italic_w } from the graph and including N⁒(v)βˆ–{u,w}𝑁𝑣𝑒𝑀N(v)\setminus\{u,w\}italic_N ( italic_v ) βˆ– { italic_u , italic_w } in the deletion set.

Branching-Rule (B2). Assume that a vertex v𝑣vitalic_v of degree at least 3 dominates a vertex u. Branch on v𝑣vitalic_v to generate 1+(|N⁒(v)|βˆ’1)=|N⁒(v)|1𝑁𝑣1𝑁𝑣1+(|N(v)|-1)=|N(v)|1 + ( | italic_N ( italic_v ) | - 1 ) = | italic_N ( italic_v ) | branches by either (i) deleting v𝑣vitalic_v from the graph and including it in the deletion set, or (ii) for each vertex w∈N⁒(v)βˆ–{u}𝑀𝑁𝑣𝑒w\in N(v)\setminus\{u\}italic_w ∈ italic_N ( italic_v ) βˆ– { italic_u }, deleting N⁒(v)βˆ–{u,w}𝑁𝑣𝑒𝑀N(v)\setminus\{u,w\}italic_N ( italic_v ) βˆ– { italic_u , italic_w } from the graph and including N⁒(v)βˆ–{u,w}𝑁𝑣𝑒𝑀N(v)\setminus\{u,w\}italic_N ( italic_v ) βˆ– { italic_u , italic_w } in the deletion set.

4.2.2.2. Steps.

When we execute one step, we assume that all previous steps are not applicable in the current graph anymore. In this subsection, we present four steps: Step 1, Step 2, Step *3 and Step *4 for Co-Path Packing. Steps 1 and 2 are the Steps 1 and 2 for Co-Path/Cycle Packing. Step *3 is a new step designed for Co-Path Packing. Step *4 is the Step 5 for Co-Path/Cycle Packing.

Step 1 (Vertices of degree at least 5). If there is a vertex v𝑣vitalic_v of d⁒(v)β‰₯5𝑑𝑣5d(v)\geq 5italic_d ( italic_v ) β‰₯ 5, then branch on v𝑣vitalic_v with Branching-Rule (B1) to generate (d⁒(v)d⁒(v)βˆ’2)+1binomial𝑑𝑣𝑑𝑣21{d(v)\choose d(v)-2}+1( binomial start_ARG italic_d ( italic_v ) end_ARG start_ARG italic_d ( italic_v ) - 2 end_ARG ) + 1 branches.

Step 2 (Degree-4 vertices dominating some vertex of degree at least 3). Assume that there is a degree-4 vertex v𝑣vitalic_v that dominates a vertex u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, where d⁒(u1)β‰₯3𝑑subscript𝑒13d(u_{1})\geq 3italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) β‰₯ 3. Without loss of generality, we assume that the other three neighbors of v𝑣vitalic_v are u2,u3subscript𝑒2subscript𝑒3u_{2},u_{3}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT, and u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is adjacent to u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT (u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is further adjacent to u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT if d⁒(u1)=4𝑑subscript𝑒14d(u_{1})=4italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) = 4). We branch on v𝑣vitalic_v with Branching-Rule (B2) and get |N⁒(v)|𝑁𝑣|N(v)|| italic_N ( italic_v ) | branches.

Step *3 (Degree-4 vertices in a triangle). Assume that a degree-4 vertex v𝑣vitalic_v is in a triangle. Let u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT be the four neighbors of v𝑣vitalic_v, where we assume without loss of generality that {v,u1,u2}𝑣subscript𝑒1subscript𝑒2\{v,u_{1},u_{2}\}{ italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } is a triangle. We branch on v𝑣vitalic_v with Branching-Rule (B1). In the branch of deleting {u3,u4}subscript𝑒3subscript𝑒4\{u_{3},u_{4}\}{ italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT }, we can simply assume that the three vertices v,u1𝑣subscript𝑒1v,u_{1}italic_v , italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT are not deleted, otherwise this branch can be covered by another branch and then it can be ignored. Since v𝑣vitalic_v, u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT form a triangle, we know this case is impossible, so we can ignore this subbranch. We generate the following (42)binomial42{4\choose 2}( binomial start_ARG 4 end_ARG start_ARG 2 end_ARG ) branches

πšŒπ™Ώπ™Ώβ’(Gβˆ–{v},kβˆ’1),πšŒπ™Ώπ™Ώβ’(Gβˆ–({u1,ui}),kβˆ’|{u1,ui}|)⁒ for eachΒ i=2,3,4,andπšŒπ™Ώπ™Ώβ’(Gβˆ–({u2,ui}),kβˆ’|{u2,ui}|)⁒ for eachΒ i=3,4.πšŒπ™Ώπ™ΏπΊπ‘£π‘˜1πšŒπ™Ώπ™ΏπΊsubscript𝑒1subscriptπ‘’π‘–π‘˜subscript𝑒1subscript𝑒𝑖 for eachΒ i=2,3,4andπšŒπ™Ώπ™ΏπΊsubscript𝑒2subscriptπ‘’π‘–π‘˜subscript𝑒2subscript𝑒𝑖 for eachΒ i=3,4\begin{split}&{\tt cPP}(G\setminus\{v\},k-1),\\ &{\tt cPP}(G\setminus(\{u_{1},u_{i}\}),k-|\{u_{1},u_{i}\}|)\mbox{\leavevmode% \nobreak\ for each $i=2,3,4$},\\ \mbox{and}\quad&{\tt cPP}(G\setminus(\{u_{2},u_{i}\}),k-|\{u_{2},u_{i}\}|)% \mbox{\leavevmode\nobreak\ for each $i=3,4$}.\end{split}start_ROW start_CELL end_CELL start_CELL typewriter_cPP ( italic_G βˆ– { italic_v } , italic_k - 1 ) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL typewriter_cPP ( italic_G βˆ– ( { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT } ) , italic_k - | { italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT } | ) for each italic_i = 2 , 3 , 4 , end_CELL end_ROW start_ROW start_CELL and end_CELL start_CELL typewriter_cPP ( italic_G βˆ– ( { italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT } ) , italic_k - | { italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT } | ) for each italic_i = 3 , 4 . end_CELL end_ROW

The corresponding recurrence is

T⁒(k)≀T⁒(kβˆ’1)+((42)βˆ’1)Γ—T⁒(kβˆ’2)+1.π‘‡π‘˜π‘‡π‘˜1binomial421π‘‡π‘˜21T(k)\leq T(k-1)+({4\choose 2}-1)\times T(k-2)+1.italic_T ( italic_k ) ≀ italic_T ( italic_k - 1 ) + ( ( binomial start_ARG 4 end_ARG start_ARG 2 end_ARG ) - 1 ) Γ— italic_T ( italic_k - 2 ) + 1 .

The branching factor of it is 2.7913.

After Step *3, no degree-4 vertex is in a triangle.

Step *4 (Degree-4 vertices adjacent to some vertex of degree at least 3). Assume there is a degree-4 vertex v𝑣vitalic_v adjacent to at least one vertex of degree at least 3. Let u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, u2subscript𝑒2u_{2}italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, u3subscript𝑒3u_{3}italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and u4subscript𝑒4u_{4}italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT be the four neighbors of v𝑣vitalic_v, where we assume without loss of generality that d⁒(u1)β‰₯3𝑑subscript𝑒13d(u_{1})\geq 3italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) β‰₯ 3. First, we branch on v𝑣vitalic_v by either (b1) including it in the solution set or (b2) excluding it from the solution set. Next, we focus on the latter case (b2). In (b2), we further branch on u1subscript𝑒1u_{1}italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT by (b2.1) either including it in the solution set or (b2.2) excluding it from the solution set. For case (b2.1), there are at least |N⁒(v)|βˆ’2=2𝑁𝑣22|N(v)|-2=2| italic_N ( italic_v ) | - 2 = 2 vertices in N⁒(v)𝑁𝑣N(v)italic_N ( italic_v ) that should be deleted by the same argument for Branching-Rule (B1). Thus, we can generate three subbranches by deleting {u1,u2}subscript𝑒1subscript𝑒2\{u_{1},u_{2}\}{ italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT }, {u1,u3}subscript𝑒1subscript𝑒3\{u_{1},u_{3}\}{ italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT }, and {u1,u3}subscript𝑒1subscript𝑒3\{u_{1},u_{3}\}{ italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT }, respectively. For case (b2.2), there are still at least |N⁒(v)|βˆ’2=2𝑁𝑣22|N(v)|-2=2| italic_N ( italic_v ) | - 2 = 2 vertices in N⁒(v)𝑁𝑣N(v)italic_N ( italic_v ) that should be deleted, which can be one of the following three sets {u2,u3}subscript𝑒2subscript𝑒3\{u_{2},u_{3}\}{ italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT }, {u2,u4}subscript𝑒2subscript𝑒4\{u_{2},u_{4}\}{ italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT }, and {u3,u4}subscript𝑒3subscript𝑒4\{u_{3},u_{4}\}{ italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT }. Furthermore, there are also at least |N⁒(u1)|βˆ’2β‰₯1𝑁subscript𝑒121|N(u_{1})|-2\geq 1| italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) | - 2 β‰₯ 1 vertices in N⁒(u1)𝑁subscript𝑒1N(u_{1})italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) that should be deleted. Note that v∈N⁒(u1)𝑣𝑁subscript𝑒1v\in N(u_{1})italic_v ∈ italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) is not allowed to be deleted now. Thus, at least |N⁒(u1)βˆ–{v}|βˆ’1𝑁subscript𝑒1𝑣1|N(u_{1})\setminus\{v\}|-1| italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } | - 1 vertices in N⁒(u1)βˆ–{v}𝑁subscript𝑒1𝑣N(u_{1})\setminus\{v\}italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } should be deleted. We will generate (|N⁒(u1)βˆ–{v}||N⁒(u1)βˆ–{v}|βˆ’1)=|N⁒(u1)βˆ–{v}|=d⁒(u1)βˆ’1binomial𝑁subscript𝑒1𝑣𝑁subscript𝑒1𝑣1𝑁subscript𝑒1𝑣𝑑subscript𝑒11{{|N(u_{1})\setminus\{v\}|}\choose{|N(u_{1})\setminus\{v\}|-1}}=|N(u_{1})% \setminus\{v\}|=d(u_{1})-1( binomial start_ARG | italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } | end_ARG start_ARG | italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } | - 1 end_ARG ) = | italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } | = italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - 1 branches by decreasing kπ‘˜kitalic_k by |N⁒(u1)βˆ–{v}|βˆ’1=d⁒(u1)βˆ’2𝑁subscript𝑒1𝑣1𝑑subscript𝑒12|N(u_{1})\setminus\{v\}|-1=d(u_{1})-2| italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } | - 1 = italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - 2. Since after Step *3, the degree-4 vertex v𝑣vitalic_v is not in any triangle, we know that N⁒(u1)βˆ–{v}𝑁subscript𝑒1𝑣N(u_{1})\setminus\{v\}italic_N ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) βˆ– { italic_v } is disjoint with {u2,u3,u4}subscript𝑒2subscript𝑒3subscript𝑒4\{u_{2},u_{3},u_{4}\}{ italic_u start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT }. For case (b2.2), we will generate 3Γ—(d⁒(u1)βˆ’1)3𝑑subscript𝑒113\times(d(u_{1})-1)3 Γ— ( italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - 1 ) subbranches by decreasing kπ‘˜kitalic_k by at least 2+d⁒(u1)βˆ’2=d⁒(u1)2𝑑subscript𝑒12𝑑subscript𝑒12+d(u_{1})-2=d(u_{1})2 + italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) - 2 = italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) in each, where d⁒(u1)=3𝑑subscript𝑒13d(u_{1})=3italic_d ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) = 3 or 4.

The worst branching factors in the above steps are listed in Table 3. After Step *4, any degree-4 vertex can be only adjacent to vertices of degree at most 2. It is easy to see that the remaining graph after Step *4 is a proper graph. We call the algorithm in Lemma 4.12 to solve the instance for Co-Path Packing in Oβˆ—β’(2.9241k)superscript𝑂superscript2.9241π‘˜O^{*}(2.9241^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.9241 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time with probability at least 2/3.

Table 3: The branching factors of each of the steps
Steps Step 1 Step 2 Step *3 Step *4
Branching factors 2.5445 2.3028 2.7913 2.8192
Theorem 4.16.

Co-Path Packing can be solved in Oβˆ—β’(2.9241k)superscript𝑂superscript2.9241π‘˜O^{*}(2.9241^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.9241 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time with probability at least 2/3.

5 Conclusion

In this paper, we show that given a path decomposition of width p𝑝pitalic_p, Co-Path Packing can be solved by a randomized fpt algorithm running in Oβˆ—β’(5p)superscript𝑂superscript5𝑝O^{*}(5^{p})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 5 start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT ) time. Additionally, by combining this algorithm with a branch-and-search algorithm, we show that Co-Path/Cycle Packing can be solved in Oβˆ—β’(2.8192k)superscript𝑂superscript2.8192π‘˜O^{*}(2.8192^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.8192 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time and Co-Path Packing can be solved in Oβˆ—β’(2.9241k)superscript𝑂superscript2.9241π‘˜O^{*}(2.9241^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 2.9241 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ) time with probability at least 2/3. For Co-Path/Cycle Packing, the new bottleneck in our algorithm is Step 5, which is to deal with degree-4 vertices not in any triangle. For Co-Path Packing, the new bottleneck in our algorithm is the dynamic programming phase. The idea of using path/tree decomposition to avoid bottlenecks in branch-and-search algorithms may have the potential to be applied to more problems. It would also be interesting to design a deterministic algorithm for Co-Path Packing faster than Oβˆ—β’(3k)superscript𝑂superscript3π‘˜O^{*}(3^{k})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( 3 start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ).

References

  • [1] Radovan Červenα»³ and OndΕ™ej Suchα»³. Generating faster algorithms for d-path vertex cover. In International Workshop on Graph-Theoretic Concepts in Computer Science, pages 157–171. Springer, 2023.
  • [2] Maw-Shang Chang, Li-Hsuan Chen, Ling-Ju Hung, Peter Rossmanith, and Ping-Chen Su. Fixed-parameter algorithms for vertex cover p3. Discrete Optimization, 19:12–22, 2016.
  • [3] Jianer Chen, IyadΒ A Kanj, and GeΒ Xia. Improved upper bounds for vertex cover. Theoretical Computer Science, 411(40-42):3736–3756, 2010.
  • [4] Zhi-Zhong Chen, Michael Fellows, Bin Fu, Haitao Jiang, Yang Liu, Lusheng Wang, and Binhai Zhu. A linear kernel for co-path/cycle packing. In Algorithmic Aspects in Information and Management: 6th International Conference, AAIM 2010, Weihai, China, July 19-21, 2010. Proceedings 6, pages 90–102. Springer, 2010.
  • [5] Marek Cygan, FedorΒ V Fomin, Łukasz Kowalik, Daniel Lokshtanov, DΓ‘niel Marx, Marcin Pilipczuk, MichaΕ‚ Pilipczuk, and Saket Saurabh. Parameterized algorithms, volumeΒ 5. Springer, 2015.
  • [6] Marek Cygan, Jesper Nederlof, Marcin Pilipczuk, Michal Pilipczuk, JohamΒ MM van Rooij, and JakubΒ Onufry Wojtaszczyk. Solving connectivity problems parameterized by treewidth in single exponential time. In 2011 IEEE 52nd Annual Symposium on Foundations of Computer Science, pages 150–159. IEEE, 2011.
  • [7] MichaelΒ R Fellows, Jiong Guo, Hannes Moser, and Rolf Niedermeier. A generalization of nemhauser and trotter’s local optimization theorem. Journal of Computer and System Sciences, 77(6):1141–1158, 2011.
  • [8] Qilong Feng, Jianxin Wang, Shaohua Li, and Jianer Chen. Randomized parameterized algorithms for p2subscript𝑝2p_{2}italic_p start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT-packing and co-path packing problems. Journal of Combinatorial Optimization, 29:125–140, 2015.
  • [9] FedorΒ V Fomin, Serge Gaspers, Daniel Lokshtanov, and Saket Saurabh. Exact algorithms via monotone local search. Journal of the ACM (JACM), 66(2):1–23, 2019.
  • [10] FedorΒ V Fomin, Serge Gaspers, Saket Saurabh, and AlexeyΒ A Stepanov. On two techniques of combining branching and treewidth. Algorithmica, 54:181–207, 2009.
  • [11] DavidΒ G Harris and NSΒ Narayanaswamy. A faster algorithm for vertex cover parameterized by solution size. arXiv preprint arXiv:2205.08022, 2022.
  • [12] JΓ‘n Katrenič. A faster fpt algorithm for 3-path vertex cover. Information Processing Letters, 116(4):273–278, 2016.
  • [13] Dieter Kratsch and FVΒ Fomin. Exact exponential algorithms. Springer, 2010.
  • [14] Michael Lampis and Manolis Vasilakis. Structural parameterizations for two bounded degree problems revisited. ACM Transactions on Computation Theory, 2023.
  • [15] Ketan Mulmuley, UmeshΒ V Vazirani, and VijayΒ V Vazirani. Matching is as easy as matrix inversion. In Proceedings of the nineteenth annual ACM symposium on Theory of computing, pages 345–354, 1987.
  • [16] StephenΒ B Seidman and BrianΒ L Foster. A graph-theoretic generalization of the clique concept. Journal of Mathematical sociology, 6(1):139–154, 1978.
  • [17] BlairΒ D Sullivan and Andrew vanΒ der Poel. A fast parameterized algorithm for co-path set. arXiv preprint arXiv:1603.04376, 2016.
  • [18] Dekel Tsur. Parameterized algorithm for 3-path vertex cover. Theoretical Computer Science, 783:1–8, 2019.
  • [19] Dekel Tsur. Faster deterministic algorithms for co-path packing and co-path/cycle packing. Journal of Combinatorial Optimization, 44(5):3701–3710, 2022.
  • [20] Jianhua Tu. A fixed-parameter algorithm for the vertex cover p3 problem. Information Processing Letters, 115(2):96–99, 2015.
  • [21] JohanΒ MM van Rooij. A generic convolution algorithm for join operations on tree decompositions. In Computer Science–Theory and Applications: 16th International Computer Science Symposium in Russia, CSR 2021, Sochi, Russia, June 28–July 2, 2021, Proceedings 16, pages 435–459. Springer, 2021.
  • [22] Mingyu Xiao. A parameterized algorithm for bounded-degree vertex deletion. In International Computing and Combinatorics Conference, pages 79–91. Springer, 2016.
  • [23] Mingyu Xiao. On a generalization of nemhauser and trotter’s local optimization theorem. Journal of Computer and System Sciences, 84:97–106, 2017.
  • [24] Mingyu Xiao and Shaowei Kou. Kernelization and parameterized algorithms for 3-path vertex cover. In International Conference on Theory and Applications of Models of Computation, pages 654–668. Springer, 2017.

Appendix

Appendix A Proofs

Theorem 3.5 Given a path decomposition of G𝐺Gitalic_G with width p𝑝pitalic_p. For any dβ‰₯1𝑑1d\geq 1italic_d β‰₯ 1, d𝑑ditalic_d-Bounded-Degree Vertex Deletion can be solved in Oβˆ—β’((d+2)p)superscript𝑂superscript𝑑2𝑝O^{*}((d+2)^{p})italic_O start_POSTSUPERSCRIPT βˆ— end_POSTSUPERSCRIPT ( ( italic_d + 2 ) start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT ) time and space.

Proof A.1.

We can simply assume that the path decomposition P=(X1,X2,β‹―,Xr)𝑃subscript𝑋1subscript𝑋2β‹―subscriptπ‘‹π‘ŸP=(X_{1},X_{2},\cdots,X_{r})italic_P = ( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , β‹― , italic_X start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT ) is a nice path decomposition by Lemma 2.2.

Let Vi=⋃j=1iXisubscript𝑉𝑖superscriptsubscript𝑗1𝑖subscript𝑋𝑖V_{i}=\bigcup_{j=1}^{i}X_{i}italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ⋃ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for each i∈{1,2,β‹―,r}𝑖12β‹―π‘Ÿi\in\{1,2,\cdots,r\}italic_i ∈ { 1 , 2 , β‹― , italic_r }. We have Vr=Vsubscriptπ‘‰π‘Ÿπ‘‰V_{r}=Vitalic_V start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT = italic_V. For any i∈{1,2,β‹―,r}𝑖12β‹―π‘Ÿi\in\{1,2,\cdots,r\}italic_i ∈ { 1 , 2 , β‹― , italic_r }, let {D,R0,R1,β‹―,Rd}𝐷subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑\{D,R_{0},R_{1},\cdots,R_{d}\}{ italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT } be an arbitrary partition of Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. We consider the following subproblem: to find a minimum-size vertex set S𝑆Sitalic_S in the induced graph G⁒[Vi]𝐺delimited-[]subscript𝑉𝑖G[V_{i}]italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] such that S∩Xi=D𝑆subscript𝑋𝑖𝐷S\cap X_{i}=Ditalic_S ∩ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_D, the maximum degree of graph G⁒[Viβˆ–S]𝐺delimited-[]subscript𝑉𝑖𝑆G[V_{i}\setminus S]italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT βˆ– italic_S ] is at most d𝑑ditalic_d, and each vertex in Rjsubscript𝑅𝑗R_{j}italic_R start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (j=0,i,β‹―,d)𝑗0𝑖⋯𝑑(j=0,i,\cdots,d)( italic_j = 0 , italic_i , β‹― , italic_d ) is a degree-j𝑗jitalic_j vertex in G⁒[Viβˆ–S]𝐺delimited-[]subscript𝑉𝑖𝑆G[V_{i}\setminus S]italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT βˆ– italic_S ]. We also let s⁒(i,D,R0,R1,β‹―,Rd)𝑠𝑖𝐷subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑s(i,D,R_{0},R_{1},\cdots,R_{d})italic_s ( italic_i , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) denote the corresponding size of the solution to this problem. For some partitions {D,R0,R1,β‹―,Rd}𝐷subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑\{D,R_{0},R_{1},\cdots,R_{d}\}{ italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT } of Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, there may not exist any feasible solution S𝑆Sitalic_S, and we will let s⁒(i,D,R0,R1,β‹―,Rd)=βˆžπ‘ π‘–π·subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑s(i,D,R_{0},R_{1},\cdots,R_{d})=\inftyitalic_s ( italic_i , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) = ∞ for this case. To solve d𝑑ditalic_d-Bounded-Degree Vertex Deletion, we only need to check the minimum value among s⁒(i=r,D,R0,R1,β‹―,Rd)π‘ π‘–π‘Ÿπ·subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑s(i=r,D,R_{0},R_{1},\cdots,R_{d})italic_s ( italic_i = italic_r , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) for all possible partitions {D,R0,R1,β‹―,Rd}𝐷subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑\{D,R_{0},R_{1},\cdots,R_{d}\}{ italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT } of Xrsubscriptπ‘‹π‘ŸX_{r}italic_X start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT. Next, we use a dynamic programming method to compute all s⁒(i,D,R0,R1,β‹―,Rd)𝑠𝑖𝐷subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑s(i,D,R_{0},R_{1},\cdots,R_{d})italic_s ( italic_i , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ).

For the case that i=1𝑖1i=1italic_i = 1, X1=βˆ…subscript𝑋1X_{1}=\emptysetitalic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = βˆ… and it trivially holds that s⁒(1,βˆ…,βˆ…,β‹―,βˆ…)=0𝑠1β‹―0s(1,\emptyset,\emptyset,\cdots,\emptyset)=0italic_s ( 1 , βˆ… , βˆ… , β‹― , βˆ… ) = 0. Since the path decomposition is nice, there are two cases for each iβ‰₯2𝑖2i\geq 2italic_i β‰₯ 2.

Case 1: Xi=Xiβˆ’1βˆͺ{v}subscriptXisubscriptXi1vX_{i}=X_{i-1}\cup\{v\}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT βˆͺ { italic_v } for some vβˆ‰Xiβˆ’1vsubscriptXi1v\notin X_{i-1}italic_v βˆ‰ italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT. By the definition of path decomposition, we know that all neighbors of vvvitalic_v in the graph G⁒[Vi]Gdelimited-[]subscriptViG[V_{i}]italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] must be in Xiβˆ’1subscriptXi1X_{i-1}italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT. For every partition (D,R0,R1,β‹―,Rd)DsubscriptR0subscriptR1β‹―subscriptRd(D,R_{0},R_{1},\cdots,R_{d})( italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) of XisubscriptXiX_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, the following holds.

  1. 1.

    v∈D𝑣𝐷v\in Ditalic_v ∈ italic_D. It holds s⁒(i,D,R0,R1,β‹―,Rd)=1+s⁒(iβˆ’1,Dβˆ–{v},R0,R1,β‹―,Rd)𝑠𝑖𝐷subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑1𝑠𝑖1𝐷𝑣subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑s(i,D,R_{0},R_{1},\cdots,R_{d})=1+s(i-1,D\setminus\{v\},R_{0},R_{1},\cdots,R_{% d})italic_s ( italic_i , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) = 1 + italic_s ( italic_i - 1 , italic_D βˆ– { italic_v } , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ).

  2. 2.

    v∈Rj𝑣subscript𝑅𝑗v\in R_{j}italic_v ∈ italic_R start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT for some j∈{0,1,β‹―,d}𝑗01⋯𝑑j\in\{0,1,\cdots,d\}italic_j ∈ { 0 , 1 , β‹― , italic_d }. We further consider two subcases.

    Case (a): NG⁒[Vi]⁒(v)∩R0β‰ βˆ…subscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣subscript𝑅0N_{G[V_{i}]}(v)\cap R_{0}\neq\emptysetitalic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT β‰  βˆ… oder |NG⁒[Vi]⁒(v)βˆ©β‹ƒl=1dRl|β‰ jsubscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣superscriptsubscript𝑙1𝑑subscript𝑅𝑙𝑗|N_{G[V_{i}]}(v)\cap\bigcup_{l=1}^{d}R_{l}|\neq j| italic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ ⋃ start_POSTSUBSCRIPT italic_l = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_d end_POSTSUPERSCRIPT italic_R start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT | β‰  italic_j. For this case, the partition (D,R0,R1,β‹―,Rd)𝐷subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑(D,R_{0},R_{1},\cdots,R_{d})( italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) is infeasible and we can simply let s(i,D,R0,R1s(i,D,R_{0},R_{1}italic_s ( italic_i , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, β‹―,Rd)=∞\cdots,R_{d})=\inftyβ‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) = ∞.

    Case (b): NG⁒[Vi]⁒(v)∩R0=βˆ…subscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣subscript𝑅0N_{G[V_{i}]}(v)\cap R_{0}=\emptysetitalic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT = βˆ… and |NG⁒[Vi]⁒(v)βˆ©β‹ƒl=1dRl|=jsubscript𝑁𝐺delimited-[]subscript𝑉𝑖𝑣superscriptsubscript𝑙1𝑑subscript𝑅𝑙𝑗|N_{G[V_{i}]}(v)\cap\bigcup_{l=1}^{d}R_{l}|=j| italic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ ⋃ start_POSTSUBSCRIPT italic_l = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_d end_POSTSUPERSCRIPT italic_R start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT | = italic_j. Let W=NG⁒[Vi](v)∩(⋃l=1dRlW=N_{G[V_{i}]}(v)\cap(\bigcup_{l=1}^{d}R_{l}italic_W = italic_N start_POSTSUBSCRIPT italic_G [ italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] end_POSTSUBSCRIPT ( italic_v ) ∩ ( ⋃ start_POSTSUBSCRIPT italic_l = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_d end_POSTSUPERSCRIPT italic_R start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT), and Wl=W∩Rlsubscriptπ‘Šπ‘™π‘Šsubscript𝑅𝑙W_{l}=W\cap R_{l}italic_W start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT = italic_W ∩ italic_R start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT for l=1,2,β‹―,d𝑙12⋯𝑑l=1,2,\cdots,ditalic_l = 1 , 2 , β‹― , italic_d. Let W0=Wd+1=βˆ…subscriptπ‘Š0subscriptπ‘Šπ‘‘1W_{0}=W_{d+1}=\emptysetitalic_W start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT = italic_W start_POSTSUBSCRIPT italic_d + 1 end_POSTSUBSCRIPT = βˆ…. We have that

    s⁒(i,D,R0,R1,β‹―,Rd)=s⁒(iβˆ’1,D,R0β€²,R1β€²,β‹―,Rjβ€²βˆ–{v},β‹―,Rdβ€²),𝑠𝑖𝐷subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑𝑠𝑖1𝐷superscriptsubscript𝑅0β€²superscriptsubscript𝑅1β€²β‹―superscriptsubscript𝑅𝑗′𝑣⋯superscriptsubscript𝑅𝑑′s(i,D,R_{0},R_{1},\cdots,R_{d})=s(i-1,D,R_{0}^{\prime},R_{1}^{\prime},\cdots,R% _{j}^{\prime}\setminus\{v\},\cdots,R_{d}^{\prime}),italic_s ( italic_i , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) = italic_s ( italic_i - 1 , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT βˆ– { italic_v } , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT ) ,

    where Rlβ€²=(Rlβˆ–Wl)βˆͺWl+1superscriptsubscript𝑅𝑙′subscript𝑅𝑙subscriptπ‘Šπ‘™subscriptπ‘Šπ‘™1R_{l}^{\prime}=(R_{l}\setminus W_{l})\cup W_{l+1}italic_R start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT β€² end_POSTSUPERSCRIPT = ( italic_R start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT βˆ– italic_W start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT ) βˆͺ italic_W start_POSTSUBSCRIPT italic_l + 1 end_POSTSUBSCRIPT for l=0,1,β‹―,d𝑙01⋯𝑑l=0,1,\cdots,ditalic_l = 0 , 1 , β‹― , italic_d.

Case 2: Xi=Xiβˆ’1βˆ–{v}subscriptXisubscriptXi1vX_{i}=X_{i-1}\setminus\{v\}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT βˆ– { italic_v } for some v∈Xiβˆ’1vsubscriptXi1v\in X_{i-1}italic_v ∈ italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT. It is not hard to see that the following equation holds.

s(i,D,R0,R1,β‹―,Rd)=min{s⁒(iβˆ’1,Dβˆͺ{v},R0,R1,β‹―,Rd),s⁒(iβˆ’1,D,R0βˆͺ{v},R1,β‹―,Rd),s⁒(iβˆ’1,D,R0,R1βˆͺ{v},β‹―,Rd),β‹―s(iβˆ’1,D,R0,R1,β‹―,Rdβˆͺ{v})}.𝑠𝑖𝐷subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑𝑠𝑖1𝐷𝑣subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑𝑠𝑖1𝐷subscript𝑅0𝑣subscript𝑅1β‹―subscript𝑅𝑑𝑠𝑖1𝐷subscript𝑅0subscript𝑅1𝑣⋯subscript𝑅𝑑⋯𝑠𝑖1𝐷subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑𝑣\begin{split}s(i,D,R_{0},R_{1},\cdots,R_{d})=\min\{&s(i-1,D\cup\{v\},R_{0},R_{% 1},\cdots,R_{d}),\\ &s(i-1,D,R_{0}\cup\{v\},R_{1},\cdots,R_{d}),\\ &s(i-1,D,R_{0},R_{1}\cup\{v\},\cdots,R_{d}),\\ &\cdots\\ &s(i-1,D,R_{0},R_{1},\cdots,R_{d}\cup\{v\})\}.\end{split}start_ROW start_CELL italic_s ( italic_i , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) = roman_min { end_CELL start_CELL italic_s ( italic_i - 1 , italic_D βˆͺ { italic_v } , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT βˆͺ { italic_v } , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT βˆͺ { italic_v } , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) , end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL β‹― end_CELL end_ROW start_ROW start_CELL end_CELL start_CELL italic_s ( italic_i - 1 , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT βˆͺ { italic_v } ) } . end_CELL end_ROW

For each bag Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, there are at most (d+2)|Xi|superscript𝑑2subscript𝑋𝑖(d+2)^{|X_{i}|}( italic_d + 2 ) start_POSTSUPERSCRIPT | italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | end_POSTSUPERSCRIPT different partitions, where |Xi|≀p+1subscript𝑋𝑖𝑝1|X_{i}|\leq p+1| italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | ≀ italic_p + 1. For i𝑖iitalic_i and each partition {D,R0,R1,β‹―,Rd}𝐷subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑\{D,R_{0},R_{1},\cdots,R_{d}\}{ italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT } of Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, it takes at most O⁒(d)𝑂𝑑O(d)italic_O ( italic_d ) time to compute s⁒(i,D,R0,R1,β‹―,Rd)𝑠𝑖𝐷subscript𝑅0subscript𝑅1β‹―subscript𝑅𝑑s(i,D,R_{0},R_{1},\cdots,R_{d})italic_s ( italic_i , italic_D , italic_R start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , β‹― , italic_R start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) by using the above recurrence relations. Therefore, our dynamic programming algorithm runs in O⁒((d+2)p+1β‹…rβ‹…d)𝑂⋅superscript𝑑2𝑝1π‘Ÿπ‘‘O((d+2)^{p+1}\cdot r\cdot d)italic_O ( ( italic_d + 2 ) start_POSTSUPERSCRIPT italic_p + 1 end_POSTSUPERSCRIPT β‹… italic_r β‹… italic_d ) time, where rπ‘Ÿritalic_r is bounded by a polynomial of the graph size. This theorem holds.