Decomposition of Map Graphs with Applications

LIPICS - Leibniz International Proceedings in Informatics, Jul 2019

Bidimensionality is the most common technique to design subexponential-time parameterized algorithms on special classes of graphs, particularly planar graphs. The core engine behind it is a combinatorial lemma of Robertson, Seymour and Thomas that states that every planar graph either has a sqrt{k} x sqrt{k}-grid as a minor, or its treewidth is O(sqrt{k}). However, bidimensionality theory cannot be extended directly to several well-known classes of geometric graphs like unit disk or map graphs. This is mainly due to the presence of large cliques in these classes of graphs. Nevertheless, a relaxation of this lemma has been proven useful for unit disk graphs. Inspired by this, we prove a new decomposition lemma for map graphs, the intersection graphs of finitely many simply-connected and interior-disjoint regions of the Euclidean plane. Informally, our lemma states the following. For any map graph G, there exists a collection (U_1,...,U_t) of cliques of G with the following property: G either contains a sqrt{k} x sqrt{k}-grid as a minor, or it admits a tree decomposition where every bag is the union of O(sqrt{k}) cliques in the above collection. The new lemma appears to be a handy tool in the design of subexponential parameterized algorithms on map graphs. We demonstrate its usability by designing algorithms on map graphs with running time 2^{O({sqrt{k}log{k}})} * n^{O(1)} for Connected Planar F-Deletion (that encompasses problems such as Feedback Vertex Set and Vertex Cover). Obtaining subexponential algorithms for Longest Cycle/Path and Cycle Packing is more challenging. We have to construct tree decompositions with more powerful properties and to prove sublinear bounds on the number of ways an optimum solution could "cross" bags in these decompositions. For Longest Cycle/Path, these are the first subexponential-time parameterized algorithm on map graphs. For Feedback Vertex Set and Cycle Packing, we improve upon known 2^{O({k^{0.75}log{k}})} * n^{O(1)}-time algorithms on map graphs.

A PDF file should load here. If you do not see its contents the file may be temporarily unavailable at the journal website or you do not have a PDF plug-in installed and enabled in your browser.

Alternatively, you can download the file locally and open with any standalone PDF reader:

http://drops.dagstuhl.de/opus/volltexte/2019/10636/pdf/LIPIcs-ICALP-2019-60.pdf

Decomposition of Map Graphs with Applications

