This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

11institutetext: POSTECH, Pohang, Korea
11email: {shinwooan,kyungjincho,eunjin.oh}@postech.ac.kr

Faster Algorithms for Cycle Hitting Problems on Disk Graphsthanks: This work was supported by the National Research Foundation of Korea(NRF) grant funded by the Korea government(MSIT) (No.RS-2023-00209069)

Shinwoo An    Kyungjin Cho    Eunjin Oh
Abstract

In this paper, we consider three hitting problems on a disk intersection graph: Triangle Hitting Set, Feedback Vertex Set, and Odd Cycle Transversal. Given a disk intersection graph GG, our goal is to compute a set of vertices hitting all triangles, all cycles, or all odd cycles, respectively. Our algorithms run in time 2O~(k4/5)nO(1)2^{\tilde{O}({k}^{4/5})}n^{O(1)}, 2O~(k9/10)nO(1)2^{\tilde{O}({k}^{9/10})}n^{O(1)}, and 2O~(k19/20)nO(1)2^{\tilde{O}({k}^{19/20})}n^{O(1)}, respectively, where nn denotes the number of vertices of GG. These do not require a geometric representation of a disk graph. If a geometric representation of a disk graph is given as input, we can solve these problems more efficiently. In this way, we improve the algorithms for those three problem by Lokshtanov et al. [SODA 2022].

Keywords:
Disk graphs, feedback vertex set, triangle hitting set

1 Introduction

In this paper, we present subexponential parameterized algorithms for the following three well-known parameterized problems on disk graphs: Triangle Hitting Set, Feedback Vertex Set, and Odd Cycle Transversal. Given a graph G=(V,E)G=(V,E) and an integer kk, these problems ask for finding a subset of VV of size kk that hits all triangles, cycles, and odd-cycles, respectively. On general graphs, the best-known algorithms for Triangle Hitting Set, Feedback Vertex Set, and Odd Cycle Transversal run in 2.1knO(1)2.1^{k}n^{O(1)}, 2.7knO(1)2.7^{k}n^{O(1)}, and 2.32knO(1)2.32^{k}n^{O(1)} time, respectively, where nn denotes the number of vertices of a graph [15, 16, 20]. All these problems are NP-complete, and moreover, no 2o(k)nO(1)2^{o(k)}n^{O(1)} algorithm exists for these problems on general graphs unless ETH fails [10]. This motivates the study of these problems on special graph classes such as planar graphs and geometric intersection graphs.

Although these problems are NP-complete even for planar graphs, much faster algorithms exist for planar graphs. More specifically, they can be solved in time 2O(k)nO(1)2^{O(\sqrt{k})}n^{O(1)}, 2O(k)nO(1)2^{O(\sqrt{k})}n^{O(1)}, and 2O(klogk)nO(1)2^{O(\sqrt{k}\log k)}n^{O(1)}, respectively, on planar graphs [11, 18]. Moreover, they are optimal unless ETH fails. The 2O(k)nO(1)2^{O(\sqrt{k})}n^{O(1)}-time algorithms for Triangle Hitting Set and Feedback Vertex Set follow from the bidimensionality theory of Demaine at al [11]. A planar graph either has an r×r{r}\times{r} grid graph as a minor, or its treewidth111The definition of the treewidth can be found in Section 2 is O(r)O({r}). This implies that for a YES-instance (G,k)(G,k) of Feedback Vertex Set, the treewidth of GG is O(k)O(\sqrt{k}). Then a standard dynamic programming approach gives a 2O(k)nO(1)2^{O(\sqrt{k})}n^{O(1)}-time algorithm for Feedback Vertex Set. This approach can be generalized for HH-minor free graphs and bounded-genus graphs.

Recently, several subexponential-time algorithms for cycle hitting problems have been studied on geometric intersection graphs [2, 5, 6, 12, 13, 14]. Let 𝒟\mathcal{D} be a set of geometric objects such as disks or polygons. The intersection graph G=(V,E)G=(V,E) of 𝒟\mathcal{D} is the graph where a vertex of VV corresponds to an element of 𝒟\mathcal{D}, and two vertices of VV are connected by an edge in EE if and only if their corresponding elements in 𝒟\mathcal{D} intersect. In particular, the intersection graph of (unit) disks is called a (unit) disk graph, and the intersection graph of interior-disjoint polygons is called a map graph. Unlike planar graphs, map graphs and unit disk graphs can have large cliques. For unit disk graphs, Feedback Vertex Set can be solved in 2O(k)nO(1)2^{O(\sqrt{k})}n^{O(1)} time [2], and Odd Cycle Transversal can be solved in 2O(klogk)nO(1)2^{O(\sqrt{k}\log k)}n^{O(1)} time [4]. For map graphs, Feedback Vertex Set can be solved in 2O(klogk)nO(1)2^{O(\sqrt{k}\log k)}n^{O(1)} time [12]. These are almost tight in the sense that no 2O(k)nO(1)2^{O(\sqrt{k})}n^{O(1)}-time algorithm exists unless ETH fails [12, 14].

However, until very recently, little has been known for disk graphs, a broad class of graphs that generalizes planar graphs and unit disk graphs. Very recently, Lokshtanov et al. [17] presented the first subexponential-time algorithms for cycle hitting problems on disks graphs. The explicit running times of the algorithms are summarized in the first row of Table 1. On the other hand, the best-known lower bound on the computation time for these problems is 2Ω(k1/2)nO(1)2^{\Omega(k^{1/2})}n^{O(1)} assuming ETH. There is a huge gap between the upper and lower bounds.

1.0.1 Our results.

In this paper, we make progress on the study of subexponential-time parameterized algorithms on disk graphs by presenting faster algorithms for the cycle hitting problems. We say an algorithm is robust if this algorithm does not requires a geometric representation of a disk graph. We present 2O~(k4/5)nO(1)2^{\tilde{O}(k^{4/5})}n^{O(1)}-time, 2O~(k9/10)nO(1)2^{\tilde{O}(k^{9/10})}n^{O(1)}-time, and 2O~(k19/20)nO(1)2^{\tilde{O}(k^{19/20})}n^{O(1)}-time robust algorithms for Triangle Hitting Set, Feedback Vertex Set, and Odd Cycle Transversal, respectively. Furthermore, we present 2O~(k2/3)nO(1)2^{\tilde{O}(k^{2/3})}n^{O(1)}-time, 2O~(k7/8)nO(1)2^{\tilde{O}(k^{7/8})}n^{O(1)}-time, and 2O~(k15/16)nO(1)2^{\tilde{O}(k^{15/16})}n^{O(1)}-time algorithms for Triangle Hitting Set, Feedback Vertex Set, and Odd Cycle Transversal which are not robust. These results are summarized in the second and third rows of Table 1.

For Triangle Hitting Set, we devised a kernelization algorithm based on a crown decomposition by modifying the the algorithm in [1]. After a branching process, we obtain a set of O((k/p)logk)O((k/p)\log k) instances (G,k)(G^{\prime},k^{\prime}) such that GG^{\prime} has a set of O(kp)O(kp) triangles, which we call a core, for a value pp. Every triangle of GG^{\prime} shares at least two vertices with at least one triangle of a core. This allows us to remove several vertices from GG^{\prime} so that the number of vertices of GG^{\prime} is O(kp)O(kp). Then we can obtain a tree decomposition of small treewidth, and then we apply dynamic programming on the tree decomposition.

For Feedback Vertex Set and Odd Cycle Transversal, we give an improved analysis of the algorithms in [17] by presenting improved bounds on one of the two main combinatorial results presented in [17] concerning the treewidth of disk graphs (Theorem 2.1). More specifically, Theorem 1 of [17] says that for any subset MM of VV such that N(v)MN(u)MN(v)\cap M\neq N(u)\cap M for any two vertices uu and vv not in MM, the size of UU is O(|M|p6)O(|M|\cdot p^{6}), where pp is the ply of the disks represented by the vertices of GG. We improve an improved bound of O(|M|p2)O(|M|\cdot p^{2}). To obtain an improved bound, we classify the vertices of VMV-M into three classes in a more sophisticated way, and then use the concept of the additively weighted higher-order Voronoi diagram. We believe the additively weighted higher-order Voronoi diagram will be useful in designing optimal algorithms for Triangle Hitting Set, Feedback Vertex Set, and Odd Cycle Transversal. Indeed, the Voronoi diagram (or Delaunay triangulation) is a main tool for obtaining an optimal algorithm for Feedback Vertex Set on unit disk graphs [2].

Triangle Hitting FVS OCT robust?
2O(k9/10logk)nO(1)2^{O(k^{9/10}\log k)}n^{O(1)} 2O(k13/14logk)nO(1)2^{O(k^{13/14}\log k)}n^{O(1)} 2O(k27/28logk)nO(1)2^{O(k^{27/28}\log k)}n^{O(1)} yes [17]
2O(k4/5logk)nO(1)2^{O(k^{4/5}\log k)}n^{O(1)} 2O(k9/10logk)nO(1)2^{O(k^{9/10}\log k)}n^{O(1)} 2O(k19/20logk)nO(1)2^{O(k^{19/20}\log k)}n^{O(1)} yes this paper
2O(k2/3logk)nO(1)2^{O(k^{2/3}\log k)}n^{O(1)} 2O(k7/8logk)nO(1)2^{O(k^{7/8}\log k)}n^{O(1)} 2O(k15/16logk)nO(1)2^{O(k^{15/16}\log k)}n^{O(1)} no this paper
Table 1: Comparison of the running times of our algorithms and the algorithm by Lokshtanov et al. [17]. All algorithms for Odd Cycle Transversal are randomized.

2 Preliminaries

For a graph GG, we let V(G)V(G) and E(G)E(G) be the sets of vertices and edges of GG, respectively. For a subset UU of GG, we use G[U]G[U] to denote the subgraph of GG induced by UU. Also, for a subset UVU\subset V of VV, we simply denote G[VU]G[V\setminus U] by GUG-U. For a vertex vv of GG, let N(v)N(v) be the set of the vertices of GG adjacent to vv. We call it the neighborhood of vv.

