Faster parameterized algorithm for pumpkin vertex deletion set
Dekel Tsur

TL;DR
This paper presents an efficient fixed-parameter algorithm with exponential time complexity for the pumpkin vertex deletion set problem, which involves removing vertices to transform a directed graph into a pumpkin structure.
Contribution
The paper introduces a new $O^*(2^k)$ time algorithm for deciding whether a directed graph can be converted into a pumpkin by deleting at most $k$ vertices, improving computational efficiency.
Findings
Algorithm runs in $O^*(2^k)$ time.
Decides pumpkin vertex deletion set with fixed-parameter tractability.
Provides a practical approach for graph modification problems.
Abstract
A directed graph is called a pumpkin if is a union of induced paths with a common start vertex and a common end vertex , and the internal vertices of every two paths are disjoint. We give an algorithm that given a directed graph and an integer , decides whether a pumpkin can be obtained from by deleting at most vertices. The algorithm runs in time.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Faster parameterized algorithm for pumpkin vertex deletion set
Dekel Tsur Ben-Gurion University of the Negev. Email: [email protected]
Abstract
A directed graph is called a pumpkin if is a union of induced paths with a common start vertex and a common end vertex , and the internal vertices of every two paths are disjoint. We give an algorithm that given a directed graph and an integer , decides whether a pumpkin can be obtained from by deleting at most vertices. The algorithm runs in time.
Keywords
graph algorithms, parameterized complexity.
1 Introduction
A directed graph is called a pumpkin if is a union of induced paths with a common start vertex and a common end vertex , and the internal vertices of every two paths are disjoint. The vertices and are called the source and sink of the pumpkin. In the Pumpkin Vertex Deletion Set problem (PVDS), the input is a directed graph and an integer , and the goal is to decide whether there is a set of vertices of size at most such that the graph obtained from by deleting the vertices of is a pumpkin. The PVDS problem is NP-hard [4]. Agrawal et al. [2] gave an -time algorithm for PVDS. Polynomial kernels for this problem were given in [4, 1].
In this paper, we give an -time algorithm for PVDS.
2 Preliminaries
For a vertex in a directed graph , and denote the set of in-neighbors and out-neighbors of . Additionally, and . We will sometimes omit the subscript if the graph is clear from the context.
For set of vertices , is the graph obtained from by deleting the vertices of (and incident edges).
3 The algorithm
In the Restricted Pumpkin Vertex Deletion Set problem (RPVDS), the input is a directed graph , an integer and vertices . The goal is to decide whether there is a set of vertices of size at most such that the graph obtained from by deleting the vertices of is a pumpkin with source and sink . An -time algorithm for RPVDS implies an -time algorithm for PVDS: Given an input to PVDS, go over all possible ways to choose and , and for each choice run the RPVDS algorithm on . The time complexity is . In the sequel, we describe an -time algorithm for RPVDS.
Our algorithm is a branching algorithm (cf. [3]). Given an instance , the algorithm applies the first applicable reduction rule from the rules below, and if no reduction rule is applicable, the algorithm applies the first applicable branching rule from the rules below.
The algorithm uses the following reduction rules from Agrawal et al. [2] (we present the rules in slightly simplified form).
(R1) If return ‘no’.
(R2) If and is not a pumpkin with source and sink return ‘no’.
(R3) If is a pumpkin with source and sink return ‘yes’.
(R4) If there is a vertex that is not reachable from , delete from and decrease by 1.
(R5) If there is a vertex such that is not reachable from , delete from and decrease by 1.
(R6) If there is a vertex such that , delete from and decrease by 1.
(R7) If there is a vertex such that , delete from and decrease by 1.
(R8) If is not reachable from , return ‘no’.
We now describe the branching rules of the algorithm. When we say that the algorithm branches on sets , we mean that the algorithm is called recursively on the instances . For each Rule () below, except Rule (3), there is also a symmetric rule, denoted Rule (), in which the roles of in-neighbors and out-neighbors are reversed. For example, Rule (3′) is: If there is a vertex such that and , branch on and . The order in which the branching rules are considered is (1), (2), (), (3), () and so on.
(1) If there are vertices and such that and , branch on and .
The correctness of Rule (1) is trivial. The branching vector of Rule (1) is .
(2) If there is a vertex such that and , branch on and .
To prove the correctness of Rule (2), note that if is a solution to the instance and then , otherwise contradicting the assumption that is a solution. The branching vector of Rule (2) is at least .
(3) If there is a vertex such that , arbitrarily choose distinct . Branch on and on for every .
The correctness of Rule (3) is obvious: If is a solution to the instance and then . Therefore, contains at least vertices of . The branching vector of Rule (3) is .
(4) If there is a vertex such that and there is a vertex for which , branch on and .
We now prove the correctness of Rule (4). Note that otherwise Rule (R6) can be applied on , a contradiction. Let be a solution to . If then we also have (otherwise and since this is a contradiction to the assumption that is a solution). Therefore, contains all the vertices in (otherwise ). The branching vector of Rule (4) is at least .
(5) If there is a vertex such that there are for which and , branch on and .
To prove the correctness of Rule (5), suppose that is a solution to and . We claim that . Suppose conversely that . Note that otherwise Rule (3) can be applied on , a contradiction. Therefore, (otherwise and since we obtain a contradiction). Since , it follows that , a contradiction. The branching vector of Rule (5) is .
(6) If there is a vertex such that and there are at least two vertices in for which for , denote by the third vertex in . Branch on , , and .
If is a solution to and then is either , , or (otherwise ). In the first case we have that (otherwise ) and in the second case . The branching vector of Rule (6) is at least .
(7) If there is a vertex such that , denote where (we will show below that there is always such numbering of the vertices in ). Branch on , , and .
Since Rule (3) cannot be applied, there are two vertices in for which for . Let be the third vertex in . Since there is at most one edge whose endpoints are and , without loss of generality . Since Rule (3) cannot be applied, . It follows that .
Let be a solution to and suppose that . Since , either or . In the former case (otherwise ). In the latter case (otherwise ) and (otherwise ). Note that otherwise Rule (3) can be applied, a contradiction. The branching vector of Rule (7) is at least .
Note that if Rules (R1)–(R8), (1)–(7), and (2*′)–(7′*) cannot be applied then and for every vertex .
(8) If there is a vertex such that , let be such vertex whose distance from is minimal. Denote such that . We have that (otherwise Rule (3) can be applied on ), and let be the single vertex in . Moreover, (otherwise Rule (3′) can be applied on ). Let be the single vertex in . branch on , , and .
Note that (due to Rule (3′) and Rule (R7)). Additionally, due to the assumption that . If is a solution to and then either or . In the former case (otherwise ) and (otherwise ). In the latter case (otherwise ) and (otherwise ).
To get the desired branching vector, we show that . Suppose conversely that . Therefore, (otherwise Rule (3) can be applied on ). Let be the single vertex in . We have that (otherwise Rule (3′) can be applied on ). By definition, . Therefore, at least one of and have smaller distance from than . Since , we obtain a contradiction to the definition of . Therefore, , and thus the branching vector of Rule (8) is .
The branching vectors of the branching rules of the algorithm are , , , and (in the worst cases). All these vectors have branching number . Therefore, the running time of the algorithm is .
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] Akanksha Agrawal, Saket Saurabh, Roohani Sharma, and Meirav Zehavi. Kernels for deletion to classes of acyclic digraphs. Journal of Computer and System Sciences , 92:9–21, 2018.
- 2[2] Akanksha Agrawal, Saket Saurabh, Roohani Sharma, and Meirav Zehavi. Parameterised algorithms for deletion to classes of DA Gs. Theory of Computing Systems , pages 1–30, 2018.
- 3[3] Marek Cygan, Fedor V Fomin, Łukasz Kowalik, Daniel Lokshtanov, Dániel Marx, Marcin Pilipczuk, Michał Pilipczuk, and Saket Saurabh. Parameterized algorithms . Springer, 2015.
- 4[4] Matthias Mnich and Erik Jan van Leeuwen. Polynomial kernels for deletion to classes of acyclic digraphs. Discrete Optimization , 25:48–76, 2017.