I C A L P Decomposition of Map Graphs with Applications Meirav Zehavi 0 1 2 3 4 Category Track A: Algorithms, Complexity and Games 0 Ben-Gurion University of the Negev , Beer-Sheva , Israel 1 Saket Saurabh The Institute of Mathematical Sciences , HBNI, Chennai , India 2 Fedor V. Fomin University of Bergen , Norway 3 Fahad Panolan University of Bergen , Norway 4 Daniel Lokshtanov University of California , Santa Barbara , USA Bidimensionality is the most common technique to design subexponential-time parameterized algorithms on special classes of graphs, particularly planar graphs. The core engine behind it is a combinatorial lemma of Robertson, Seymour and Thomas that states that every planar graph either has a ?k ? ?k-grid as a minor, or its treewidth is O(?k). However, bidimensionality theory cannot be extended directly to several well-known classes of geometric graphs like unit disk or map graphs. This is mainly due to the presence of large cliques in these classes of graphs. Nevertheless, a relaxation of this lemma has been proven useful for unit disk graphs. Inspired by this, we prove a new decomposition lemma for map graphs, the intersection graphs of finitely many simply-connected and interior-disjoint regions of the Euclidean plane. Informally, our lemma states the following. For any map graph G, there exists a collection (U1, . . . , Ut) of cliques of G with the following property: G either contains a ?k ? ?k-grid as a minor, or it admits a tree decomposition where every bag is the union of O(?k) cliques in the above collection. The new lemma appears to be a handy tool in the design of subexponential parameterized algorithms on map graphs. We demonstrate its usability by designing algorithms on map graphs with running time 2O(?k log k) ? nO(1) for Connected Planar F -Deletion (that encompasses problems such as Feedback Vertex Set and Vertex Cover). Obtaining subexponential algorithms for Longest Cycle/Path and Cycle Packing is more challenging. We have to construct tree decompositions with more powerful properties and to prove sublinear bounds on the number of ways an optimum solution could ?cross? bags in these decompositions. For Longest Cycle/Path, these are the first subexponential-time parameterized algorithm on map graphs. For Feedback Vertex Set and Cycle Packing, we improve upon known 2O(k0.75 log k) ? nO(1)-time algorithms on map graphs. 2012 ACM Subject Classification Theory of computation ? Parameterized complexity and exact algorithms; Theory of computation ? Computational geometry Acknowledgements This work is supported by the European Research Council (ERC) via grant LOPPRE, reference 819416, the Norwegian Research Council via project MULTIVAL, and Israel Science Foundation individual research grant no. 1176/18. and phrases Longest Cycle; Cycle Packing; Feedback Vertex Set; Map Graphs; FPT - 60:2 1 Introduction In this paper, we develop new proof techniques to design parameterized subexponential time algorithms for problems on map graphs, particularly problems that involve hitting or connectivity constraints. The class of map graphs was introduced by Chen, Grigni, and Papadimitriou [7, 8] as a modification of the class of planar graphs. Roughly speaking, map graphs are graphs whose vertices represent countries in a map, where two countries are considered adjacent if and only if their boundaries have at least one point in common; this common point can be a single common point rather than necessarily an edge as standard planarity requires. Formally, a map M is a pair (E , ?) defined as follows : E is a plane graph (i.e., a planar graph with an embedding) where each connected component of E is biconnected, and ? is a function that maps each face f of E to 0 or 1. A face f of E is called nation if ?(f ) = 1 and lake otherwise. The graph associated with M is the simple graph G where V (G) consists of the nations of M, and E(G) contains {f1, f2} for every pair of faces f1 and f2 that are adjacent (that is, share at least one vertex). Accordingly, a graph G is called a map graph if there exists a map M such that G is the graph associated with M. Every planar graph is a map graph [7, 8], but the converse does not hold true. Moreover, map graphs can have cliques of any size and thus they can be ?highly non-planar?. These two properties of map graphs can be contrasted with those of H-minor free graphs and unit disk graphs: the class of H-minor free graphs generalizes the class of planar graphs, but can only have cliques of constant size (where the constant depends on H), while the class of unit disk graphs does not generalize the class of planar graphs, but can have cliques of any size. At least in this sense, map graphs offer the best of both worlds. Nevertheless, this comes at the cost of substantial difficulties in the design of efficient algorithms on them. Arguably, the two most natural and central algorithmic questions concerning map graphs are as follows. First, we would like to efficiently recognize map graphs, that is, determine whether a given graph is a map graph. In 1998, Thorup [29] announced the existence of a polynomial-time algorithm for map graph recognition. Although this algorithm is complicated and its running time is about O(n120), where n is the number of vertices of the input graph, no improvement has yet been found; the existence of a simpler or faster algorithm for map graph recognition has so far remained an important open question in the area (see, e.g., [9]). The second algorithmic question ? or rather family of algorithmic questions ? concerns the design of efficient algorithms for various optimization problems on map graphs. Most well-known problems that are NP-complete on general graphs remain NP-complete when restricted to planar (and hence on map) graphs. Nevertheless, a large number of these problems can be solved faster or ?better? when restricted to planar graphs. For example, nowadays we know of many problems that are APX-hard on general graphs, but which admit polynomial time approximation schemes (PTASes) or even efficient PTASes (EPTASes) on planar graphs (see, e.g., [4, 14, 15, 22]). Similarly, many parameterized problems that on general graphs cannot be solved in time 2o(k) ? nO(1) unless the Exponential Time Hypothesis (ETH) of Impagliazzo, Paturi and Zane [24] fails, admit parameterized subexponential-time algorithms on planar graphs (see, e.g., [1, 2, 14, 27]). It is compelling to ask whether the algorithmic results and techniques for planar graphs can be extended to map graphs. For approximation algorithms, Chen [6] and Demaine et al. [12] developed PTASes for the Maximum Independent Set and Minimum r-Dominating Set problems on map graphs. Moreover, Fomin et al. [21, 22] developed an EPTAS for Treewidth-? Modulator for any fixed constant ? ? 0, which encompasses Feedback Vertex Set (FVS) and Vertex Cover (VC). For parameterized subexponential-time algorithms on map graphs, the situation is less explored. While on planar graphs there are general algorithmic methods ? in particular, the powerful theory of bidimensionality [15, 13] ? to design parameterized subexponential-time algorithms, we are not aware of any general algorithmic method that can be easily adapted to map graphs. Demaine et al. [12] gave a parameterized algorithm for Dominating Set, and more generally for (k, r)-Center, with running time 2O(r log r?k)nO(1) on map graphs. Moreover, Fomin et al. [21, 22] gave 2O(k0.75 log k)nO(1)-time parameterized algorithms for FVS and Cycle Packing on map graphs. Additionally, Fomin et al. [21, 22] noted that the same approach yields 2O(k0.75 log k)nO(1)-time parameterized algorithms for Vertex Cover and Connected Vertex Cover (CVC) on map graphs. However, the existence of a parameterized subexponential-time algorithm for Longest Path/Cycle on map graphs was left open. (In these problems we are asked whether an n-vertex graph contains a path/cycle of length at least k.) Furthermore, time complexities of 2O(k0.75 log k)nO(1), although having subexponential dependency on k, remain far from time complexities of 2O(?k log k)nO(1) and 2O(?k)nO(1) that commonly arise for planar graphs [27]. We remark that time complexities of 2O(?k log k)nO(1) and 2O(?k)nO(1) are particularly important since they are often known to be essentially optimal under the aforementioned ETH [27]. In the field of Parameterized Complexity, Longest Path/Cycle , FVS and Cycle Packing serve as testbeds for development of fundamental algorithmic techniques such as color-coding [3], methods based on polynomial identity testing [25, 26, 30, 5], cut-andcount [11], and methods based on matroids [19]. By combining the bidimensionality theory of Demaine et al. [13] with efficient algorithms on graphs of bounded treewidth [17, 10], Longest Path/Cycle, Cycle Packing and FVS are solvable in time 2O(?k)nO(1) on planar graphs. Furthermore, the parameterized subexponential-time ?tractability? of these problems can be extended to graphs excluding some fixed graph as a minor [15]. Our results. We design parameterized subexponential-time algorithms with running time 2O(?k log k) ? nO(1) for a number of natural and well-studied problems on map graphs. Let F be a family of connected graphs that contains at least one planar graph. Then Connected Planar F -Deletion (or just F -Deletion) is defined as follows. The input is a graph G and a non-negative integer k, and our objective is to test whether there exists a set S of at most k vertices such that G ? S does not contain any of the graphs in F as a minor. F -Deletion is a general problem and several problems such as VC, FVS, Treewidth-? Vertex Deletion, Pathwidth-? Vertex Deletion, Treedepth-? Vertex Deletion, Diamond Hitting Set and Outerplanar Vertex Deletion are its special cases. We give the first parameterized subexponential algorithm for this problem on map graphs, which runs in time 2O(?k log k) ? nO(1). Our approach for F -Deletion also directly extends to yield 2O(?k log k) ? nO(1)-time parameterized algorithms for CVC and Connected Feedback Vertex Set (CFVS) on map graphs. (In this versions we are asked if there is a connected vertex cover or a feedback vertex set of size at most k.) With additional ideas, we derive the first subexponential-time parameterized algorithm on map graphs for Longest Path/Cycle. Our technique also allows to improve the running time for Cycle Packing (does a map graph contains at least k vertex-disjoint cycles) from 2O(k0.75 log k) ? nO(1) to 2O(?k log k) ? nO(1). Our results are summarized in Table 1. Our methods. The starting point of our study is the technique of bidimensionality [15, 13]. The core engine behind this technique is a combinatorial lemma of Robertson, Seymour and Thomas [28] that states that every planar graph either has a ?k ? ?k-grid as a minor, or its treewidth is O(?k). Unfortunately, a clique on k ? 1 vertices has no ?k ? ?k-grid as a minor and its treewidth is k ? 2. Because classes of geometric graphs such as unit disk graphs and map graphs can have arbitrarily large cliques, the combinatorial lemma is inapplicable to them. Nevertheless, a relaxation of this lemma has been proven useful for unit disk graphs. Specifically, every unit disk graph G has a natural partition (U1, . . . , Ut) of V (G) such that each part induces a clique with ?nice? properties ? in particular, it has neighbors only in a constant number (to be precise, this constant is at most 24) of other parts; it was shown that G either has a ?k ? ?k-grid as a minor, or it has a tree decomposition where every bag is the union of O(?k) of these cliques [20]. In particular, given a parameterized problem where any two cliques have constant-sized ?interaction? in a solution, it is implied that any bag has O(?k)-sized ?interaction? with all other bags in a solution. For any map graph G, there also exists a natural collection of subsets of V (G) that induce cliques with ?nice? properties. However, not only are these cliques not vertex disjoint, but each of these cliques can have neighbors in arbitrarily many other cliques. In this paper, we first prove that every map graph either has a ?k ? ?k-grid as a minor, or it has a tree decomposition where every bag is the union of O(?k) of the cliques in the above collection. For F -Deletion, CVC, and CFVS, this combinatorial lemma alone already suffices to design 2O(?k log k) ? nO(1)-time algorithms on map graphs. Indeed, we can choose a fixed constant c > 0 so that in case we have a c?k ? c?k-grid as a minor, there does not exist a solution, and otherwise we can solve the problem by using dynamic programming over the given tree decomposition. Specifically, since every bag is the union of O(?k) cliques, and the size of each clique is upper bounded by O(k) (once we know that no c?k ? c?k-grid exists), only O(?k) vertices in the bag are not to be taken into a solution ? there are only 2O(?k log k) choices to select these vertices, and once they are selected, the information stored about the remaining vertices is the same as in normal dynamic programming over a tree decomposition of O(?k) width. This approach already substantially improves upon the previously best known algorithms for FVS, VC and CVC of Fomin et al. [21, 22]. However, 2O(?k log k) ? nO(1)-time algorithms for Longest Path/Cycle and Cycle Packing on map graphs require more efforts. The main reason why we cannot apply the same arguments as for unit disk graphs is the following. Recall that for unit disk graphs, given a parameterized problem where any two cliques have constant-sized ?interaction? in a solution (in our case, this means a path/cycle on at least k vertices, or a cycle packing of k cycles), it is implied that any bag has O(?k)-sized ?interaction? with all other bags in a solution. Here, interaction between two cliques refers to the number of edges in a solution ?passing? between these two cliques; similarly, interaction between a bag B and a collection of other bags refers to the number of edges in a solution that have one endpoint in B and the other endpoint in some bag in the collection. In this context, dealing with map graphs is substantially more difficult than dealing with unit disk graphs. In map graphs vertices in a clique can have neighbors in arbitrarily many other cliques in the collection rather than only in a constant number as in unit disk graphs. This is why it is difficult to obtain an O(?k)-sized ?interaction? as for unit disk graphs. Hence, we are forced to take a different approach for map graphs by bounding ?the interaction within a clique across all the bags of a decomposition?. Towards this, we first need to strengthen our tree decomposition. To explain the new properties required, we note that every clique in the aforementioned collection of cliques, say K, is either a single vertex or the neighborhood of some ?special vertex? in an exterior bipartite graph (see Section 2). Further, every vertex of G occurs as a singleton in K. We construct our decomposition in a way such that every bag is not necessarily a union of O(?k) cliques in K, but a union of carefully chosen subcliques of O(?k) cliques in K (with one subclique for each of these O(?k) cliques); subcliques of the same clique chosen in different bags may be different. We then prove properties that roughly state that, if we look at the collection of bags that include some vertex v of G, then this collection induces a subtree and a path as follows: (?) the subtree consists of the bags that correspond to the singleton clique v, and the path goes ?upwards? (in the tree decomposition) from the root of this subtree. We thereby implicitly derive that in every bag B, every subclique of size larger than 1 can only have as neighbors vertices that are (i) in the bag B itself or in one of its descendants, or (ii) in cliques that have a subclique in the bag B. In particular, this means that if we prove that there exists a solution such that for any clique K in K, the number of edges in E(K) that ?cross any bag B? (i.e., the edges in E(K) with one endpoint in B and the other in the collection of all bags that are not descendants of B) is a constant, then we obtain a bound of O(?k) on the interaction between any bag B and the collection of all bags that are not descendants of B. We prove the mentioned statement using property (?). The proof that such a property simultaneously holds for all cliques and all bags is the most challenging part of the proof. In Section 3 we give our special tree decomposition of map graphs and in Section 4 we explain its application in the algorithm for Longest Cycle on map graphs. For the proofs of results marked with ? and all other results we refer to the full version of the paper. 2 Preliminaries For any t ? N, we use [t] and [t]0 as shorthands for {1, 2, . . . , t} and {0, 1, . . . , t}, respectively. For a set U , we use 2U to denote the power set of U . For a sequence ? = x1x2 . . . xn and any 1 ? i ? j ? n, the sequence ?0 = xi . . . xj is called a segment of ?. For a sequence ? = x1x2 . . . xn and a subset Z ? {x1, . . . , xn}, the restriction of ? on Z, denoted by ?|Z , is the sequence obtained from ? by deleting the elements of {x1, . . . , xn} \ Z. Graphs. We use standard notation and terminology from the book of Diestel [16] for graph related terms. Given a graph G, let V (G) and E(G) denote its vertex-set and edge-set, respectively. For a set Q of graphs we slightly abuse terminology and let V (Q) and E(Q) denote the union of the sets of vertices and edges of the graphs in Q, respectively. For a vertex subset X ? V (G) in a graph G, E(X) denotes the set {{u, v} ? E(G) : u, v ? X}. For a graph G and a degree-2 vertex v ? V (G), by contracting v, we mean deleting v from G and adding an edge between the two neighbors of v in G. A binary tree is a rooted tree where each node has at most two children. In a labelled binary tree, for each node with two children one of the children is labelled as ?left child? and the other child is labelled as ?right child?. A postorder transversal of a labelled binary tree T is the sequence ? of V (T ) where for each node t ? V (T ), t appears after all its descendants, and if t has two children, then the nodes in the subtree rooted at the left child appear before the nodes in the subtree rooted at the right child. For a binary tree T , we say that a sequence ? of V (T ) is a postorder transversal if there is a labelling of T such that ? is its postorder transversal. I Definition 2.1 (Treewidth). A tree decomposition of a graph G is a pair T = (TT , ?T ), where T is a rooted tree and ?T is a function from V (TT ) to 2V (G), that satisfies the following three conditions. (We use the term nodes to refer to the vertices of TT .) (a) Sx?V (TT ) ?T (x) = V (G). (b) For every edge {u, v} ? E(G), there exists x ? V (TT ) such that {u, v} ? ?T (x). (c) For every vertex v ? V (G), the set of nodes {t ? V (TT ) : v ? ?T (t)} induces a (connected) subtree of TT . The width of T is maxx?V (TT ) |?T (x)| ? 1. Each set ?T (x) is called a bag. Moreover, ?T (x) denotes the union of the bags of x and its descendants. The treewidth of G is the minimum width among all possible tree decompositions of G, and it is denoted by tw(G). I Definition 2.2. A tree decomposition T = (TT , ?T ) of a graph G is nice if for the root r of TT , it holds that ?T (r) = ?, and each node v ? V (TT ) is of one of the following types. Leaf: v is a leaf in TT and ?T (v) = ?. This bag is labelled with leaf. Forget vertex: v has exactly one child u, and there exists a vertex w ? ?T (u) such that ?T (v) = ?T (u) \ {w}. This bag is labelled with forget (w). Introduce vertex: v has exactly one child u, and there exists a vertex w ? ?T (v) such that ?T (v) \ {w} = ?T (u). This bag is labelled with introduce(w). Join: v has exactly two children, u and w, and ?T (v) = ?T (u) = ?T (w). This bag is labelled with join. We will use the following folklore observation and proposition in the later sections. I Observation 2.3. Let T be a nice tree decomposition of a graph G. For any v ? V (G), there is exactly one node t ? V (TT ) such that t is labelled with forget(v). I Proposition 2.4 (Theorem 7.23 in [10], [23, 28]). There exists an O(n2) time algorithm that given an n-vertex planar graph G and t ? N, either outputs a (nice) tree decomposition of G of width less than 5t, or constructs a t ? t grid minor in G. Map graphs. Map graphs are the intersection graphs of finitely many connected and interiordisjoint regions of the Euclidean plane. Map graphs can be represented as the half-squares of planar bipartite graphs. For a bipartite graph B with bipartition V (B) = W ] U , the half-square of B is the graph G with vertex set W and edge set is defined as follows: two vertices in W are adjacent in G if they are at distance 2 in B. It is known that the half-square of a planar bipartite graph is a map graph [7, 8]. Moreover, for any map graph G, there exists a planar bipartite graph B such that G is a half-square of B [7, 8]; we refer to such B as a planar bipartite graph corresponding to the map graph G (see Figure 1). Throughout this paper, we assume that any input map graph G is given with a corresponding planar bipartite graph B. This assumption is made without loss of generality in the sense that if G is given with an embedding instead to witness that it is a map graph, then B is easily computable in linear time [7, 8]. We remark that we consider map graphs as simple graphs, that is, there are no multiple edges between two vertices u and v, even if there are two or more internally vertex-disjoint paths of length 2 between u and v in B. For a map graph G with a corresponding planar bipartite graph B having bipartition V (B) = W ] U , we refer to the vertices in W = V (G) simply as vertices and the vertices in U as special vertices. ? ? ? ? (a) A map M. v4? v3? ? r v4 ? v3 ? ?v1 ?v2 ?v1 ?v2 (b) A map graph G associated with M. (c) A corresponding planar bipartite graph B of the map graph G. Here, red colored vertices are special vertices. (odf )wAidtthre<e d2e.coTmhpeosnitoidoens Dcol=ore(dTDb,lu?eD,)gorefeBn, red, and yellow are labelled with introduce(vi), introduce(r), forget(vi) and join, resp. r Moreover, we denote the special vertices by S(G). Notice that for any s ? S(G), NB(s) forms a clique in G; we refer to these cliques as special cliques of G. We remark that the collection K of cliques mentioned in Section 1 refers to {NB(s) : s ? S(G)} ? {{v} : v ? V (G)}. 3 Few Cliques Tree Decomposition of Map Graphs In this section, we define a special tree decomposition for map graphs. This decomposition will be derived from a tree decomposition of the bipartite planar graph corresponding to the given map graph. Once we have defined our new decomposition, we will gather a few of its structural properties that will be useful in designing fast subexponential time algorithms. I Definition 3.1. Let G be a map graph with a corresponding planar bipartite graph B. Let D = (TD, ?D) be a tree decomposition of B of width less than `. A pair D0 = (TD0 , ?D0 ) is called the `-few cliques tree decomposition derived from D, or simply an (`, D)-FewCliTD, if it is constructed as follows (see Figure 2). 1. The tree TD0 is equal to TD. Whenever D0 and D are clear from context, we denote both TD0 and TD by T . 2. For each node t ? V (T ), ?D0 (t) = (?D(t) ? V (G)) ? (Ss??D(t)?S(G) NB(s) ? ?D(t)). That is, for each node t ? V (T ), we derive ?D0 (t) from ?D(t) by replacing every special vertex s ? ?D(t) ? S(G) by NB(s) ? ?D(t). In words, the second item states that for every vertex v ? V (G) and node t ? V (T ), we have that v ? ?D0 (t) if and only if either (i) v ? ?D(t) ? V (G) or (ii) v ? NB(s) for some s ? S(G) ? ?D(t) and v ? ?D(t0) for some node t0 in the subtree of T rooted at t. We can prove that the (`, D)-FewCliTD (T, ?D0 ) in Definition 3.1 is a tree decomposition of G (see the full version of the paper for a proof). We remark that if we replace the term NB(s) ? ?D(t) by the term NB(s) in the second item of Definition 3.1, then we still derive a tree decomposition, but then some of the properties proved later do not hold true. To simplify statements ahead, from now on, we have the following notation. Throughout the section, we fix a map graph G, a corresponding planar bipartite graph B of G, an integer ` ? N, a nice tree decomposition D of B of width less than ` and an `-few cliques tree decomposition D0 of G derived from D using Definition 3.1 Recall that T = TD = TD0 and that for each node t ? V (T ), ?D0 (t) was obtained from ?D(t) by replacing every special vertex s ? S(G) with NB(s) ? ?D(s). I Definition 3.2. For a node t ? V (T ), we use Original(t) to denote the set ?D(t) ? ?D0 (t), Fake(t) to denote the set ?D0 (t) \ ?D(t), and Cliques(t) to denote the set {NB(s) : s ? S(G) ? ?D(t)} of special cliques of G. Informally, for a node t ? V (T ), Original(t) denotes the set of vertices of V (G) present in the bag ?D(t), Fake(t) denotes the set of ?new? vertices added to ?D0 (t) while replacing special vertices in ?D(t), and Cliques(t) is the set of special cliques in G that consist of one for each special vertex s ? ?D(t). For example, let t be the node in Figure 1d that is labelled with forget(v1) by D. Then, Original(t) = ?, Fake(t) = {v1} and Cliques(t) = {{v1, . . . , v4}}. In the remainder of this section we prove properties related to D and D0, which we use later in the paper. Towards the formulation of the first property, consider the tree decomposition D0 in Figure 2 and the set of its nodes whose bags contain the vertex v1 as a ?fake? vertex. This set of nodes forms a path with one end-vertex being the unique node tv1 of T labelled with forget(v1) by D and the other end-vertex being an ancestor of tv1 . In fact, the set of nodes Q = {t ? V (T ) : v1 ? Fake(t) and r ? ?D(t)} forms the unique path in T from tv1 to tr where tr is the unique child of the node labelled with forget(r) by D. This observation is abstracted and formalized in the following lemma. I Lemma 3.3. Let v ? V (G) and s ? S(G) such that v ? NB(s) and Q = {t ? V (T ) : v ? Fake(t) and s ? ?D(t)} =6 ?. Let x be the node in T labelled with forget(v) by D, and y be the unique child of the node labelled with forget(s) by D. Then, y is an ancestor of x, and Q induces a path in T which is the unique path between x and y in T . Proof. First, we prove that Q induces a (connected) subtree of T . Suppose not. Then, there exist two connected components C1 and C2 of T [Q] such that there exists a path P in T from a vertex in C1 to a vertex in C2 whose internal vertices all belong to V (T ) \ Q. By Property (c) of the tree decomposition D, we have that s ? ?D(t) for any t ? V (P ). Moreover, there is an internal vertex w of P such that w is an ancestor of one of the end-vertices of P . This implies that v ? ?D(w), because v belong to the bags of the endpoints of P (by the definition of Q and Fake). As we have also shown that s ? ?D(t) for all t ? V (P ), this implies that w ? Q, which is a contradiction. Hence, we have proved that T [Q] is connected. Next, we prove that T [Q] is a path such that one of its endpoints is a descendant of the other. Towards this, it is enough to prove that (i) for any distinct t, t0 ? Q, either t is a descendant of t0 or t0 is a descendant of t. For the sake of contradiction, assume that there exist t, t0 ? Q such that neither t is a descendent of t0 nor t0 is a descendent of t. By the definition of Q and because t, t0 ? Q, we have that v ? ?D(t) and v ? ?D(t0). Thus by Property (c) of the tree decomposition D, we have that v ? ?D(t) and v ? ?D(t0). Because v ? Fake(t) and v ? Fake(t0), this is a contradiction to the definition of Fake. It remains to prove that y is an ancestor of x and that x and y are endpoints of T [Q]. First, we prove that x is an end-vertex of the path T [Q]. Let x0 be the only child of x. To prove x is an end-vertex of the path T [Q], it is enough to show that x ? Q and x0 ?/ Q. Since x is labelled with forget(v) by D, we have that v ?/ ?D(x), v ? ?D(x0), and v ? ?D(x). This implies that v ? Original(x0) and hence x0 ?/ Q. Now, we prove that x ? Q. For this purpose, let R = {t ? V (T ) : s ? ?D(t)}. Clearly, Q ? R. By Property (c) of the tree decomposition D, we have that T [R] is connected. We have already proved that T [Q] is a path and since Q ? R, T [Q] is a path in T [R]. Since x is labelled with forget(v) by D, for any node x00 in the subtree rooted at x and x00 6= x, either v ? ?D(x00) or v ?/ ?D(x00) (this fact follows from Property (c) of D). This implies that Q contains no node in the subtree of T rooted at x and not equal to x. Moreover, observe that there exists a node x? in the subtree of T rooted ? v1 v2 v3 v4 join forget({v1, v2, v3, v4}) v1v2 v3 v4 join v1 v1 v1 v2 v2 v2 v3 v3 v3 v4 fake introduce(vi) v4 redundant v4 introduce(vi) at x such that {s, v} ? ?D(x?) and hence x? ? R. Now, since Q is non-empty and T [Q] is connected, we have that s ? ?D(x). Since v ?/ ?D(x), v ? ?D(x) and s ? ?D(x), we conclude that x ? Q. Thus, we have proved that x is an end-vertex of the the path T [Q]. Next we prove that y is the other end-vertex of the path T [Q] and y is an ancestor of x. Since y is the only child of the node y0 labelled with forget(s), we have that s ? ?D(y) and s ?/ ?D(y0). This implies that y0 ?/ Q. Thus to prove that y is an end-vertex of the path T [Q], it is enough to prove that y ? Q. Since s ? ?D(x), s ? ?D(y), s ?/ ?D(y0) and y0 is the parent of y, by Property (c) of D, we have that y is an ancestor of x. This also implies that v ? ?D(y) and v ?/ ?D(y). Hence, y ? Q. This completes the proof of the lemma. J In the next lemma we show that for any special vertex s ? S(G) and any node t in T labelled with introduce(s) by D, it holds that t and its child carry the ?same information?. I Lemma 3.4 (?). Let s ? S(G) and t be a node in T labelled with introduce(s) by D. Let t0 be the only child of t. Then, Original(t) = Original(t0) and Fake(t) = Fake(t0). Next, we see a property of nodes t ? V (T ) labelled with join. I Lemma 3.5 (?). Let t be a node in T labelled with join by D, and t1 and t2 are its children. Then, Original(t) = Original(t1) = Original(t2), Cliques(t) = Cliques(t1) = Cliques(t2), Fake(t1) ? Fake(t2) = ?, and Fake(t) = Fake(t1) ? Fake(t2). Now, we define a notion of nice `-few cliques tree decomposition of G as the tree decomposition of G derived from a nice tree decomposition D of B of width < ` (see Definition 3.1) with additional labeling of nodes. In what follows, we describe this additional labeling of nodes. Towards this, observe that because of Lemma 3.4, for any special vertex s ? S(G) and any node t ? V (T ) labelled with introduce(s) by D, the bags ?D0 (t) and ?D0 (t0) carry the ?same information? where t0 is the only child of t. Informally, one may choose to handle these nodes by contracting them. However, to avoid redundant proofs ahead, instead of getting rid of such nodes, we label them with redundant in D0. Next, we explain how to label other nodes of T in the decomposition D0 (see Figure 2). To this end, let t ? V (T ). If t is labelled with leaf by D, then we label t with leaf. Here, ?D0 (t) = ?. If t is labelled with introduce(v) by D for some v ? V (G), then we label t with introduce(v). In this case, t has only one child t0 in T and ?D0 (t) \ {v} = ?D0 (t0). If t is labelled with forget(v) by D for some v ? V (G) and v ? Fake(t), then we label t with fake introduce(v). In this case, t has only one child t0 and ?D0 (t) = ?D0 (t0), but Original(t) = Original(t0) \ {v} and Fake(t) = Fake(t0) ? {v}. If t is labelled with forget(v) by D for some v ? V (G) and v ?/ Fake(t), then we label t with forget(v). In this case, t has only one child t0, ?D0 (t) = ?D0 (t0) \ {v}, Original(t) = Original(t0) \ {v} and Fake(t) = Fake(t0). Suppose t is labelled with forget(s) by D for some s ? S(G). Then, t has only one child t0. Here, we label t with forget(?D0 (t0) \ ?D0 (t)). In this case, Fake(t) ? Fake(t0) and Original(t) = Original(t0). If t is labelled with join by D, then we label t with join. Let t1 and t2 be the children of t. Then, Original(t) = Original(t1) = Original(t2), Cliques(t) = Cliques(t1) = Cliques(t2), Fake(t1) ? Fake(t2) = ?, and Fake(t) = Fake(t1) ? Fake(t2). (See Lemma 3.5). If t is labelled with introduce(s) for some s ? S(G), then we label t with redundant. This completes the definition of the nice `-few cliques tree decomposition of G derived from D, to which we simply call an (`, D)-NFewCliTD. Notice that for each node t in T , |Original(t)| + |Cliques(t)| ? `. That is, for any node t ? V (T ), there exist i, j ? N such that i + j ? `, the cardinality of Original(t) is at most i, and the vertices in ?D0 (t) \ Original(t) were obtained from at most j special cliques. From now on, we assume that D0 is an (`, D)-NFewCliTD of a map graph G. Since the number of nodes with label forget(v) in the tree decomposition D is exactly one for any v ? V (B) (see Observation 2.3), at most one node in T is labelled with fake introduce(v) in D0. This is formally stated in the following observation. I Observation 3.6. Let t ? V (T ) and v ? Fake(t). Then, (i) there is a unique node t0 ? V (T ) such that t0 is labelled with fake introduce(v) in D0, (ii) t is an ancestor of t0 or t = t0, and (iii) for any node t00 in the unique path between t and t0, we have that v ? Fake(t00). The correctness of Observation 3.6 follows from Observation 2.3 and Lemma 3.3. The discussion above, along with Proposition 2.4, implies the following lemma. I Lemma 3.7 (?). Given a map graph G, a corresponding planar bipartite graph B, and an integer ` ? N, in time O(n2), one can either correctly conclude that B contains an ` ? ` grid as a minor, or compute a nice tree decomposition D of B of width less than 5` and a (5`, D)-NFewCliTD of G. Lastly, we prove an important property of D0. In particular, the edges considered in the following lemma are precisely those that connect the vertices ?already seen? (when we use dynamic programming (DP)) with vertices to ?see in the future?. I Lemma 3.8. For any node t ? V (T ), the edges with one endpoint in ?D0 (t) and other in V (G) \ ?D0 (t) are of two kinds: (i) edges incident with vertices in Original(t), and (ii) edges belonging to some special clique in Cliques(t) (these edges are incident to vertices in Fake(t)). Proof. Fix t ? V (T ). Since D0 is a tree decomposition of G, for any edge e ? E(G) with one endpoint in ?D0 (t) and other in V (G) \ ?D0 (t), the endpoint of e in ?D0 (t) should belong to ?D0 (t). Let u be the endpoint of e that belongs to ?D0 (t), and v be the other endpoint of e. Notice that the set ?D0 (t) is partitioned into Original(t) and Fake(t), so u belongs to either Original(t) or Fake(t), and in the former case we are done. We now assume that u ? Fake(t). Since {u, v} = e ? E(G), there is a special vertex s ? S(G) such that {u, s}, {v, s} ? E(B). If s ? ?D(t), then the edge {u, v} belongs to the special clique K = NB(s) in G and K ? Cliques(t). We claim that indeed s ? ?D(t). Towards this, notice that u ? Fake(t). This implies that u ?/ ?D(t), but u is present in a bag ?D(t0) of some descendant t0 of t. Moreover, since {u, s} ? E(B), we further know that {u, s} ? ?D(t1) for some descendent t1 of t. Since {v, s} ? E(B) and v ?/ ?D0 (t), there is a bag ?D(t2) such that {v, s} ? ?D(t2) and t2 is not a descendent of t. Thus, since s ? ?D(t1) ? ?D(t2), by Property (c) of the tree decomposition D, we have that s ? ?D(t). This completes the proof of the lemma. J 4 Longest Cycle In this section we prove the following theorem. I Theorem 4.1. Longest Cycle on map graphs can be solved in 2O(?k log k) ? nO(1) time. Notice that if there is a special vertex s ? S(G) such that |NB(s)| ? k, then G has a cycle of length at least k, because NB(s) forms a clique in G. Moreover, observe that if there is a ?large enough? grid in B, then we can answer Yes. These observations along with Lemma 3.7 lead to the following lemma. I Lemma 4.2 (?). There is an algorithm that given an instance (G, B, k) of Longest Cycle, runs in time O(n2), and either correctly concludes that G has a cycle of length at least k, or outputs a nice tree decomposition D of B of width < 5?2k and a (5?2k, D)-NFewCliTD D0 of G such that for each node t ? V (T ), |?D0 (t)| ? 5?2 ? k1.5. Because of Lemma 4.2, to prove Theorem 4.1, we may assume that the input contains a (5?2k, D)-NFewCliTD D0 of G (derived from a nice tree decomposition D of B) such that for each node t ? V (T ), |?D0 (t)| ? 5?2 ? k1.5. That is, from now on, we fix our input to be an instance (G, B, k) of Longest Cycle, a nice tree decomposition D of B and a (5?2k, D)-NFewCliTD D0 of G such that for each node t ? V (T ), |?D0 (t)| ? 5?2 ? k1.5. Towards the proof of Theorem 4.1, the main ingredient is to prove the following claim: if G has a cycle of length `, then there is a cycle C of length `, with the following property. For each node t ? V (T ), the number of edges of E(C) with one endpoint in ?D0 (t) and the other in V (G) \ ?D0 (t) is upper bounded by O(?k). The above mentioned property is encapsulated in the following sublinear crossing lemma. I Lemma 4.3 (Sublinear Crossing Lemma (?)). Let C be a cycle in G. Then there is a cycle C0 of the same length as C such that for any node t ? V (T ), the number of edges in E(C0) with one endpoint in ?D0 (t) and the other in V (G) \ ?D0 (t) is at most 20?2k. Lemma 4.3 lies at the heart of the proof of Theorem 4.1 and is one of the main technical contributions of the paper. Assuming Lemma 4.3, the proof of Theorem 4.1 is by designing a DP algorithm on a (5?2k, D)-NFewCliTD of G. This part is similar to the algorithm for Longest Cycle in [20] on a so called special path decomposition. The main ingredient of Lemma 4.3 is the following lemma (Lemma 4.4). The proof of Lemma 4.3 is by an inductive argument assuming Lemma 4.4. The rest of the section is devoted to the proof of Lemma 4.4. I Lemma 4.4. Let C be a cycle in G and K be a special clique in G. Then, there is a cycle C0 of the same length as C such that E(C0) \ E(K) = E(C) \ E(K) and for any node t ? V (T ), the number of edges of E(C0) ? E(K) with one endpoint in Fake(t) ? K and the other in V (G) \ ?D0 (t) is at most 4. Before formally proving Lemma 4.4, we give a high level overview of the proof and an auxiliary lemma which we use in the proof of Lemma 4.4. The proof idea is to change the edges of E(K) ? E(C) in C (because in Lemma 4.4 our objective is to bound the ?crossing edges? from a subset of E(K) for each node t ? V (T )) to obtain a new cycle C0 of the same length as C that satisfies the following property: (i) for any node t ? V (T ), the number of edges of E(C0) ? E(K) with one endpoint in Fake(t) ? K and the other in V (G) \ ?D0 (t) is at most 4. For the ease of presentation, assume that K ? V (C). Now, consider the graph P obtained from the cycle C after deleting edges in E(K). Without loss of generality assume that E(C) ? E(K) 6= ?. Otherwise, Lemma 4.4 is true where C0 = C. We consider P as a collection of vertex-disjoint paths where the end-vertices of the paths are in K. Some paths in P may be of length 0. Let Z be the set of end-vertices of the paths in P. Clearly, Z ? K. We will ?complete? the collection of paths P to a cycle by adding edges from E(Z) satisfying Statement (i). Any cycle C0 with V (C0) = V (P) has the same length as C. So, all the work that is required for us is to complete the collection of paths P to a cycle by adding edges from E(Z) satisfying Statement (i). Towards that, let ? = v1, . . . , vk0 be an arbitrary sequence of b vertices in Z. We show (in Claim 4.7) that (ii) there is a subset of edges F ? E(Z) such that E(P) ? F forms a cycle C0 with vertex set V (P) and for any j ? [k0], the number of edges in F with one endpoint in {v1, . . . , vj} and the other in {vj+1, . . . , vk0 } is at most 2. This implies that for any 1 ? i ? j ? k0, the number of edges in F with one endpoint in {vi, . . . , vj} and the other in Z \ {vi, . . . , vj} is at most 4. In the light of Statement (ii), our aim will be to prove that (iii) for any node t ? V (T ), there exist 1 ? i ? j ? k0 such that Fake(t) ? Z ? {vi, . . . , vj} and no vertex in Z \ ?D0 (t) belongs to {vi, . . . , vj}. Then, Statement (i) will follow (because edges of C0 incident with vertices in K \ Z are from E(G) \ E(K) and will not be counted in Statement (i)). In fact, we will prove that there is a sequence ? on Z (derived from a postorder transversal of T ) such that Statement (iii) is true (see Claim 4.8). The proof of Statement (ii) is encapsulated in the following lemma. I Lemma 4.5 (?). Let ` ? 3 be an integer. Let u1, . . . , u` be a sequence of vertices in a graph H where X = {u1, . . . , u`} is a clique in H. Let Q be a family of vertex-disjoint paths in H (which possibly contains paths of length 0) such that each v ? X is an end-vertex of a path in Q and E(Q) ? E(X) = ?. Then, there is a set F ? E(X) with the following conditions. (a) E(Q) ? F forms a cycle containing all the vertices of V (Q), (b) For any j ? [`], the number of edges in F with one endpoint in {u1, . . . , uj} and the other in {uj+1, . . . , u`} is at most 2. Next, we move to a formal proof of Lemma 4.4. Proof of Lemma 4.4. Without loss of generality, assume that K ? V (C). Otherwise, we can consider the statement of the lemma for cycle C in the graph G0 = G ? (K \ V (C)) and special clique K ? V (C) of G0. We also assume that E(C) ? E(K) 6= ?, else the correctness is trivial because we can take C0 as C. Let ?0 be a postorder transversal of the nodes in the rooted binary tree T , and let ? be the restriction of ?0 where we only keep the nodes that are labeled with fake introduce(v) for some v ? K. Denote ? = t1, . . . , tk00 such that each ti, i ? [k00], is labelled with fake introduce(xi) where xi ? K. Notice that St?V (T ) Fake(t) ? K = {x1, . . . , xk00 } (by Observation 3.6). Let ?1 be the sequence x1, . . . , xk00 and U = {x1, . . . , xk00 }. Let ?2 be a fixed arbitrary sequence of K \ U , i.e., all the vertices of K that are never ?fakely introduced?. Let ? be the sequence which is a concatenation of ?1 and ?2. Let P = (V (C), E(C) \ E(K)). That is, P is the graph obtained by deleting edges of E(K) from the cycle C. Notice that each connected component of P is a path (may be of length 0) with end-vertices in K. Let Z be the set of end-vertices of the paths in P. Notice that for any vertex u ? K \ Z, both edges of C incident with u are from E(C) \ E(K) (see the left part of Figure 3). That is, E(C) \ E(K) = E(C) \ E(Z) = E(P). Since we seek a cycle C0 in which E(C0) \ E(K) = E(C) \ E(K), no edge of C0 incident with u for any vertex u ? K \ Z, is in E(K). That is, all the edges of E(C0) ? E(K) will belong to E(Z). I Observation 4.6. Let C0 be a cycle in G such that E(C0) \ E(K) = E(C) \ E(K) and t ? V (T ). The number of edges of E(C0) ? E(K) with one endpoint in Fake(t) ? K and the other in V (G) \ ?D0 (t) is equal to the number of edges of E(C0) ? E(Z) with one endpoint in Fake(t) ? Z and the other in V (G) \ ?D0 (t). Let Z = {v1, . . . , vk0 } and ?0 = ?|Z = v1, . . . , vk0 . The main ingredients of the proof are the following two claims. B Claim 4.7. There is a cycle C0 of the same length as C such that (i) E(C0) \ E(Z) = E(C) \ E(Z), and (ii) for any j ? [k0], the number of edges of E(C0) ? E(Z) with one endpoint in {v1, . . . , vj } and the other in {vj+1, . . . , vk0 } is at most 2. The proof of Claim 4.7 follows from Lemma 4.5. B Claim 4.8. For any node t ? V (T ), there is a segment ?00 of ?0 such that each vertex in Fake(t) ? Z appears in ?00, and each vertex in Z \ ?D0 (t) does not appear in ?00. Proof. Fix a node t ? V (T ). Recall that ? = ?1?2 and ?0 = ?|Z . Here, the set of vertices present in ?1 is U = (St?V (T ) Fake(t) ? K) ? (St?V (T ) Fake(t) ? Z) (because Z ? K), and no vertex in ?2 is from U . This implies that all the vertices of Fake(t) ? Z are in the sequence ?1. That is, the sequence ?00 we seek is also a sequence of ?1|Z and this is the reason we defined ? to be ?1?2. Thus, to prove the claim it is enough to prove that there is a segment ?10 of ?1|Z such that each vertex in Fake(t) ? Z appears in ?10 and each vertex in Z \ ?D0 (t) does not appear in ?0 . 1 Recall that ?1 = x1 . . . xk00 is obtained from the sequence ? = t1, . . . , tk00 . In turn, recall that ? is the restriction of the postorder transversal ?0 of T , where for each i ? [k00], ti is labelled with fake introduce(xi) for xi ? K. Let Wt be the nodes of the subtree of T rooted at t, and Vt = {v ? K : there is t0 ? Wt such that t0 is labelled with fake introduce(v)}. The vertices in Wt appear consecutively in ?. Thus, we can let ?t be the minimal segment of ? that contains all the nodes in Vt. Let i, j ? [k00] be such that ?t = ti, . . . , tj . Now, we define ?t be the segment xi, . . . , xj of ?1. Now we prove the claim. By conditions (i) and (ii) in Observation 3.6, Fake(t) ? Z ? Vt. Clearly, no vertex in Z \ ?D0 (t) is in Vt. This implies that each vertex in Fake(t) ? Z appears in ?t and no vertex from Z \ ?D0 (t) appears in ?t. In turn, this implies that ?t|Z is the required segment ?00 of ?0 = ?|Z . C Now, having the above two claims, we are ready to prove the lemma. By Claim 4.7, we have that there is a cycle C0 such that (i) E(C0) \ E(Z) = E(C) \ E(Z), and (ii) for any j ? [k0], the number of edges of E(C) ? E(Z) with one endpoint in {v1, . . . , vj } and other in {vj+1, . . . , vk0 } is at most 2. By Claim 4.8, we know that for any t ? V (T ), there is a segment ?00 of ?0 such that all vertices in Fake(t) ? Z appear in a segment ?00 and no vertex from Z \ ?D0 (t) appears in ?00. That is, there exist i, j ? [k0] such that Fake(t) ? Z ? {vi, . . . , vj } and (Z \ ?D0 (t)) ? {vi, . . . , vj } = ?. Therefore, by (ii), the number of edges of E(C0) ? E(Z) with one endpoint in Fake(t) ? Z and the other in V (G) \ ?D0 (t) is at most 4. Then, by Observation 4.6, the proof of the lemma is complete. J 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Fedor V. Fomin , Daniel Lokshtanov, Neeldhara Misra, and Saket Saurabh. Planar F-Deletion : Approximation, Kernelization and Optimal FPT Algorithms . In Proceedings of the 53rd Annual Symposium on Foundations of Computer Science (FOCS) , pages 470 - 479 . IEEE, 2012 . Fedor V. Fomin , Daniel Lokshtanov, Fahad Panolan, and Saket Saurabh . Efficient Computation of Representative Families with Applications in Parameterized and Exact Algorithms . J. ACM , 63 ( 4 ): 29 , 2016 . doi: 10 .1145/2886094. Finding , Hitting and Packing Cycles in Subexponential Time on Unit Disk Graphs . Discrete & Computational Geometry , January 2019 . doi: 10 .1007/s00454-018-00054-x. Fedor V. Fomin , Daniel Lokshtanov, and Saket Saurabh . Bidimensionality and geometric graphs . In Proceedings of the 22nd Annual ACM-SIAM Symposium on Discrete Algorithms (SODA) , pages 1563 - 1575 . SIAM, 2012 . Fedor V. Fomin , Daniel Lokshtanov, and Saket Saurabh . Excluded grid minors and efficient polynomial-time approximation schemes . J. ACM , 65 ( 2 ):Art. 10 , 44 , 2018 . doi: 10 .1145/ 3154833. Qian-Ping Gu and Hisao Tamaki . Improved Bounds on the Planar Branchwidth with Respect to the Largest Grid Minor Size . Algorithmica, 64 ( 3 ): 416 - 453 , November 2012 . doi: 10 .1007/ s00453-012-9627-5. Russell Impagliazzo , Ramamohan Paturi, and Francis Zane . Which problems have strongly exponential complexity . Journal of Computer and System Sciences , 63 ( 4 ): 512 - 530 , 2001 . Ioannis Koutis . Faster Algebraic Algorithms for Path and Packing Problems . In Proceedings of the 35th International Colloquium on Automata, Languages and Programming (ICALP 2008 ), volume 5125 of Lecture Notes in Computer Science, pages 575 - 586 , 2008 . ACM , 59 ( 1 ): 98 - 105 , 2016 . doi: 10 .1145/2742544. D?niel Marx . The Square Root Phenomenon in Planar Graphs . In Proceedings of the 40th International Colloquium on Automata, Languages, and Programming (ICALP) , volume 7966 of Lecture Notes in Computer Science, page 28. Springer, 2013 . N. Robertson , P. Seymour , and R. Thomas . Quickly Excluding a Planar Graph . Journal of Combinatorial Theory , Series B , 62 ( 2 ): 323 - 348 , 1994 . doi: 10 .1006/jctb. 1994 . 1073 . Mikkel Thorup . Map Graphs In Polynomial Time . In Proceedings of the 39th Annual Symposium on Foundations of Computer Science (FOCS 1998 ), pages 396 - 405 . IEEE Computer Society, 1998 . Ryan Williams . Finding Paths of Length k in O?(2k) Time . Inf. Process. Lett., 109 ( 6 ): 315 - 318 , 2009 .


This is a preview of a remote PDF: http://drops.dagstuhl.de/opus/volltexte/2019/10636/pdf/LIPIcs-ICALP-2019-60.pdf

Fedor V. Fomin, Daniel Lokshtanov, Fahad Panolan, Saket Saurabh, Meirav Zehavi. Decomposition of Map Graphs with Applications, LIPICS - Leibniz International Proceedings in Informatics, 2019, 60:1-60:15, DOI: 10.4230/LIPIcs.ICALP.2019.60