A triangle of GG is a cycle of GG consisting of three vertices. We denote a triangle consisting of three vertices xx, yy and zz by {x,y,z}\{x,y,z\}. We sometimes consider it as the set {x,y,z}\{x,y,z\} of vertices. For instance, the union of triangles is the set of all vertices of the triangles. A subset FF of VV is called a triangle hitting set of GG if G[VF]G[V\setminus F] has no triangle. Also, FF is called a feedback vertex set if G[VF]G[V\setminus F] has no cycle (and thus it is forest). Finally, FF is called a odd cycle transversal if G[VF]G[V\setminus F] has no odd cycle. In other words, a triangle hitting set, a feedback vertex set, and a odd cycle transversal hit all triangles, cycles and odd cycles, respectively. Notice that a feedback vertex set of GG is also a triangle hitting set.

2.0.1 Disk graphs.

Let G=(V,E)G=(V,E) be a disk graph defined by a set 𝒟\mathcal{D} of disks. In this case, we say that 𝒟\mathcal{D} is a geometric representation of GG. For a vertex vv of GG, we let D(v)D(v) denote the disk of 𝒟\mathcal{D} represented by vv. The ply of 𝒟\mathcal{D} is defined as the maximum number of disks of 𝒟\mathcal{D} containing a common point. Note that the disk graph of a set of disks of ply pp has a clique of size at least pp. If it is clear from the context, we say that the ply of GG is pp. The arrangement of 𝒟\mathcal{D} is the subdivision of the plane formed by the boundaries of the disks of 𝒟\mathcal{D} that consists of vertices, edges and faces. The arrangement graph of GG, denoted by 𝒜(G)\mathcal{A}(G), is the plane graph where every face of the arrangement of 𝒟\mathcal{D} contained in at least one disk is represented by a vertex, and vertices are adjacent if the faces they represent share an edge. Given a disk graph GG, it is NP-hard to compute its geometric representation [9]. We say an algorithm is robust if this algorithm does not requires a geometric representation of a disk graph.

2.0.2 Tree decomposition.

A tree decomposition of an undirected graph G=(V,E)G=(V,E) is defined as a pair (T,β)(T,\beta), where TT is a tree and β\beta is a mapping from nodes of TT to subsets of VV (called bags) with the following conditions. Let :={β(t):tV(T)}\mathcal{B}:=\{\beta(t):t\in V(T)\} be the set of bags of TT.

  • For uV\forall u\in V, there is at least one bag in \mathcal{B} which contains uu.

  • For (u,v)E\forall(u,v)\in E, there is at least one bag in \mathcal{B} which contains both uu and vv.

  • For uV\forall u\in V, the nodes of TT containing uu in their bags are connected in TT.

The width of a tree decomposition is defined as the size of its largest bag minus one, and the treewidth of GG is the minimum width of a tree decomposition of GG. The treewidth of a disk graph GG is O(p|V(G)|)O(p\sqrt{|V(G)|}), where pp is the ply of GG [17].

2.0.3 Weighted Treewidth of a Disk Graph

One of the ingredients of our algorithms is to partition the vertices in each bag of a tree decomposition of GG into cliques. This technique was already used in [5] to design ETH-tight (non-parameterized) algorithms for various problems on geometric intersection graphs. To use this observation, they introduced the notion of clique-weighted treewidth.

We fix a geometric representation of GG. For a subset UU of VV, we say the partition {C1,C}\{C_{1},\ldots C_{\ell}\} of UU is a clique partition if all disks represented by the vertices of CiC_{i} contain a common point in the plane for each index ii. We define the clique-weight of UU as the minimum of 1i(log|Ci|+1)\sum_{1\leq i\leq\ell}(\log|C_{i}|+1) over all clique partitions {C1,C}\{C_{1},\ldots C_{\ell}\} of UU. Since a triangle hitting set contains all except for at most two vertices of CiC_{i}, the number of intersections between UU and a triangle hitting set is 1itO(|Ci|2)=2O(w)\prod_{1\leq i\leq t}O(|C_{i}|^{2})=2^{O(w)}, where ww is the clique-weight of UU.

A balanced separator SsepS_{\text{sep}} of GG is a subset of vertices such that each connected component of GSsepG-S_{\text{sep}} has complexity c|V|c|V| for a constant c<1c<1. De berg et al. [5] showed that a geometric intersection graph of fat objects has a balanced separator of small clique-weight.

Lemma 1 ([5]).

A disk graph GG has a balanced separator FsepF_{\text{sep}} and a clique partition of FsepF_{\text{sep}} with weight O(n)O(\sqrt{n}). Moreover, if a geometric representation of GG is given, an FsepF_{\text{sep}} and its clique partition can be computed in polynomial time.

For a tree decomposition (T,β)(T,\beta) of a graph, we define the clique-weighted width of (T,β)(T,\beta) as the maximum weight of a bag of the decomposition. Then the clique-weighted treewidth of a graph is defined as the minimum clique-weighted width of a tree decomposition of the graph. In the following, we simply use the term weight (and weighted width) instead of clique-weight (and clique-weighted width), if it is clear from the context. Then Lemma 1 implies the following lemma.

Lemma 2.

The weighted treewidth of a disk graph GG is O(n)O(\sqrt{n}). Given a geometric representation of GG, we can compute a tree decomposition of GG with weighted treewidth O(n)O(\sqrt{n}) in polynomial time.

Proof.  We construct a tree decomposition (T,β)(T,\beta) recursively for a disk graph GG with its geometric representation. Our construction satisfies that a subtree of TT rooted at a node tt together with the bags corresponding its nodes forms a tree decomposition of a subgraph of GG, say GtG_{t}.

Our construction starts from the root node rr of TT with Gr=GG_{r}=G. For a current node tt of TT, we set β(t)=V(Gt)\beta(t)=V(G_{t}) if the number of vertices of V(Gt)V(G_{t}) is O(n)O(\sqrt{n}). Otherwise, we find a balanced separator FsepF_{\text{sep}} of GtG_{t} of size O(|V(Gt)|)O(\sqrt{|V(G_{t})|}) and its clique partition with weight O(n)O(\sqrt{n}) in polynomial time by Lemma 1. For each connected component ViV_{i} of GtFsepG_{t}-F_{\text{sep}}, we recursively construct a tree decomposition (Ti,βi)(T_{i},\beta_{i}) of G[Vi]G[V_{i}]. Then we connect the root of TiT_{i} to tt so that it becomes a child of tt. In addition to this, we add the vertices of FsepF_{\text{sep}} to the bag of every node in the subtree rooted at tt including tt itself. There is no edge between two different components ViV_{i} and VjV_{j}. Thus, (T,β)(T,\beta) is a tree decomposition of TT. Furthermore, its weight treewidth is O(n)O(\sqrt{n}) because FsepF_{\text{sep}} is a balanced separator.    

2.0.4 Bounded Ply.

If the ply of a geometric representation 𝒟\mathcal{D} of GG is bounded, we can obtain a better bound on the weighted treewidth of GG.

Lemma 3.

The weighted treewidth of GG is at most logp\log p times the treewidth of 𝒜(G)\mathcal{A}(G). Furthermore, the treewidth of GG is at most pp times the treewidth of 𝒜(G)\mathcal{A}(G).

Proof.  Let (T,β)(T,\beta) be a tree decomposition of 𝒜(G)\mathcal{A}(G). We can construct a tree decomposition (T,β)(T,\beta^{\prime}) of GG as follows. Each vertex of 𝒜(G)\mathcal{A}(G) corresponds to a face of the arrangement of 𝒟\mathcal{D}. Moreover, the disks of 𝒟\mathcal{D} containing a common face of the arrangement forms a clique in GG. For each node tTt\in T, let β(t)\beta^{\prime}(t) be the set of the vertices corresponding to disks of 𝒟\mathcal{D} containing faces corresponding to the vertices of β(t)\beta(t). It is not difficult to see that (T,β)(T,\beta^{\prime}) is a tree decomposition of GG. Then the weighted width (and treewidth) of β(t)\beta^{\prime}(t) is logp\log p (and pp) times the width of β(t)\beta(t). This implies that the weighted treewidth (and treewidth) of GG is at most logp\log p (and pp) times the treewidth of 𝒜(G)\mathcal{A}(G).    

Given a tree decomposition of GG with weighted width ww, Feedback Vertex Set can be solved in 2O(w)n2^{O(w)}n time using a rank-based approach as observed in [5].222De berg et al. [5] showed that Feedback Vertex Set and several problems can be solved in 2O(n)2^{O(\sqrt{n})} time for similarly sized objects. Although the other algorithms cannot be extended to an intersection graph of fat objects, the algorithm for Feedback Vertex Set can be extended to an intersection graph of fat object. We briefly show how to solve Feedback Vertex Set in Lemma 17. Similarly, Triangle Hitting Set and Odd Cycle Transversal can be solved in 2O(w)n2^{O(w)}n and 2O(wlogw)n2^{O(w\log w)}n time, respectively. They can be obtained by slightly modifying standard dynamic programming algorithms for those problems as observed in [5]. We briefly show how to do this in Section 5.

2.0.5 Higher-Order Voronoi Diagram.

To analyze the treewidth of GG of bounded ply, we use the concept of the higher-order Voronoi diagram. Given a set of nn weighted sites (points), its order-kk Voronoi diagram is defined as the subdivision of 2\mathbb{R}^{2} into maximal regions such that all points within a given region have the same kk nearest sites. Here, the distance between a site ss with weight ww and a point xx in the plane is defined as d(s,x)wd(s,x)-w, where d(s,x)d(s,x) is the Euclidean distance between ss and xx.

Lemma 4 (Theorem 4 in [19]).

The complexity of the addictively weighted order-kk Voronoi diagram of mm point sites in the plane is O(mk)O(mk).

3 Triangle Hitting Set

In this section, we present a robust 2O(k4/5logk)nO(1)2^{O(k^{4/5}\log k)}n^{O(1)}-time algorithm for Triangle Hitting Set, which improves the 2O(k9/10logk)nO(1)2^{O(k^{9/10}\log k)}n^{O(1)}-time algorithm of [17].

3.1 Two-Step Branching Process

We first apply a branching process as follows to obtain 2O((k/p)logk)2^{O((k/p)\log k)} instances one of which is a YES-instance (G,k)(G^{\prime},k^{\prime}) of Triangle Hitting Set where every clique of GG^{\prime} has size O(p)O(p). For a clique CC of GG and a triangle hitting set FF, all except for at most two vertices of CC are contained in FF. In particular, if GG has a triangle hitting set of size kk, any clique of GG has size at most k+2k+2. For a clique of size at least pp, we branch on which vertices of the clique are not included in a triangle hitting set. After this, the solution size kk decrease by at least p2p-2. We repeat this until every clique has size O(p)O(p). In the resulting branching tree, every node has at most O(k2)O(k^{2}) children since any clique of GG has size at most k+2k+2. And the branching tree has height O(k/p)O(k/p). In this way, we can obtain 2O((k/p)logk)2^{O((k/p)\log k)} instances of Triangle Hitting Set one of which is a YES-instance (G,k)(G^{\prime},k^{\prime}) of Triangle Hitting Set where GG^{\prime} has a geometric representation of ply at most pp. Moreover, GG^{\prime} is an induced subgraph of GG, and kkk^{\prime}\leq k. Using the EPTAS for computing a maximum clique in a disk graph [8], we can complete the branching step in 2O((k/p)logk)nO(1)2^{O((k/p)\log k)}n^{O(1)} time. Note that the algorithm in [8] does not require a geometric representation of a graph.

Refer to caption
Figure 1: (a) The four gray triangles, v1v2v8,v1v6v8,v1v7v8v_{1}v_{2}v_{8},v_{1}v_{6}v_{8},v_{1}v_{7}v_{8} and v3v5v6v_{3}v_{5}v_{6}, form a core. A triangle of GG not in the core shares two vertices with at least one gray triangle. (b) The marked edges are colored gray. Then N(v)N^{*}(v) has a matching of size four. (c) The vertices in the initial set of FF are v1,v2,v3,v5,v7,v8v_{1},v_{2},v_{3},v_{5},v_{7},v_{8}. We add two three gray triangles v1v2v8,v1v7v8,v3v5v6v_{1}v_{2}v_{8},v_{1}v_{7}v_{8},v_{3}v_{5}v_{6} to WW. Note that WW is not yet a core because of v6v8v9v_{6}v_{8}v_{9}.

For each instance (G,k)(G,k) obtained from the first branching, we apply the second branching process to obtain 2O(k/p)2^{O(k/p)} instances one of which is a YES-instance having a core of size O(pk)O(pk). A set WW of triangles of GG is called a core if for a triangle of GG, a triangle of WW shares at least two vertices with the triangle. See Fig. 1(a). During the branching process, we mark an edge to remember that one of its endpoints must be added to a triangle hitting set. The marking process has an invariant that no two marked edges share a common endpoint, and thus the number of marked edges is at most kk. The marks will be considered in the dynamic programming procedure. Initially, all edges are unmarked.

Let vv be a vertex such that N(v)N^{*}(v) has a matching of size at least pp, where N(v)N^{*}(v) be the set of neighbors of vv not incident to any marked edge. See Fig. 1(b). In this case, a triangle hitting set contains either vv or at least one endpoint of each edge in the matching. We branch on whether or not vv is added to a triangle hitting set. For the first case, we remove vv and its adjacent edges, and decrease kk by one. For the second case, we know that at least one endpoint of each edge in the matching must be contained in a triangle hitting set. However, we do not make a decision at this point. Instead, we simply mark all such edges.

Lemma 5.

The total number of instances from the two-step branching process is 2O((k/p)logk)2^{O((k/p)\log k)}. Moreover, the branching process runs in 2O((k/p)logk)nO(1)2^{O((k/p)\log k)}n^{O(1)} time.

Proof.  Recall that the first branching step produces 2O((k/p)logk)2^{O((k/p)\log k)} instances. Let (G,k)(G^{\prime},k^{\prime}) be an instance of Triangle Hitting Set we produce during the second branching process. Let N(k,m)N(k^{\prime},m^{\prime}) be the number of instances produced by (G,k)(G^{\prime},k^{\prime}) where GG^{\prime} has mm^{\prime} marked edges. By construction, we produce two instances: one has parameter k1k^{\prime}-1, and one has at least m+pm^{\prime}+p marked edges. Thus we have

N(k,m)N(k1,m)+N(k,m+p).N(k^{\prime},m^{\prime})\leq N(k^{\prime}-1,m^{\prime})+N(k^{\prime},m^{\prime}+p).

Since N(0,)=0,N(,k)=0N(0,\cdot)=0,N(\cdot,k)=0, we have N(k,0)=2O(k/p)N(k,0)=2^{O(k/p)}. Therefore, the total number of instances obtained from the two-step branching process is 2O((k/p)logk)2^{O((k/p)\log k)}. Moreover, since our algorithm runs in polynomial time per instance, the total running time is 2O((k/p)logk)nO(1)2^{O((k/p)\log k)}n^{O(1)}.    

This branching process was already used in [17]. The following lemma is a key for our improvement over [17].

Lemma 6.

Let (G,k)(G,k) be a YES-instance obtained from the two-step branching. Then GG has a core of size O(pk)O(pk), and we can compute one in polynomial time.

Proof.  We construct a core WW of GG as follows. Let F0F_{0} be the the union of a triangle hitting set of size at most 3k3k and the set of all endpoints of the marked edges, which can be computed in polynomial time.333 We can find a hitting set of size at most 3k3k as follows: Find a triangle, and add all its vertices to a triangle hitting set. Then remove all its vertices from the graph. Note that, the size of F0F_{0} is at most O(k)O(k). Then let WW be the set of triangles constructed as follows: for each edge xyxy of G[F0]G[F_{0}], we add an arbitrary triangle of GG formed by x,yx,y and vVF0v\in V\setminus F_{0} to WW, if it exists. The number of triangles in WW is O(pk)O(pk) by Lemma 7.

At this moment, WW is not necessarily a core. See Fig. 1(c). Thus we add several triangles further to WW to compute a core of GG. By the branching process, for every vertex vv of F0F_{0}, N(v)F0N(v)\setminus F_{0} has a maximum matching of size at most pp. We add the triangles formed by vv and the edges of the maximum matching to WW for every vertex vv of F0F_{0}. Note that we do not update F0F_{0} during this phase, and thus triangles added to WW due to two different vertices might intersect. This algorithm clearly runs in polynomial time. Moreover, since the size of F0F_{0} is O(k)O(k), we add at most O(pk)O(pk) triangles to WW, and thus the size of WW is O(pk)O(pk).

We claim that WW is a core of GG. Let {x,y,z}\{x,y,z\} be a triangle of GG not in WW. Since F0F_{0} contains a triangle hitting set of size at most 3k3k, it must contain at least one of x,yx,y and zz. If at least two of them, say xx and yy, are contained in F0F_{0}, then there exists a triangle having edge xyxy in WW by construction. Thus, {x,y,z}\{x,y,z\} shares two vertices with such a triangle. The remaining case is that exactly one of them, say xx, is contained in F0F_{0}. In this case, we have considered xx and a maximum matching of N(x)F0N(x)\setminus F_{0}. The only reason why {x,y,z}\{x,y,z\} is not added to WW is that the edge yzyz is adjacent to another edge yzy^{\prime}z^{\prime} for some other triangle {x,y,z}\{x,y^{\prime},z^{\prime}\}. Then {x,y,z}\{x,y^{\prime},z^{\prime}\} is added to WW. Note that {x,y,z}\{x,y,z\} and {x,y,z}\{x,y^{\prime},z^{\prime}\} share at least two vertices, and thus {x,y,z}\{x,y,z\} satisfies the condition for WW being a core.    

Lemma 7.

For a subset FF of VV of size O(k)O(k), G[F]G[F] has O(pk)O(pk) edges.

Proof.  We use a charging scheme. For each edge uvuv of G[F]G[F], we charge it to the smaller disk among the disks represented by uu and vv. Then each disk DD is charged by O(p)O(p) edges. This is because DD is intersected by O(p)O(p) disks larger than DD. To see this, recall that the ply of 𝒟\mathcal{D} is at most pp due to the first branching process. Since the size of FF is O(k)O(k), the number of edges of G[F]G[F] is O(pk)O(pk).    

The following observation will be used in the correctness proof of the kernelization step in Section 3.2. The observation holds because GG^{\prime} does not have any triangle not appearing in GG. {observation} Let GG^{\prime} be an induced subgraph of GG such that V(G)V(G^{\prime}) contains all vertices of a core WW of GG. Then WW is a core of GG^{\prime}.

For each instance (G,k)(G,k) obtained from the branching process, we apply the cleaning step that removes all vertices not hitting any triangle of GG from GG. Specifically, we remove a vertex of degree less than two. Also, we remove a vertex whose neighbors are independent. Whenever we remove a vertex, we also remove its adjacent edges.

3.2 Kernelization Using Crown Decomposition

Let (G,k)(G,k) be a YES-instance we obtained from the branching process. We show that if the number of vertices of GG contained in the triangles of GG is at least pkpk, we can construct a crown for the triangles of GG. Then using this, we can produce a YES-instance (G,k)(G^{\prime},k) of Triangle Hitting Set in polynomial time where GG^{\prime} is a proper induced subgraph of GG. Thus by repeatedly applying this process (at most n2n^{2} times) and then by removing all vertices not contained in any triangle of GG, we can obtain a YES-instance (G,k)(G^{\prime},k) where GG^{\prime} is a disk graph of complexity O(pk)O(pk).

Refer to caption
Figure 2: The edges in the matching MM in GI,HG_{I,H} are colored gray.

We first define a crown decomposition of a graph for triangles. For illustration, see Fig. 2. A crown decomposition of a graph was initially introduced to construct a linear kernel for Vertex Cover. Later, Abu-Khzam [1] generalized this concept to hypergraphs. Using this, he showed that a triangle hitting set admits a quadratic kernel for a general graph. In our case, we will show that the size of a kernel is indeed O(pk)O(pk) due to the branching process. More specifically, it is due to the existence of a core of size O(pk)O(pk).

Definition 1 ([1]).

A crown for the triangles of GG is a triple (I,H,M)(I,H,M) with a subset II of V(G)V(G), a subset HH of E(G)E(G), and a matching MM of GI,HG_{I,H} s.t.

  • no two vertices of II are contained in the same triangle of GG,

  • each edge of HH forms a triangle with some vertex of II, and

  • every edge (vertex in GI,HG_{I,H}) of HH is matched under MM,

where GI,HG_{I,H} is the bipartite graph with vertex set IHI\cup H such that xIx\in I and uvHuv\in H are connected by an edge if and only if u,vu,v and xx form a triangle.

If a crown (I,H,M)(I,H,M) for the triangles of GG exists, we can remove all vertices in II, but instead, we mark all edges of HH. Then the resulting graph also has a triangle hitting set of size at most kk [1].

Lemma 8 ([1, Lemma 2]).

Let (G=(V,E),k)(G=(V,E),k) be a YES-instance of Triangle Hitting Set, and (I,H,M)(I,H,M) is a crown for the triangles of GG. Then the subgraph of GG obtained by removing all vertices of II and by marking all edges of HH has a trianlge hitting set of size at most kk.

Proof.  To make the paper self-contained, we give a proof of this lemma, but one can find this proof also in [1]. Let FF be a triangle hitting set of GG of size kk. We construct another hitting set FF^{\prime} from FF not containing any vertex of II as follows. We initialize FF^{\prime} as FF. If there is an edge uvuv of HH uFu\notin F and vFv\notin F, then xx must be contained in FF^{\prime}, where the edge {x,uv}\{x,uv\} of GI,HG_{I,H} is in MM. Then we replace xx with uu. We repeat this until at least one vertex of all edges of HH is contained in FF^{\prime}. Then |F||F|=k|F^{\prime}|\leq|F|=k.

We claim that FF^{\prime} is also a triangle hitting set. A triangle not intersecting II is hit by FF^{\prime} by construction. Thus consider a triangle {x,u,v}\{x,u,v\} intersecting II. Since no two vertices of II are contained in the same triangle, exactly one of x,ux,u and vv, say xx, is contained in II. Since every edge of HH is matched under MM, uvHuv\in H. Since FF^{\prime} contains either uu or vv, {x,u,v}\{x,u,v\} is hit by FF^{\prime}. Therefore, FF^{\prime} is a triangle hitting set of size at most kk.    

Now we show that (G,k)(G,k) has a crown for its triangles if cpkcpk vertices are contained in the triangles of GG, where cc is a sufficiently large constant. Let WW be a core of GG of size O(pk)O(pk), which exists due to Lemma 6 and Observation 3.1. Let II be the set of vertices of GG not contained in any triangle of WW but contained in some triangle of GG. If cpkcpk vertices are contained in the triangles of GG, the size of II is cpkc^{\prime}pk for a sufficiently large constant cc^{\prime} since |W|=O(pk)|W|=O(pk). Then let HH be the set of all edges of GG which form triangles together with the vertices of II. Note that for every edge of HH, its endpoints are contained in the same triangle of WW by the definition of the core. Thus the size of HH is at most 3|W|=O(pk)3\cdot|W|=O(pk). Therefore, if more than cpkcpk vertices are contained in the triangles of GG, |I|>|H||I|>|H|.

Lemma 9.

If |I|>|H||I|>|H|, there are two subsets HHH^{\prime}\subseteq H and III^{\prime}\subseteq I such that (I,H,M)(I^{\prime},H^{\prime},M^{\prime}) is a crown for the triangles of GG.

Proof.  Let GI,HG_{I,H} be the bipartite graph defined in Definition 1. Notice that II is an independent set in GI,HG_{I,H} since GI,HG_{I,H} is bipartite. Let XX be a minimum vertex cover of GI,HG_{I,H}. Also, let MM be a matching of size |X||X| of GI,HG_{I,H} such that every edge in a matching is incident to exactly one vertex of XX. Then let I=IXI^{\prime}=I\setminus X, and H=HXH^{\prime}=H\cap X. Also, let MM^{\prime} be the set of edges of MM having their endpoints on IHI^{\prime}\cup H^{\prime}. Since |I|>|H||I|>|H|, II is not fully contained in XX, and thus II^{\prime}\neq\emptyset.

Then we show that (I,H,M)(I^{\prime},H^{\prime},M^{\prime}) is a crown for the triangles of GG. First, II^{\prime} does not violate the condition in Definition 1 since III^{\prime}\subset I. Then consider the condition for HH^{\prime}. Note that HH^{\prime} is contained in XX, and II^{\prime} does not intersect XX. Thus for all triangles {x,u,v}\{x,u,v\} with xIx\in I^{\prime}, uvuv must be in HH, and then uvuv must be in HH^{\prime}. Therefore, HH^{\prime} is the set of all edges of GG^{\prime} that form triangles together with the vertices of II^{\prime}, and thus HH^{\prime} satisfies the secons condition in Definition 1. Also, by construction, GI,HG_{I^{\prime},H^{\prime}} is a subgraph of GI,HG_{I,H} such that all edges of MM^{\prime} are in GI,HG_{I^{\prime},H^{\prime}}, and thus HH^{\prime} are matched under MM^{\prime}.    

By Lemma 8 and Lemma 9, we can obtain an instance (G,k)(G^{\prime},k^{\prime}) equivalent to (G,k)(G,k) such that the union of the triangles has complexity O(pk)O(pk) for each instance (G,k)(G,k) obtained from Section 3.1 in polynomial time.

Theorem 3.1.

Given a disk graph GG with its geometric representation, we can find a triangle hitting set of GG of size kk in 2O(k2/3logk)nO(1)2^{O(k^{2/3}\log k)}n^{O(1)} time, if it exists. Without a geometric representation, we can do this in 2O(k4/5logk)nO(1)2^{O(k^{4/5}\log k)}n^{O(1)} time.

Proof.  After the branching and kernelization processes, we have 2O((k/p)logk)2^{O((k/p)\log k)} instances one of which is a YES-instance such that the size of the union of the triangles of GG^{\prime} is at most O(pk)O(pk). For each instance (G,k)(G^{\prime},k^{\prime}), we remove all vertices not contained in any triangle of GG^{\prime}. Then the resulting graph GG^{\prime} has O(pk)O(pk) vertices. Then we compute a tree decomposition (T,β)(T,\beta) of GG^{\prime} of weighted treewidth O(pk)O(\sqrt{pk}) using Lemma 2.

By applying dynamic programming on (T,β)(T,\beta) as described in Lemma 16, we can find a triangle hitting set of size kk^{\prime} in 2O(pk)2^{O(\sqrt{pk})} time if it exists. Therefore, the total running time is 2O(pk)2O((k/p)logk)2^{O(\sqrt{pk})}\cdot 2^{O((k/p)\log k)}. By letting p=k1/3p=k^{1/3}, we have 2O(k2/3logk)nO(1)2^{O(k^{2/3}\log k)}n^{O(1)}-time.

If we are not given a geometric representation, we cannot use a tree decomposition of bounded weighted width. Instead, we can compute a tree decomposition (T,β)(T,\beta) of GG^{\prime} of treewidth O(ppk)O(p\sqrt{pk}). Then the total running time is 2O(p3/2k)2O((k/p)logk)2^{O(p^{3/2}\sqrt{k})}\cdot 2^{O((k/p)\log k)}. By letting p=k1/5p=k^{1/5}, we have 2O(k4/5logk)nO(1)2^{O(k^{4/5}\log k)}n^{O(1)}-time.    

4 Feedback Vertex Set and Odd Cycle Transversal

In this section, we show that the algorithms in [17] for Feedback Vertex Set and Odd Cycle Transversal indeed take 2O~(k9/10)nO(1)2^{\tilde{O}(k^{9/10})}n^{O(1)} time and 2O~(k19/20)nO(1)2^{\tilde{O}(k^{19/20})}n^{O(1)} time algorithms respectively. It is shown in [17] that they take 2O(k13/14)nO(1)2^{O(k^{13/14})}n^{O(1)} time and 2O(k27/28)nO(1)2^{O(k^{27/28})}n^{O(1)} time, respectively, but we give a better analysis. We can obtain non-robust algorithms for these problems with better running times, but we omit the description of them.

We obtained better time bounds by classifying the vertices in a kernel used in [17] into two types, and by using the higher order additively weighted Voronoi diagrams. To make the paper self-contained, we present the algorithms in [17] here. The following lemma is a main observation of [17]. Indeed, the statement of the lemma given by [17] is stronger than this, but the following statement is sufficient for our purpose. We say a vertex vv is deep for a subset FF of VV if all neighbors of vv in GG are contained in FF. For a subset QQ of V(G)V(G), let G/QG/Q be the graph obtained from GG by contracting each connected component of G[Q]G[Q] into a single vertex.

Lemma 10 (Theorem 1.2 of [17]).

Let GG be a disk graph that has a realization of ply pp. For a subset FF of VV, let FF^{*} be the union of FF and the set of all deep vertices for FF. If FF contains a core of GG, then the arrangement graph of G/QG/Q has treewidth O(max{|F|wp1.5,w})O(\max\{\sqrt{|F^{*}|\cdot w}\cdot p^{1.5},w\}) for a set QVFQ\subseteq V\setminus F^{*}, where ww is the treewidth of (GF)/Q(G-F^{*})/Q.

In Section 4.1, we show that the size of FF^{*} is O(p2|F|)O(p^{2}|F|). This is our main contribution in this section. Then we solve the two cycle hitting problems using dynamic programming on a tree decomposition of bounded treewidth.

4.0.1 Branching and Cleaning Process.

We first apply the two-step branching process as we did for Triangle Hitting Set. Note that if a vertex set FF is a feedback vertex set or odd cycle transversal, then FF is a triangle hitting set.

We apply the cleaning process for each instance (G,k)(G,k) we obtained from the earlier branching process. First, we remove all vertices of degree one. Then we keep O(1)O(1) vertices from each class of false twins as follows. A set of vertices is called a false twin if they are pairwise non-adjacent, and they have the same neighborhood. As observed in [17], for each class of false twins, every minimal feedback vertex set either contains the entire class except for at most one vertex, or none of the vertices in that class. Thus we keep only one vertex (an arbitrary one) from each class of false twins if (G,k)(G,k) is an instance of Feedback Vertex Set. Similarly, for each class of false twins, every odd cycle transversal contains the entire class except for at most two vertices, or none of the vertices in that class. Therefore, when we deal with Odd Cycle Transversal, we keep only two vertices from each class of false twins. We remember how many vertices each kept vertex represents and make use of this information in DP.

We have 2O((k/p)logk)2^{O((k/p)\log k)} instances one of which is a YES-instance (G,k)(G,k) where GG has a core of size O(pk)O(pk) and a geometric representation of ply pp. Moreover, at most two vertices are in each class of false twins.

4.1 The Number of Deep Vertices

Let (G,k)(G,k) be an YES-instance obtained from the branching and cleaning process. Let FF be a subset of V(G)V(G) containing a core of GG. The disks of GFG-F have ply at most two. In this section, we give an upper bound on the number of deep vertices for FF. For this, we classify the vertices of VFV-F in two types: regular and irregular vertices. See Fig. 3(a).

Definition 2.

A vertex vv of VFV-F is said to be irregular if vv belongs to one of the following types:

  • D(v)D(v) contains a vertex of 𝒜\mathcal{A},

  • D(v)D(v) is contained in a face of 𝒜\mathcal{A},

  • D(v)D(v) contains a disk represented by a vertex of FF, or

  • D(v)D(v) intersects three edges of 𝒜\mathcal{A} incident to the same face of 𝒜\mathcal{A},

where 𝒜\mathcal{A} denotes the arrangement of the disks represented by FF. If vv does not belong to any of the types, we say vv is regular.

Refer to caption
Figure 3: (a) The vertices of FF are colored black, and the vertices of VFV-F are colored red. D1D_{1} is deep and irregular, D2D_{2} is deep and regular, and D3D_{3} is shallow and irregular. (b) DD is irregular due to the fourth case of Definition 2.
Lemma 11.

The number of deep and regular vertices is O(p2|F|)O(p^{2}|F|).

Proof.  If vv is regular, the neighbors of vv in GG form two cliques. To see this, observe that the part of 𝒜\mathcal{A} restricted to D(v)D(v) consists of parallel arcs. That is, the arcs can be sorted in a way that any two consecutive arcs come from the same face of 𝒜\mathcal{A}. Also, any two arcs which are not consecutive in the sorted list are not incident to a common face of 𝒜\mathcal{A}. In this case, there are two points xx and yy on the boundary of D(v)D(v) such that the line segment xyxy intersects all disks represented by FF intersecting D(v)D(v). Then the disks of FF intersecting D(v)D(v) contains either xx or yy. Therefore, the neighbors of vv form at most two cliques.

Since each clique has size at most pp, a deep and regular vertex has at most 2p2p neighbors in GG. Let vv be a deep and regular vertex having exactly rr neighbors. Consider the additively weighted order-rr Voronoi diagram rVDr\textsf{VD} of FF. Here, the distance between a disk DD^{\prime} of FF and a point xx in the plane is defined as d(c,x)wd(c,x)-w, where cc is the center of DD^{\prime} and ww is the radius of DD^{\prime}. Then the center of D(v)D(v) is contained in a Voronoi region of the order-rr Voronoi diagram whose sites are exactly the neighbors of vv. Since no two deep vertices have the same neighborhood in FF, each Voronoi region contains at most one deep vertex. Therefore, the number of deep and regular vertices having exactly rr neighbors is linear in the complexity of rVDr\textsf{VD} for r2pr\leq 2p. By Lemma 4, its complexity is O(r|F|)O(r|F|). Thus, the number of deep and regular vertices of GG is O(p2|F|)O(p^{2}|F|).    

For irregular vertices, we make use of the fact that the ply of the disks represented by those vertices is at most two. It is not difficult to see that the number of irregular vertices of the first three types is O(p|F|)O(p|F|). This is because the complexity of 𝒜\mathcal{A} is O(p|F|)O(p|F|). To analyze the number of irregular vertices of the fourth type, we use the following lemma.

Refer to caption
Figure 4: (a) SS is the polygon with vertices marked with black disks, and each region of \mathcal{F} has vertices marked with white boxes. (b) The vertices of HH are marked with white.
Lemma 12.

Let SS be a connected region with |S||S| edges in the plane, and \mathcal{F} be a set of interior-disjoint regions contained in SS such that each region intersects at least three edges of SS. Then the number of regions of \mathcal{F} is O(|S|)O(|S|). Also, the total number of vertices of the regions of \mathcal{F} is O(|S|)O(|S|).

Proof.  We consider the following planar graph HH: each vertex of HH corresponds to an edge of SS. Also, for each region of \mathcal{F} with vertices x1,x2,,xtx_{1},x_{2},\ldots,x_{t} in order, we add edges connecting the vertices corresponding to the edges of 𝒮\mathcal{S} containing xix_{i} and xi+1x_{i+1} for all indices 1i<t1\leq i<t. In addition to this, for each vertex vv of SS, we add an edge connecting the vertices of HH corresponding the two edges of SS incident to vv. See Fig. 4. There might be parallel edges in HH, but a pair of vertices has at most two parallel edges. Let F1F_{1} be the set of faces bounded by a pair of parallel edges, and let F2F_{2} be the set of the other faces of HH. Then each region of \mathcal{F} corresponds to a face of F2F_{2}. To prove the first part of the lemma, it suffices to show that the size of F2F_{2} is linear in the number of edges of SS.

By the Euler’s formula, |EH||VH|+|F1|+|F2|2|E_{H}|\leq|V_{H}|+|F_{1}|+|F_{2}|-2, where VHV_{H} and EHE_{H} denote the set of vertices and edges of HH, respectively. Note that no vertex of HH has degree at most one. Since every face of F2F_{2} is incident to at least three edges of HH, and every edge of EHE_{H} is incident to exactly two faces of HH, 2|EH|3|F2|+2|F1|2|E_{H}|\geq 3|F_{2}|+2|F_{1}|. Thus we have 2|F1|+3|F2|2|VH|+2|F1|+2|F2|42|F_{1}|+3|F_{2}|\leq 2|V_{H}|+2|F_{1}|+2|F_{2}|-4. That is, |F2|2|VH|4|F_{2}|\leq 2|V_{H}|-4. This implies the first part of the lemma.

Now consider the second part of the lemma. Since a pair of vertices has at most two parallel edges, |F1||EH|/2|F_{1}|\leq|E_{H}|/2. Therefore, |EH|2|VH|+2|F2|4=O(|VH|)|E_{H}|\leq 2|V_{H}|+2|F_{2}|-4=O(|V_{H}|). Since every edge of the regions of \mathcal{F} corresponds to an edge of HH, the total number of edges of the regions of \mathcal{F} is O(|S|)O(|S|), and thus the total number of vertices of them is O(|S|)O(|S|).    

Lemma 13.

The number of irregular vertices of VV is O(p|F|)O(p|F|).

Proof.  Since the complexity of 𝒜\mathcal{A} is O(p|F|)O(p|F|), the number of vertices of GG belonging to the first three cases is O(p|F|)O(p|F|). For the fourth case in Definition 2, let ff be a face of 𝒜\mathcal{A} such that DfD\cap f has at least three circular arcs which comes from the boundary of ff. In this case, we replace DD with DfD\cap f. Since DfDD\cap f\subseteq D, all resulting regions have ply two. See Fig. 3(b). For a face ff having |f||f| edges, there are O(|f|)O(|f|) such regions by Lemma 12. Therefore, the number of vertices belonging to the fourth case is linear in the complexity of 𝒜\mathcal{A}, which is O(p|F|)O(p|F|). Therefore, the lemma holds.    

4.2 Feedback Vertex Set

In this section, we show how to compute a feedback vertex set of size kk in 2O~(k7/8)nO(1)2^{\tilde{O}(k^{7/8})}n^{O(1)} time, if it exists. Without a geometric representation of GG, we can do this in 2O~(k9/10)nO(1)2^{\tilde{O}(k^{9/10})}n^{O(1)} time. Let (G,k)(G,k) be an YES-instance of Feedback Vertex Set from the branching and cleaning processes. Then we have a core WW of GG of size O(pk)O(pk). Let FF be the union of a feedback vertex set of size 2k2k and the vertex set of all triangles of core WW of GG, and let FF^{*} be the union of FF and all deep vertices for FF. The size of FF^{*} is O(p3k)O(p^{3}k) by Lemmas 11 and 13. Since FF^{*} contains a feedback vertex set, GFG-F^{*} is a forest.

Therefore, the treewidth of GG is O(p4k)O(p^{4}\sqrt{k}) by Lemma 10. Then we compute a tree decomposition of treewidth O(p4k)O(p^{4}\sqrt{k}), and then apply a dynamic programming on the tree decomposition to solve the problem in 2O(p4k)2^{O(p^{4}\sqrt{k})} time. The total running time is 2O(k9/10logk)nO(1)2^{O(k^{9/10}\log k)}n^{O(1)} by setting p=k1/10p=k^{1/10}. The weighted treewidth of GG is O(p3klogp)O(p^{3}\sqrt{k}\log p) by Lemmas 3 and 10. If we have a geometric representation of GG, we compute a tree decomposition (T,β)(T,\beta) of GG^{\prime} of weighted treewidth O(p3klogp)O(p^{3}\sqrt{k}\log p) using Lemma 2. By applying dynamic programming on (T,β)(T,\beta) as described in Lemma 17, we can compute a feedback vertex set of size kk in 2O(p3klogp)2^{O(p^{3}\sqrt{k}\log p)} time. Note that the dynamic programming on Feedback Vertex Set requires global connectivity information but we can track the connectivity by rank-based approach. See also [5]. Since we have 2O((k/p)logk)2^{O((k/p)\log k)} instances from branching process, the total running time is 2O(k7/8logk)nO(1)2^{O(k^{7/8}\log k)}n^{O(1)} by setting p=k1/8p=k^{1/8}.

Theorem 4.1.

Given a disk graph GG, we can find a feedback vertex set of size kk in 2O(k9/10logk)nO(1)2^{O(k^{9/10}\log k)}n^{O(1)} time, if it exists. Given a disk graph GG together with its geometric representation, we can do this in in 2O(k7/8logk)nO(1)2^{O(k^{7/8}\log k)}n^{O(1)} time.

4.3 Odd Cycle Transversal

In this section, we present an 2O(k19/20logk)nO(1)2^{O(k^{19/20}\log k)}n^{O(1)}-time randomised algorithm for Odd Cycle Transversal when a geometric representation of GG is given. In the case of Odd Cycle Transversal, we do not know how to solve the problem without using a geometric representation of GG. The algorithm in [17] also uses a geometric representation in this case.

Let (G,k)(G,k) be an YES-instance of Odd Cycle Transversal obtained from the branching and cleaning processes. We have a core WW of GG of size O(pk)O(pk). Let FF be the union of the triangles of WW. Furthermore, let FF^{*} be the union of FF and the set of all deep vertices for FF of size O(p3k)O(p^{3}k) by Lemmas 11 and 13. Let G=GFG^{*}=G-F^{*}. Since GG^{*} does not contain a triangle, it is planar. Thus we use a contraction-decomposition theorem on GG^{*} of [3].

Lemma 14 (Lemma 1.1 of [3]).

Let GG be a planar graph. Then for any tt\in\mathbb{N}, there exist disjoint sets Z1,,ZpV(G)Z_{1},\ldots,Z_{p}\subseteq V(G) such that for every i[t]i\in[t] and every ZZiZ^{\prime}\subseteq Z_{i}, treewidth of G/(ZiZ)G/(Z_{i}\setminus Z^{\prime}) is O(t+|Z|)O(t+|Z^{\prime}|). Moreover, these sets can be computed in polynomial time.

In particular, we set t=kt=\sqrt{k} and compute tt sets Z1,,ZtZ_{1},\ldots,Z_{t} of vertices of VFV\setminus F^{*} such that for any ZiZ_{i} and any ZZiZ^{\prime}\subseteq Z_{i}, G/(ZiZ)G^{*}/(Z_{i}\setminus Z^{\prime}) has treewidth at most O(k+|Z|)O(\sqrt{k}+|Z^{\prime}|). Then there is an index ii such that for a fixed odd cycle transversal SS, SZiS\cap Z_{i} has size O(k)O(\sqrt{k}). We iterate over every choice of ii, and every choice of Z=SZiZ^{\prime}=S\cap Z_{i} of size at most O(k)O(\sqrt{k}). Due to the following lemma, the number of choices of ZZ^{\prime} we have to consider is (kO(1))k=2O(klogk)(k^{O(1)})^{\sqrt{k}}=2^{O(\sqrt{k}\log k)}.

Lemma 15 ([17]).

One can compute a candidate set of size kO(1)k^{O(1)} for a solution of the Odd Cycle Transversal problem in polynomial time with success probability at least 11/2n1-1/2^{n}.

For each iteration, we contract ZiZZ_{i}\setminus Z^{\prime} and then apply a dynamic programming on a tree decomposition of G/(ZiZ)G/(Z_{i}\setminus Z^{\prime}). The number of iterations is 2O(klogk)2^{O(\sqrt{k}\log k)}, and G/(ZiZ)G^{*}/(Z_{i}\setminus Z^{\prime}) has treewidth O(k)O(\sqrt{k}). By Lemma 3, the weighted treewidth and the treewidth of G/(ZiZ)G/(Z_{i}\setminus Z^{\prime}) are O(p3k3/4logp)O(p^{3}k^{3/4}\log p) and O(p4k3/4)O(p^{4}k^{3/4}), respectively. We obtain the desired running times by setting p=k1/16p=k^{1/16} (for a robust algorithm) and p=k1/20p=k^{1/20} (for a non-robust algorithm). Then Lemma 18 implies the following theorem.

Theorem 4.2.

Given a disk graph GG, we can find a odd cycle transversal of size kk in 2O(k19/20logk)nO(1)2^{O(k^{19/20}\log k)}n^{O(1)} time w.h.p. Given a disk graph GG together with its geometric representation, we can do this in in 2O(k15/16logk)nO(1)2^{O(k^{15/16}\log k)}n^{O(1)} time w.h.p.

5 DP on a Tree Decomposition of Bounded Treewidth

In this section, we give dynamic programming algorithms for Triangle Hitting Set, Feedback Vertex Set, and Odd Cycle Transversalon bounded weighted treewidth graphs. Let (T,β)(T,\beta) be a tree decomposition of GG with weighted width O(w)O(w). Recall that β(t)\beta(t) has a clique partition of weight O(w)O(w). Let 𝒞(t)\mathcal{C}(t) be the set of cliques in the clique partition of β(t)\beta(t), and let 𝒟(t)\mathcal{D}(t) be the set of disks represented by the vertices of β(t)\beta(t). Also, we slightly abuse the notation so that 𝒟(C)\mathcal{D}(C) denotes the set of disks represented by the vertices of a clique CC. For the set 𝒱𝒟\mathcal{V}\subset\mathcal{D} of disks, we again abuse the notation so that G[𝒱]G[\mathcal{V}] denotes the subgraph of GG induced by the set of vertices whose corresponding disk is contained in 𝒱\mathcal{V}. A tree decomposition (T,β)(T,\beta) is nice if TT is a rooted tree and each node tt of TT belongs to one of the four categories:

  • Leaf node. β(t)\beta(t) is empty.

  • Introduce node. tt has exactly one child tt^{\prime} s.t 𝒞(t)=𝒞(t){C}\mathcal{C}(t)=\mathcal{C}(t^{\prime})\cup\{C\} for some C𝒞(t)C\notin\mathcal{C}(t^{\prime})

  • Forget node. tt has exactly one child tt^{\prime} s.t 𝒞(t)=𝒞(t){C}\mathcal{C}(t)=\mathcal{C}(t^{\prime})\setminus\{C\} for some C𝒞(t)C\in\mathcal{C}(t^{\prime})

  • Join node. tt has two children t1,t2t_{1},t_{2} s.t 𝒞(t)=𝒞(t1)=𝒞(t2)\mathcal{C}(t)=\mathcal{C}(t_{1})=\mathcal{C}(t_{2}).

It is not difficult to see that, given a tree decomposition with weighted width ww, we can compute a nice tree decomposition with weighted width O(w)O(w) in polynomial time. It is well known that we can convert a tree decomposition of width ww into a tree decomposition of width O(w)O(w) [10]. A slight modification of this conversion preserves the weighted width and the size of a tree asymptotically. Therefore, we may assume that (T,β)(T,\beta) is a nice tree decomposition of weighted width O(w)O(w). Moreover, the number of nodes of TT is O(wn)O(wn). Also, let 𝒱t\mathcal{V}_{t} be the union of 𝒟(t)\mathcal{D}(t^{\prime}) for all nodes tt^{\prime} in the subtree of TT rooted at tt.

Lemma 16.

Given a tree decomposition (T,β)(T,\beta) of GG of weighted treewidth ww, we can solve Triangle Hitting Set in 2O(w)n2^{O(w)}n time.

Proof.  For each node tt and each subset 𝒮\mathcal{S} of 𝒟(t)\mathcal{D}(t), we define the subproblem of Triangle Hitting Set as

c[t,𝒮]={min𝒮𝒮𝒱t|𝒮| s.t G[𝒱t𝒮] is triangle-free if there is no such 𝒮\displaystyle c[t,\mathcal{S}]=\begin{cases}\min_{\mathcal{S}\subset\mathcal{S}^{\prime}\subset\mathcal{V}_{t}}|\mathcal{S}^{\prime}|&\text{ s.t }G[\mathcal{V}_{t}\setminus\mathcal{S}^{\prime}]\text{ is triangle-free}\\ \infty&\text{ if there is no such }\mathcal{S}^{\prime}\end{cases}

A solution of Triangle Hitting Set must contain all but two vertices from each clique. Therefore, since

Ci𝒞|Ci|2=exp(Ci𝒞2log|Ci|)=2O(w),\displaystyle\prod_{C_{i}\in\mathcal{C}}|C_{i}|^{2}=\exp\left(\sum_{C_{i}\in\mathcal{C}}2\log|C_{i}|\right)=2^{O(w)},

for each node tt, all but 2O(w)2^{O(w)} subproblems are set to infinity. We say that a subproblem c[t,𝒮]c[t,\mathcal{S}] has a solution if it has a finite value. Moreover, we say 𝒮\mathcal{S}^{\prime} is a partial solution of c[t,𝒮]c[t,\mathcal{S}] if 𝒮𝒮𝒱t\mathcal{S}\subset\mathcal{S}^{\prime}\subset\mathcal{V}_{t} and G[𝒱t𝒮]G[\mathcal{V}_{t}\setminus\mathcal{S}^{\prime}] is triangle-free. We say that a partial solution is optimal for c[t,𝒮]c[t,\mathcal{S}] if its size is minimum among all partial solutions. We give formulas for each of the four cases, and then apply these formulas in a bottom-up manner on TT. Eventually, we compute c[r,]c[r,\emptyset], where rr is the root of TT.

Leaf node.

If tt is a leaf, we have only one subproblem c[t,]=0c[t,\emptyset]=0.

Introduce node.

Let tt has one child tt^{\prime} with 𝒞(t)=𝒞(t){C}\mathcal{C}(t)=\mathcal{C}(t^{\prime})\cup\{C\}. We claim that the following formula holds:

c[t,𝒮]={c[t,𝒮𝒟(C)]+|𝒮𝒟(C)|if G[𝒟(t)𝒮] is triangle-freeotherwise.\displaystyle c[t,\mathcal{S}]=\begin{cases}c[t^{\prime},\mathcal{S}\setminus\mathcal{D}(C)]+|\mathcal{S}\cap\mathcal{D}(C)|&\text{if }G[\mathcal{D}(t)\setminus\mathcal{S}]\text{ is triangle-free}\\ \infty&\text{otherwise.}\end{cases}

Consider a possible optimal partial solution 𝒮\mathcal{S}^{\prime} for the subproblem c[t,𝒮]c[t,\mathcal{S}]. Then 𝒮𝒟(t)\mathcal{S}^{\prime}\cap\mathcal{D}(t^{\prime}) is exactly 𝒮𝒟(C)\mathcal{S}\setminus\mathcal{D}(C), and 𝒮𝒟(C)\mathcal{S}^{\prime}\setminus\mathcal{D}(C) is also a partial solution of c[t,𝒮𝒟(C)]c[t^{\prime},\mathcal{S}\setminus\mathcal{D}(C)]. To see the 𝒮𝒟(C)\mathcal{S}^{\prime}\setminus\mathcal{D}(C) is optimal for c[t,𝒮𝒟(C)]c[t^{\prime},\mathcal{S}\setminus\mathcal{D}(C)], suppose that there is an optimal partial solution 𝒮′′\mathcal{S}^{\prime\prime} for c[t,𝒮𝒟(C)]c[t^{\prime},\mathcal{S}\setminus\mathcal{D}(C)] such that 𝒮′′𝒟(t)=𝒮𝒟(C)\mathcal{S}^{\prime\prime}\cap\mathcal{D}(t^{\prime})=\mathcal{S}\setminus\mathcal{D}(C). Then 𝒮′′𝒮\mathcal{S}^{\prime\prime}\cup\mathcal{S} is also a solution of c[t,𝒮]c[t,\mathcal{S}] because the disk DD in 𝒟(C)\mathcal{D}(C) dose not intersect to a disk in 𝒱t𝒟(t)\mathcal{V}_{t}\setminus\mathcal{D}(t). Therefore, 𝒮𝒟(C)\mathcal{S}^{\prime}\setminus\mathcal{D}(C) is an optimal partial solution of c[t,𝒮𝒟(C)]c[t^{\prime},\mathcal{S}\setminus\mathcal{D}(C)], so the formula holds.

Forget node.

Let tt has one child tt^{\prime} with 𝒞(t)=𝒞(t){C}\mathcal{C}(t)=\mathcal{C}(t^{\prime})\setminus\{C\}. We claim that the following formula holds:

c[t,𝒮]=min𝒜𝒟(C)c[t,𝒮𝒜]\displaystyle c[t,\mathcal{S}]=\min_{\mathcal{A}\subset\mathcal{D}(C)}c[t^{\prime},\mathcal{S}\cup\mathcal{A}]

For an optimal partial solution 𝒮\mathcal{S}^{\prime} for c[t,𝒮]c[t,\mathcal{S}], we set 𝒜=𝒮𝒟(C)\mathcal{A}=\mathcal{S}^{\prime}\cap\mathcal{D}(C). Since 𝒱t=𝒱t\mathcal{V}_{t}=\mathcal{V}_{t^{\prime}}, 𝒮\mathcal{S}^{\prime} is a partial solution of c[t,𝒮𝒜]c[t^{\prime},\mathcal{S}\cup\mathcal{A}]. Conversely, suppose c[t,𝒮𝒜]c[t^{\prime},\mathcal{S}\cup\mathcal{A}] is minimum among all 𝒜𝒟(C)\mathcal{A}\subset\mathcal{D}(C). Let 𝒮\mathcal{S}^{\prime} be an optimal partial solution of c[t,𝒮𝒜]c[t^{\prime},\mathcal{S}\cup\mathcal{A}]. Then 𝒮\mathcal{S}^{\prime} is also a partial solution of c[t,𝒞]c[t,\mathcal{C}] because 𝒱t1=𝒱t\mathcal{V}_{t_{1}}=\mathcal{V}_{t} and 𝒮𝒟(t)=𝒮\mathcal{S}^{\prime}\cap\mathcal{D}(t)=\mathcal{S}.

Join node.

Let tt has two children t1t_{1} and t2t_{2}. We claim that

c[t,𝒮]=c[t1,𝒮]+c[t2,𝒮]|𝒮|.\displaystyle c[t,\mathcal{S}]=c[t_{1},\mathcal{S}]+c[t_{2},\mathcal{S}]-|\mathcal{S}|.

Let 𝒮\mathcal{S}^{\prime} is an optimal partial solution of c[t,𝒮]c[t,\mathcal{S}]. Then 𝒮𝒱t1\mathcal{S}\cap\mathcal{V}_{t_{1}} (and 𝒮𝒱t2\mathcal{S}\cap\mathcal{V}_{t_{2}}) is a partial solution of c[t1,𝒮]c[t_{1},\mathcal{S}] (and c[t2,𝒮]c[t_{2},\mathcal{S}]). Conversely, if there are optimal partial solutions 𝒮1\mathcal{S}_{1} of c[t1,𝒮]c[t_{1},\mathcal{S}] and 𝒮2\mathcal{S}_{2} of c[t2,𝒮]c[t_{2},\mathcal{S}], we show that 𝒮1𝒮2\mathcal{S}_{1}\cup\mathcal{S}_{2} is a partial solution of c[t,𝒮]c[t,\mathcal{S}]. Suppose there are three disks Dx,Dy,Dz𝒱t1𝒱t2D_{x},D_{y},D_{z}\in\mathcal{V}_{t_{1}}\cup\mathcal{V}_{t_{2}} that pairwise intersect. We may assume that Dx,Dy𝒱t1D_{x},D_{y}\in\mathcal{V}_{t_{1}}. If Dz𝒱t1D_{z}\in\mathcal{V}_{t_{1}}, an induced subgraph G[{Dx,Dy,Dz}]G[\{D_{x},D_{y},D_{z}\}] of G[𝒱t1]G[\mathcal{V}_{t_{1}}] is a triangle. Then the partial solution 𝒮1\mathcal{S}_{1} of c[t1,𝒮]c[t_{1},\mathcal{S}] must hit one of the three disks Dx,DyD_{x},D_{y} and DzD_{z}. Otherwise, both DxD_{x} and DyD_{y} intersect with Dz𝒱t2𝒱t1D_{z}\in\mathcal{V}_{t_{2}}\setminus\mathcal{V}_{t_{1}}, which implies that Dx,Dy𝒟(t2)D_{x},D_{y}\in\mathcal{D}(t_{2}). Then, the partial solution 𝒮2\mathcal{S}_{2} of c[t2,𝒮]c[t_{2},\mathcal{S}] hits the triangle. For both cases, 𝒮1𝒮2\mathcal{S}_{1}\cup\mathcal{S}_{2} hits the set of three disks. Therefore, 𝒮1𝒮2\mathcal{S}_{1}\cup\mathcal{S}_{2} is a partial solution of c[t,𝒮]c[t,\mathcal{S}].

Now we compute all finite c[t,𝒮]c[t,\mathcal{S}] of node tt in 2O(w)2^{O(w)} time. The total time complexity is 2O(w)n2^{O(w)}n because the number of nodes in tree is O(wn)O(wn).    

Lemma 17.

Given a tree decomposition (T,β)(T,\beta) of GG of weighted treewidth ww, we can solve Feedback Vertex Set in 2O(w)n2^{O(w)}n time.

Proof. (Sketch.) A dynamic programming for Feedback Vertex Set is more involved because we need to maintain global connectivity information. In particular, for each node tt, each subset 𝒮\mathcal{S} of 𝒟(t)\mathcal{D}(t) and each partition 𝒫\mathcal{P} of 𝒟(t)𝒮\mathcal{D}(t)\setminus\mathcal{S}, we define the subproblem of Feedback Vertex Set as

c[t,𝒮,𝒫]=\displaystyle c[t,\mathcal{S},\mathcal{P}]= minSS𝒱t|𝒮| s.t G[𝒱t𝒮] is cycle-free, and\displaystyle\min_{S\subset S^{\prime}\subset\mathcal{V}_{t}}|\mathcal{S}^{\prime}|\text{ s.t }G[\mathcal{V}_{t}\setminus\mathcal{S}^{\prime}]\text{ is cycle-free, and} (1)
for each P𝒫, the vertices corresponding to disks in P\displaystyle\text{for each }P\in\mathcal{P},\text{ the vertices corresponding to disks in }P (2)
are contained in a same connected component ofG[𝒱tS]\displaystyle\text{are contained in a same }\text{connected component of}G[\mathcal{V}_{t}\setminus S^{\prime}] (3)

We say that the subproblem has a solution if such a superset 𝒮\mathcal{S}^{\prime} of 𝒮\mathcal{S} exists. Then we say 𝒮\mathcal{S}^{\prime} is a partial solution of c[t,𝒮,𝒫]c[t,\mathcal{S},\mathcal{P}]. Similar to Lemma 16, we have 2O(w)2^{O(w)} choices of 𝒮\mathcal{S} that c[t,𝒮,]c[t,\mathcal{S},\cdot] has a solution.

Intuitively, if 𝒮\mathcal{S}^{\prime} is a partial solution and D1,D2D_{1},D_{2} are contained in the same partition class of 𝒫\mathcal{P}, then two vertices of GG correspond to D1D_{1} and D2D_{2} are in the same connected component of G[𝒱tS]G[\mathcal{V}_{t}\setminus S^{\prime}]. However, the number of choices of 𝒫\mathcal{P} is wO(w)w^{O(w)} because |𝒱t𝒮|=O(w)|\mathcal{V}_{t}\setminus\mathcal{S}^{\prime}|=O(w). To reduce the number of subproblems we have to consider, we use a rank-based approach [7]. The rank-based approach ensures that for the fixed 𝒮\mathcal{S}, there are 2O(w)2^{O(w)} partitions among all possible wO(w)w^{O(w)} choices of 𝒫\mathcal{P} so that they cover all possibilities of the connected components of G[𝒱t𝒮]G[\mathcal{V}_{t}\setminus\mathcal{S}^{\prime}].

One small issue is that the rank-based approach is designed to get maximum connectivity whereas in Feedback Vertex Set we are aim to minimize the connectivity. As did in [7], we add a special universal vertex v0v_{0} to the graph G[𝒱t]G[\mathcal{V}_{t}] and increase the weighted width by 1. Now the task is to determine if there is a connected subgraph of G[𝒱t]G[\mathcal{V}_{t}] that contains v0v_{0} after deleting a partial solution 𝒮\mathcal{S}^{\prime} from G[𝒱t]G[\mathcal{V}_{t}]. In particular, the task is to compute maximum connectivity among graphs of k=O(w)k=O(w) vertices and k1k-1 edges. Now we use the rank-based approach and we compute 2O(w)2^{O(w)} partitions 𝒫\mathcal{P} for each node tt and each subset 𝒮𝒟(t)\mathcal{S}\subset\mathcal{D}(t). This completes the proof.    

Lemma 18.

Given a tree decomposition (T,β)(T,\beta) of GG of weighted treewidth ww, we can solve Odd Cycle Transversal in 2O(w)n2^{O(w)}n time.

Proof. (Sketch.) For each node tt and each function f:𝒟(t){0,1,2}f:\mathcal{D}(t)\rightarrow\{0,1,2\}, we define the subproblem of Odd Cycle Transversal as

c[t,f]=\displaystyle c[t,f]= ming|g1(0)| where g:𝒱t{0,1,2} s.t\displaystyle\min_{g}|g^{-1}(0)|\text{ where }g:\mathcal{V}_{t}\rightarrow\{0,1,2\}\text{ s.t}
g(x)=f(x) if x𝒟(t)&(x,y)E(G[𝒱t]),{g(x),g(y)}{1,2}\displaystyle g(x)=f(x)\text{ if }x\in\mathcal{D}(t)\And\forall(x,y)\in E(G[\mathcal{V}_{t}]),\{g(x),g(y)\}\neq\{1,2\}

Similar to Lemma 16, we say that g:𝒱t{0,1,2}g:\mathcal{V}_{t}\rightarrow\{0,1,2\} is a partial solution of c[t,f]c[t,f] if gg satisfies the conditions of the definition above. Also, we say gg is optimal if the size of |g1(0)||g^{-1}(0)| is minimum over all partial solutions of g[t,f]g[t,f]. Intuitively, as a solution gg of a subproblem c[t,f]c[t,f], we remember not only the set of disks to be deleted as in Lemma 16 but also the bipartition of 𝒱tf1(0)\mathcal{V}_{t}\setminus f^{-1}(0). The number of subproblems that have a solution is again 2O(w)2^{O(w)} because for each clique C𝒞(t)C\in\mathcal{C}(t), all but two vertices should be mapped to zero. We focus on the join nodes because the formulas of other categories can be obtained in a straightforward way. Similar to Triangle Hitting Set, we claim that the following formula holds:

c[t,f]=c[t1,f]+c[t2,f]|f1(0)|\displaystyle c[t,f]=c[t_{1},f]+c[t_{2},f]-|f^{-1}(0)|

The disk D1D_{1} in 𝒱t1𝒱t2\mathcal{V}_{t_{1}}\setminus\mathcal{V}_{t_{2}} and the disk D2D_{2} in 𝒱t2𝒱t1\mathcal{V}_{t_{2}}\setminus\mathcal{V}_{t_{1}} do not intersect by definition. Therefore, if gg is an optimal partial solution of c[t,f]c[t,f], the domain restriction g1g_{1} (and g2g_{2}) of gg with respect to 𝒱t1\mathcal{V}_{t_{1}} (and 𝒱t2\mathcal{V}_{t_{2}}) is a partial solution of c[t1,f]c[t_{1},f] (and c[t2,f]c[t_{2},f]). Conversely, the domain union of two optimal partial solutions g1g_{1} (and g2g_{2}) of c[t1,f]c[t_{1},f] (and c[t2,f]c[t_{2},f]) makes a partial solution of 𝒱t\mathcal{V}_{t} because g1(x)=g2(x)=f(x)g_{1}(x)=g_{2}(x)=f(x) for all x𝒟(v)x\in\mathcal{D}(v). This shows that the formula holds. Then Odd Cycle Transversal can be solved in 2O(w)nO(1)2^{O(w)}n^{O(1)} time.    

References

  • [1] Abu-Khzam, F.N.: A kernelization algorithm for dd-hitting set. Journal of Computer and System Sciences 76(7), 524–531 (2010)
  • [2] An, S., Oh, E.: Feedback Vertex Set on Geometric Intersection Graphs. In: Proceedings of the 32nd International Symposium on Algorithms and Computation (ISAAC 2021). pp. 47:1–47:12 (2021)
  • [3] Bandyapadhyay, S., Lochet, W., Lokshtanov, D., Saurabh, S., Xue, J.: Subexponential parameterized algorithms for cut and cycle hitting problems on H-minor-free graphs\star. In: Proceedings of the 2022 Annual ACM-SIAM Symposium on Discrete Algorithms (SODA). pp. 2063–2084. SIAM (2022)
  • [4] Bandyapadhyay, S., Lochet, W., Lokshtanov, D., Saurabh, S., Xue, J.: True contraction decomposition and almost eth-tight bipartization for unit-disk graphs. In: 38th International Symposium on Computational Geometry (SoCG 2022). vol. 224, pp. 11:1–11:16 (2022)
  • [5] de Berg, M., Bodlaender, H.L., Kisfaludi-Bak, S., Marx, D., Zanden, T.C.v.d.: A framework for Exponential-Time-Hypothesis–tight algorithms and lower bounds in geometric intersection graphs. SIAM Journal on Computing 49(6), 1291–1331 (2020)
  • [6] de Berg, M., Kisfaludi-Bak, S., Monemizadeh, M., Theocharous, L.: Clique-based separators for geometric intersection graphs. In: 32nd International Symposium on Algorithms and Computation (ISAAC 2021). pp. 22:1–22:15 (2021)
  • [7] Bodlaender, H.L., Cygan, M., Kratsch, S., Nederlof, J.: Deterministic single exponential time algorithms for connectivity problems parameterized by treewidth. Inf. Comput. 243, 86–111 (2015)
  • [8] Bonamy, M., Bonnet, E., Bousquet, N., Charbit, P., Giannopoulos, P., Kim, E.J., Rzążewski, P., Sikora, F., Thomassé, S.: EPTAS and subexponential algorithm for maximum clique on disk and unit ball graphs. Journal of the ACM 68(2) (2021)
  • [9] Breu, H., Kirkpatrick, D.G.: Unit disk graph recognition is NP-hard. Computational Geometry 9(1-2), 3–24 (1998)
  • [10] Cygan, M., Fomin, F.V., Kowalik, L., Lokshtanov, D., Marx, D., Pilipczuk, M., Pilipczuk, M., Saurabh, S.: Parameterized Algorithms. Springer Publishing Company, Incorporated (2015)
  • [11] Demaine, E.D., Fomin, F.V., Hajiaghayi, M., Thilikos, D.M.: Subexponential parameterized algorithms on bounded-genus graphs and H-minor-free graphs. Journal of the ACM (JACM) 52(6), 866–893 (2005)
  • [12] Fomin, F.V., Lokshtanov, D., Panolan, F., Saurabh, S., Zehavi, M.: Decomposition of map graphs with applications. In: Proceedings of the 46th International Colloquium on Automata, Languages, and Programming (ICALP 2019). pp. 60:1–60:15 (2019)
  • [13] Fomin, F.V., Lokshtanov, D., Panolan, F., Saurabh, S., Zehavi, M.: Finding, hitting and packing cycles in subexponential time on unit disk graphs. Discrete & Computational Geometry 62(4), 879–911 (2019)
  • [14] Fomin, F.V., Lokshtanov, D., Saurabh, S.: Bidimensionality and geometric graphs. In: Proceedings of the Twenty-Third Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 2012). pp. 1563–1575 (2012)
  • [15] Li, J., Nederlof, J.: Detecting feedback vertex sets of size kk in O(2.7k)O^{*}(2.7k) time. In: Proceedings of the Fourteenth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 2022). pp. 971–989 (2020)
  • [16] Lokshtanov, D., Narayanaswamy, N., Raman, V., Ramanujan, M., Saurabh, S.: Faster parameterized algorithms using linear programming. ACM Transactions on Algorithms (TALG) 11(2), 1–31 (2014)
  • [17] Lokshtanov, D., Panolan, F., Saurabh, S., Xue, J., Zehavi, M.: Subexponential parameterized algorithms on disk graphs (extended abstract). In: Proceedings of the 2022 Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 2022). pp. 2005–2031
  • [18] Lokshtanov, D., Saurabh, S., Wahlström, M.: Subexponential parameterized odd cycle transversal on planar graphs. In: IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science (FSTTCS 2012). Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2012)
  • [19] Rosenberger, H.: Order-kk voronoi diagrams of sites with additive weights in the plane. Algorithmica 6(1), 490–521 (1991)
  • [20] Wahlström, M.: Algorithms, measures and upper bounds for satisfiability and related problems. Ph.D. thesis, Department of Computer and Information Science, Linköpings universitet (2007)