Efficient Domination and Polarity

Dissertation zur Erlangung des akademischen Grades Doktor-Ingenieur (Dr.-Ing.)

Universität Rostock Fakultät für Informatik und Elektrotechnik

vorgelegt von Ragnar Christopher Nevries Gutachter: Prof. Dr. Andreas Brandstädt, Institut für Informatik, Universität Rostock Prof. Dr. Peter Widmayer, Institut für Theoretische Informatik, ETH Zürich Prof. Dr. Jing Huang, Mathematics and Statistics, University of Victoria eingereicht am 5. Februar 2014 verteidigt am 25. Juli 2014 Abstract

This thesis considers Efficient Domination, Efficient Edge Domination, Polar- ity, and Monopolarity, graph problems that ask for a vertex or edge subset that is a packing and a covering at the same time. Efficient Domination seeks for an independent vertex subset D such that all other vertices have exactly one neighbor in D. Here, packing means that the vertices of D must not be too close to each other and, in contrast, covering requires that they have to be near to the other vertices. Efficient Edge Domination is the edge version of Efficient Domination. Polarity asks for a vertex subset that induces a complete multipartite graph—the packing aspect—and that contains a vertex of every induced P3—the covering aspect. Monopolarity is the special case of Polarity where the complete multipartite graph has to be edgeless. Since all these problems are NP-complete in general, for each problem a lot of effort has been put into separating the graph classes on which the problem remains NP-complete from those that admit an efficient algorithm. This thesis pursues both directions. On the one hand, we introduce a framework for our NP-completeness proofs and use it to sharpen known results for all mentioned problems. On the other hand, we reveal new tractable cases: Efficient Domination As we figure out that the problem is NP-complete on F -free graphs whenever F is not a linear forest, we clarify the complexity on F -free graphs for linear forests F with at most six vertices, except the

P6. In particular, we show that the problem is efficiently solvable if F has at most five vertices. Efficient Edge Domination We provide a linear time algorithm for chordal bipartite graphs and an O(nm)-time algorithm for hole-free graphs, which solves the open question, whether Efficient Edge Domination is effi- ciently solvable on weakly chordal graphs. Monopolarity We formulate a graph property that enables the reduction from Monopolarity to 2-SAT and refine this idea to develop an efficient algorithm for a graph class that contains nearly all known efficiently solvable cases. Polarity Motivated by our result that Polarity is NP-complete on planar graphs, we introduce an algorithmic framework for subclasses of planar graphs. We show that the framework can be implemented efficiently for hole-free planar and maximal planar graphs.

Acknowledgements

First, I would like to thank my advisor Andreas Brandstädt for his support and for giving me the opportunity to work on this research in a friendly and warm atmosphere. Many thanks also to my colleagues Văn Bằng Lê and Christian Rosenke for having a sympathetic ear for all my scientific and non-scientific questions. I want to thank my coauthors Andreas, Bang, Christian, and Martin. It was a pleasure to work with you and I learned a lot from it. Finally, I want to express my gratitude to the patient proofreaders Robert Waltemath and Nicole Nevries. A very special thank to Christian Rosenke for finding the most hidden mistakes and giving me very helpful hints.

Contents

1 Introduction 1 1.1 Preliminaries ...... 5 1.2 Efficient Domination ...... 12 1.3 Efficient Edge Domination ...... 16 1.4 Polarity ...... 19

2 Efficient Domination 25 2.1 Graphs Without Induced Linear Forests ...... 30 2.2 Hangings ...... 34 2.3 Maximum Weighted Independent Set ...... 56

3 Efficient Edge Domination 61 3.1 Chordal bipartite graphs ...... 65 3.2 Hole-free graphs ...... 70

4 Polarity and Monopolarity 85 4.1 Monopolar Extension via 2-Satisfiability ...... 87 4.2 A Superclass of Chair-free Graphs ...... 93 4.3 A Superclass of Hole-free Graphs ...... 98 4.4 Polarity on Planar Graphs ...... 109

5 NP-completeness Results 113 5.1 Reduction Framework ...... 113 5.2 Efficient Domination ...... 123 5.3 Efficient Edge Domination ...... 125 5.4 Polarity and Monopolarity ...... 127

6 Conclusion 133

Bibliography 134

1 Introduction

One fundamental topic in theoretical computer science is the complexity analysis of computational problems, in particular the classification according to the classes P and NP. For practical problems, this classification is indicative for the existence or nonexistence of algorithms that solve the problems exactly and fast enough. Identifying problems that are in P or NP-complete is of high theoretical interest as well, since it is still unknown whether P and NP are really different. The presented research addresses this topic in the context of algorith- mic graph theory. We consider four graph problems, namely efficient domination, efficient edge domination, and polarity, as well as monopolarity, a special case of polarity. All these problems ask for a collection of objects that simultaneously is a packing and a covering. Objects of a packing have to be free of “conflicts”, while objects of a covering have to “span” all elements of another set. In optimization problems, we seek for largest possible packings and smallest possible coverings. A prominent example that asks for a collection that is a packing and a covering at the same time is the exact cover problem. It is one of Karp’s 21 eminent NP-complete problems published in 1972 [58]. For a given family of subsets F over a ground set S, it asks whether there is a subset F ? ⊆ F such that every element of S is contained in exactly one member of F ?. Notice that the packing part seeks for a subset of F such that its elements are pairwise disjoint and the covering part seeks for a subset of F such that the union of all its elements is S. Efficient domination, introduced in [6], is a special case of exact cover: Given a graph G, it asks if the family F of the closed neighborhoods of all vertices has a subset F ? that exactly covers the vertex set V . In literature, efficient domination is also expressed as finding an efficient dominating set, that is, an independent vertex subset D such that all other vertices have exactly one neighbor in D. Efficient edge domination, introduced in [49], is the edge-version of 2 CHAPTER 1. INTRODUCTION efficient domination. We seek an edge subset D such that no two of its edges share an endpoint and all other edges share exactly one endpoint with exactly one edge of D. Polarity, introduced in [91, 92], asks if the vertex set of a graph can be partitioned into a set that induces a complete multipartite graph and a set that induces a disjoint union of complete graphs. The packing aspect of polarity is the demand for a family of independent sets that are pairwise completely connected; the covering aspect requires that every induced path of length 3 has to share a vertex with at least one of these independent sets. Monopolarity is a well-studied special case of Polarity where the complete multipartite graph has to be edgeless. Hence, we seek for a partition into an edgeless graph and a disjoint union of complete graphs. Notice that efficient edge domination can be formulated as the question whether a graph can be partitioned into an edgeless graph and a 1-regular graph. Since 1-regular graphs are exactly the disjoint unions of complete graphs on two vertices, efficient edge domination is a special case of monopolarity.

Efficient domination, efficient edge domination, polarity, and monopolarity are known to be NP-complete in general and even on very restricted graph classes, that is, when the input graph is supposed to fulfill a certain property. Hence, in the last years, great efforts were made to identify graph classes which allow efficient algorithms. The last three sections of the introduction try to give a comprehensive overview of the achieved results.

We contribute to this research in both directions. On the one hand, we utilize the similarity of the mentioned problems to develop a reduction scheme for NP-completeness proofs. This scheme is directly applicable for efficient domination, efficient edge domination, and monopolarity and we show that the results for monopolarity can be transfered to polarity. We prove that • efficient domination and efficient edge domination are NP- complete on planar bipartite graphs with maximum degree at most 3 and girth at least g, for every fixed g, • polarity and monopolarity are NP-complete on planar triangle-free graphs with maximum degree at most 3, and • polarity and monopolarity are NP-complete on planar graphs with maximum degree at most 3 that contain no induced cycles of a length between 4 and g, for every fixed g ≥ 4. Since polarity is closed under taking complements, it also remains NP- 3 complete on the complements of the respective classes, including for example hole-free graphs. Notice that all problems are NP-complete on planar graphs and that the second result for polarity/monopolarity fulfills a weak form of a girth restriction. On the other hand, we present tractability results for all problems: Efficient domination Using known results, we point out that efficient domination is NP- complete on F -free graphs whenever F is not a linear forest. Consequently, we analyze the complexity on F -free graphs for linear forests F . We provide

• a robust O(nm)-time algorithm for P5-free graphs, 2.38 • an O(min(nm, n ))-time algorithm for P5-free graphs, and • a robust O(nm)-time algorithm for (P4 + P2)-free graphs. All algorithms solve the optimization version of efficient domination with vertex weights. The robust algorithms are achieved by analyzing the structure of the input graph when a fixed vertex is supposed to be part of the solution. In both cases, that is, for P5-free graphs and for (P4 + P2)-free graphs, this analysis enables a linear-time algorithm to decide if the input graph admits a solution that contains the fixed vertex. Hence, applying this algorithm for every vertex results in a runtime of O(nm). The O(min(nm, n2.38))-time result reduces efficient domination on P5-free graphs to maximum weight independent set on . Together with some simple observations, our results show that efficient domination is efficiently solvable on F -free graphs for every linear forest F on at most five vertices. Furthermore, except for the P6, we clarify the complexity for F -free graphs for every linear forest F on six vertices. Efficient edge domination We present • an O(n + m)-time algorithm for chordal bipartite graphs and • a robust O(nm)-time algorithm for hole-free graphs for the optimization version with edge weights. Since weakly chordal graphs are hole-free, the second result answers a question posed in [17], namely whether efficient edge domination can be efficiently solved on weakly chordal graphs. Both algorithms perform a preprocessing on the input graph that yields a K4-free block graph. For K4-free block graphs, a linear-time algorithm is known. 4 CHAPTER 1. INTRODUCTION

Monopolarity We start by defining a graph class whose monopolar partitions coincide with the satisfying truth assignments of an efficiently computable 2-cnf, that is, a boolean formula in conjunctive normal form with at most two literals per clause. Using preprocessing, we extend this class to a larger graph class that still admits an efficient monopolarity algorithm. Finally, we use a divide- and-conquer approach, which is based on the block-cutvertex-tree of the input graph, to expand the result to a graph class called locally A5-S2,2,2-defused graphs. This class generalizes well-known graph classes like hole-free graphs, chair-free graphs, and P5-free graphs and covers nearly all known tractable cases.

Polarity We develop a framework for polarity algorithms on subclasses of planar graphs. Interestingly, the difficult tasks in the framework are highly related to monopolarity. Hence, based on our monopolarity results, we show that polarity is tractable on maximal planar graphs and hole-free planar graphs. Since we show that polarity is NP-complete on planar graphs, especially the latter result corroborates the hypothesis that the complexities of polarity and monopolarity on planar graphs are strongly related.

The thesis is organized as follows. Section 1.1 introduces the used notions and gives some basic facts. The considered graph problems and the state of the art are described in detail in Sections 1.2 to 1.4. Chapters 2 to 4 present the tractability results for efficient domination, efficient edge domi- nation, and polarity/monopolarity respectively. All NP-completeness results are given in Chapter 5, which starts with the reduction framework that is used for all NP-completeness proofs. Chapter 6 concludes the thesis.

All presented results are partially improved versions of results which are published in the article [63], the extended abstracts [8, 12, 64] and the pre-print [13] and which were presented on the “3rd biennial Canadian Discrete and Algorithmic Mathematics Conference” in 2011 (CANADAM’11), “The 22nd International Symposium on Algorithms and Computation” in 2011 (ISAAC’11), and the “38th International Symposium on Mathematical Foundations of Computer Science” in 2013 (MFCS’13). The introduction of each chapter clarifies the differences between the published versions and the versions shown herein. 1.1. PRELIMINARIES 5

1.1 Preliminaries

Graph Notions Let G = (V,E) be a graph with vertex set V and edge set E. We refer to the vertex set and the edge set of a graph G also by V (G) and E(G) respectively. We only consider undirected, simple graphs without loops, that is,

E ⊆ {{x, y} | x ∈ V, y ∈ V, x 6= y} .

For short, we write xy ∈ E instead of {x, y} ∈ E. For an edge xy ∈ E, we say that x and y are the endpoints of xy. For a graph G = (V,E) and two vertices x, y with {x, y} ⊆ V , we say that x and y are adjacent or neighbors and write x y, if xy ∈ E, and we say that x and y are non-adjacent or non-neighbors and write x y, if xy 6∈ E. For two vertex subsets X ⊆ V and Y ⊆ V , we define

E(X,Y ) := {xy | x ∈ X, y ∈ Y, x y} .

We simply write E(x, Y ), E(X, y), and E(x, y) for E({x} ,Y ), E(X, {y}), S and E({x} , {y}) respectively. For an edge set E, we define V (E) := e∈E e, that is, the set that contains all endpoints of edges of E. The complement of a graph G, denoted by G, has the vertex set V (G) and the edge set

E := {xy | x ∈ V (G), y ∈ V (G), x y, x 6= y} , that is, G has the edge xy, if and only if G does not have the edge xy. The line-graph L(G) of a graph G has the vertex set E(G) and the edge set

{e1e2 | e1 ∈ E(G), e2 ∈ E(G), e1 ∩ e2 6= ∅, e1 6= e2} , that is, the vertices of L(G) are the edges of G and there is an edge in L(G), if and only if the corresponding edges in G share an endpoint. Two graphs F and G are isomorphic, if a bijection b : V (F ) → V (G) exists such that xy ∈ E(F ), if and only if b(x)b(y) ∈ E(G). A graph F is a subgraph of a graph G, if F is isomorphic to a graph F 0 such that V (F 0) ⊆ V (G) and E(F 0) ⊆ E(G). A graph F is an induced subgraph of a graph G, if F is isomorphic to a graph F 0 such that V (F 0) ⊆ V (G) and E(F 0) contains every edge e ∈ E(G) with e ⊆ V (F 0). This means, that an induced subgraph is a subgraph with the maximal subset of edges. If F is an induced subgraph of G, we also say that F is induced in G or that G contains F . For a vertex 6 CHAPTER 1. INTRODUCTION subset X ⊆ V (G), G[X] denotes the induced subgraph of G with the vertex set X. We say that a vertex subset X ⊆ V (G) induces the graph F in G, if G[X] is isomorphic to F .

A graph G is said to be {F1,F2, ... ,Fk}-free, if none of the graphs F1,F2,...,Fk is induced in G. For a single graph F , we simply write F -free for {F }-free. For a graph G = (V,E), a vertex subset X ⊆ V , and an edge subset M ⊆ E, we write G − X for G[V \ X] and we write G − M for the graph (V,E \ M). For a vertex x and an edge e we simply write G − x and G − e instead of G − {x} and G − {e} respectively. For a graph G = (V,E) and a vertex subset U ⊆ V , we say that a vertex v ∈ V is U-universal, if it is adjacent to every vertex of U \{v}. For a subgraph H of G, we say that a vertex v is H-universal, if v is V (H)-universal. A vertex v of a graph G is simply called universal, if v is G-universal.

For two graphs F and G with V (F ) ∩ V (G) = ∅, vertices {x1, . . . , xk} ⊆ V (F ), and vertices {y1, . . . , yk} ⊆ V (G), the

union of F and G on x1 = y1, x2 = y2,..., xk = yk is the graph with the vertex set

V (F ) ∪ V (G) \{y1, . . . , yk} that contains

• the edge e for every e ∈ E(F ),

• the edge xiv for every edge uv ∈ E(G) with u = yi and v 6∈ {y1, . . . , yk},

• the edge xixj for every edge uv ∈ E(G) with u = yi and v = yj, and no other edges. Informally one can say that the resulting graph is the union of F and G whereby the vertices x1, x2, . . . , xk of F are identified with the vertices y1, y2, . . . , yk of G respectively. So that the union can be used as a commutative operation, in the union graph we refer to the vertex xi by both names, xi and yi. Notice that this definition of unions only works for vertex disjoint graphs. For two graphs F and G that are not vertex disjoint, we define the union as follows: Construct a graph G0 from G by substituting every vertex x ∈ V (F ) ∩ V (G) by a new vertex x0 and modify the edge relation such that x0 has the same neighborhood as x. Clearly, F and G0 are vertex disjoint. 1.1. PRELIMINARIES 7

Finally, the union of F and G on x1 = y1, x2 = y2,..., xk = yk is defined as 0 the union of F and G on x1 = y1, x2 = y2,..., xk = yk. For short, we write (F + G) for the union of F and G without identifying any vertices. For a graph G and an integer m ≥ 2, we inductively define mG := (G + (m − 1)G), whereby 1G := G. That is, mG contains m different copies of the graph G and no edges between vertices of different copies. The distance between two vertices x and y in a graph G, denoted by dist(x, y), is the smallest number k such that there are k − 1 vertices v1, . . . , vk−1 with x v1, v1 v2,..., vk−2 vk−1, and vk−1 y. If no such k exists, we define dist(x, y) = ∞. The distance between two edges xy and x0y0 is defined as

dist(xy, x0y0) := min {dist(x, x0), dist(x, y0), dist(y, x0), dist(y, y0)} .

The neighborhood of a vertex x of a graph G is defined as NG(x) := {y | x y}. The closed neighborhood additionally contains the vertex itself, that is, NG[x] := NG(x) ∪ {x}. For a vertex subset X ⊆ V (G), we define S its closed neighborhood as NG[X] := x∈X NG[x] and its neighborhood as NG(X) := NG[X] \ X. Notice that NG(X) contains no vertex of X, even if X contains adjacent pairs of vertices. For d ≥ 2, the neighborhood in distance d of a vertex x is defined as d NG(x) := {y | dist(x, y) = d} and the closed neighborhood in distance d as d NG[x] := {y | dist(x, y) ≤ d}. For a vertex subset X ⊆ V (G), we define its d S d closed neighborhood in distance d as NG[X] := x∈X NG[x] and its neighbor- d d d−1 1 hood in distance d as NG(X) := NG[X] \ NG [X], where NG[X] = NG[X]. d Notice that a vertex in NG(X) has a distance of at least d to every vertex of X. If it is clear from the context which graph we mean, we just write N(x), N[x], N(X), N[X], N d(x), N d[x], N d(X), and N d[X] respectively.

The degree of a vertex x in a graph G is defined as degG(x) := |NG(x)|. Again, we simply write deg(x) if G is clear from the context. Sometimes, for a vertex subset Y ⊆ V (G), we write degY (x) for |NG(x) ∩ Y |. Vertices of degree 0 are called isolated, vertices of degree 1 are called pending vertices and edges with one endpoint of degree 1 are called pending edges. A graph is connected, if every pair of vertices has finite distance. A connected component of a graph is an inclusion-maximal induced subgraph that is connected. Consequently, a graph is co-connected, if its complement is connected and a co-connected component is a connected component of the complement of the graph. A vertex c of a graph G is called cutvertex, if G − c has more connected components than G. A graph is biconnected, if 8 CHAPTER 1. INTRODUCTION it contains no cutvertex. A biconnected component of a graph, also called block, is an inclusion-maximal induced subgraph that is biconnected. We say that a block is trivial, if it contains at most two vertices, otherwise it is called non-trivial. The following fact is well known, but we give a proof for the sake of completeness:

Fact 1. Let G = (V,E) be a graph and let B1 = (V1,E1),...,Bk = (Vk,Ek) be the blocks of G. For the accumulated size of the blocks we have

|V1| + ··· + |Vk| ≤ 2|V | and |E1| + ··· + |Ek| = |E|.

Proof. If G is not connected, the bounds clearly hold for G if they hold on each connected component. Hence, we can assume that G is connected. Every edge of G is in exactly one block because if there is an edge in two blocks, Bi and Bj, these blocks share two vertices and, hence, V (Bi) ∪ V (Bj) induces a biconnected subgraph of G—this is a contradiction to the maximality of Bi and Bj. We show the bound on the vertex sum of the blocks by induction on the number of blocks. Clearly, if G is biconnected, that is, it has only one block, the bound holds. Hence, assume that G is a graph with blocks

B1 = (V1,E1),...,Bk = (Vk,Ek), k > 1. Assume that for every graph with at most k − 1 blocks the bound holds. Since G is not biconnected, there is a block with just one cutvertex. Assume without loss of generality that Bk 0 0 0 0 is such a block. Let G = (V ,E ) := G[V \ Vk ∪ {v}]. The blocks of G are B1,...,Bk−1. Hence, we can apply the induction hypothesis 0 |V1| + ··· + |Vk−1| ≤ 2|V |, and, since |Vk| ≥ 2, we get

|V1| + ··· + |Vk−1| + |Vk| 0 ≤ 2|V | + |Vk|

= 2 (|V | − |Vk| + 1) + |Vk|

= 2|V | − |Vk| + 2 ≤ 2|V |.

For a graph G, a vertex weight function is a function ω : V (G) → R+ and an edge weight function is a function ω : E(G) → R+. For short, we say that G has vertex weights ω or G has edge weights ω, if ω is a vertex weight function of G or an edge weight function of G respectively. For any function + 0 0 P ω : X → R and a subset X ⊆ X, we define ω(X ) := x∈X0 ω(x). 1.1. PRELIMINARIES 9

Graphs and Graph Classes

The graph Pk, also called chordless k-path or chordless path of length k − 1, is the graph with vertex set {x1, . . . , xk} and edge set {xixi+1 | 1 ≤ i < k}. Analogously, for k ≥ 3, the graph Ck, also called chordless k-cycle or chordless cycle of length k, is the graph Pk with the additional edge x1xk. The chordless 3-cycle is also called triangle and every chordless k-cycle with k ≥ 5 is also called hole.

A k-path or path of length k − 1, denoted by x1 x2 ... xk, is a graph with vertex set {x1, . . . , xk} and at least the edges {xixi+1 | 1 ≤ i < k}. Anal- ogously, for k ≥ 3, the k-cycle or cycle of length k is a k-path with the additional edge x1xk and denoted by x1 x2 ... xk x1. Notice that the chordless k-path is a k-path and that the chordless k-cycle is a k-cycle, but not vice versa. Furthermore, notice that every k-cycle is a k-path and that a k-path can also be a k-cycle. For every k ≥ 1, the k-path is also called path and, for every k ≥ 3, the k-cycle is also called cycle. For a graph G that contains a path x1 x2 ... xk or a cycle x1 x2 ... xk x1, we say that x1 x2 ... xk or x1 x2 ... xk x1 is induced in G, if {x1, . . . , xk} induces a Pk or a Ck in G respectively.

For two paths P = x1 x2 ... xk0 and Q = xk0 xk0+1 ... xk, we define P.Q := x1 x2 ... xk. A shortest path between two vertices x and y is a path x ... y of G of length dist(x, y). Clearly, if dist(x, y) = ∞, no shortest path between x and y exists. A graph is called acyclic, if it contains no cycle. A graph has girth g, if every induced cycle has length at least g. For an acyclic graph, the girth is infinite. The maximum degree of a graph G is the maximum of the degrees of all vertices of G. A graph is called r-regular, if every vertex has degree r. Edge sets that induce 1-regular graphs are called induced matchings. A complete graph contains all possible edges. We call a vertex subset X of a graph G independent, if G[X] is edgeless, and we call it a clique, if G[X] is complete. A graph G is called k-partite, if there is a partition

V (G) = V1 ∪ · · · ∪ Vk such that, for every i ∈ {1, . . . , k}, Vi is an independent set in G. We denote by G = (V1 ∪ · · · ∪ Vk,E) a k-partite graph with independent sets V1,...,Vk. The 2-partite graphs are also called bipartite.A graph G is complete k-partite, if there is a partition V (G) = V1 ∪ · · · ∪ Vk such that, for every i ∈ {1, . . . , k}, Vi is an independent set in G and, for every j ∈ {1, . . . , k} , i 6= j, there are all possible edges in E(G)(Vi,Vj). A graph is (complete) multipartite, if it is (complete) k-partite for some k ≥ 1. Notice 10 CHAPTER 1. INTRODUCTION

Figure 1.1: The graphs K5, K3,3, claw (K1,3), 2P2, and (P4 + P2) (from left to right).

that a graph is complete multipartite, if and only if it is P3-free.

The complete graph on k vertices is denoted by Kk. The complete G = (X ∪ Y,R) with |X| = i and |Y | = j is denoted by Ki,j. The graph K1,3 is also called claw.A linear forest is an acyclic claw-free graph, that is, the union of chordless paths. Figure 1.1 depicts the graphs K5, K3,3, claw and, as examples for linear forests, the graphs 2P2 and (P4 + P2).

A graph is called line-graph, if it is isomorphic to L(G) for some graph G. A graph is chordal, if every induced chordless cycle has length 3, that is, chordal graphs are the {C4,C5, ... }-free graphs. A graph is chordal bipartite, if every induced chordless cycle has length 4. Notice that this name is slightly misleading because chordal bipartite graphs are bipartite but not chordal. A graph is planar, if it can be embedded in the plane, that is, the vertices are points and the edges are curves connecting the corresponding points, such that no edge crossings appear. The outer face of an embedding of a planar graph is the face of the drawing with infinite area. For a graph G and an edge xy of G, contracting xy yields the graph G0 that results from the graph G − y by adding a minimal set of edges such that NG(y) ⊂ NG0 (x). A graph F is a minor of a graph G, if F can be constructed from G by repeatedly deleting vertices or edges or contracting edges. By the theorems of Kuratowski and

Wagner, the planar graphs are exactly the {K3,3,K5}-minor-free graphs. This implies that neither the K5 nor the K3,3 can be a subgraph of a planar graph.

A graph class C is called hereditary, if for every graph G ∈ C and every induced subgraph F of G, we have F ∈ C. Similarly, a graph class is called additive, if for every two graphs F ∈ C and G ∈ C, we have (F + G) ∈ C. For graph classes that are not defined here, we refer to the comprehensive survey [9]. 1.1. PRELIMINARIES 11

Efficient Dominating Sets and Polar Partitions Let G = (V,E) be a graph. A vertex subset X is efficient, if every pair of vertices of X has a distance of at least 3, that is, X is independent and every vertex of V \ X has at most one neighbor in X. An edge subset M is efficient, if every pair of edges of M has a distance of at least 2, that is, no two edges of M share an endpoint and every edge of E \ M shares at most one endpoint with an edge of M. A vertex subset X covers all edges of E that have at least one endpoint in X. An edge subset M covers all vertices of V (M). A vertex subset X dominates all vertices in N[X], that is, it dominates itself and all its neighbors. An edge subset M dominates all edges of M and all edges of E that share an endpoint with an edge of M. Consequently, X is called dominating, if it dominates all vertices of G and M is called edge dominating, if it dominates all edges of G. A vertex subset X is an efficient dominating set, if it is efficient and dominating. An edge subset M is an efficient edge dominating set, if it is efficient and edge dominating. Notice that an edge subset M is an efficient edge dominating set in G, if and only if M is an efficient dominating set in the line-graph L(G). A graph G is called efficiently dominatable, if it has an efficient dominating set, and it is called efficiently edge dominatable, if it has an efficient edge dominating set. A vertex partition V = A ∪ B, denoted by (A, B), is polar, if G[A] is a complete multipartite graph and G[B] is P3-free. A polar partition (A, B) is monopolar, if G[A] is edgeless, and unipolar, if G[A] is complete. Notice that the edges in E(A, B) are arbitrary. For a polar, monopolar, or unipolar partition (A, B), we say that the vertices of A are amber colored and the vertices of B are blue colored. A graph G is polar, monopolar, or unipolar, if it admits a polar, monopolar, or unipolar partition respectively. Notice that a graph is complete multipartite, if and only if it is P3-free. This immediately implies that the complement of a polar graph is polar. This is not necessarily true for monopolar or unipolar graphs. A pair of two disjoint vertex subsets, that is, A0,B0 ⊆ V and A0 ∩ B0 = ∅, denoted by (A0,B0), is called a precoloring of G. For a precoloring (A0,B0), we say that the vertices of A0 are amber precolored and the vertices of B0 are blue precolored. For a precoloring (A0,B0), a monopolar partition (A, B) is a monopolar 12 CHAPTER 1. INTRODUCTION extension of (A0,B0) and G, if A0 ⊆ A and B0 ⊆ B; we also say that (A, B) is an (A0,B0)-monopolar extension of G. A graph is (A0,B0)-monopolar extendable, if it admits a vertex partition that is an (A0,B0)-monopolar extension.

Computational Complexity and Robust Algorithms In classical computational complexity theory, the runtime of an algorithm is measured as the number of steps that a certain computation model needs to execute that algorithm. The runtime is normally given as a function of the encoding length of the input. In the presented algorithms, the input often contains a graph, hence, we define |G| as the encoding length of a graph G = (V,E). It is common to assume that the graphs are explicitly given in the input, so we can suppose that |G| ≥ |V | + |E|, no matter which computation model is used. To entirely abstract from the computation model, for graph algorithms, the runtime often is given in respect to the number of vertices and edges of the input graph. Another measure that highly depends on the computation model is the time that is needed for basic operations like integer comparison or basic arithmetic functions like addition or multiplication. We assume that these basic operations need constant time, thus, we give the runtime as the number of basic operations. This is also known as arithmetic complexity and widely used for the time complexity analysis of algorithms. Some of the presented algorithms are robust. An algorithm A is said to work on a graph class C in a robust way, if A works on every input graph G and either returns a correct output or the statement that G is not in C. Notice that it is possible that A correctly terminates on graphs that are not in C. Algorithms of this kind are of special interest if their runtime is less than the runtime for deciding if a graph is in C. For further information we refer to [86].

1.2 Efficient Domination

In graph theory, the concept of domination is a very important and well- studied topic. A decent introduction would go beyond the scope of this thesis. We therefore refer the reader to the textbooks [51, 52] and the survey [55] as a good starting point. Efficient dominating sets first appear as perfect 1-codes in an article of Biggs about perfect codes in graphs [6]. This work is motivated by the concept 1.2. EFFICIENT DOMINATION 13

v w x v w y y z z

Figure 1.2: The graph to the left (known as 4-wheel or W4) is efficiently dominatable by the circled vertex. The graph to the right (known as C4) is not efficiently dominatable. Notice that the C4 is an induced subgraph of the W4. of error correcting codes and translates it to the domain of graphs. It gives a criterion for the existence of perfect e-codes in distance-transitive graphs. S e A perfect e-code is a vertex set X such that x∈X N [x] is a partition of the vertex set. Later, the question whether a graph admits a perfect 1-code was considered as efficient domination: efficient domination Input: A graph G = (V,E). Question: Is there a vertex subset D ⊆ V such that D is an efficient dominating set of G? The problem can be formulated in several ways. For example, as mentioned in the introduction, it coincides with the question whether the family of the closed neighborhoods of all vertices, that is, {N[v] | v ∈ V }, admits an exact cover of V . In other words, can the vertex set V be partitioned into sets

V1∪· · ·∪Vk such that every Vi equals N[v] for some vertex v ∈ V ? Furthermore, efficient domination can be expressed in terms of generalized dominating sets, see for example [54]. Notice that efficient domination can be expressed in monadic second order logic without edge set quantification. By the way, this is also true for efficient edge domination, monopolarity, and polarity. The definition as decision problem is justified because there are even pretty simple graphs that have no efficient dominating set. For example,

Figure 1.2 shows two graphs: The W4 is efficiently dominatable by simply taking {x} as efficient dominating set. The C4 admits no efficient dominating set because whenever a vertex is chosen, say v, then its non-neighbor, z, cannot be dominated without violating efficiency.

Since the C4 is an induced subgraph of the W4, the figure also demonstrates that efficiently dominatable graphs are not hereditary. However, they are additive: For an efficient dominating set DF of a graph F and an efficient 14 CHAPTER 1. INTRODUCTION

dominating set DG of a graph G, one can easily check that DF ∪ DG is an efficient dominating set of (F + G). Besides the decision version, one can also formulate an optimization version: minimum/maximum (weight) efficient domination Input: A graph G = (V,E) (with vertex weights ω) and a number k ∈ R+. Question: Is there a vertex subset D ⊆ V such that D is an efficient dominating set of G and |D| is at most/at least k (ω(D) is at most/at least k)? All algorithms for efficient domination that are presented in this thesis solve the weighted minimization problem. In fact, most of them can easily be modified to solve the maximization version and to output an efficient dominating set of minimum/maximum weight, if it exists.

In 1988, efficient domination was shown to be NP-complete by Bange, Barkauskas, and Slater [4]. Several results for restricted graph classes followed: Efficient domination remains NP-complete on • planar graphs with maximum degree at most 3 [45],

• bipartite graphs [94],

• chordal graphs [94],

• line-graphs of bipartite graphs [72],

• planar bipartite graphs [73],

• chordal bipartite graphs [73], and

• chordal unipolar graphs (by the reduction given in [94], noted in [39]), ordered by the year of publication. In Section 5.2, we show that efficient domination is NP-complete on planar bipartite graphs with maximum degree at most 3 and girth at least g, for every fixed g. In [4], Bange et al. show that efficient domination can be solved on trees in linear time. Since then a lot of tractability results were found. The following list is ordered by the year of publication. Minimum weight efficient domination is solvable 1.2. EFFICIENT DOMINATION 15

• in linear or polynomial time on graphs with bounded tree-width [1, 31, 33],

• in time O(n + m) on split graphs [20],

• in time O(n + m) on interval graphs [21],

• in time O(nm + n2) on circular-arc graphs [21],

• in time O(n2.37) on co-comparability graphs [19],

• in linear time on block graphs [94],

• in time O(n + m) on permutation graphs [65],

• in time O(n log log n + m) on trapezoid graphs [65],

• in time O(n log n) on trapezoid graphs [67],

• in linear or polynomial time on graphs with bounded clique-width [32],

• in time O(n) on bipartite permutation graphs [73], and

• in time O(n) on distance-hereditary graphs [73], where n is number of vertices and m the number of edges of the input graph and m is the number of edges of the complement of the input graph. Besides these results for the weighted minimization version, there are the following recent results: In [76], Milanič characterizes the hereditary efficiently dominatable graphs as the {bull, fork,C3k+1,C3k+2}-free graphs and gives a polynomial-time recognition algorithm for this class that outputs an efficient dominating set, if possible. Brandstädt et al. [10, 11] show that the decision version is polynomial-time solvable on asteroidal triple-free graphs, interval bigraphs, and dually chordal graphs. Actually, in the manuscript [7] it is shown that the weighted optimization versions are also polynomial-time solvable on these graph classes. In Chapter 2, we consider graph classes that are characterized by a single forbidden subgraph. We argue that efficient domination is NP-complete on such classes, whenever the forbidden induced subgraph is not a linear forest. For that reason, this thesis starts a systematic analysis of graph classes without induced linear forests and contributes the following results: Minimum weight efficient domination is solvable

• in time O(nm) on P5-free graphs in a robust way, 16 CHAPTER 1. INTRODUCTION

2.37 • in time O(min {nm, n }) on P5-free graphs, and

• in time O(nm) on (P4 + P2)-free graphs in a robust way.

Together with trivial results and corollaries of other results, this shows that minimum weight efficient domination is efficiently solvable on F -free graphs for every linear forest F on at most five vertices. Furthermore, when considering F -free graphs for linear forests F on six vertices, F = P6 is the only case where the complexity is still open.

1.3 Efficient Edge Domination

Efficient edge dominating sets were introduced in [49]. The corresponding efficient edge domination problem is motivated by resource allocation problems in parallel processing systems [68], encoding theory, and network routing problems.

efficient edge domination Input: A graph G = (V,E). Question: Is there an edge subset D ⊆ E such that D is an efficient edge dominating set of G?

Since, for a graph G = (V,E), an edge subset M is efficient edge dominating, if and only if it is an efficient dominating set in the line-graph of G, efficient edge domination can be expressed as efficient domination on line graphs. In literature, the problem is also formulated as follows: Can the vertex set of a given graph G be partitioned into two sets A and B such that G[A] is edgeless and G[B] is 1-regular? This is equivalent to our definition because one can easily check that D is an efficient edge dominating set of a graph G, if and only if G − V (D) is edgeless and G[V (D)] is 1-regular. Perfect matching are also known as induced matchings and, in literature, efficient edge domination is therefore also called dominating induced matching. This gives a relation to the maximum induced matching problem, as studied in [16], for example. Furthermore, this formulation correlates efficient edge domination to monopolarity, which asks for a partition of the vertex set such that G[A] is edgeless and G[B] is P3-free. Since 1-regular graphs are P3-free, efficient edge domination is a specialization of monopolarity. 1.3. EFFICIENT EDGE DOMINATION 17

t u u v w x y z v w x y z

Figure 1.3: The graph to the left (namely the graph S2,2,2) is efficiently edge dominatable by taking the edges drawn with double lines. The graph to the right (namely the graph S1,2,2) is not efficiently edge dominatable. Notice that the S1,2,2 is an induced subgraph of the S2,2,2.

Similar to efficient domination, even very simple graphs have no efficient edge dominating set. For example, Figure 1.3 shows two graphs, the S2,2,2 and the S1,2,2: Taking the edges {tu, vw, yz} of the S2,2,2 yields an efficient edge dominating set. The S1,2,2 is not efficiently edge dominatable because, if we choose any edge, then at least one of the edges {ux, vw, yz} cannot be dominated without violating efficiency.

The S2,1,1 is an induced subgraph of the S2,2,2, hence, efficiently edge dominatable graphs are not hereditary. However, they are additive: Consider two vertex disjoint graphs F and H, let DF be an efficient edge dominating set of F , and let DH be an efficient edge dominating set of H. One can easily check that DF ∪ DH is an efficient edge dominating set of (F + G). The optimization versions of efficient edge domination are: minimum/maximum (weight) efficient edge domination Input: A graph G = (V,E) (with edge weights ω) and a number k ∈ R+. Question: Is there an edge subset D ⊆ E such that D is an efficient edge dominating set of G and |D| is at most/at least k (ω(D) is at most/at least k)?

Efficient edge domination was shown to be NP-complete in general in the introductory work [49]. Sharper NP-completeness results, ordered by the year of publication, followed:

• bipartite graphs [71],

• planar bipartite graphs [70],

• r-regular graphs for every r ≥ 3 [16], and 18 CHAPTER 1. INTRODUCTION

• bipartite graphs of maximum degree at most 3 [17, 18].

In particular, the latter result shows NP-completeness for the class of {C3, ... ,Ck,H1, ... ,Hk}-free bipartite graphs of maximum degree at most 3 for every k, where Hi is the graph consisting of two P3 whose vertices of degree 2 are connected by a chordless path of length i. In Section 5.3, we show that efficient edge domination remains NP-complete on planar bipartite graphs with maximum degree at most 3 and girth at least g, for every fixed g. On the other hand, there is a variety of tractability results, some of them dealing with the decision version, others dealing with the weighted optimization version. The following list is ordered by the year of publication and we indicate in parentheses which version is considered. Efficient edge domination is solvable

• in linear or polynomial time on graphs with bounded tree-width [1, 31, 33] (decision),

• in time O(n) on generalized series-parallel graphs [49] (decision),

• in time O(n + m) on bipartite permutation graphs [72] (weighted opti- mization),

• in linear or polynomial time on graphs with bounded clique-width [32] (decision),

• in time O(n + m) on generalized series-parallel graphs [70] (weighted optimization),

• in polynomial time on convex graphs [17, 59] (decision),

• in time O(n2) on claw-free graphs [17, 18] (decision),

• in polynomial time on {Hi,Hi+1, ... }-free graphs with maximum degree at most d for every i and d [17] (decision),

• in time O(n + m) on P7-free graphs [14] (weighted optimization),

• in time O(n + m) on dually chordal graphs [10, 11] (decision),

• in polynomial time on interval-filament graphs [10, 11] (decision),

• in polynomial time on asteroidal triple-free graphs [10, 11] (decision), 1.4. POLARITY 19

• in polynomial time on weakly chordal graphs [10, 11] (decision), and

• in polynomial time on S1,2,3-free graphs [60] (decision), where n and m are the number of vertices and edges of the input graph respectively. In Chapter 3, we show that minimum weight efficient edge domi- nation is solvable

• in time O(n + m) on chordal bipartite graphs and

• in time O(nm) on hole-free graphs in a robust way.

The result for hole-free graphs answers the question whether efficient edge domination is efficiently solvable on weakly chordal graphs posed in [17]. This was of interest because weakly chordal graphs generalize chordal graphs and convex graphs. In fact, the question is also answered in [10, 11] by showing that efficient edge domination on weakly chordal graphs can be reduced to maximum independent set on weakly chordal graphs and, hence, can be solved in time O(n4). Moreover, it is argued that every efficiently edge dominatable hole-free graph is weakly chordal, so the result also solves efficient edge domination on hole-free graphs. But, on the one hand, our result was published earlier in [8] and, on the other hand, the algorithm given in this thesis is robust and has a better time complexity, even better than recognizing hole-free or weakly-chordal graphs.

1.4 Polarity

Polar graphs are a natural generalization of bipartite graphs and split graphs introduced by Tyshkevich and Chernyak in 1985 [91, 92]. By definition, they properly contain all monopolar graphs and all unipolar graphs. Since the recognition of polar graphs is NP-complete, even on very restricted graph classes, it is interesting to analyze the complexity of recognizing monopolar graphs and unipolar graphs. Therefore, we define the recognition problems as follows:

polarity (monopolarity, unipolarity) Input: A graph G = (V,E). Question: Is there a polar (monopolar, unipolar) partition (A, B) of the vertex set V ? 20 CHAPTER 1. INTRODUCTION

Figure 1.4: The leftmost graph (F1) is monopolar by coloring the squared vertices amber, the graph at center (F2) is unipolar by coloring the circled vertices amber, and the rightmost graph (F3) is polar by coloring the vertices in diamonds amber.

Polar partitions are special sparse-dense partitions, thus, polarity is a special case of the matrix partition problem [43, 44]. Furthermore, polar partitions can be regarded as generalized colorings [15]. In literature, the set of amber colored vertices of a monopolar partition is also called independent P3-transversal. This is a reasonable way of thinking about monopolar partitions: Find an independent set that contains at least on vertex of every induced P3. To substantiate the fact that monopolar graphs and unipolar graphs are proper subsets of polar graphs, Figure 1.4 shows three graphs, F1, F2, and F3: The graph F1 is monopolar by coloring the pending vertices and the vertex of degree 4 amber and the other vertices blue. It is easy to verify that this graph admits no unipolar partition. The graph F2 is unipolar by taking the two vertices of degree 5 into the set A and the other vertices into the set B. Again, it is easy to verify that this graph admits no monopolar partition.

Finally, the graph F3 has neither a monopolar nor a unipolar partition, but it is polar by coloring the vertices of degree 2 blue and the other vertices amber. It is also possible that a graph is monopolar and additionally admits polar partitions that are not monopolar. Figure 1.5 shows an example for such a graph. The partition (A, B) with A = {r, u, v, y} and B = {q, s, t, w, x, z} is polar: The induced subgraph G[B] consists of the two disjoint triangles q t x q and s w z s, which is clearly P3-free. The induced subgraph G[A] is a complete multipartite graph because one can partition its vertices into three completely connected independent sets, namely {r, y}, {u}, and {v}. But this partition is not monopolar, although the graph also admits the monopolar partition (A, B) with the independent set A = {r, t, w, y} and

B = {q, s, u, v, x, z}, which induces a P3-free graph. In contrast to efficiently dominatable and efficiently edge dominatable graphs, the classes of polar, monopolar, and unipolar graphs are hereditary. 1.4. POLARITY 21

r q s

w t u v x z y

Figure 1.5: This graph is monopolar by coloring the squared vertices amber. Coloring the vertices in diamonds amber yields a polar partition that is not monopolar.

This can easily be realized by the fact that complete multipartite graphs, complete graphs, edgeless graphs, and P3-free graphs are hereditary graph classes. But polar graphs and unipolar graphs are not additive. As an example, consider the graph F2 of Figure 1.4. This graph is unipolar and, hence, polar, but it admits no monopolar partition. Now consider G = 2F2. Since monopolar graphs are hereditary, G cannot admit a monopolar partition. Since complete graphs and complete multipartite graphs are connected, it is impossible to choose vertices from both connected components of G into the set A of a polar partition. Hence, since both connected components contain induced 3-paths, G is not polar. Even in published articles this fact is overlooked. For example, [35] shows that polarity is efficiently solvable on connected permutation graphs and then, it is stated that this implies efficient recognition of polar permutation graphs. Since the foregoing example is a permutation graph, this implication is wrong.

Conversely, since the classes of edgeless graphs and P3-free graphs are additive, monopolar graphs are additive.

Polarity is NP-complete in general, as shown by Tyshkevich and Chernyak [91, 92]. The question becomes polynomial-time solvable, if we search for polar partitions (A, B) such that the size of every co-connected component of G[A] is bounded by a constant α and the size of every connected component of G[B] is bounded by a constant β [91]. This also follows from a more general result for list partitions given in [44]. Conversely, if we demand the bound only on β, then the problem is NP-complete [22] again. Recently, it was shown that polarity remains NP-complete on triangle-free graphs and on claw-free graphs [26]. In Section 5.4, we show that polarity is NP-complete on • planar triangle-free graphs with maximum degree at most 3, 22 CHAPTER 1. INTRODUCTION

• planar {C4, ... ,Cg}-free graphs with maximum degree at most 3, for every g ≥ 4,

• co-planar 3P1-free n-vertex graphs with minimum degree at least n − 4, and

• co-planar {C4, ... , Cg}-free n-vertex graphs with minimum degree at least n − 4, for every g ≥ 4.

These results have some interesting implications: On the one hand, we have NP-completeness on 3-colorable graphs, claw-free co-planar graphs, and on

{2P2,C5}-free graphs, which includes hole-free graphs and P5-free graphs. On the other hand, the NP-completeness on planar graphs motivates the analysis of subclasses of planar graphs that admit efficient polarity algorithms. In Section 4.4, we identify two classes of this kind.

The NP-completeness of monopolarity follows from a general result of Farrugia [42]. He shows that the decision problem, whether a graph admits an (A, B) vertex partition such that G[A] is in the graph class Π and G[B] is in the graph class Φ, is NP-complete for all additive and hereditary graph classes Π and Φ, with the single exception when both graphs have to be edgeless. Earlier, in [62], it was shown that recognizing (1, 2)-subcolorable cubic graphs is NP-complete on planar triangle-free graphs, which implies that monopolarity is NP-complete on planar triangle-free graphs. This also covers the NP-completeness proof for triangle-free graphs in [26]. The manuscript [23] shows that monopolarity is NP-complete on comparability graphs. We contribute NP-completeness proofs for monopolarity on

• planar triangle-free graphs with maximum degree at most 3,

• planar {C4, ... ,Cg}-free graphs with maximum degree at most 3, for every g ≥ 4, and also on 3-colorable graphs.

Unipolarity is polynomial-time solvable in general, see for example [39] and the references therein.

For polarity, the following positive results are known, ordered by the year of their publication; it is solvable 1.4. POLARITY 23

• in linear or polynomial time on graphs with bounded tree-width [1, 31, 33],

• in linear or polynomial time on graphs with bounded clique-width [32],

• in time O(n) on cographs [38],

• in polynomial time on chordal graphs [36],

• in time O(n) on line-graphs of bipartite graphs [37, 57],

• in time O(n) on line-graphs [24], and

• in time O(nm2) on connected permutation graphs [35], where n and m are the number of vertices and edges of the input graph. We extend this list in Section 4.4 by showing that polarity is polynomial- time solvable on hole-free planar graphs and maximal planar graphs. In partic- ular, the result for hole-free planar graphs complements our NP-completeness results for planar graphs and hole-free graphs. Many of the tractability results for polarity, for example for chordal graphs or connected permutation graphs, analyze the polar partitions of a graph under the assumption that the graph is neither unipolar nor monopolar. Hence, the appropriate algorithms first check if the input graph is unipolar or monopolar and, if not, then check for the remaining polar partitions. This requires efficient algorithms for monopolarity. In fact, our polarity algo- rithms also work in this way. But for this purpose, we need a refined version of monopolarity that we call monopolar extension. In literature, it is also known as monopolar multicolorings or list monopolar partitions.

monopolar extension Input: A graph G = (V,E) and a precoloring (A0,B0). Question: Is there a monopolar partition (A, B) of G that extends (A0,B0)?

Clearly, monopolar extension with an empty precoloring equals monopo- larity. There are several tractability results for monopolarity and monopolar extension. The following list of results, ordered by their year of publication, contains results for both problems, indicated in parentheses. The problem is solvable 24 CHAPTER 1. INTRODUCTION

• in linear or polynomial time on graphs with bounded tree-width [1, 31, 33] (monopolar extension),

• in linear or polynomial time on graphs with bounded clique-width [32] (monopolar extension),

• in time O(n) on cographs [38] (monopolarity),

• in time O(n + m) on chordal graphs [36] (monopolar extension),

• in time O(n2m) on claw-free graphs [25] (monopolar extension),

• in time O(n4) on a graph class G that contains all hole-free graphs [27] (monopolar extension),

• in time O(n2m) on polar graphs [27] (monopolarity),

• in time O(n) on line-graphs [24] (monopolarity),

• in time O(nm) on permutation graphs [35] (monopolar extension), and

• in time O(n3) on claw-free graphs [26] (monopolarity), where n and m are the number of vertices and edges of the input graph.

The positive result for chordal graphs, that is, the {C4,C5, ... }-free graphs, contrasts our NP-completeness result for {C4, ... ,Cg}-free graphs for every fixed g ≥ 4. Our main result for monopolar extension, given in Chapter 4, is an 4 O(n )-time algorithm that works on so called locally A5-S2,2,2-defused graphs. This graph class is quite technical, but it is a proper superclass of the class given in [27] and contains well-known graph classes like chair-free graphs and hole-free graphs and, hence, cographs, chordal graphs, claw-free graphs, line-graphs, permutation graphs, and co-comparability graphs. Notice that our result, published in [64], and the result of Churchley and Huang [27] were developed independently. 2 Efficient Domination

This chapter shows several tractability results for minimum weight ef- ficient domination. All these results concern graph classes that are characterized by forbidden induced linear forests, that is, cycle-free graphs with maximum degree at most 2, which are discussed in Section 2.1. The given results can be classified into two categories by the technique they use. For an input graph G with vertex weights ω, the first technique seeks for every vertex v for a minimum cost efficient dominating set Dv with v ∈ Dv. This is done by partitioning the vertex set into distance levels according to v, called a hanging, and utilizing the properties of the graph class to establish an efficient search algorithm. The global minimum is found in minv∈V (G) {ω(Dv)}. Section 2.2 presents this technique in detail and gives robust algorithms for minimum weight efficient domination on (P2 + P4)-free graphs and on P5-free graphs. The technique can also be used to design efficient algorithms for solving minimum weight efficient domination on {P6,S1,2,2}-free graphs and on {(P3 + P3),S1,2,2}-free graphs [13]. The second technique benefits from a relation between efficient domi- nation on a graph G and maximum independent set on the square of G. In Section 2.3, this relation is used to show that minimum weight efficient domination is tractable on P5-free graphs. The asymptotic runtime of this algorithm is slightly better than the runtime of the algorithm that uses the hanging technique shown in Section 2.2, but it is not robust. The results of this chapter are published in the extended abstract [12] and the preprint [13]. Section 2.2.2 corrects some minor errors of [13].

Notions and Observations Observation 2. Given a graph G = (V,E) with vertex weights ω, an efficient dominating set of size 1 and of minimum weight can be found in linear time.

Proof. Clearly, an efficient dominating set of size 1 must be a universal vertex 26 CHAPTER 2. EFFICIENT DOMINATION in G. By counting the degree of every vertex, the universal vertices

U := {v ∈ V | deg(v) = |V | − 1} can be identified in linear time. Obviously,

D := {u} with u ∈ arg min {ω(u)} u∈U is found in linear time.

Observation 3. Every efficient dominating set of a graph G = (V,E) that is not co-connected contains exactly one vertex.

Proof. Let D be an efficient dominating set of G and let H and H0 be two co-connected components of G. Since every vertex of H is adjacent to every vertex of H0 and D is efficient, |D ∩H| ≤ 1. If |D ∩H| = 1, the efficiency of D implies D ∩ H0 = ∅. Since H and H0 were chosen arbitrarily, the observation follows.

Observation 4. Given a graph G = (V,E) and a vertex subset D ⊆ V , it can be decided in linear time, if D is an efficient dominating set of G.

Proof. For every vertex d ∈ D, we label every vertex in N(d). This can clearly be done in time O(|E|), accumulated over all d ∈ D. If we try to label a vertex twice or if we try to label a vertex of D, then D is not efficient. Finally, we check for every v ∈ V \ D, if v is labeled, which takes time O(|V |). If this is not the case for at least one vertex, then D is not dominating. Otherwise, D clearly is an efficient dominating set of G.

Observation 5. Let G be a graph and let v be a vertex of G. A vertex subset D is an efficient dominating set of G − N[v] with D ∩ N 2(v) = ∅, if and only if D ∪ {v} is an efficient dominating set of G.

Proof. If D is an efficient dominating set of G − N[v], then it dominates all vertices of G except N[v]. Since D ∩ N 2(v) = ∅, every vertex of D has distance at least 2 to v in G. Hence, D ∪ {v} is efficient and dominating in G. If D0 = D ∪ {v} with v 6∈ D is an efficient dominating set of G, then D0 ∩ V (G − N[v]) = D. As no vertex of G − N[v] is dominated by v, D is an efficient dominating set of G − N[v].

We say that an efficient dominating set D of a graph G = (V,E) is v- efficient dominating, if v ∈ D. Consequently, an efficient dominating set D of 27 a graph G = (V,E) with vertex weights ω is v-minimum weighted for a vertex v ∈ V , if D has minimum weight over all v-efficient dominating sets of G. Sometimes, we use the weight ∞ for vertices. Since we do not want to do arithmetics with infinite values, we define for a graph G = (V,E) with P vertex weights ω the infinite weight as ∞ω := 1 + v∈V ω(v). For another 0 0 0 P vertex weight function ω , we write ω (D) < ∞ω for ω (D) ≤ v∈V ω(v) and 0 0 P we write ω (D) = ∞ω for ω (D) > v∈V ω(v).

Lemma 6. If for a graph G = (V,E) with vertex weights ω, minimum weight efficient domination can be solved in time O(s) for every induced subgraph G − N[v], v ∈ V , then it can be solved in time O(|V | · max{s, |V | + |E|}) on G.

Proof. If G is empty, the lemma is vacuously true. Hence, let G be non-empty. Clearly, every minimum weighted efficient dominating set D is a v- minimum weighted efficient dominating set for all v ∈ D. Hence, to find a minimum weighted efficient dominating set of G, we compute a v-minimum weighted efficient dominating set Dv for every v ∈ V and return one of minimum weight. To find a v-minimum weighted efficient dominating set D, we construct

 2 ∞ω, w ∈ N (v) Gv := G − N[v] and ωv(w) := ω(w), otherwise and compute a minimum weighted efficient dominating set Dv of Gv and ωv. If it does not exist, then Gv is not efficiently dominatable and, by Observation 5, G admits no v-efficient dominating set. If ωv(Dv) = ∞ω, then every efficient 2 dominating set of Gv has infinite weight, that is, contains a vertex of N , thus, by Observation 5, G admits no v-efficient dominating set. If ωv(Dv) < ∞ω, 2 then Dv contains no vertex of N and, by Observation 5, D := Dv ∪ {v} is a 2 v-efficient dominating set of G. Since ω and ωv only differ in vertices of N , we have ω(D) = ωv(Dv). Assume that G admits a v-efficient dominating set D0 with ω(D0) < ω(D). 0 2 0 By Observation 5, there is an efficient dominating set Dv of Gv with N ∩Dv = 2 0 0 ∅. Since ω and ωv only differ in vertices of N , we have ω(D ) = ωv(Dv), 0 which implies ωv(Dv) < ωv(Dv)—this is a contradiction because Dv is a minimum weighted efficient dominating set of Gv. Hence, D is a v-minimum weighted efficient dominating set of G.

Since Gv and ωv can be constructed in time O(|V |+|E|), solving minimum weight efficient domination on Gv and ωv takes time O(s), and we do 28 CHAPTER 2. EFFICIENT DOMINATION this for every vertex v ∈ V , the stated runtime of O(|V | · max {s, |V | + |E|}) follows.

For a graph class C, a graph G = (V,E) is nearly C, if for every v ∈ V the graph G − N[v] is in C. For nearly C graphs, Lemma 6 implies:

Corollary 7. If minimum weight efficient domination is solvable on every graph G = (V,E) of class C in time O(s(|V |, |E|)), then it is solvable on every nearly C graph G0 = (V 0,E0) in time O(|V 0| · max{s(|V 0|, |E0|), |V 0| + |E0|}).

A proper vertex subset H ⊂ V of a graph G = (V,E) with 2 ≤ |H| is called homogeneous, if every vertex of V \ H is either adjacent to all vertices of H or adjacent to no vertex of H. A graph is called prime, if it contains no homogeneous set. A homogeneous set H is maximal, if no other homogeneous set properly contains H. It is well known that in a connected and co-connected graph G, the maximal homogeneous sets are pairwise disjoint and can be determined in linear time (see for example [75]).

Observation 8. Let G = (V,E) be a connected graph with vertex weights ω, let H be a maximal homogeneous set of G and let U ⊆ H contain all H-universal vertices of H. If D is a minimum weighted efficient dominating set of G, then |D ∩ H| ≤ 1 and D ∩ H ⊆ arg min {ω(u) | u ∈ U}.

Proof. Let D be a minimum weighted efficient dominating set of G. Assume that there are vertices h and h0 with {h, h0} ⊆ H ∩ D. Since H 6= V , H is homogeneous, and G is connected, there is at least one vertex y ∈ V \ H that is adjacent to every vertex of H, in particular to h and h0—this is a contradiction to the efficiency of D. Hence, |D ∩ H| ≤ 1. Assume that D ∩ H = {h}. First, assume that h 6∈ U. There is a vertex h0 ∈ H with h h0. Since D is dominating, there is a vertex y ∈ D with h0 y. Since |D ∩ H| ≤ 1, we have y ∈ V \ H. This implies h y because H is homogeneous—this is a contradiction to the efficiency of D. Hence, h ∈ U. Now assume that there is h0 ∈ U with ω(h0) < ω(h). Since N[h] = N[h0] for all {h, h0} ∈ U, clearly D0 = D \{h} ∪ {h0} is an efficient dominating set of G with ω(D0) < ω(D)—this is a contradiction to the minimum size of D. Since all vertices of H can be dominated by a vertex of V \ H, H ∩ D = ∅ is also possible.

Definition 1. Let G = (V,E) be a connected and co-connected graph with vertex weights ω and let H = {H1,H2,...,Hk} be the maximal homogeneous 29 sets of G. Let U ⊆ H contain every homogeneous set H of G that contains at least one H-universal vertex. For every Hi ∈ U, let hi ∈ V (Hi) be a Hi-universal vertex of minimum weight. For every Hi ∈ H \ U, let hi ∈ V (Hi) be an arbitrarily chosen vertex of Hi. The packed graph is defined as

p G := G[(V \ (H1 ∪ H2 ∪ · · · ∪ Hk)) ∪ {h1, h2, . . . , hk}]  ∞ , if v = h and H 6∈ U ωp(v) := ω i i . ω(v), otherwise

Since all homogeneous sets are contracted to a single vertex, Gp clearly is prime. Lemma 9. Let G = (V,E) be connected and co-connected graph with vertex weights ω. There is a minimum weighted efficient dominating set of G of size

Ω < ∞ω, if and only if there is a minimum weighted efficient dominating set of Gp of size Ω. Proof. Let D be a minimum weighted efficient dominating set of G. Clearly, we have ω(D) < ∞ω because D ⊆ V . Let H1,...,Hk be the maximal homogeneous sets of G. Let Dp contain

• D \ (H1 ∪ H2 ∪ · · · ∪ Hk) and

p • Hi ∩ V (G ), if Hi ∩ D 6= ∅, for all i ∈ {1, . . . , k}. Clearly, we have Dp ⊆ V (Gp). Since Dp contains a vertex of a maximal homogeneous set H of G, only if D contains a vertex of H, by Observation 8 we p p p p know that D contains no vertex v with ω (v) = ∞ω and, hence, ω (D ) < ∞ω. Also by Observation 8, we know that D contains at most one vertex h of every homogeneous set H of G. Furthermore, h is H-universal and of minimum weight over all H-universal vertices. In Dp, h is substituted by a vertex that has the same neighborhood in G and that has the same weight as h. Hence, and since Gp is an induced subgraph of G, Dp is an efficient dominating set of Gp with ωp(Dp) = ω(D). Let Dp be a minimum weighted efficient dominating set of Gp with p p p p p ω (D ) < ∞ω. Since ω (D ) < ∞ω, we know that D contains no ver- p p p p p tex of weight ∞ω and, hence, for every d ∈ D we have ω (d ) = ω(d ). The set Dp is efficient and dominating in G because every vertex of V (G) \ V (Gp) has the same neighborhood as some vertex of V (Gp) and assuming that Dp is not efficient or not dominating in G yields that Dp is not efficient or not dominating in Gp. 30 CHAPTER 2. EFFICIENT DOMINATION

Since finding all maximal homogeneous sets and constructing Gp can be done in linear time, from Lemma 9 follows: Corollary 10. Let G = (V,E) be a connected and co-connected graph. If minimum weight efficient domination is solvable in time O(s) on Gp, then it can be solved in time O(max {s, |V | + |E|}) on G.

2.1 Graphs Without Induced Linear Forests

Efficient domination is known to be NP-complete on several graph classes, including bipartite graphs and chordal graphs [94]. Since bipartite graphs are a subset of the triangle-free graphs, we have: Corollary 11 (of Theorem 1 in [94]). Efficient domination is NP- complete on triangle-free graphs. Theorem 1 (Theorem 2 in [94]). Efficient domination is NP-complete on chordal graphs. Another result originates from the NP-completeness of efficient edge domination [49]: By definition, a graph G admits an efficient edge dominat- ing set, if and only if its line graph L(G) admits an efficient dominating set. Hence, efficient domination is NP-complete on the class of line graphs. Since the line graphs are claw-free, we have: Corollary 12 (by [5]). Efficient domination is NP-complete on claw-free graphs. Recall that linear forests are the graphs that do not contain a cycle or a claw. Corollaries 11 and 12 and Theorem 1 together imply: Corollary 13. Let F be a graph. If F is not a linear forest, then efficient domination is NP-complete on F -free graphs. This gives rise to the question how efficient domination behaves on graph classes that are defined by a single forbidden induced linear forest. We can find a first intractability result by having a closer look at [94]. The reduction given therein constructs a graph consisting of independent vertex sets X, S, and A of equal size such that S ∪ A induces a 1-regular graph, and an exact 3-cover instance is encoded in the edges between X and S. The reduction also works if X is a clique, which is used for showing NP- completeness on chordal graphs. In that case, the graph is also (P3 + P3)-free and, hence, we have: 2.1. GRAPHS WITHOUT INDUCED LINEAR FORESTS 31

Theorem 2 (similar to Theorem 2 in [94]). Efficient domination is NP-complete on (P3 + P3)-free graphs.

In fact, this is the only NP-completeness result that we know for F -free graphs, if F is a linear forest. Conversely, we collect some tractability results that are either trivial or follow from known results. A useful tool for this is the following lemma:

Lemma 14. Let F be a linear forest. If minimum weight efficient domination is polynomial-time solvable on F -free graphs, then it is also polynomial-time solvable on (F + P1)-free graphs. Conversely, if efficient domination is NP-complete on F -free graphs, then it also is NP-complete on (F + P1)-free graphs.

Proof. By definition, every (F + P1)-free graph is nearly F -free. Hence, Corollary 7 implies the first statement of the corollary. Since F -free graphs are a subclass of (F + P1)-free graphs, the second statement holds, too.

Clearly, minimum weight efficient domination is linear-time solvable on (P1 + P1)-free graphs and P2-free graphs, that is, on complete and on edgeless graphs. Although every edgeless or complete graph is efficiently dominatable, notice that we need linear time to calculate the weight of the efficient dominating set. Hence, for every F -free graph where F has at most two vertices, minimum weight efficient domination is linear-time solvable. Using Lemma 14, we have that minimum weight efficient domination is polynomial-time solvable on 3P1-free graphs and (P2 + P1)-free graphs. Actually, using the following simple observations, we can easily derive linear- time algorithms for these classes:

Observation 15. If G = (V,E) is an efficiently dominatable 3P1-free graph without a universal vertex, then G is co-bipartite. Let V = X ∪Y be a partition of G into cliques. The vertex subset D ⊆ V is an efficient dominating set of G, if and only if D = {x, y} for x ∈ X and y ∈ Y with E(x, Y ) = ∅ and E(y, X) = ∅.

Proof. Since G is 3P1-free, every independent set of G has at most 2 vertices and, hence, every efficient dominating set D has at most 2 vertices. If G has no universal vertex, we have |D| = 2, say D = {x, y}. Since D is efficient, N(x) ∩ N(y) = ∅. This implies V = N[x] ∪ N[y] because if there is a vertex v ∈ V \ (N[x] ∪ N[y]), then {v, x, y} induces a 3P1 in G—this is a 32 CHAPTER 2. EFFICIENT DOMINATION contradiction. Furthermore, N[x] and N[y] are cliques because if there are two non-adjacent vertices in one of the sets, say {x0, x00} ∈ N(v), then {y, x0, x00} induces a 3P1 in G—this is a contradiction. Hence, G is co-bipartite. The fact that every choice of two vertices, x ∈ X and y ∈ Y , which fulfill E(x, Y ) = ∅ and E(y, X) = ∅ forms an efficient dominating set of G follows from the previous considerations.

Recognizing co-bipartite graphs can be done in linear time because, if a graph G = (V,E) is co-bipartite, then |E| ≥ |V |2 and, hence, we can compute E in linear time and test if G is bipartite. Clearly, for a bipartition of G = (X ∪ Y, E), finding all X-universal vertices of Y and all Y -universal vertices of X and choosing a pair of minimum weight can be done in linear time, too. Hence, we can solve minimum weight efficient domination in linear time on 3P1-free graphs.

Observation 16. If G = (V,E) is an efficiently dominatable (P2 + P1)-free graph, then G is either edgeless or contains a universal vertex.

Proof. If G is edgeless, clearly, V is an efficient dominating set. Otherwise, assume that G has an efficient dominating set D ⊂ V with at least two vertices, say {x, y} ⊆ D. Without loss of generality assume that x has a neighbor x0. Since D is efficient, we have x0 y and, hence, {x, x0, y} induces a (P2 + P1) in G—this is a contradiction.

Testing a graph for being edgeless is easy. Finding a universal vertex of minimum weight can be done by counting the degree of every vertex and compare it to |V | − 1 in linear time. Hence, minimum weight efficient domination is solvable in linear time on (P2 + P1)-free graphs. The class of P3-free graphs contains exactly the disjoint unions of complete graphs. Since efficiently dominatable graphs are additive, we can solve the problem in linear-time on P3-graphs by solving it on the connected components. This proves:

Theorem 3. On F -free graphs, where F is a linear forest on at most three vertices, minimum weight efficient domination is solvable in linear time.

When considering linear forests on four vertices, the cases that are not covered by Lemma 14 and Theorem 3 are (P2 + P2)-free graphs and P4-free graphs. For (P2 + P2)-free graphs and even for mP2-free graphs for every fixed m it is known that the number of inclusion-maximal independent sets 2.1. GRAPHS WITHOUT INDUCED LINEAR FORESTS 33 is polynomial in the number of vertices [3, 41, 85]. Since the set of all inclusion-maximal independent sets of a graph G = (V,E) can be found in time O(|V | · |E| · µ) [90], where µ is the number of all inclusion-maximal independent sets, minimum weight efficient domination can be solved in polynomial time by testing every inclusion-maximal independent set for being an efficient dominating set by Observation 4 and choosing the one of minimum weight. For the class of P4-free graphs, better known as cographs, it is known that every graph is either the P1 or not connected or the union of two cographs H and H0 extended by all possible edges between V (H) and V (H0). If G is not connected, then minimum weight efficient domination can be solved on the connected components independently. If G is not co-connected, then every pair of vertices has distance at most 2 and, hence, every efficient dominating set contains exactly one vertex. Thus, by Observation 2, the problem can be solved in linear time on cographs. This proves: Theorem 4. On F -free graphs, where F is a linear forest on at most four vertices, minimum weight efficient domination is solvable in polynomial time. If F is a linear forest on five vertices, Lemma 14 and Theorem 4 give tractability results for all classes except P5-free graphs and (P3 + P2)-free graphs. In both cases we are not aware of known results that imply NP- completeness or tractability of efficient domination. Therefore, Sec- tions 2.2.1 and 2.3.1 give two polynomial-time algorithms for P5-free graphs and Section 2.2.2 gives a polynomial-time algorithm for (P4 + P2)-free graphs, hence, also for (P3 + P2)-free graphs. With these results, we have: Theorem 5. On F -free graphs, where F is a linear forest on at most five vertices, minimum weight efficient domination is solvable in polynomial time. Considering forbidden induced linear forests on six vertices, there are four cases that are not covered by Lemma 14 and Theorem 5. In the case of (P3 + P3)-free graphs, we already know NP-completeness (Theorem 2). The second case, the 3P2-free graphs, admit a polynomial-time algorithm due to the bounded number of maximal independent sets as discussed earlier for (P2 + P2)-free graphs. The third case are the (P4 + P2)-free graphs. As already mentioned, Section 2.2.2 shows that minimum weight efficient domination is tractable on this class. The fourth case, that is, the P6-free graphs, is the only one where the complexity of efficient domination remains open. 34 CHAPTER 2. EFFICIENT DOMINATION

Theorem 6. On F -free graphs, where F is a linear forest on at most six vertices, except F = (P3 + P3) and F = P6, minimum weight efficient domination is solvable in polynomial time.

Since efficient domination is NP-complete on (P3 + P3)-free graphs, it is clearly also NP-complete on Pk-free graphs for every k ≥ 7 and on 0 (Pk + P` + F )-free graphs for every k ≥ 3, every ` ≥ 3, and every linear 0 forest F . Hence, besides the P6-free case, the complexity of efficient domination on F -free graphs is still unknown for (P5 + P2)-free graphs, (P6 +P2)-free graphs, and for (Pk +mP2)-free graphs for every k ≥ 3 and every m ≥ 2. If these questions can be solved, the classification of the complexity of efficient domination with respect to graphs without induced linear forests would be complete.

2.2 Hangings

For a graph G = (V,E) and a vertex v ∈ V , we call N 1(v),N 2(v),... the distance levels of v. Clearly, there is a k < |V | such that

{v} ∪ N 1(v) ∪ N 2(v) ∪ · · · ∪ N k(v) is a partition of V . We call this partition the hanging of G for v and denote it by n 1 2 k o Nv := N (v),N (v),...,N (v) . The algorithms shown in this section solve minimum weight efficient domination in the following way: Given a graph G = (V,E), check if it is connected and co-connected. If not, either solve the problem on the connected components or find and return the trivial solution containing a single vertex. Otherwise, continue on the packed graph, which is justified by Lemma 9. Determine the hanging for every vertex v ∈ V , find a v-minimum weighted efficient dominating set Dv, and return the best of all these efficient dominating sets. Since every efficient dominating set of a connected non-empty graph contains at least one vertex, this procedure is justified by Lemma 6. Table 2.1 shows the appropriate algorithm. It contains the call of a function Robust-C-v-MWED, which is defined as follows:

Definition 2. The procedure Robust-C-v-MWED takes a prime graph G = (V,E), a vertex v ∈ V and the hanging on this vertex, assuming that N 3(v) 6=

∅, as arguments and either returns a set Dv ⊆ V or states that G 6∈ C. If G 2.2. HANGINGS 35

is v-efficiently dominatable, then a set Dv is returned which is a v-minimum weighted efficient dominating set of G. If G is not v-efficiently dominatable, then a set Dv is returned which is no efficient dominating set at all.

Since the returned set Dv is efficient dominating in G, if and only if it is a v-minimum weighted efficient dominating set of G, Step 6 of the framework has to check for every returned set whether it is an efficient dominating set and discards invalid candidates. This check is no performance drawback for the algorithm because deciding if a vertex subset is efficient dominating can be done in linear time by Observation 4. With the considerations from above, Observations 2 and 3 and Corollary 10, one can easily check: Lemma 17. If Robust-C-v-MWED fulfills Definition 2 and can be computed in time O(s) for a graph G = (V,E) ∈ C, then Robust-C-MWED is correct and runs in time O(|V | · max{s, |V | + |E|}). As already mentioned, the following sections give implementations of

Robust-C-v-MWED for C fixed to P5-free graphs and (P4 + P2)-free graphs. Therefore, the hanging for a vertex v is analyzed under the assumption that G is in the graph class C and that G admits a v-efficient dominating set. Hence, let G = (V,E) be a prime graph with vertex weights ω, let v ∈ V be a vertex of G, let D ⊆ V with v ∈ D, and let N 3(v) 6= ∅. For brevity, we write N i instead of N i(v). The following two sections are structured as follows: We collect prop- erties for G and D and show in subsequent lemmas under which condi- tions the properties are fulfilled. Then, we use these insights to implement Robust-C-v-MWED efficiently for the respective graph class C. A trivial property following directly from the definition, that is independent from C and true, whenever G admits a v-efficient dominating set, is: Property 1. D ∩ N 1 = D ∩ N 2 = ∅. This property is obvious and, therefore, never explicitly mentioned when used.

2.2.1 P5-free Graphs Property 2. We have V = {v} ∪ N 1 ∪ N 2 ∪ N 3, that is, N 4 = N 5 = ··· = ∅.

Property 3. 36 CHAPTER 2. EFFICIENT DOMINATION

Algorithm: Robust-C-MWED Input: A prime graph G = (V,E) with vertex weights ω. Output: A minimum weighted efficient dominating set of G or the statement that G admits no efficient dominating set or the statement that G 6∈ C.

1. If G is not connected and G1, G2,..., Gk are the connected components of G:

1. Compute Di := Robust-C-MWED(Gi) for all i ∈ {1, . . . , k}. 2. If one of these computation stops, STOP for the same reason.

3. Return D1 ∪ D2 ∪ · · · ∪ Dk. 2. If G is not co-connected, calculate the set U of universal vertices of G and Return {u} for some u ∈ arg min {ω(u) | u ∈ U}. — G is connected and co-connected. — 3. Construct Gp and set G = (V,E) := Gp. 4. Set D := ∅. 5. For every vertex v ∈ V :

1. Determine the hanging Nv. — Since G is co-connected, N 2(v) 6= ∅.— 3 2. If N (v) = ∅, set Dv := ∅. /* We need vertices in N 3(v) to dominate the vertices of N 2(v). */

3. Else, set Dv := Robust-C-v-MWED(G, v, Nv).

4. Set D := D ∪ {Dv}. 6. For every D ∈ D check if D is an efficient dominating set and, if so, calculate its weight. If not, remove D from D. 7. If D contains no efficient dominating set at all, STOP: G admits no efficient dominating set.

8. Return D for some D ∈ arg minD∈D {ω(D)}.

Table 2.1: A framework for solving minimum weight efficient domina- tion using hangings. 2.2. HANGINGS 37

(i) For every two vertices {y, z} ⊆ N 3 with y z, we have N(y) ∩ N 2 = N(z) ∩ N 2, that is, y and z have the same neighborhood in N 2. For every connected component H of G[N 3]: (ii) for every two vertices {y, z} ⊆ V (H), we have N(y) ∩ N 2 = N(z) ∩ N 2, that is, y and z have the same neighborhood in N 2 and

(iii) H contains at most one H-universal vertex.

Lemma 18. If G is P5-free, then it fulfills Properties 2 and 3.

Proof. Property 2 directly follows from the P5-freeness. For Property 3.i, let {y, z} ⊆ N 3 with y z. Assume without loss of generality that there is a vertex x ∈ N 2 with x y and x z. Let w be 1 a neighbor of x in N . Then {v, w, x, y, z} induces a P5 in G—this is a contradiction. Property 3.ii follows by applying this argumentation on every edge of H. For Property 3.iii, assume that there are two different H-universal vertices in V (H), say u and u0. Both, u and u0, have the same neighborhood in N 3 because they are adjacent to all vertices of H and to no other vertex of N 3. As shown above, they also have the same neighborhood in N 2. By definition, they have no other neighbors in G, in particular there is at least one common non-neighbor, for example v. This means that {u, u0} is a homogeneous set of G—this is a contradiction to its primality. Property 4. Every connected component H of G[N 3] contains one H- universal vertex u and D ∩ H = {u}. Lemma 19. If G admits a v-efficient dominating set D of G and G fulfills Properties 2 and 3, then G and D fulfill Property 4. Proof. Since N 1 ∩ D = N 2 ∩ D = N 4 = N 5 = ··· = ∅, all vertices of N 3 must be dominated by vertices of N 3. Let y ∈ N 3 and let H be the connected component of G[N 3] that contains y. Clearly, y has at least one neighbor in N 2, say x. Hence, by Property 3.ii, every vertex y0 ∈ V (H) is adjacent to x. This means that D contains exactly one vertex of H because if V (H) ∩ D = ∅, then D is not dominating, and if |V (H)∩D| > 1, then D is not efficient. Since D is dominating, the vertex u in V (H) ∩ D is H-universal. By Property 3.iii, there is at most one H-universal vertex in V (H) and the lemma follows. Property 5. For every vertex x ∈ N 2, there is a connected component H of G[N 3] with N(x) ∩ N 3 = V (H). 38 CHAPTER 2. EFFICIENT DOMINATION

Lemma 20. If G admits a v-efficient dominating set D of G and G and D fulfill Properties 3 and 4, then G fulfills Property 5.

Proof. That there is a connected component H of G[N 3] such that V (H) ⊆ (N(x) ∩ N 3) follows from Property 3.ii. Assume that x has also a neighbor in a different connected component H0 of G[N 3]. Again, by Property 3.ii, V (H0) ⊆ (N(x) ∩ N 3). Hence, by Property 4, x has two neighbors in D—this is a contradiction to the efficiency of D.

With Lemmas 18 to 20, we know that, if G is P5-free and admits a v- efficient dominating set D, then G and D fulfill Properties 2 to 5. To develop an algorithm, we also need the converse:

Lemma 21. If G and D fulfill Properties 2 to 5, then D is a v-minimum weighted efficient dominating set of G.

Proof. Clearly, v has distance 3 to every other vertex of D and dominates all vertices of N 1[v]. Since D contains an H-universal vertex of every connected component H of G[N 3], all vertices in N 3 are dominated. Assume that D is not efficient. That means, that there are two different vertices {u, u0} ⊆ D with distance 1 or 2. We already know that u =6 v and u0 =6 v. Hence, by Property 4, u is the H-universal vertex of a connected component H of G[N 3] and u0 is the H0-universal vertex of a different connected component H0 of G[N 3]. This implies that dist(u, u0) = 2 and that u and u0 have a common neighbor y ∈ N 2—this is a contradiction to Property 5. Assume that D is not dominating. Then there is a vertex x ∈ N 2 without a neighbor in D. By Property 5, the neighborhood of x in N 3 induces a connected component of G[N 3] and, by Property 4, every connected component of G[N 3] contains a vertex of D—this is a contradiction. Since D is uniquely defined, it is of minimum weight over all v-efficient dominating sets of G.

The previous lemmas straightforwardly describe how to find for a given graph G = (V,E) and a vertex v ∈ V a v-minimum weighted efficient dominating set. Table 2.2 shows the corresponding algorithm.

Lemma 22. The procedure Robust-P5-free-v-MWED is correct in the sense of Definition 2 and runs in time O(|V | + |E|). 2.2. HANGINGS 39

Procedure: Robust-P5-free-v-MWED(G = (V,E), v, Nv) Input: As defined in Definition 2. Output: As defined in Definition 2.

4 1. If N 6= ∅, then STOP: G is not P5-free. 3 2. Determine the connected components H1,H2,...,Hk of G[N ].

3. Check if G fulfills Property 3. If not, then STOP: G is not P5-free. 4. Check if G can fulfill Property 4. If not, then Return ∅. /* G admits no v-efficient dominating set. */

5. Let ui be the Hi-universal vertex of Hi for every i ∈ {1, . . . , k}.

6. Return {v, u1, . . . , uk}. /* This is efficient and dominating, if and only if Property 5 holds. */

Table 2.2: The procedure Robust-P5-free-v-MWED

Proof. The correctness of Steps 1, 3, and 4 follows from Lemmas 18 and 19.

Just before Step 6, G and D = {v, u1, . . . , uk} clearly fulfill Properties 2 to 4. If G violates Property 5, then, by Lemma 20, G admits no v-efficient dominating set and, hence, D is not an efficient dominating set of G. Conversely, if G fulfills Property 5, then, by Lemma 21, D is a v-efficient dominating set of G. Since D is the unique set that fulfills Property 4, it is a v-minimum weighted efficient dominating set of G. The connected components of G[N 3] can be computed in time O(|V |+|E|) using depth-first-search or breadth-first-search. We can label every vertex of N 3 with the connected component it belongs to. Property 3 can be checked in the following way: For every vertex y ∈ N 3, label every vertex of N(y) ∩ N 2 with H, the connected component of G[N 3] that y belongs to. This takes at most O(|E|) time because we can consider every edge xy of G and check if x ∈ N 2 and y ∈ N 3 and, if so, label x with the connected component y is labeled with. After that, count the number of labels of the same kind for every vertex x ∈ N 2 and compare this number to the size of the connected component of G[N 3] that the label corresponds to. If the numbers are not equal, G clearly violates Property 3. This takes at most O(|E|) time because the sum of all labels assigned to all vertices of N 2 is bounded by the number of edges of G. 40 CHAPTER 2. EFFICIENT DOMINATION

The graph G can fulfill Property 4, if every connected component H of G[N 3] contains exactly one H-universal vertex. This can be checked in time O(|E|) by initializing a degree counter for every vertex of N 3 with zero, considering every edge of G, checking if both endpoints of the edge are in N 3 and, if so, increasing the degree counter for both endpoints by one, and, finally, checking for every connected component H of G[N 3], if there is exactly one vertex in H with degree |V (H)|. This way, we already identified the desired H-universal vertex for every connected component H of G[N 3]. Together with Lemma 17, Lemma 22 implies: Theorem 7. Minimum weight efficient domination is solvable in time O(nm) on P5-free graphs in a robust way, where n is the number of vertices and m is the number of edges of the input graph.

2.2.2 (P4 + P2)-free Graphs Before giving the main result of this section, namely a robust O(nm)-time algorithm for minimum weight efficient domination on (P4 + P2)-free graphs that uses the mentioned hanging framework, we show a much simpler algorithm that solves the problem in time O(n2m).

A Simple Algorithm The basic idea is that, unless the input graph G contains a universal vertex, every efficient dominating set D has at least two vertices that are the endpoints 0 0 of an induced P4. Assume that x x y y is induced in G. The absence of 3 4 an induced (P4 + P2) implies that N ({x, y}) is independent and N ({x, y}) is empty. If {x, y} ⊆ D, the only way to dominate the vertices of N 2({x, y}) and N 3({x, y}) is D = {x, y} ∪ N 3({x, y}). This immediately yields an O(n2m)-time algorithm that checks every pair x, y of vertices for being the endpoints of an induced P4 and, if so, tests if {x, y} ∪ N 3({x, y}) is an efficient dominating set, which can be done in linear time by Observation 4. After that, it returns an efficient dominating set of minimum weight over all solutions.

A Faster Algorithm

3 4 5 Let R = N ∪ N ∪ N . Let H1,...,Hk be the connected components of G[R] and, for every Hi, let Ui ⊆ V (Hi) be the set of Hi-universal vertices of Hi. 2.2. HANGINGS 41

3 4 Notice that Ui ⊆ (N ∪ N ) because, if a connected component Hi of G[R] 5 3 5 has vertices in N , then, since E(N ,N ) = ∅, all Hi-universal vertices are in 4 3 3,4 4 N . Let H ∪ H ∪ H be a partition of {H1,...,Hk}, where

3 3 • Hi ∈ H , if Ui 6= ∅ and Ui ⊆ N , and

4 4 • Hi ∈ H , if Ui 6= ∅ and Ui ⊆ N , and

3,4 3 4 • Hi ∈ H , if Ui = ∅ or if Ui ∩ N 6= ∅ and Ui ∩ N 6= ∅.

For this partition, assume, without loss of generality, that, for every pair Hi, Hj of connected components of G[R],

3 3,4 4 • Hi ∈ H and Hj ∈ (H ∪ H ) implies i < j and

3,4 4 • Hi ∈ H and Hj ∈ H implies i < j.

Often, we refer to the set (H3 ∪ H3,4), hence, we define   H := H3 ∪ H3,4 , that is, H contains every connected component Hi of G[R] such that Ui is either empty or contains a vertex of N 3. 2 A vertex x ∈ N is called Ui-dependent, if N(x) ∩ Uj = ∅ for all i =6 j. We 2 say that a vertex x ∈ N is Ui-sparse, if there are at least two vertices in Ui that are not adjacent to x. Notice that, if G[R] is connected, then all vertices 2 2 of N are U1-dependent. Also, if a vertex x ∈ N has no neighbor in any Ui, then x is Ui-dependent for every i ∈ {1, . . . , k}. 4 2 For every Hi ∈ (H ∪ H ), let Di ⊆ N contain all Ui-dependent vertices and let 0 \ Ui = Ui ∩ N(x), x∈Di 0 0 that is, if there are no Ui-dependent vertices, then Ui = Ui, and otherwise, Ui contains only the vertices of Ui that are adjacent to all Ui-dependent vertices. 2 Notice that, if there is a vertex x ∈ N with no neighbor in any Ui, then 0 Ui = ∅ for every i ∈ {1, . . . , k}. If there is no such vertex, then notice that, 4 0 for every Hi ∈ H , we have Di = ∅ and, hence, Ui = Ui. Property 6. (i) N 6 = N 7 = ··· = ∅ and G[R] is a . (ii) If a vertex 2 x ∈ N is Ui-sparse, then it is Ui-dependent.

Lemma 23. If G is (P4 + P2)-free, then G fulfills Property 6. 42 CHAPTER 2. EFFICIENT DOMINATION

Proof. The first statement immediately follows from the (P4 + P2)-freeness. 2 For the second statement, let x ∈ N be a Ui-sparse vertex. There are 0 0 vertices {y, y } ⊆ Ui with x y and x y . Assume that x is not Ui-dependent, 00 that is, x has a neighbor y ∈ Uj for some j 6= i. Let w be a common neighbor of v and x in N 1. Since y00 lies in a different connected component 00 0 00 of G[R] than y and y , clearly {vwxyy y } induces a (P4 + P2) in G—this is a contradiction.

0 Property 7. For every i ∈ {1, . . . , k}, we have Ui 6= ∅. Furthermore, H 6= ∅.

Property 8. For every i ∈ {1, . . . , k}, we have V (Hi) ∩ D = {ui} for some 0 ui ∈ Ui . Lemma 24. If G admits a v-efficient dominating set D and G fulfills Prop- erty 6, then G fulfills Property 7 and D fulfills Property 8.

4 Proof. Let Hi ∈ (H ∪ H ) be chosen arbitrarily. By Property 6.i, Hi is a connected cograph. Since cographs are P4-free, every efficient dominating set of Hi is of size 1. Hence, there must be an Hi-universal vertex ui to dominate all vertices of Hi because all other vertices of G that are adjacent 2 to vertices of Hi are in N , which cannot contain vertices of D. This means, 0 that ui ∈ Ui ∩ D. Assume that ui ∈ (Ui \ Ui ), that is, there is a Ui-dependent 2 vertex x ∈ N with x ui. Since ui ∈ D, x is not dominated because all vertices that can dominate x are in Ui—this is a contradiction, since D is 0 dominating and efficient. Hence, it must be ui ∈ Ui . Assume that H = ∅, that is, all vertices of D ∩ R are in N 4. Since D∩N 2 = ∅, the vertices of N 2 are not dominated by D—this is a contradiction, hence, we have H 6= ∅.

4 3 Property 9. For every Hi ∈ H , we have |V (Hi) \ N | = 1, hence, |V (Hi) ∩ 4 0 5 N | = |Ui | = 1 and V (Hi) ∩ N = ∅.

Lemma 25. If G is (P4 + P2)-free and G fulfills Property 7, then G fulfills Property 9.

4 0 Proof. Assume that there is a connected component Hi ∈ H with {z, z } ⊆ 3 (V (Hi) \ N ). By Property 7, there is at least one Hi-universal vertex in 3 4 V (Hi). Since Ui ∩ N = ∅, it must be Ui ∩ N 6= ∅. Assume, without loss of 4 0 generality, that z ∈ Ui ∩ N , which implies z z . By Property 7, H is not 0 3 2 empty, hence, let H1 ∈ H. Let y ∈ U1 ∩ N , let x be a neighbor of y in N and let w be a common neighbor of v and y in N 1. Then {v, w, x, y, z, z0} 2.2. HANGINGS 43

N1 N2 N3 N4

0 y1 U 1 H1 H

U 0 H v 2 2 . . H4

0 Uk Hk

Figure 2.1: Case 1.

induces a (P4 + P2) in G because y lies in a different connected component of 0 G[R] than z and z —this is a contradiction to G’s (P4 + P2)-freeness. Lemmas 24 and 25 imply that every v-efficient dominating set D of a 4 (P4 + P2)-free graph G contains the unique vertex in V (Hi) ∩ N for every 4 connected component Hi ∈ H . Hence, it remains to analyze how the vertices of the connected components of H can be chosen into D. We split this analysis into five cases depending on the size of H, the existence and the number of connected components in H that have no universal vertex in N 4, and, if this number is greater than one, the existence of a vertex in N 2 that is 0 Ui -universal for some Hi ∈ H. The five cases are depicted in the Figures 2.1 to 2.5. Every figure shows a schematic view on the hanging for the vertex v. The distance levels are depicted by grey boxes and the connected components of G[R] as well as the 0 0 sets U1,...,Uk are drawn as framed boxes. The circled vertices form a valid efficient dominating set. To emphasize the nonexisting of an edge, a dashed line is drawn.

Case 1 Figure 2.1 shows a sketch for Case 1. 2 0 Property 10. There is exactly one N -universal vertex y1 in U1. 2 0 Property 11. For the N -universal vertex y1 ∈ U1, we have D ∩ V (H1) = {y1}. Lemma 26 (Case 1). If |H| = 1 and G fulfills Properties 7 and 9, then D is a v-efficient dominating set of G, if and only if G fulfills Property 10 and D fulfills Properties 8 and 11. 44 CHAPTER 2. EFFICIENT DOMINATION

Proof. Let D be a v-efficient dominating set of G. By Lemma 24, D fulfills 0 Property 8. Hence, U1 is the only set that can contain a vertex of D that 2 0 dominates the vertices of N . Since |D ∩ U1| = 1, there must be a vertex 0 2 0 0 y ∈ U1 that is N -universal. Assume that there is another vertex y ∈ U1 2 0 2 that is N -universal. Since both, y and y , are H1-universal and N -universal and have no other neighbors, {y, y0} is a homogeneous set of G—this is a contradiction to the primality of G. Hence, y is the only N 2-universal vertex 0 of U1 and D ∩ V (H1) = {y}. Conversely, let G fulfill Property 10 and let D fulfill Properties 8 and 11. Since D contains v, all vertices in N 1 are dominated and, since D fulfills Property 8, all vertices in R are dominated. By Property 11, D also dominates N 2. Every vertex of D, except v, lies in a different connected component of 0 4 G[R]. Since |H| = 1, every vertex of D ∩ R, except the one of U1, is in N . Hence, all vertices in D have distance at least 3 to each other. Thus, D is efficient and dominating.

The following property is needed for the cases 2 to 5. 2 Property 12. For every x ∈ N and every Hi ∈ H, there is at most one 0 3 4 y ∈ Ui with x y. For every Hi ∈ (H\H ), we have |V (Hi) ∩ N | = 1 and 0 3 2 there is exactly one vertex in Ui ∩ N and this vertex is N -universal.

Lemma 27. If |H| > 1 and G is (P4 + P2)-free, then G fulfills Property 12. 2 Proof. Let x ∈ N and let Hi ∈ H. Assume that x has a non-neighbor 0 ui ∈ Ui and another non-neighbor yi ∈ V (Hi). Since ui is Hi-universal, we 0 0 have ui yi. Since x has non-neighbors in Ui , by definition of Ui , it cannot 0 be Ui-dependent. Hence, x has a neighbor yj ∈ Uj for some Hj ∈ H with i 6= j. Since yj is in a different connected component of G[R] than ui and yi, a (P4 + P2) is induced in G by {v, w, x, ui, yi, yj}—this is a contradiction. 2 0 This shows that every vertex x ∈ N that has a non-neighbor ui in Ui for some Hi ∈ H, is adjacent to every vertex of V (Hi) \{ui}. In particular, x 0 is adjacent to every vertex of Ui \{ui}, which proves the first statement of Property 12. 3 0 For the second statement, let Hi ∈ (H\H ) and let zi ∈ Ui ∩ N4. Assume 4 0 0 that V (Hi) ∩ N contains another vertex zi. Since both, zi and zi are non- adjacent to all vertices of N 2, this is a contradiction to the fact we just proved. 3 0 3 2 Hence, for Hi ∈ (H\H ), all vertices of Ui ∩ N are N -universal and thus, have the same neighborhood in G. Thereby, the primality of G implies 0 3 that |Ui ∩ N | = 1. 2.2. HANGINGS 45

N1 N2 N3 N4

0 U1 H1 . . H

0 U` H` v 0 U`+1 H`+1 . . H4

0 Uk Hk

Figure 2.2: Case 2.

Case 2

Figure 2.2 shows a sketch for Case 2.

0 3 Property 13. There is an Hi ∈ H such that D ∩ V (Hi) = Ui ∩ N and for 0 4 every Hj ∈ H with i 6= j, we have D ∩ V (Hj) = Ui ∩ N .

Lemma 28 (Case 2). If |H| > 1, H3 = ∅, and G fulfills Properties 7 and 12, then D is a v-efficient dominating set of G, if and only if D fulfills Properties 8 and 13.

Proof. For the first direction, let D be a v-efficient dominating set of G. By Lemma 24, D fulfills Property 8. Since D dominates the vertices of N 2, there 3 0 must be y ∈ N ∩D. By Property 8, it must be y ∈ Ui for some Hi ∈ H. Since 2 y is N -universal and unique by Property 12, we have D ∩ V (Hi) = {y} and 2 all vertices of N and Hi are dominated. Hence, to dominate the remaining vertices of G[R], there must be vertices of N 4 in D. By Property 12, this 4 must be the unique vertex in V (Hj) ∩ N for every Hj ∈ H with i 6= j. For the other direction, let D fulfill Properties 8 and 13. Since v has distance at least 3 to vertices of R, and the vertices of R ∩ D are in different connected components of G[R], and only one vertex of R ∩ D is in N 3 and all other vertices in N 4, clearly, D is efficient. Since v dominates N 1, the vertex 3 2 in D ∩ N dominates N by Property 12, and every connected component Hi 0 of G[R] is dominated by a vertex of Ui by Property 8, D is dominating. 46 CHAPTER 2. EFFICIENT DOMINATION

N1 N2 N3 N4

0 3 U1 H1 H

0 U2 H2 . . H3,4

0 v U` H`

0 U`+1 H`+1 . . H4

0 Uk Hk

Figure 2.3: Case 3.

Case 3 Figure 2.3 shows a sketch for Case 3.

2 0 Property 14. There is exactly one N -universal vertex in U1.

2 0 Property 15. For the N -universal vertex y ∈ U1, we have D∩V (H1) = {y}. 0 4 For every Hi ∈ H with i > 1, we have D ∪ V (Hi) = Ui ∩ N . Lemma 29 (Case 3). If |H| > 1, |H3| = 1, and G and D fulfill Properties 7 and 12, then D is a v-efficient dominating set of G, if and only if G fulfills Property 14 and D fulfills Properties 8 and 15.

Proof. Let D be a v-efficient dominating set of G. By Lemma 24, D fulfills 3 0 4 0 3 Property 8. Since |H | = 1, we have U1 ∩ N = ∅, hence, U1 ⊆ N . By 0 2 Property 8, we know that there is y1 ∈ D ∩ U1. Let x ∈ N with x y1. Since 3 0 4 |H | = 1, every Ui with i > 1 contains a vertex of N . Hence, by Property 12, 0 3 we know that x is adjacent to every vertex of Ui ∩ N for every Hi ∈ H with 0 4 i > 1. This implies that D ∩ V (Hi) = V (Ui ) ∩ N , for every Hi ∈ H with 2 i > 1 because D is efficient. Since D is dominating, y1 must be N -universal. 2 0 The existence of another N -universal vertex in U1 contradicts the primality of G. Conversely, let G fulfill Property 14 and let D fulfill Properties 8 and 15. Since D contains v, it dominates N 1 and, since it fulfills Property 8, it 2.2. HANGINGS 47

N1 N2 N3 N4

0 x U1 H1

. . 0 U2 H2 H3 . .

0 Uj Hj

0 v Uj+1 Hj+1 . . H3,4

0 U` H`

0 U`+1 H`+1 . . H4

0 Uk Hk

Figure 2.4: Case 4.

2 0 dominates R. By Property 15, D contains an N -universal vertex y ∈ U1 and, hence, it also dominates N 2. Every vertex of D, except v, lies in a different connected component of G[R]. Every vertex of D ∩ R, except y, is in N 4. Hence, all vertices in D have distance at least 3 to each other. Thus, D is efficient and dominating.

Case 4 Figure 2.4 shows a sketch for Case 4.

2 0 Property 16. Let x ∈ N be a Ui -universal for some Hi ∈ H. For every 0 Hj ∈ H with i 6= j, there is exactly one yj ∈ Uj with x yj. There is exactly 0 0 2 one vertex yi ∈ Ui such that every vertex x ∈ N is adjacent to yj for exactly one Hj ∈ H.

Property 17. For every Hj ∈ H and yi as defined in Property 16, we have D ∩ V (Hj) = {yj}. 48 CHAPTER 2. EFFICIENT DOMINATION

Lemma 30 (Case 4). If |H| > 1, |H3| > 1, there is a vertex x ∈ N 2 that is 0 Ui -universal for some Hi ∈ H, and G fulfills Properties 7 and 12, then D is a v-efficient dominating set of G, if and only if G fulfills Property 16 and D fulfills Properties 8 and 17.

0 Proof. Let D be a v-efficient dominating set of G and let x be a Ui -universal 2 vertex in N for some Hi ∈ H. By Lemma 24, D fulfills Property 8. By 0 0 Property 8, we have |Ui ∩ D| = 1. Hence, x is dominated by a vertex yi ∈ Ui . Hence, it is adjacent to no other vertex of D. Since, by Property 8, every 0 Uj contains exactly one vertex of D and, by Property 12, x has at most 0 one non-neighbor in every Uj, it follows that every Uj with i =6 j contains a vertex yj with x yj and V (Hj) ∩ D = {yj}. Since D is efficient, dominating, 2 0 2 and contains no vertices of N , every vertex x ∈ N must be adjacent to yj for exactly one Hj ∈ H. That way, the vertex yi is uniquely specified: The 0 0 2 existence of a vertex yi ∈ Ui that has exactly the same neighbors in N as y1 contradicts the primality of G. Conversely, let G fulfill Property 16 and let D fulfill Properties 8 and 17. Clearly, D dominates N 1 and, by Property 8, also R. By Property 17, D 2 2 also dominates N because every x ∈ N is adjacent to yi for exactly one Hi ∈ H. This also implies that every path between two vertices of D that uses a vertex of N 2 has length at least 3. Since all vertices in D ∩ R are in different connected components of G[R], this means that D is efficient and dominating.

Case 5 Figure 2.5 shows a sketch for Case 5.

0 2 0 0 Property 18. There are vertices {x, x } ⊆ N , {a, b} ⊆ U1, and {c, d} ⊆ U2 such that

• x a, x c, x b, x d and

• x0 b, x0 d, x0 a, x0 c

0 and, if x, x , a, b, c, d are vertices of this kind, then either for y1 = a and y2 = d or for y1 = b and y2 = c:

0 • for every Hi ∈ H with i > 2, there is exactly one vertex yi ∈ Ui with 0 x yi and x yi and

00 2 00 • for every x ∈ N , there is exactly one Hi ∈ H such that x yi. 2.2. HANGINGS 49

N1 N2 N3 N4

a x U 0 H b 1 1 x0 . . c 0 U2 H2 d H3 . .

0 Uj Hj

0 v Uj+1 Hj+1 . . H3,4

0 U` H`

0 U`+1 H`+1 . . H4

0 Uk Hk

Figure 2.5: Case 5.

Property 19. For every Hi ∈ H and yi as defined in Property 18, we have D ∩ V (Hi) = {yi}.

Lemma 31 (Case 5). If |H| > 1, |H3| > 1, there is no vertex x ∈ N 2 that is 0 Ui -universal for some Hi ∈ H, and G fulfills Properties 7 and 12, then D is a v-efficient dominating set of G, if and only if G fulfills Property 18 and D fulfills Properties 8 and 19.

Proof. The existence of x, x0, a, b, c, and d follows from |H3| > 1 and the fact 0 0 2 2 that there is no U1- or U2-universal vertex in N : Let w ∈ N . Since w is not 0 0 0 0 0 0 2 U1-universal, there is y1 ∈ U1 with w y1. Let w be a neighbor of y1 in N . 0 0 0 0 Since w is not U1-universal, there is a vertex y1 ∈ U1 with w y1. Clearly, we have w y1 because, by Property 12, w has at most one non-neighbor 0 0 0 0 in U1. Since w and w are not U2-universal, there are vertices y2 ∈ U2 and 0 0 0 0 0 y2 ∈ U2 with w y2 and w y2. Notice that it may be y2 = y2. If this is 0 0 0 0 not the case, then x := w, x := w , a := y1, b := y1, c := y2, and d := y2 0 fulfill the desired properties. Hence, assume that y2 = y2, that means y2 is 50 CHAPTER 2. EFFICIENT DOMINATION

0 00 2 00 00 a common non-neighbor of w and w . Let w ∈ N with w y2. Since w 0 0 00 0 00 0 is neither U1-universal nor U2-universal, there are y1 ∈ U1 and y2 ∈ U2 with 00 00 00 00 00 00 0 w y1 and w y2 . It may be y1 = y1 or y1 = y1. It is easy to check that, in any case, either

0 00 0 00 x := w, x := w , a := y1, b := y1, c := y2 , and d := y2 or 0 0 00 0 00 x := w , x := w , a := y1, b := y1, c := y2 , and d := y2 fulfill the desired properties. Let D be a v-efficient dominating set of G. By Lemma 24, D fulfills Property 8. Assume that {a, b} ∩ D = ∅. Since, by Property 12, x and x0 0 0 have at most one non-neighbor in U1 and, by Property 8, U1 contains one 0 0 vertex of D, x is dominated by a vertex y ∈ U1 that also dominates x . By the 0 existence of c and d and Property 12, every vertex of U2 is adjacent to x or 0 0 x or both. By Property 8, U2 also contains a vertex of D. Hence, either x or x0 or both have two neighbors in D—this is a contradiction to the efficiency of D. This implies that either a ∈ D or b ∈ D. 0 Assume that a ∈ D. Since, by Property 8, U2 contains a vertex of D and 0 d is the only non-neighbor of a in U2, we have d ∈ D. Let y1 := a and y2 := d. 0 0 By Property 8, every Ui must contain a vertex of D. Hence, since x and x 0 are dominated by y1 and y2 and D is efficient, there is a vertex yi ∈ Ui with 0 x yi, x yi, and D ∩ V (Hi) = {yi} for every Hi ∈ H with i > 2. Clearly, since D is efficient, dominating, and contains no vertex of N 2, every vertex 2 x ∈ N is adjacent to yi for exactly one Hi ∈ H. The proof works analogously if b ∈ D with y1 := b and y2 := c. Conversely, assume that G fulfills Property 18 and D fulfills Properties 8 and 19. Clearly, D dominates N 1. By Property 8, D also dominates R. By Property 19, every vertex of N 2 has exactly one neighbor in D and, hence, N 2 is dominated as well and every path between two vertices of D that uses a vertex of N 2 has length at least 3. Since all vertices in D ∩ R are in different connected components of G[R], this means that D is efficient and dominating. These lemmas lead to the procedure shown in Tables 2.3 and 2.4 that robustly works on (P4 + P2)-free graphs.

Lemma 32. The procedure Robust-(P4 + P2)-free-v-MWED is correct in the sense of Definition 2 and runs in time O(|V | + |E|). Proof. The correctness follows from Lemmas 23 to 31 because the algorithm stops, if it finds an induced (P4 + P2) in G or if G cannot have a v-efficient 2.2. HANGINGS 51 dominating set, and it guarantees, by Step 7 and one of the Steps 8.1, 9.2.3, 9.3.2, 9.4.1.2, and 9.4.2.5, that D fulfills Property 8 and one of the Properties 11, 13, 15, 17, and 19. The rest of the proof shows the time bound. First, we have to show that Step 4 can be implemented in time O(|V |+|E|), hence, that we can determine 3 4 0 the connected components H1,...,Hk of G[R], the sets H , H, H , and Ui for every Hi in that time. Since Nv is part of the input, we can assume that every vertex v ∈ N i is labeled with `(N i). Clearly, the connected components of G[R] can be found in linear time by breadth-first-search or depth-first-search. We can assume that every vertex y of R has the label `(Hi), if and only if y ∈ V (Hi). For every Hi, the set Ui of Hi-universal vertices of Hi can be found by counting the degree of every vertex in Hi. The vertices with degree |V (Hi)| are exactly the vertices in Ui, we label these vertices with `(Ui). The degree can be counted in time O(|E|) by starting with degree 0 for every vertex, considering every edge, checking if both endpoints have the same label, say `(Hi), and, if so, increasing the degree of both endpoints. 3 4 For every Hi, we can decide if Hi ∈ H , Hi ∈ H or Hi ∈ H by checking 3 3 if every vertex of Ui is labeled `(N ), at least one is labeled `(N ), or none is labeled `(N 3) respectively.

Procedure: Robust-(P4 + P2)-free-v-MWED(G = (V,E), v, Nv) Input: As defined in Definition 2. Output: As defined in Definition 2.

1. Let STOP-1 := STOP: G is not (P4 + P2)-free. 2. Let STOP-2 := STOP: G admits no v-efficient dominating set. 3. Set D := {v}. 4 3 0 4. Determine H1,...,Hk, H, H , H , and Ui for every i ∈ {1, . . . , k}. 5. Check if G fulfills Property 6. If not, then STOP-1. 6. Check if G fulfills Property 7. If not, then STOP-2. 0 4 7. Check if G fulfills Property 9. If so, set D := D ∪ Ui for every Hi ∈ H , otherwise STOP-1.

Table 2.3: The procedure Robust-(P4 + P2)-free-v-MWED (part 1/2) 52 CHAPTER 2. EFFICIENT DOMINATION

8. If |H| = 1: /* Case 1 */

1. Check if G fulfills Property 10. If so, set D := D ∪ {y1} for the 2 0 N -universal vertex y1 ∈ U1, otherwise STOP-2. — G and D fulfill Properties 6 to 11. — 9. If |H| > 1: 1. Check if G fulfills Property 12. If not, then STOP-1. 2. If H3 = ∅: /* Case 2 */ 0 3 1. For every Hi ∈ H, let yi be the vertex in Ui ∩ N and zi the vertex 0 4 in Ui ∩ N . P 2. Find an Hi ∈ H such that ω(yi) + Hj ∈H,i6=j ω(zj) is minimized. 3. Set D := D ∪ {yi} ∪ {zj | Hj ∈ H, i 6= j}. — G and D fulfill Properties 6 to 9 and 13. — 3 3. If H = {H1}: /* Case 3 */ 1. Check if G fulfills Property 14. If not, then STOP-2. 0 4 2. Set D := D ∪ {y1} ∪ {yi | i > 1,Hi ∈ H, {yi} = Ui ∩ N }. — G and D fulfill Properties 6 to 9, 14, and 15. — 4. If |H3| > 1: /* Case 4 and 5 */ 2 0 1. If N contains a vertex x that is Ui -universal for some Hi ∈ H: 1. Check if G fulfills Property 16. If not, then STOP-2.

2. Set D := D ∪ {yi | Hi ∈ H} for yi as defined in Property 16. — G and D fulfill Properties 6 to 9, 16, and 17. — 2 0 2. If N contains no vertex that is Ui -universal for some Hi ∈ H: 1. Check if G fulfills Property 18. If not, then STOP-2. 2. Find vertices x, x0, a, b, c, d as defined in Property 18.

3. If ω(a) + ω(d) ≤ ω(b) + ω(c), then set y1 := a; y2 := b, otherwise set y1 := b; y2 := c.

4. For every Hi ∈ H with i > 2 find vertex yi as defined in Prop- erty 18.

5. Set D := D ∪ {yi | Hi ∈ H}. — G and D fulfill Properties 6 to 9, 18, and 19. — 10. Return D.

Table 2.4: The procedure Robust-(P4 + P2)-free-v-MWED (part 2/2) 2.2. HANGINGS 53

For every y ∈ N 3, let n2(y) = |N(y) ∩ N 2|. This can be computed in time O(|V | + |E|) by starting with n2(y) = 0 for all y ∈ N 3, considering every 2 edge xy, checking if x is labeled `(N ) and y is labeled `(Ui) for some i, and, if so, increasing n2(y) by 1. 2 A vertex x ∈ N is Ui-dependent, if N(x) ∩ Ui = ∅ for all i but at most one. This can be checked in time O(|V | + |E|) in the following way, using the new labels `(Z), `(M), `(D1), . . . , `(Dk): Assign the label `(Z) to every vertex x ∈ N 2. Consider every edge xy with x labeled `(N 2) and y labeled

`(Ui). If x is labeled `(Z), then remove this label and add the label `(Di). If x is labeled `(Dj) for some i =6 j, then remove this label and add the label `(M). If x is labeled `(Di), do nothing. Clearly, after all edges are considered, 2 a vertex x ∈ N is labeled `(Z), if it has no neighbor in any Ui, it is labeled `(Di), if it has no neighbors in any Uj but Ui, and it is labeled `(M), if it has neighbors in Ui and Uj for at least one pair i =6 j. Notice that, if a vertex 2 x ∈ N is labeled with `(Di), then it is not labeled with `(Dj) for all i =6 j. Hence, x is Ui-dependent, if and only if it is labeled `(Di). 0 Next, we have to construct Ui from Ui for every i. Therefore, let dU (Ui) := |Di| for all Ui and, for every Ui and every y ∈ Ui, let d(y) := |N(y) ∩ Di|. These values can be computed in time O(|V | + |E|) in the following way, starting with dU (Ui) = 0 and d(y) = 0 for all Ui and for all y ∈ Ui: Firstly, 2 consider every vertex x ∈ N and, if x is labeled `(Di), then increase dU (Ui) by 1. Secondly, consider every edge xy and, if x is labeled `(Di) and y is 0 labeled `(Ui), then increase d(y) by 1. Clearly, Ui contains a vertex y ∈ Ui, 0 if and only if either dU (Ui) = 0 or d(y) = dU (Ui). Hence, the sets Ui can be 0 0 built in time O(|V | + |E|). For every i, we label every vertex of Ui with `(Ui ). Property 6 can be checked in time O(|V | + |E|) because recognizing cographs can be done in linear time [30]. Clearly, Property 7 can be checked 0 during building the sets Ui . Additionally, we determine the partition H = =1 >1 =1 0 H ∪ H alongside, where Hi ∈ H is in H , if and only if |Ui | = 1. We can check Property 9 by considering every Hi ∈ H and check if exactly 4 one y ∈ V (Hi) has the label `(N ). This takes at most O(|R|) time. 0 2 2 In case 1, we consider every vertex of y ∈ U1 and check if n (y) = |N | to test Property 10. This takes at most O(|R|) time. 2 0 If every vertex x ∈ N has at most one non-neighbor in every set Ui , then x has at least |H>1| neighbors in N 3. Hence, we have |E| ≥ |N 2| · |H>1|. To test Property 12 in time O(|V | + |E|), we can do the following: Check if |E| ≥ |N 2| · |H>1|. If this check fails, G violates the property. Otherwise, 3 0 2 >1 determine ni (x) = |N(x) ∩ Ui | for every x ∈ N and Hi ∈ H . This can be 54 CHAPTER 2. EFFICIENT DOMINATION

3 2 >1 done by starting with ni (x) = 0 for every x ∈ N and Hi ∈ H , considering every edge, checking if one endpoint of the edge is labeled `(N 2) and the other 0 >1 3 endpoint is labeled `(Ui ) for some Hi ∈ H , and, if so, increasing ni (x) by 1. Since there are |N 2|·|H>1| values to determine and |N 2|·|H>1| ≤ |E|, this can 2 >1 be done in time O(|E|). Then, check for every x ∈ N and every Hi ∈ H , 3 0 if ni (x) ≥ |Ui | − 1. If this is true, then the first part of Property 12 is fulfilled 0 =1 because every vertex has at most one non-neighbor in Ui for every Hi ∈ H . 3 To check the second part of Property 12, we consider every Hi ∈ (H\H ), 0 4 check if at most one vertex of V (Hi), say y , is labeled with `(N ), check 0 0 if y is also labeled with `(Ui ) and if there is exactly one y ∈ V (Hi) that 0 0 3 is different from y and labeled with `(Ui ), check if y is labeled `(N ), and check if n2(y) = |N 2|. Clearly, if and only if all checks succeed, then G fulfills Property 12.

For case 2, the vertices yi and zi can be found while checking Property 12. We calculate X si := ω(yi) + ω(zj) Hj ∈H,i6=j for every Hi ∈ H in the following way: Calculate si for a fixed i with Hi ∈ H as the formula implies. This takes at most O(|V |) time. To get sj for Hj ∈ H with i 6= j, we simply compute sj := si − ω(yi) + ω(yj) + ω(zi) − ω(zj). Hence, we can calculate all si in time O(|V |) and find an Hi ∈ H such that si is minimized. In case 3, Property 14 can simply be checked by considering n2(y) for every 0 3 0 4 `(U1)-labeled y ∈ N . The vertices yi with i > 1, Hi ∈ H and {yi} = Ui ∩ N are already found when Property 12 was tested, so we can reuse them. For case 4 and 5 we have to check if there is a vertex x ∈ N 2 that is 0 =1 3 0 Ui -universal for some Hi ∈ H. This is the case, if H =6 ∅ or ni (x) = |Ui | 2 >1 =1 for some x ∈ N and Hi ∈ H . If there is an Hi ∈ H , then the neighbor 2 0 0 x of yi in N for {yi} = Ui is Ui -universal. This can be tested in constant 2 >1 3 0 time. If there is an x ∈ N and an Hi ∈ H with ni (x) = |Ui |, then x is 0 Ui -universal by definition. Since all these values are already computed and there are at most |E| of these values, this can be tested in time O(|E|). Property 16 can be checked in time O(|V | + |E|) in the following way: Let 2 0 x ∈ N be Ui -universal, as found in the previous step. Consider every edge, check if one of its endpoints equals x and, if so, label the other endpoint with 0 `(x). Then check for every Hj ∈ H with i =6 j, if Ui contains exactly one vertex yj that has not the label `(x). This check can be done for all Hi ∈ H in time O(|R|) and, if it fails, then G violates Property 16. Give every such 00 2 yj the label `(yj). Now pick a neighbor x ∈ N of some yj with Hj ∈ H and 2.2. HANGINGS 55

0 00 i 6= j and find yi ∈ Ui with x yi. This can be done in time O(|V | + |E|) by considering every edge and using a label `(x00) like above. If it does not exist,

G violates Property 16. Give yi the label `(yi). Now consider every edge and check if one endpoint, say y, is labeled with `(yj) for some Hj ∈ H and the other endpoint, say x, is labeled with `(N 2). If so, label x with `(L). If x already has this label, then G violates Property 16 because there is a vertex 0 2 x ∈ N that has two neighbors yj and yk for {Hj,Hk} ⊆ H and j 6= k. After that, consider every vertex of N 2 and check if it is labeled with `(L). If this is not the case for a vertex x, then G violates Property 16 because x is not adjacent to yj for all Hj ∈ H. If all checks succeed, then G clearly fulfills Property 16. The proof of Lemma 31 describes a way to find suitable vertices x, x0, a, b, c, and d that fulfill Property 18, if such vertices exist: Choose w ∈ N 2 0 2 arbitrarily and find a non-neighbor y1 ∈ N of w. Then find a neighbor 0 2 0 0 0 w ∈ N of y1 and a non-neighbor y1 ∈ U1 of w . Finally, find a non-neighbor 0 0 0 0 y2 ∈ U2 of w and a non-neighbor y2 ∈ U2 of w . This can be done in time O(|V | + |E|) because to find a neighbor or a non-neighbor of a given vertex in a labeled set, we can consider every edge and a labelling technique that is 0 00 2 similar to the techniques used above. If y2 = y2, find a neighbor w ∈ N of y2 00 0 00 0 00 and two non-neighbors, y1 ∈ U1 and y2 ∈ U2 of w . The existence of all these vertices is guaranteed because we already know that G fulfills Property 12 0 2 and the fact that there is no Ui -universal vertex in N for any Ui, hence, every 0 Ui contains at least two vertices. Finally, test in constant time if there is 0 00 0 00 0 00 an assignment for {x, x } ⊆ {w, w, w } and {a, b, c, d} ⊆ {y1, y1, y1 , y2, y2, y2 } such that x a, x c, x0 b, x0 d, x b, x d, x0 a, and x0 c. If this is not possible, then G violates Property 18. Otherwise, find a common non-neighbor 0 0 yi ∈ Ui of x and x for every Hi ∈ H with i ≥ 2. This can also be done using labels in time O(|V | + |E|). If at least one of these non-neighbors does not exist, then G violates Property 18. Finally, check for every x00 ∈ N 2, if it is adjacent to yi for exactly one Hi ∈ H. This can be done in time O(|V | + |E|) in the same way we check the last part of Property 16. If all checks succeed, then G clearly fulfills Property 18.

Together with Lemma 17, Lemma 32 implies:

Theorem 8. Minimum weight efficient domination is solvable in time O(nm) on (P4 + P2)-free graphs in a robust way, where n is the number of vertices and m is the number of edges of the input graph. 56 CHAPTER 2. EFFICIENT DOMINATION

2.3 Reduction from Efficient Domination to Maximum Weighted Independent Set maximum independent set is one of the classical NP-complete graph problems. The weighted optimization version can be formulated as follows: Definition 3. Given a graph G = (V,E) with vertex weights ω and a constant k, maximum weight independent set asks if G admits an independent set I ⊆ V with ω(I) ≥ k.

Although maximum weight independent set remains NP-complete on several restricted graph classes, for example triangle-free graphs [84], K1,4-free graphs [77], and planar graphs of maximum degree at most 3 [48], there are lots of tractability results, for example for claw-free graphs [77, 80, 82] and their generalization fork-free graphs [69], for perfect graphs [50], and many others. The square G2 of a graph G has the same vertex set as G and two vertices x and y are adjacent, if and only if distG(x, y) ≤ 2. For a graph class C, we denote by C2 := {G2 | G ∈ C} the graph class whose graphs are the squares of the graphs of C. Let α be the best known exponent such that matrix multiplication of two n × n-matrices can be done in time O(nα). efficient domination on G can be reduced to maximum weight independent set on G2 as follows: Lemma 33 ([11, 76]). Let C be a graph class such that maximum weight independent set can be solved in time T (|G|) on graphs G ∈ C2. efficient domination is solvable in time O(min {nm + n, nα} + T (|G2|)) on graph G ∈ C, where n is the number of vertices and m the number of edges of the input graph. The idea of this reduction is to define vertex weights ω in G2 as ω(v) := 2 |NG[v]|. Clearly, every independent set I of G coincides with an efficient set in G. If ω(I) = |V |, then I is also dominating in G. In [7], this is extended to the weighted optimization versions of efficient domination: Theorem 9 (Theorem 3 in [7]). Let C be a graph class such that maximum weight independent set can be solved in time T (|G|) on graphs G ∈ C2. minimum/maximum weight efficient domination is solvable in time O(min {nm + n, nα} + T (|G2|)) on graphs G ∈ C, where n is the number of vertices and m the number of edges of the input graph. 2.3. MAXIMUM WEIGHTED INDEPENDENT SET 57

This enables the design of an efficient algorithm for minimum weight efficient domination on a graph class C by proving that C2 has properties that make maximum weight independent set tractable on C2. 2 In this section, we refine this approach: For a graph class C, let Ced contain every efficiently dominatable graph of C2. We seek for a polynomial-time 2 decidable graph class D with Ced ⊆ D that allows efficient solving of maximum weight independent set. For such a graph class D, we can solve minimum weight efficient domination of a graph G ∈ C by constructing G2 and checking if G2 ∈ D. If G2 6∈ D, then G admits no efficient dominating set. Otherwise, we use an efficient maximum weight independent set- algorithm for D to solve minimum weight efficient domination on G, which works by Theorem 9. Corollary 34 summarizes this procedure:

Corollary 34. Let C and D be graph classes such that D contains the square of every efficiently dominatable graph of C, let G ∈ D be decidable in time

TD(|G|) and let maximum weight independent set be solvable for G ∈ D in time T (|G|). Then minimum/maximum weight efficient domination α 2 2 is solvable in time O(min {nm + n, n } + TD(|G |) + T (|G |)) for G ∈ C, where n is the number of vertices and m the number of edges of the input graph.

The next section applies this technique to P5-free graphs by showing that the squares of P5-free graphs that admit an efficient dominating set are cographs.

2.3.1 P5-free Graphs The following observation simplifies the main proof of this section:

Observation 35. Let G = (V,E) be a P5-free graph that has an induced P4 a b c d. If D is an efficient dominating set of G, then {b, c} ∩ D = ∅.

Proof. Without loss of generality, assume that b ∈ D. Since D dominates d, there is a vertex d0 ∈ D with d d0. Since D is efficient, we have d0 6∈ {a, b, c} 0 0 0 0 and a d , b d , and c d . Hence, a b c d d is an induced P5 in G—this is a contradiction.

2 Theorem 10. If a graph G is P5-free and efficiently dominatable, then G is P4-free, that is, a cograph. 58 CHAPTER 2. EFFICIENT DOMINATION

Proof. Let G = (V,E) be a P5-free graph and let D be an efficient dominating 2 set of G. Assume that G contains at least one induced P4. Let a b c d be a P4 of G with a ∈ D. If such a P4 does not exist, let a b c d be an arbitrarily chosen P4. We have

distG(a, b) ≤ 2, distG(b, c) ≤ 2,

distG(c, d) ≤ 2, distG(a, c) ≥ 3,

distG(a, d) ≥ 3, and distG(b, d) ≥ 3

2 because, otherwise {a, b, c, d} does not induce a P4 in G . Let P ⊆ V be a 2 minimal vertex set such that {a, b, c, d} induces a P4 in G[P ] . Clearly, we have {a, b, c, d} ⊆ P . It is easy to check that the inequalities from above cannot be fulfilled with P = {a, b, c, d}, thus, P contains some additional vertices. Every vertex of x ∈ P \{a, b, c, d} must be adjacent either to a and b, or b and c, or c and d: If x were adjacent to at most one vertiex of {a, b, c, d}, then P is not minimal. If x were adjacent to a and c, a and d, b and d, or more than two vertices of {a, b, c, d}, then {a, b, c, d} is not an 2 induced P4 in G . Thus, we have the following cases to analyze:

(1) P = {a, b, c, d, x} with a b x c d and b c,

(2) P = {a, b, c, d, x, y} with a x b y c d, a b, and b c,

(3) P = {a, b, c, d, x, y} with a x b c y d, a b, and c d, and

(4) P = {a, b, c, d, x, y, z} with a x b y c z d, a b, b c, and c d.

Case (1): It is easy to check that a b x c d must be induced in G—this is a contradiction to the P5-freeness of G.

Case (2): We have x y because otherwise G contains the induced P5 a x b y c—this is a contradiction. Case (3): Clearly, x y because otherwise a x b c y d would be in- duced in G. Since a x b c and b c y d are induced, Observation 35 implies D ∩ {b, c, x, y} = ∅. (2.1) Assume that a 6∈ D. By symmetry and the choice of a b c d, we also have d 6∈ D. Since D is dominating, there is a0 ∈ D with a a0. By the inequalities, we have a0 c and a0 d. Since a0 ∈ D, by Observation 35, a a0 b c cannot be induced. Hence, we have a0 b. This is also the case for a a0 y c, 2.3. MAXIMUM WEIGHTED INDEPENDENT SET 59 so we have a0 y. This shows N(a) ∩ P = N(a0) ∩ P , what implies that 0 2 0 0 0 0 {a , b, c, d} induces a P4 in G [P ] with a ∈ D for P = {a , b, c, d, x, y}—this is a contradiction to the choice of a b c d. Assume that a ∈ D. Since D is dominating, there is a vertex c0 ∈ D with c c0. The inequalities and Equation (2.1) imply that c0 6∈ {a, b, c, d, x, y}. Since D is efficient, we have c0 x. The path a x b c c0 cannot be induced, hence, the inequalities imply b c0. By Observation 35, x b c0 d cannot be induced. Hence, we have c0 d. The path c0 b x y d0 cannot be induced, 0 0 0 hence, we have c y. The induced P4 b c y d with c ∈ D is a contradiction to Observation 35. Case (4): It is easy to check that x y z x because otherwise G would contain an induced P5. Since a x y c and b y z d are induced, Observa- tion 35 implies D ∩ {x, y, z} = ∅. (2.2) Assume that a ∈ D. Since D is dominating, there is b0 ∈ D with b b0. Since b c, by the minimality of P , to fulfill the inequalities, it must be b0 6∈ {a, b, c, d, x, y, z} and b0 d. The efficiency of D implies that b0 x. The 0 induced P4 b b z d is a contradiction to Observation 35. Hence, a 6∈ D and, by symmetry, d 6∈ D. Assume that b ∈ D. Since D is efficient, by Equation (2.2), we have D ∩ {a, c, x, y, z} = ∅. Hence, there is c0 ∈ D with c c0 and, clearly, c0 6∈ {a, b, c, x, y}. The inequalities imply that a c0 and the efficiency of D implies that c0 b, c0 x, and c0 y. The path a x y c c0 is induced—this is a contradiction. Hence, b 6∈ D and, by symmetry, c 6∈ D. Since D is dominating and D ∩ {a, b, c, d, x, y, z} = ∅, there is an a0 ∈ D with a a0. By the inequalities, we have a0 c and a0 d. By Observation 35, 0 0 0 a a y c cannot be induced. Hence, a y. The P5 a a x y c cannot be induced, thus, we have a0 x. Since c 6∈ D, a0 c, and D is dominating, there is a c0 ∈ D with c c0. By the efficiency of D, we have a0 c0, a c0, and c0 x. Since a0 x y c c0 cannot be induced, it must be c0 y. Observation 35 0 0 forbids that d c y x is an induced P4, thus, we have c d. Hence, d is still not dominated. So there is a d0 ∈ D with d d0. By the efficiency of D, we have a0 d0, a d0, d0 x, c0 d0, c d0, and d0 y. Since c0 c z d d0 cannot be induced, we have c0 z or d0 z. If c0 z, then, by the efficiency of 0 0 0 0 D, we have a z and d z and a x z d d is an induced P5 in G—this is a contradiction. If d0 z, then, by the efficiency of D, we have a0 z and c0 z 0 0 and a x z c c is an induced P5 in G—this is a contradiction.

Theorem 10 allows to apply Corollary 34, where C is the class of P5- 60 CHAPTER 2. EFFICIENT DOMINATION free graphs and D is the class of cographs. Cographs can be recognized in linear time [30, 66] and maximum weight independent set can be solved on cographs in linear time for several reasons, for example because cographs are the graphs with clique-width 2 [32] and maximum weight independent set can be formulated in monadic second oder logic without edge set quantification. Since the min {nm + n, nα} in the runtime given in Corollary 34 results from the computation of G2, the minimum is bounded by |G2|. With this, we get:

Corollary 36. Minimum weight efficient domination is solvable in α time O(min {nm, n }) on P5-free graphs with n vertices and m edges.

As α is known to be near 2.37 [29, 93], this runtime is as good as or even better, in some cases, than the runtime given in Theorem 7 using the hanging technique. The advantage of the algorithm using the hanging technique is its robustness. Since it is not known if P5-free graphs can be recognized in time O(nm), the technique of Corollary 36 can show its performance only if the input graphs is already known to be P5-free. 3 Efficient Edge Domination

This chapter presents an O(n + m)-time minimum weight efficient edge domination algorithm for chordal bipartite graphs and a robust O(nm)-time algorithm for hole-free graphs. The results are achieved by reducing minimum weight efficient edge domination on chordal bipartite graphs and hole-free graphs respectively to minimum weight efficient edge domination on K4-free block graphs, a class that admits a linear time algorithm for this problem. The results are published in the extended abstract [8]. However, the algorithm for hole-free graphs presented here is significantly improved since the algorithm given in [8] has a runtime of O(n4) and is not shown to be robust.

Small Graphs and Graph Classes

In a P4, the edge with both endpoints having degree 2 is called mid-edge. The gem is the graph consisting of a chordless path on four vertices with an additional universal vertex. A k-star is a graph consisting of one vertex of degree k and k vertices of degree 1. A graph is called star if it is a k-star for any k ≥ 0. The 0-star (a single vertex) and the 1-star (a single edge) are also called trivial stars and, consequently, all other stars are called non-trivial stars. A diamond consist of two triangles that share exactly one edge. The shared edge is called the mid-edge of the diamond.

The graph vase equals the graph P2 + P3, that is, the disjoint union of an edge and a chordless path of length 2, with an additional universal vertex. Two triangles that share exactly one vertex are called butterfly. The two edges that are not incident to the shared vertex are called the outer edges of the butterfly. An (m, k)-mouse consists of two chordless cycles, one with length m and one with length k, that share exactly one vertex, say c, and an additional 62 CHAPTER 3. EFFICIENT EDGE DOMINATION

m

c

o1 o2 e Figure 3.1: From left to right: The gem, the 5-star, the diamond with mid-edge m, the vase, the butterfly with outer edges o1 and o2, the 4-mouse with center vertex c and center edge e, and the 4-wheel.

edge c1c2, where c1 is part of the one cycle and c2 is part of the other cycle, such that c c1 c2 c is a triangle. The vertex c is called the center vertex of the (m, k)-mouse and the edge c1c2 is called center edge. A graph is called k-mouse, if it is a (k, k)-mouse and a graph is called mouse, if it is an (m, k)-mouse for any m ≥ 3 and k ≥ 3. The k-wheel consists of a chordless cycle of length k and a universal vertex. Figure 3.1 depicts the gem, the 5-star, the diamond, the vase, the butterfly, the 4-mouse and the 4-wheel. A graph is called block graph, if every block of the graph is a complete graph. A two-terminal graph is a graph G = (V,E) with two distinguished vertices s, t ∈ V , denoted by (G, s, t). For two disjoint two-terminal graphs (G1, s1, t1) and (G2, s2, t2), we define the following compositions:

• The generalized series-composition is either (G, s1, t1) or (G, s1, t2), where G is the union of G1 and G2 on t1 = s2.

• The parallel-composition is (G, s1, t1) where G is the union of G1 and G2 on s1 = s2 and t1 = t2.

A graph is called generalized series-parallel two-terminal graph if it is either (({s, t} , {st}) , s, t), that is, a simple edge with endpoints s and t, or the generalized series-composition or the parallel-composition of two general- ized series-parallel two-terminal graphs. Consequently, a graph G is called generalized series-parallel graph, if for some pair s, t ∈ V (G) it is a generalized series-parallel two-terminal graph (G, s, t). 63

Notions and Observations The results in the following sections apply a simple observation about efficient edge dominating sets of triangles and induced cycles of length 4:

Observation 37. Let G = (V,E) be a graph. Every efficient edge dominating set D of G contains

(i) exactly one edge of every triangle of G, and,

(ii) no edge of any induced C4 of G.

Proof. Clearly, a triangle cannot contain two edges of an efficient edge set. Assume that no edge of a triangle, say x y z x, is part of an efficient edge dominating set D. Since D dominates all edges, at least two vertices of x, y, and z must be in V (D). Without loss of generality, let {x, y} ⊆ V (D). Since xy 6∈ D, there are vertices x0 and y0 with {xx0, yy0} ⊆ D. Hence, D is not efficient—this is a contradiction.

Assume that an induced C4, say a b c d a, contains an edge of an efficient edge dominating set D, say ab ∈ D. Since D dominates cd, it is either cd ∈ D or there is a vertex c0 with cc0 ∈ D or a vertex d0 with dd0 ∈ D. In any case, D is not efficient—this is a contradiction.

One can easily check that Observation 37 implies that an efficiently edge dominatable graph cannot contain a K4, a gem, a 4-wheel or a vase as induced subgraph:

Observation 38. Let G = (V,E) be a graph. If G is efficiently edge domi- natable, then G is {K4, gem, 4-wheel, vase}-free. For designing efficient algorithms, it is useful to detect edges that are in every efficient edge dominating set of a graph. The following observation lists some configurations that are easy to prove and/or simple implications from Observation 37:

Observation 39. Let G = (V,E) be a graph and xy ∈ E. If

0 0 0 0 (i) xy is the mid-edge of an induced P4, say x x y y , and x and y have degree 1 in G, or,

(ii) xy is the mid-edge of an induced diamond, or,

(iii) xy is an outer edge of an induced butterfly, or, 64 CHAPTER 3. EFFICIENT EDGE DOMINATION

(iv) xy is the center edge of an induced 4-mouse, then every efficient edge dominating set of G contains xy.

This justifies the definition of mandatory edges:

Definition 4. In a graph G = (V,E), an edge xy is called

• mandatory path edge, if it meets the condition of Observation 39.i, and,

• mandatory triangle edge, if it meets the condition of Observation 39.ii, Observation 39.iii, or Observation 39.iv.

An edge is called mandatory, if it is a mandatory path edge or a mandatory triangle edge.

In algorithms, we need an efficient way to check for a given vertex v, if v is part of one of the mentioned configurations for mandatory edges. The following two observations provide a tool for this task:

Observation 40. Let G = (V,E) be a graph. There is a vertex v ∈ V such that

(i) G[N(v)] contains a triangle ⇔ G contains a K4 (ii) G[N(v)] contains a P4 ⇔ G contains a gem (iii) G[N(v)] contains a C4 ⇔ G contains a 4-wheel (iv) G[N(v)] contains a P2 + P3 ⇔ G contains a vase (v) G[N(v)] contains a P3 ⇔ G contains a diamond (vi) G[N(v)] contains a 2K2 ⇔ G contains a butterfly as induced subgraphs.

Observation 41. Let G = (V,E) be an efficiently edge dominatable graph. The neighborhood N(v) of every vertex v ∈ V induces either

• the union of trivial stars or

• the union of a non-trivial star and an independent set in G.

Proof. Let G = (V,E) be a graph that admits an efficient edge dominating set D and let v ∈ V . Assume that G[N(v)] contains a P4. Then, by Observation 40, G contains a gem—this is a contradiction to the existence of D by Observation 38. Analogously, an induced C3 or C4 in G[N(v)] 3.1. CHORDAL BIPARTITE GRAPHS 65

contradicts the K4-freeness or 4-wheel-freeness of G respectively. Since every cycle of length 5 or more contains the P4, G[N(v)] is cycle-free. Clearly, the connected components of {P4, cycle}-free graphs are stars. Assume that there are two connected components F and H of G[N(v)] that 0 0 0 are non-trivial stars. Let x y z be an induced P3 of F and let x y z be an 0 0 0 induced P3 of H. Since {v, x, y, z} and {v, x , y , z } clearly induce diamonds in G, the edges vx and vx0 are mandatory. Hence, we have {vx, vx0} ⊆ D—this is a contradiction to the efficiency of D. Throughout this chapter we assume that every graph G = (V,E) is edge weighted with a weight function ω : E → R+. If a graph is not edge weighted, we simply assume ω(e) = 1 for every e ∈ E.

3.1 Chordal bipartite graphs

In this section, we show: Theorem 11. Given a chordal bipartite graph, minimum weight efficient edge domination is linear-time solvable. The core of the proof of Theorem 11 is a reduction from minimum weight efficient edge domination on chordal bipartite graphs to minimum weight efficient edge domination on K4-free block graphs, a subclass of generalized series-parallel graphs. The idea of the reduction is mainly based on Observation 37.ii, since every non-trivial block of a chordal bipartite graph consists of one or more induced cycles of length 4. This means that no efficient edge dominating set contains an edge of a non-trivial block and, hence, the edges of the non-trivial blocks must be dominated by edges of trivial blocks. Due to the efficiency property, it turns out that the covered vertices of a non-trivial block belong to the same part of a bipartition of the graph: Lemma 42. Let G = (V,E) be a graph and let B be a biconnected, chordal bipartite, induced subgraph of G of at least four vertices and let V (B) = X ∪Y be a bipartition of B. If D ⊆ E is an efficient edge dominating set of G, then either V (D) ∩ V (B) = X or V (D) ∩ V (B) = Y. 66 CHAPTER 3. EFFICIENT EDGE DOMINATION

Proof. Since B contains at least four edges, V (B) ∩ V (D) ≥ 2. If there is an x ∈ V (D) ∩ X, let y ∈ Y be any neighbor of x. By Observation 37.ii, we know that xy 6∈ D. If there is an edge yy0 ∈ D for some y0 =6 x, then D is not efficient. Hence, y 6∈ V (D). Let x0 ∈ X be any neighbor of y that is different from x, which must exist because B is biconnected. Since D must dominate the edge x0y, it must be x0 ∈ V (D). This argumentation can be repeated and, since B is biconnected, we get V (D) ∪ V (B) = X. If there is a y ∈ V (D) ∩ V (B) ∩ Y , an analogous argumentation gives V (D) ∪ V (B) = Y .

Since blocks are biconnected induced subgraphs, Lemma 42 implies: On chordal bipartite graphs, there are only two ways for every non-trivial block to cover its vertices by an efficient edge dominating set. We mimic this in the reduction by replacing the edges of the block by a gadget that is K4-free and allows exactly two different efficient edge dominating sets.

Definition 5. Let G = (X ∪ Y,E) be a chordal bipartite graph with edge weights ω and let B1,...,Bk be its non-trivial blocks. The reduced graph G0 = (V 0,E0) with edge weights ω0 contains all vertices of G and all edges of 0 trivial blocks of G. For every non-trivial block Bi = (Xi ∪ Yi,EB) of G, G additionally contains

• the gadget Gi, which consists of the triangle {xi, yi, di} and the vertex pi that is adjacent only to di,

• the edge xix for every x ∈ Xi, and,

• the edge yiy for every y ∈ Yi.

The weight function ω0 is defined as:

• ω0(e) := ω(e) for all e ∈ E ∩ E0, and,

• ω0(e) := 0 for all e ∈ E0 \ E.

The reduction of Definition 5 is shown in Figure 3.2 for a single non-trivial block. We show that the size of a minimum weighted efficient edge dominating set is invariant under this reduction: 3.1. CHORDAL BIPARTITE GRAPHS 67

Xi Yi Xi Yi

pi d . . ⇒ . i . . . . Gi . . Bi . . . xi yi

Figure 3.2: The non-trivial block Bi of G with bipartition V (Bi) = Xi ∪ Yi 0 (left) is substituted by the gadget Gi and additional edges in G (right). The thick gray lines represent the edges of Bi.

Lemma 43. Let G = (V,E) be a chordal bipartite graph with edge weights ω and let G0 = (V 0,E0) be the reduced graph with edge weights ω0 as in Definition 5. The graph G admits an efficient edge dominating set of size Ω, if and only if G0 admits an efficient edge dominating set of size Ω.

Proof. Let B1,...,Bk be the non-trivial blocks of G. Let D be an efficient edge dominating set of G. We define D0 as follows:

D0 := D ∪ DT

T Sk where D ⊆ i=1 E(Gi) fulfills for all 1 ≤ i ≤ k:

T T diyi ∈ D ⇔ Xi ⊆ V (D) and dixi ∈ D ⇔ Yi ⊆ V (D).

T 0 Since D ⊆ E , D ∩ E(Bi) = ∅ for all 1 ≤ i ≤ k, by Observation 37.ii, and D ⊆ E, we get D0 ⊆ E0. We show that D0 is an efficient edge dominating set of G0: 0 Notice that D contains either dixi or diyi for every i ∈ {1, . . . , k} by Lemma 42. Furthermore, by construction of G0 and the definition of DT , the edges in DT have a minumum distance of 2 to each other and all edges in D. Since D is efficient in G and G0[V ] is an induced subgraph of G, this implies that D0 is efficient. Clearly, all edges in E ∩ E0 are dominated by D and, hence, also by D0. Now consider the edges of G0 that replace an arbitrary non-trivial block T Bi = (Xi ∪ Yi,Ei) of G. Assume without loss of generality that dixi ∈ D . 0 Then xiyi, dipi, and xxi for all x ∈ Xi are dominated by D . By Lemma 42, 0 Yi ⊆ D and, hence, the edges yyi for all y ∈ Yi are dominated by D as well. This shows that D0 is an efficient edge dominating set of G0. 68 CHAPTER 3. EFFICIENT EDGE DOMINATION

Now let D0 be an efficient edge dominating set of G0. We claim: For 0 every i ∈ {1, . . . , k}, D contains either xid1 or yidi. Assume conversely that, 0 0 without loss of generality, d1x1 6∈ D and d1y1 6∈ D . By Observation 37.i, we 0 0 0 have x1y1 ∈ D . Since D is efficient, this implies d1p1 6∈ D . But to dominate 0 0 0 d1p1, it must be d1x1 ∈ D , d1y1 ∈ D , or d1p1 ∈ D —this is a contradiction. Let DT := (E0 \ E) ∩ D0. We show that D := D0 \ DT is an efficient edge dominating set of G: T As shown above, D contains either xidi or yidi for every i ∈ {1, . . . , k}. Since D0 is efficient, DT contains exactly these edges.

For every i ∈ {1, . . . , k}, either the edges between Xi and x or the edges T 0 between Yi and y are not dominated by D . Since D dominates all edges of 0 G , these edges are dominated by D, which implies that either Xi ⊆ V (D) or Yi ⊆ V (D). Every edge of a non-trivial block Bi of G is incident to a vertex of Xi and a vertex of Yi, what means that it is dominated by D. Since D clearly dominates all edges in E ∩ E0, it is an efficient edge dominating set of G. Since in both cases ω0(DT ) = 0 and ω(D) = ω0(D), it follows ω(D) = ω0(D0).

The reduction of Definition 5 produces a graph whose non-trivial blocks are triangles because all edges of non-trivial blocks are removed and a triangle is added. This means in particular that the resulting graph a K4-free block graph.

One can easily check that K4-free block graphs are contained in the class of generalized series-parallel graphs. For these graphs, there is an algorithm that solves minimum weight efficient edge domination in linear time given by Lu, Ko and Tang in [70]. This permits the algorithm shown in Table 3.1. It applies the reduction of Definition 5 and solves minimum weight efficient edge domination on the resulting graph in linear time.

Lemma 44. Algorithm MWEED-ChordalBipartite is correct and runs in time O(n + m).

Proof. Since the algorithm obviously constructs G0 according to Definition 5 before Step 6, the correctness follows from Lemma 43. A bipartition of a graph can be found in linear time by using DFS in Step 2. In Step 3, the blocks of a graph can be determined in linear time using algorithms for testing 2-vertex connectivity, for example the algorithm of 3.1. CHORDAL BIPARTITE GRAPHS 69

Algorithm: MWEED-ChordalBipartite Input: A chordal bipartite graph G = (V,E) with edge weights ω. Output: A minimum efficient edge dominating set D, if one exists.

1. Set G0 = (V 0,E0) := (V,E) and ω0 := ω. 2. Determine a bipartition V = X ∪ Y of G. /* by DFS */

3. Determine the non-trivial blocks B1,...,Bk of G. /* by Hopcroft-Tarjan */ 4. For every e ∈ E: If e is part of some non-trivial block, set E0 := E0 \{e}.

5. For every non-trivial block Bi: 0 0 0 0 1. Set V := V ∪ {xi, yi, di, pi} and E := E ∪ {dipi, dixi, diyi, xiyi} and 0 0 0 0 ω (dipi) = ω (dixi) = ω (diyi) = ω (xiyi) := 0. 0 0 0 2. For every x ∈ V (Bi) ∩ X: Set E := E ∪ {xxi} and ω (xxi) := 0. 0 0 0 3. For every y ∈ V (Bi) ∩ Y : Set E := E ∪ {yyi} and ω (yyi) := 0. 0 — G is a K4-free block graph now. — 6. Determine a minimum weighted efficient edge dominating set D0 of G0. If it does not exist, STOP: G is not efficient edge dominatable. 7. Return D := D0 ∩ E.

Table 3.1: A linear-time algorithm for minimum weight efficient edge domination on chordal bipartite graphs. 70 CHAPTER 3. EFFICIENT EDGE DOMINATION

Hopcroft and Tarjan [56] or a very simple algorithm recently given by Schmidt [87]. When determining the blocks of G, we can label every edge that is part of a non-trivial block and every vertex with the non-trivial blocks it is contained in. The labels of the edges can be used to remove the edges of non-trivial blocks in linear time in Step 4. The labels of the vertices can be used to implement Steps 5.2 and 5.3 in accumulated linear time because Fact 1 guarantees that at most 2|V | labels are given to the vertices. Clearly, Step 5.1 can be done in constant time and, since k ≤ n, this accumulates to linear time. Since the construction of G0 takes only linear time, also its size is linear in the size of G. Hence, using the algorithm for minimum weight efficient edge domination on generalized series-parallel graphs given in [70], Step 6 can be done in linear time. This completes the proof of Theorem 11. Unfortunately, the algorithm in the proof of Theorem 11 requires that the input graph is chordal bipartite. If this is not already known, the runtime of a robust algorithm depends on the complexity of the recognition of chordal bipartite graphs. With the best known recognition algorithms, derived from [74, 83, 88], we get:

Corollary 45. Minimum weight efficient edge domination is solvable in time O(min(m log n, n2)) on chordal bipartite graphs.

3.2 Hole-free graphs

This section shows:

Theorem 12. Minimum weight efficient edge domination is solvable in time O(nm) on hole-free graphs in a robust way. The proof is similar to the technique used in Section 3.1, as we reduce the problem to minimum weight efficient edge domination on K4-free block graphs. Since the blocks of hole-free graphs are more complex than chordal bipartite blocks, we first need some additional preparations. Let G = (V,E) be a graph. As we want to design a robust algorithm, we have to cover the case that G is not hole-free. Our algorithm starts with checking whether G fulfills the necessary con- dition of Observation 38, that is, it checks whether G is {K4, gem, 4-wheel, vase}-free. A way to do this check efficiently is given by Observation 40 and 3.2. HOLE-FREE GRAPHS 71 its implication, Observation 41. It states that the neighborhood of every vertex induces either a union of trivial stars or a union of a non-trivial star and an independent set, if G is efficiently edge dominatable. If a check for this condition fails, then G admits no efficient edge dominating set. Hence, from now on we can assume that G is {K4, gem, 4-wheel, vase}-free. We first reduce the problem to the case, where the input graph has no mandatory triangle edges. This modification preserves the efficient edge dominating sets of G and their weights. The idea is to replace mandatory triangle edges by mandatory path edges. Since the replacement works for every mandatory edge, we can define it in general:

Definition 6. Let G = (V,E) be a graph with edge weights ω and let xy ∈ E be a mandatory edge. We define Gxy = (Vxy,Exy) with

0 0 0 0 Vxy := V ∪ {x , y } for new vertices x and y and 0 0 Exy := {e ∈ E | e ∩ {x, y} = ∅} ∪ {xz | xz ∈ E or yz ∈ E} ∪ {xx , yy } , and ωxy with

ωxy(e) := ω(e) for all e ∈ Exy ∩ E and

ωxy(e) := 0 for all e ∈ Exy \ E, that means, in Gxy, all edges of G that are incident to y are switched from y to x and there are two new pending vertices x0 and y0 such that x0xyy0 is an induced P4 in Gxy.

This modification preserves all efficient edge dominating sets:

Lemma 46. Let G = (V,E) be a graph with edge weights ω, let D ⊆ V , let xy ∈ E be a mandatory edge and let Gxy and ωxy be defined as in Definition 6. Then D is an efficient edge dominating set of G of size Ω, if and only if

D is an efficient edge dominating set of Gxy of size Ω.

Proof. Let D be an efficient edge dominating set of G. Since xy is mandatory, xy ∈ D. Hence, we have NG(xy) ∩ V (D) = ∅ because otherwise D would not be efficient. With this, D is efficient and edge dominating in Gxy because D 72 CHAPTER 3. EFFICIENT EDGE DOMINATION

is efficient and edge dominating in G − NG[xy] = Gxy − NGxy [xy] and every 0 0 edge that is adjacent to xy in Gxy, in particular xx and yy , is dominated by xy.

Conversely, let Dxy be an efficient edge dominating set of Gxy. Since 0 0 0 0 0 x x y y x is an induced P4 in Gxy and x and y are of degree 1, xy is a mandatory path edge and we have xy ∈ Dxy. Hence, NGxy (xy) ∩ V (Dxy) = ∅ because otherwise Dxy would not be efficient. With this, Dxy is efficient and edge dominating in G because Dxy is efficient and edge dominating in

Gxy − NGxy [xy] = G − NG[xy] and every edge that is adjacent to xy in G is dominated by xy.

Since we want to apply this modification to hole-free graphs, we have to show that hole-free graphs are closed under this modification.

Lemma 47. Let G = (V,E) be a graph, let xy ∈ E be a mandatory edge of

G and let Gxy and ωxy be defined as in Definition 6. For every induced cycle Cxy of Gxy of length k, there is an induced cycle C of G of length at least k. Hence, if G is {Ck,Ck+1,... }-free, then Gxy is {Ck,Ck+1,... }-free for any k.

Proof. Let Cxy be an induced cycle of Gxy on vertices VC ⊆ Vxy. Clearly, 0 0 {x , y , y} ∩ VC = ∅. If x 6∈ VC , Cxy is also an induced cycle in G. Hence, let x ∈ VC . Let a ∈ VC and b ∈ VC be the neighbors of x in Cxy. If bx ∈ E, then Cxy is an induced cycle in G. Hence, let bx 6∈ E. If ay ∈ E, then (VC \{x}) ∪ {y} induces a cycle in G with the same length as in Gxy. If ay 6∈ E, then VC ∪ {y} induces a cycle in G that is longer than Cxy.

The use of this modification is to simplify the structure of the blocks by decreasing the number of triangles. The following two observations together imply that constructing Gxy for an efficiently edge dominatable graph G destroys every triangle which contains the edge xy and introduces no new triangles.

Observation 48. Let G = (V,E) be a graph and let xy ∈ E be a manda- tory edge of G. If G has an efficient edge dominating set, then N(xy) is independent.

Proof. Assume that N(xy) contains an edge, say ab. If {ax, bx} ⊆ E or {ay, by} ⊆ E, then xy is incident to the triangle x a b x or the triangle y a b y. Since xy is mandatory, then G is not efficiently edge dominatable by Observation 37.i—this is a contradiction. If this is not the case, then we 3.2. HOLE-FREE GRAPHS 73 can assume without loss of generality that {ax, by} ⊆ E and {bx, ay} ∩ E = ∅. But then xy is part of the induced cycle x y a b x, and, hence, G is not efficiently edge dominatable by Observation 37.ii—this is a contradiction.

Observation 49. Let G = (V,E) be a graph, let xy ∈ E be a mandatory triangle edge of G and let Gxy be defined as in Definition 6. Let T be the set of all triangles of G and T 0 ⊆ T the set of all triangles that contain the edge xy.

If N(xy) is independent in G, then the set Txy of triangles of Gxy is 0 Txy = T \ T .

Proof. Every triangle of the form x y z of G does not exist in Gxy because the edge yz is removed. Since G[N(xy)] contains no edges, replacing an edge yz for some z ∈ V \{x, y} by the edge xz cannot introduce a new triangle.

Our goal is to repeat the modification until there are no more mandatory triangle edges. Hence, we have to identify mandatory triangle edges efficiently. By Observation 40, the mid-edges of induced diamonds and the outer edges of induced butterflies can easily be found by considering the neighborhood of every vertex and check it for an induced P3 or an induced 2K2. Consequently, we identify all edges xy that are mid-edges of induced diamonds or outer edges of induced butterflies and check if the neighborhood of xy is independent. If so, we construct Gxy, otherwise, we have a proof that G admits no efficient edge dominating set and, thus, we stop. At the end, the resulting graph G is {diamond, butterfly}-free, by Observation 49. Notice that, since G is also

K4-free as assumed above, every vertex is in at most one triangle. Since G is {diamond, butterfly}-free, all remaining mandatory triangle edges are center edges of induced 4-mice. To detect these, we search for all induced mice in G. Since the triangles of G are pairwise disjoint, there is no induced (3, k)-mouse or (k, 3)-mouse for any k ≥ 3 in G. Moreover, as the number of triangles is at most |V |, the number of mice is at most |V |. Hence, every vertex of G can be the center vertex of at most one induced mouse. This leads to the following algorithm: For every vertex v, check if G[N(v)] contains an edge, that is, check if v is part of a triangle. Notice that there can be at most one edge in G[N(v)] because G is {diamond, butterfly}-free. If such an edge exists, say xy, then let Pvx (respectively Pvy) be a shortest path from v to x (respectively from v to y) that neither uses the edge vx (respectively vy) nor the vertex y (respectively x), if such a path exists. These paths can easily be found by breadth-first-search. If both paths exist, then G contains an induced (m, k)-mouse, where m is the length of Pvx and k is the length 74 CHAPTER 3. EFFICIENT EDGE DOMINATION

of Pvy. If m > 4 or k > 4, then Pvx ∪ {vx} or Pvy ∪ {vy} induce a hole in G, which proves that G is not hole-free. If m = k = 4, then xy is a mandatory triangle edge and, again, we check if its neighborhood is independent and if so, we apply the modification of Definition 6. After checking this for every vertex, by Observation 49, the graph is {diamond, butterfly, mouse}-free or we have a proof that G contains an induced hole or admits no efficient edge dominating set. The procedure for reducing the mandatory triangle edges is shown in Ta- ble 3.2. It is a straightforward implementation of the foregoing considerations. We show: Lemma 50. Procedure ReduceMandatoryTriangleEdges-Holefree is cor- rect and runs in time O(|V | · |E|). The output graph G0 has at most 5|V | vertices and at most 5|E| edges. If G is hole-free, then G0 is hole-free. Proof. Assume that G is given as one incidence list per vertex. The loop of Step 2 is executed |V | times. The neighborhood of a vertex is given by its incidence list. To achieve a constant time lookup later, we label every vertex of N(v) in Step 2.1, which takes at most time O(|V |). We can count the degree of all vertices of N(v) in G[N(v)] by initializing the degree of every vertex with 0, then considering every edge xy of G and increase the degree of x and y by one, if both, x and y, are labeled. Clearly, the maximum and the sum can be computed alongside. Hence, Step 2.2 can be done in time O(|E|). The correctness of Step 2.3 follows from Observation 38 and Observation 40 and the test clearly can be done in constant time. The correctness of Steps 2.4 and 2.5 follows from Observation 39 and Observation 40. Step 2.4 can be done in constant time and Step 2.5 takes at most time O(|E|). Hence, the execution of the loop in Step 2 takes at most time O(|V | · |E|). When the loop finishes, M contains the mid-edge of all diamonds and the outer edges of all butterflies of G. Step 3 is correct because if |M| > |V |, there is a vertex that is incident to two mandatory edges—this is a contradiction to the existence of an efficient edge dominating set. By Step 3, the loop in Step 4 is executed at most |V | times. The neighbor- hood N(xy) of an edge xy can be constructed in time O(|N(xy)|) ⊆ O(|V |) using the incidence lists of x and y. Again, we label the vertices of N(xy). Then, we can check if N(xy) is independent in G0 by considering every edge vw of G0 and check if at most one of v and w is labeled. This takes time O(|E0|). The correctness of Step 4.1 directly follows from Observation 48. 3.2. HOLE-FREE GRAPHS 75

Procedure: ReduceMandatoryTriangleEdges-Holefree Input: A connected graph G = (V,E) with edge weights ω. 0 Output: A connected {K4, gem, diamond, butterfly, mouse}-free graph G with edge weights ω0 such that G and G0 have the same efficient edge domi- nating sets or the statement that G is not hole-free or the statement that G is not efficiently edge dominatable.

1. Set G0 = (V 0,E0) := (V,E) and M := ∅. 2. For every v ∈ V : 1. Determine N(v).

2. Count degG[N(v)](w) for every w ∈ N(v) and calculate the sum s and the maximum m of all these values. 3. If m > 1 and m < s − m, STOP: G is not efficient edge 0 dominatable. /* found K4, gem, 4 − wheel or vase in G */

4. If m > 1, set M := M ∪ {vw}, where w ∈ N(v) with m = degG[N(v)](w). /* mid-edge of a diamonds */ 5. If m = 1, for every edge xy ∈ G[N(v)]: Set M := M ∪ {xy}. /* outer edges of butterflies */ 3. If |M| ≥ |V |, STOP: G is not efficient edge dominatable. 4. For every xy ∈ M: 1. Check if N(xy) is an independent set in G0. If not: STOP: G is not efficient edge dominatable. /* Observation 48 */ 0 0 0 0 2. Set G := Gxy and ω := ωxy according to Definition 6. 0 — G is {K4, gem, diamond, butterfly}-free now. — 5. For every v ∈ V such that G0[N(v)] contains an edge xy: 0 1. Find a shortest path Pvx from v to x in (G − y) − vx and a shortest 0 path Pvy from v to y in (G − x) − vy. 2. If one of these paths exists and has length greater 3, STOP: G is not hole-free. 0 0 0 0 3. If both paths exist, set G := Gxy and ω := ωxy. /* 4-mouse */ 6. Return G0.

Table 3.2: The procedure ReduceMandatoryTriangleEdges-Holefree. 76 CHAPTER 3. EFFICIENT EDGE DOMINATION

Step 4.2 preserves the efficient edge dominating sets of G0 by Lemma 46. The modification can be done in time O(|V 0|) because the addition of a constant number of vertices and edges takes constant time using incidence lists and switching all edges from y to x can be done by considering every neighbor of y, hence in time O(|V 0|). Hence, the loop in Step 4 takes at most time O(|V | · |V 0|). Observation 49 guarantees that G0 is {diamond, butterfly}-free when the loop finishes because all triangles of diamonds and butterflies are reduced without introducing new triangles. After each iteration of the loop, G0 contains 2 vertices and 2 edges more than before. Since the loop is executed at most |V | times, when it finishes, we have |V 0| ≤ 3|V | and |E0| ≤ 3|E|. The loop in Step 5 is executed at most |V | times. To test if G0[N(v)] contains an edge takes at most time O(|E0|) because we can label all vertices of N(v) like above and check for every edge of G if it has both endpoints in N(v). Step 5.1 can be done by starting two breadth-first-searches, while one search omits the vertex y and the edge vx and the other search omits the vertex x and the edge vy. Since G0 is connected, breadth-first-search takes at 0 most time O(|E |). Step 5.2 is correct because if a path, say Pvx, has length 4 or greater, then the vertices of Pvx induce a hole in G. If both paths exist, they have length 4 because otherwise there is a diamond or butterfly in G0 or we exited in Step 5.2. Hence, there is a 4-mouse in G0 and xy is a mandatory triangle edge by Observation 39.iv. Thus, Step 5.3 preserves the efficient edge dominating sets by Lemma 46. It takes at most time O(|V 0|) as Step 4.2. Observation 49 guarantees that G0 is mouse-free when the loop finishes because all triangles of mice are reduced without introducing new triangles. To get rid of all triangles, notice that it is sufficient to regard the vertices of V only because all vertices in V 0 \ V are in no triangle of G0 by construction. After each iteration of the loop, G0 contains at most 2 vertices and 2 edges more than before. Since the loop is executed at most |V | times and, before the loop starts, we have |V 0| ≤ 3|V | and |E0| ≤ 3|E|, when it finishes we have |V 0| ≤ 5|V | and |E0| ≤ 5|E|. Since the size of G0 never decreases during the execution of the procedure, this can be used as a bound for |V 0| and |E0| in every step of the procedure. Hence, the overall running time is O(|V | · max(|V 0|, |E0|)) = O(|V | · max(|V |, |E|)), which equals O(|V | · |E|) on connected graphs. Lemma 47 assures in Steps 4.2 and 5.3 that G0 is hole-free, if G was hole-free.

Now we are ready to perform the reduction to K4-free block graphs. 3.2. HOLE-FREE GRAPHS 77

Hence, we consider the blocks of G. A block with three vertices clearly is a triangle. Every block with at least four vertices contains an induced C4 because otherwise there is an induced K4 or diamond in G. Our goal is to reduce the blocks of G to triangles. Consequently, the blocks of at least four vertices are of interest. Let B be a block of G with at least four vertices. Since G is {diamond, butterfly, mouse}-free, the triangles of B have the following useful property: Fact 51. Every triangle of B has exactly one vertex with degree 2 in B. This allows the following definition: Definition 7. Let T ⊂ V (B) be the set of all vertices of B that are part of a t triangle of B. The vertices T := {t ∈ T | degB(t) = 2} are called thorns of B. We call B0 := B − T t the thornless block of B. Clearly, by Fact 51, the thornless blocks of G are triangle-free and, hence, G is hole-free, if and only if all thornless blocks are chordal bipartite. Thus, our algorithm determines T t for every block B of at least four vertices and checks the corresponding thornless block B0 for being chordal bipartite. If this is not the case for at least one block, we have a proof that G is not hole-free. Hence, from now on we can assume that G is hole-free and, consequently, that all thornless blocks are chordal bipartite. This enables the following definition: Definition 8. Let V (B0) = X ∪ Y be a bipartition of B0. We define X4 := X ∩ T and Y 4 := Y ∩ T, that is, a bipartition of the vertices of B0 that are in a triangle of B. In contrast, we define X64 := X \ T and Y 64 := Y \ T, that is, a bipartition of the vertices of B0 that are not in a triangle of B. Consequently, we define

4 4 4 4 NX := N(X ) \ V (B) and NY := N(Y ) \ V (B) and 64 64 64 64 NX := N(X ) \ V (B) and NY := N(Y ) \ V (B) as well as N t := N(T t) \ V (B), that is, the neighbors of X4, Y 4, X64, Y 64 and T t outside of B. 78 CHAPTER 3. EFFICIENT EDGE DOMINATION

Furthermore, the thornless blocks of G are biconnected, chordal bipartite subgraphs of G, so we can apply Lemma 42. That is, every efficient edge dominating set D of G covers either X or Y of every thornless block of G. By Fact 51, every triangle of B has exactly one edge in B0. Hence, Observation 37.i and Lemma 42 imply that every efficient edge dominating set of G contains one of the two edges of every triangle that are not in B0. We summarize this in the following corollary:

Corollary 52. For every efficient edge dominating set D of G, either

V (D) ∩ V (B) = X ∪ T t or V (D) ∩ V (B) = Y ∪ T t.

This implies that E(X,Y ) ∩ D = ∅ and that either

E(T t,X4) ⊂ D and E(T t,Y 4) ∩ D = ∅ or E(T t,Y 4) ⊂ D and E(T t,X4) ∩ D = ∅, and, hence,

E(T t,N t) ∩ D = ∅, 4 4 E(X ,NX ) ∩ D = ∅, and 4 4 E(Y ,NY ) ∩ D = ∅.

We develop an extended version of the reduction used in Section 3.1.

Definition 9. The reduced graph GB = (VB,EB) with edge weights ωB results from G and ω by removing the vertices of T and the edges of E(B) and adding the gadget H that contains

• the new triangle {x, y, d} and the new vertex p that is adjacent only to d,

64 4 • the edge xv for every v ∈ X and every v ∈ NY ,

64 4 • the edge yv for every v ∈ Y and every v ∈ NX , and, • the edge dv for every v ∈ N t. and by defining ωB as 3.2. HOLE-FREE GRAPHS 79

B X64 Y 64 N t

. . H . . X64 Y 64

⇒ p 4 4 d N . . N . . X . . Y . . x y

X4 Y 4 ... N 4 N 4 T t Y X N t

Figure 3.3: The block B of G (left) is substituted by the gadget H and 0 additional edges in GB (right). The thick gray lines represent the edges of B . Clearly, every vertex of X4 has exactly one neighbor in Y 4 and vice versa, but these edges are also represented by the thick gray lines, so they are not printed explicitly.

• ωB(e) := ω(e) for all e ∈ E ∩ EB,

 4 4  • ωB(dx) := ω E(Y ,NY ) ,

 4 4  • ωB(dy) := ω E(X ,NX ) , and,

• ωB(e) := 0 for all e ∈ EB \ E except e = dx and e = dy.

The reduction described in Definition 9 is shown in Figure 3.3. We show that it preserves the sizes of all efficient edge dominating sets of G:

Lemma 53. Let G = (V,E) be a {diamond, butterfly, mouse, hole}-free graph with edge weights ω, let B be a block of G with at least four vertices and let

GB = (VB,EB) be the reduced graph with edge weights ωB as in Definition 9. There is an efficient edge dominating set D of G with ω(D) = Ω, if and only if there is an efficient edge dominating set DB of GB with ωB(DB) = Ω. 80 CHAPTER 3. EFFICIENT EDGE DOMINATION

Proof. For the first direction, let D be an efficient edge dominating set of G.

We construct DB as follows:

t DB := (D \ E(B)) ∪ {dy} , if V (D) ∩ V (B) = X ∪ T and t DB := (D \ E(B)) ∪ {dx} , if V (D) ∩ V (B) = Y ∪ T . We know from Corollary 52 that either the first or the second condition holds, so DB is well defined. Corollary 52 also states that E(T,V \T )∩D = ∅. Since GB contains all edges of G except E(B) and the edges incident to T , we clearly t have DB ⊆ EB. Without loss of generality assume that V (D)∩V (B) = Y ∪T .

Assume that DB is not efficient. Since D is efficient and GB introduces no edges between vertices of V , there must be an edge in D \ E(B) with distance 64 4 1 to dx. Hence, there is a vertex v ∈ V (D \ E(B)) with v ∈ X , v ∈ NY or v ∈ N t. Since V (D) ∩ V (B) = Y ∪ T t, it cannot be v ∈ X64. Corollary 52 implies that all edges of E(T t,Y 4) are in D. Since D is efficient, this means that v 6∈ N 4 and v 6∈ N t. Hence, v cannot exist—this is a contradiction to the assumption that DB is not efficient. t Since we have dx ∈ DB, the edges dp, dx, dy, xy and all edges in E(d, N ), 64 4 E(x, X ), and E(x, NY ) are dominated by DB. By Corollary 52, all vertices of Y 64 are covered by edges that are outside of B. These edges also exist in DB and, hence, all edges that have at least 64 one endpoint in Y are dominated by DB. Again by Corollary 52, X4 ∩ D = ∅, which implies that D covers every 4 64 vertex of NX and every vertex of N(X ) \ Y with an edge that is outside of B. These edges also exist in DB and, hence, all edges that have at least one 4 64 endpoint in NX or N(X ) \ Y are dominated by DB. t 4 4 Finally, every edge of GB that has no endpoint in V (H), N , NX or NY is also an edge in G and dominated by D ∩ DB. This shows that DB is edge dominating in GB.

For the other direction, let DB be an efficient edge dominating set of GB. We construct D as follows:

t 4 D := (DB \{dx}) ∪ E(T ,Y ), if dx ∈ DB and t 4 D := (DB \{dy}) ∪ E(T ,X ), if dy ∈ DB.

Every efficient edge dominating set of GB contains either dx or dy because otherwise dp is not dominated or no edge of the triangle d, x, y is chosen, a 3.2. HOLE-FREE GRAPHS 81 contradiction to Observation 37.i. Hence, D is well defined. Furthermore, this 4 4 implies that DB does not contain dp or xy, no edge of E(x, NY ) or E(y, NX ), and no edge that has at least one endpoint in N t. Hence, D ⊆ E. Without loss of generality assume that dx ∈ DB.

Assume that D is not efficient. Clearly, D ∩ DB is efficient. Since X, Y and T t are independent sets in G, the edges of E(T t,Y 4) are efficient.

Hence, there is an edge in D ∩ DB that has distance 0 or 1 to an edge of t 4 t 4 4 E(T ,Y ). Since N ∩ V (DB) = ∅ and the edges E(Y ,NY ), as well as the edges E(X,Y ), do not exist in GB, this edge must be of the form vw with 4 64 v ∈ NY or v ∈ X and w ∈ V \ E(B). This edge is also in DB and has distance 1 to dx—this is a contradiction to the efficiency of DB. Hence, D is efficient. Clearly, all edges of G[T ] are dominated by D, as well as all edges of 4 4 4 E(Y ,NY ) and E(Y ,X). 64 64 Since dx ∈ DB and E(y, Y )∩DB = ∅, to dominate the edges in E(y, Y ), 64 there are ` = |Y | edges {e1, . . . , e`} ⊆ DB, each having exactly one endpoint in Y 64. By definition, these edges are also in D and, hence, D also dominates the edges in E(Y 64,X) in G. Analogous argumentations work for the edges 4 64 in E(y, NX ) and E(X ,VB \{x}) and we get that D dominates the edges in 4 4 64 E(X ,NX ) and E(X ,V \ Y ). t 4 4 Finally, every edge of G that has no endpoint in V (B), N , NX or NY is also an edge in GB and dominated by D ∩ DB. This shows that D is edge dominating in G.

It is easy to check that ω(D) = ωB(DB), if D and DB are constructed as described above. This completes the proof.

The reduction replaces the edges and some vertices of a block B of at least four vertices by a triangle with a pending edge. Since B is a maximal biconnected subgraph of G, all vertices of G that have a neighbor in B are pairwise unconnected in G − E(B). Hence, the reduction does not introduce any kind of cycle, in particular it introduces no diamonds, butterflies, mice or holes. Moreover, it reduces the number of blocks of at least four vertices. This means, if we repeat the reduction until the resulting graph G0 does not 0 contain any block of at least four vertices, we have a K4-free block graph G that admits an efficient edge dominating set of size Ω, if and only if G admits an efficient edge dominating set of size Ω. This enables us to give a robust minimum weight efficient edge domination algorithm for hole-free graphs shown in Table 3.3. 82 CHAPTER 3. EFFICIENT EDGE DOMINATION

Algorithm: MWEED-Holefree Input: A connected graph G = (V,E) with edge weights ω. Output: A minimum weighted efficient edge dominating set D, if one exists, or a proof that G is not hole-free or not efficiently edge dominatable.

1. Set G := ReduceMandatoryTriangleEdges-Holefree(G). 0 — G is {K4, gem, diamond, butterfly, mouse}-free. — 2. Set G0 = (V 0,E0) := G and ω0 := ω. 3. Determine the blocks of G. 4. For every block B of G with at least four vertices:

1. Count degB(v) for every v ∈ V (B). t 0 2. Set T := {v | v ∈ V (B), degB(v) = 2, and NB(v) ∈ E }. 3. Check if B − T t is chordal bipartite. If not: STOP: G is not hole-free. 4. Find a bipartition V (B − T t) = X ∪ Y . 0 0 0 0 5. Set G := GB and ω := ωB according to Definition 9. 0 — G is a K4-free block graph now. — 5. Determine a minimum weighted efficient edge dominating set D0 of G0. If it does not exist, STOP: G is not efficient edge dominatable. 6. For every block B of G with at least four vertices: 1. If dx ∈ D0, set D0 := D0 \{dx} ∪ E(T t,Y ). 2. If dy ∈ D0, set D0 := D0 \{dy} ∪ E(T t,X). 7. Return D0.

Table 3.3: A robust algorithm for minimum weight efficient edge domination on hole-free graphs. 3.2. HOLE-FREE GRAPHS 83

Lemma 54. Algorithm MWEED-Holefree is correct and runs in time O(|V | · |E|).

Proof. Assume that G is given as one incidence list per vertex. By Lemma 50, Step 1 runs in time O(|V | · |E|). Furthermore, after its execution, G is {K4, gem, diamond, butterfly, mouse}-free, G is hole-free if the input graph was hole-free, G has the same efficient edge dominating sets as the input graph, and the size was increased only by a constant factor. Hence, it is correct to continue on the resulting graph G instead of the input graph. Since G is connected, Step 3 can be done in linear time using algorithms for testing 2-vertex-connectivity, for example the well-known algorithm of Hopcroft and Tarjan [56] or a very simple algorithm recently given by Schmidt [87]. We can assume that we get a list of vertices and a list of edges for every block. Step 4.1 can be done in time O(|E(B)|) by initializing the degree of every vertex of B with 0, considering every edge xy ∈ E(B) and increase the degree of x and y. Step 4.2 can be done in time O(|V (B)|) be checking for every vertex of B with degree 2 in B, if its neighborhood is an edge. The induced subgraph B − T t can be constructed in time O(|V (B)| + |E(B)|) by labeling every vertex of T t and creating a copy of B while omitting every labeled vertex and every edge with at least one labeled endpoint. Step 4.3 can be done in time O(min(|E(B)| log |V (B)|, |V (B)|2)) by [74, 83, 88]. In Step 4.4, a bipartition can be found in time O(|E(B)|) by depth-first-search. The reduction of Definition 9 can be implemented in time O(E) because the sets T t, X4, and Y 4 can easily be identified and removed. The most expensive 4 4 4 4 t t task of relocating the edges of E(N ,NX ), E(Y ,NY ), and E(T ,N ) can be done by considering every edge of G and exchange one of its endpoints, if necessary. Hence, Step 4.5 can be done in time O(|E(B)|). Since G has at most |V | blocks and, by Fact 1, the accumulated size of the blocks is at most two times the size of G, the accumulated runtime of Step 4 is in O(|V | · |E|). Furthermore, |V | and |V 0| as well as |E| and |E0| differ in a constant factor only. Lemma 53 guarantees that G0 has an efficient edge dominating set of size Ω, if and only if G has an efficient edge dominating set of size Ω. Hence, Steps 4 and 5 are correct. Step 5 can be done in time O(|V 0| + |E0|) by the algorithm for generalized series-parallel graphs given in [70], hence, in time O(|V | + |E|). The correctness of Step 6 follows from the proof of Lemma 53 and it can 84 CHAPTER 3. EFFICIENT EDGE DOMINATION clearly be done in time O(|V | · |E|), as T t, X, and Y are already calculated for every block in Steps 4.2 and 4.4.

This completes the proof of Theorem 12. As mentioned in the beginning of this section, the presented algorithm is robust, that is, if the input graph is not hole-free, the algorithm gives either a correct output or correctly states that the input graph is not hole- free. Recognizing hole-free graphs is an important problem. Besides a straightforward O(|V |5) algorithm proposed in [53], for a long time the best known algorithm was given in [89] with a runtime of O(|V |2 · |V |α), where α is the exponent of multiplication of two |V | × |V | matrices. Today, the fastest known algorithm is given in [81] and has a runtime of O(|V | + |E|2). One may ask whether hole-free graphs can be recognized with a mod- ification of the presented algorithm in time O(|V | · |E|). Actually, this is not straightforwardly possible because the parts in which holes are found require the absence of induced K4 and gems. In general hole-free graphs, there is no obvious way to reduce the K4 or the gem without accidentally removing existing holes. Furthermore, our algorithm only finds the holes that are involved in the reduction of mandatory triangle edges. 4 Polarity and Monopolarity

The first part of this chapter gives three tractability results for monopolar- ity. These results build on one another. The first one, given in Section 4.1, describes a graph class that allows reducing monopolar extension to 2-satisfiability such that every monopolar extension of the input graph coincides with a satisfying truth assignment of the corresponding formula. The second one, given in Section 4.2, uses preprocessing to extend the first results to a larger graph class. This class contains all P5-free graphs and all chair-free graphs and, hence, all claw-free graphs. The third result, given in Section 4.3, generalizes an approach for solving monopolarity on chordal graphs [36]. It shows that monopolar extension is efficiently solvable on graphs whose blocks are in the graph class that was given in Section 4.2. This yields a graph class that contains all hole-free graphs and, in particular, most graph classes for which efficient monopolarity algorithms are known. Section 4.4 deals with polar graphs. Since polarity as well as monopo- larity is NP-complete on planar graphs, we inspect subclasses of planar graphs. We show that polarity is efficiently solvable on maximal planar graphs, hole-free planar graphs, and chair-free planar graphs. These results build on the monopolarity-results of Sections 4.1 to 4.3. This work is published in the extended abstract [64] and the article [63]. However, the results presented here are improved versions. In particular, the best tractability result for monopolarity shown here is slightly better than the monopolarity result recently given in [27].

Notions and Observations The paw(v, w, x, y) consists of the triangle v w x v and the vertex y which is adjacent only to x. The diamond(v, w, x, y) consists of the two triangles x v w x and y v w y. Figure 4.1 shows these two graphs. A graphs is maximal planar, if it is planar and no edge can be added without loosing planarity. Those graphs are also called triangulated planar. 86 CHAPTER 4. POLARITY AND MONOPOLARITY

v v x y x y w w Figure 4.1: The graphs paw(v, w, x, y) and diamond(v, w, x, y).

Let G = (V,E) be a graph, let Q be the set containing all blocks of G, and let C be the set containing all cutvertices of G. The block-cutvertex-tree T is a tree with node set Q ∪ C and a block node Q ∈ Q is adjacent to a cutvertex node c ∈ C, if and only if c ∈ V (Q). Let T be rooted at some block node R ∈ Q. A node x ∈ Q ∪ C is called parent of a node y ∈ Q ∪ C, if x and y are adjacent in T and distT (R, x) = distT (R, y) − 1. Consequently, all nodes with the same parent x are called children of x and the children of the children of x are called grandchildren of x. By Tx we denote the subtree of T rooted at the node x and by G[Tx] we denote the subgraph of G that contains all blocks of Tx.

A path x y z in a graph G is called 3-path, if degG(x) = degG(y) = degG(z) = 2. Observation 55. Let G be a graph with precoloring (A0,B0) and let x be a vertex of degree at most 1 that is not precolored. The graph G is (A0,B0)- monopolar extendable, if and only if G − x is (A0,B0)-monopolar extendable.

Proof. For the non-trivial direction, let (A, B) be a monopolar extension of (A0,B0) and G − x. If deg(x) = 0, both, (A, B ∪ {x}) and (A ∪ {x} ,B) clearly are (A0,B0)-monopolar extensions of G. If deg(x) = 1, let y be the neighbor of x in G. If y ∈ A, then (A, B ∪ {x}) clearly is a monopolar extension of (A0,B0) and G and, if y ∈ B, then (A ∪ {x} ,B) clearly is an (A0,B0)-monopolar extension of G.

Observation 56. Let G be a graph with precoloring (A0,B0) and let x y z be a 3-path of G with no precolored vertex. The graph G is (A0,B0)-monopolar extendable, if and only if G − {x, y, z} is (A0,B0)-monopolar extendable.

Proof. For the non-trivial direction, let x0 and z0 be the neighbors of x and z respectively, that are different from y. For the non-trivial direction, let (A, B) be an (A0,B0)-monopolar extension of G − {x, y, z}. If {x0, z0} ⊆ A, then (A ∪ {y} ,B ∪ {x, z}) clearly is an (A0,B0)-monopolar extension of G. If {x0, z0} ⊆ B, then (A ∪ {x, z} ,B ∪ {y}) clearly is an (A0,B0)-monopolar 4.1. MONOPOLAR EXTENSION VIA 2-SATISFIABILITY 87 extension of G. Hence, assume without loss of generality that x0 ∈ A and z0 ∈ B. Clearly, (A ∪ {z} ,B ∪ {x, y}) is an (A0,B0)-monopolar extension of G.

Observation 57. A graph G is (A0,B0)-monopolar extendable, if and only if A0 is an independent set and G − A0 is (∅,B0 ∪ N(A0))-monopolar extendable.

Proof. Let (A, B) be a monopolar extension of (A0,B0) and G. Clearly, A is an independent set. Since A0 ⊆ A and A is independent, all vertices of N(A0) are in B. Since G − A0 is an induced subgraph of G that contains no vertex of A0, (A \ A0,B) is a monopolar extension of (∅,B0 ∪ N(A0)) and G − A0. Conversely, let A0 be an independent set and let (A, B) be a monopolar extension of (∅,B0 ∪N(A0)) and G−A0. Since A0 is independent and N(A0) ⊆ 0 B, the set A ∪ A is independent in G. Every induced P3 of G that is not in G − A0 contains at least one vertex of A0, hence, (A ∪ A0,B) is a monopolar extension of (A0,B0) and G.

A graph G = (V,E) with precoloring (A0,B0) is called simplified, if A0 = ∅, 0 there is no vertex y ∈ V \ B with degG(y) ≤ 1, and there is no 3-path x y z in G with {x, y, z} ∩ B0 = ∅.

4.1 A 2-satisfiability Approach for Monopo- lar Extension

This section introduces a graph class that admits a solution of monopolar extension by a reduction to a 2-satisfiability instance. 2-satisfiability is the restriction of satisfiability to 2-cnf input formulas, that is, formulas in conjunctive normal form with at most 2 literals per clause. While sat- isfiability and many of its restrictions are NP-complete, for example the problem mentioned in Section 5.1.1, 2-satisfiability is solvable in linear time [2, 34, 40]. The idea behind our reduction is as follows: A partition V = A ∪ B is a monopolar partition of a graph G = (V,E), if and only if A is an independent set of G and contains at least one vertex of every induced P3 of G. Hence, monopolarity can easily be reduced to satisfiability, in particular to 3-satisfiability, by constructing a boolean formula that has the vertices of the input graph as variables, the clause (¬x ∨ ¬y) for every edge xy, and the clause (x ∨ y ∨ z) for every induced P3 x y z. It is easy to check that 88 CHAPTER 4. POLARITY AND MONOPOLARITY every satisfying truth assignment of the accordingly defined formula coincides with a monopolar partition of G. If we had the promise that a vertex x of an induced P3 P was colored blue in every monopolar partition, that is, at least one of the other two vertices of P is colored amber, then the literal x of the clause that corresponds to P can be omitted. Hence, if we were given such a promise for at least one vertex of every induced P3 of G, then monopolarity would be reducible to 2-satisfiability for this graph. Moreover, it is easy to implement a precoloring (A0,B0) into this formula by adding the clause (x) for every amber precolored vertex x ∈ A0 and the clause (¬y) for every blue precolored vertex y ∈ B0. This motivates the following definitions: Definition 10. A pair x, y of vertices of a graph G is called required, if for every monopolar partition (A, B) of G we have {x, y} ∩ A 6= ∅.

Definition 11. An induced P3 x y z of a graph G is called 2SAT-capable, if at least one pair of its vertices is required. A graph G is called 2SAT-capable, if every induced P3 of G is 2SAT-capable. Definition 12. Let G = (V,E) be graph with precoloring (A0,B0) and let P be the set that contains all required pairs of G. We define the boolean formula F (G, A0,B0) in conjunctive normal form as follows:

• For every edge xy ∈ E, F (G, A0,B0) contains the clause (¬x ∨ ¬y).

• For every required pair {x, y} ∈ P, F (G, A0,B0) contains the clause (x ∨ y).

• For every x ∈ A0, F (G, A0,B0) contains the clause (x).

• For every x ∈ B0, F (G, A0,B0) contains the clause (¬x).

Lemma 58. A 2SAT-capable graph G with precoloring (A0,B0) admits a monopolar partition that extends (A0,B0), if and only if F (G, A0,B0) is satis- fiable.

Proof. For the first direction, let (A, B) be an (A0,B0)-monopolar extension of G = (V,E). We define the truth assignment b : V → {0, 1} of F (G, B0) as follows: For every v ∈ A, let b(v) = 1 and, for every v ∈ B, let b(v) = 0. It is well defined because A ∪ B is a partition of V . Since A is an independent set in G, for every edge xy ∈ E, the clause (¬x ∨ ¬y) is satisfied by b. By definition, for every required pair x, y, we have {x, y} ∩ A 6= ∅, hence, the clause (x ∨ y) is satisfied by b. Since A0 ⊆ A and B0 ⊆ B, the clause (x) is 4.1. MONOPOLAR EXTENSION VIA 2-SATISFIABILITY 89 satisfied for every x ∈ A0 and the clause (¬y) is satisfied for every y ∈ B0. Hence, b is a satisfying truth assignment of F (G, A0,B0). For the other direction, let b : V → {0, 1} be a satisfying truth assignment of F (G, A0,B0). We define the partition V = A ∪ B as follows: A contains every vertex v ∈ V with b(v) = 1 and B contains every vertex v ∈ V with b(v) = 0. For every edge xy ∈ E, the clause (¬x ∨ ¬y) guarantees that at most one endpoint of xy is in A, hence, A is an independent set. Since G is

2SAT-capable, every induced P3 of G is 2SAT-capable, that is, every induced P3 contains a required pair. For every required pair x, y, the clause (x ∨ y) guarantees that x, y, or both are in A. Hence, G[B] is P3-free. For every x ∈ A0 and every y ∈ B0, the clauses (x) and (¬y) guarantee that x ∈ A and y ∈ B, hence, (A, B) is an (A0,B0)-monopolar extension of G.

This implies:

Corollary 59. Let C be a subclass of the 2SAT-capable graphs. If the required pairs of a graph G = (V,E) ∈ C with precoloring (A0,B0) can be computed in time T (|G|, |A0|, |B0|), then monopolar extension can be solved in time O(|V | + |E| + T (|G|, |A0|, |B0|)) on G.

Proof. First, we compute the set P of required pairs of G and B0. This takes time T (|G|, |A0|, |B0|), hence, we have |P| ≤ T (|G|, |A0|, |B0|). Clearly, constructing F (G, A0,B0) takes at most time O(|E|+|P|+|A0|+|B0|) because we have a clause for every edge, every required pair, and every precolored vertex. Since G is 2SAT-capable, we can solve monopolar extension on G and (A0,B0) by solving 2-satisfiability on F (G, A0,B0) by Lemma 58. Since F (G, A0,B0) has at most |E| + |P| + |A0| + |B0| clauses and 2-satisfiability is linear time solvable [2, 34, 40], this can be done in time O(|E| + |P| + |A0| + |B0|) ⊆ O(|V | + |E| + T (G, A0,B0)).

We establish a graph class in this section that is a subclass of the 2SAT- capable graphs. We use the following observations to describe configurations that imply required pairs:

Observation 60. If a graph G contains an induced paw(v, w, x, y) or an induced diamond(v, w, x, y), then the pair x, y is required.

Proof. Assume that the pair x, y is not required, that is, there is a monopo- lar partition (A, B) of G with {x, y} ∩ A = ∅. If G contains an induced paw(v, w, x, y), then v ∈ A because otherwise G[B] contains the induced P3 v x y. Since A is independent, we have w 6∈ A and w x y is induced in 90 CHAPTER 4. POLARITY AND MONOPOLARITY

G[B]—this is a contradiction. If G contains an induced diamond(v, w, x, y), then v ∈ A because otherwise G[B] contains the induced P3 x v y. Since A is independent, we have w 6∈ A and x w y is induced in G[B]—this is a contradiction.

Observation 61. If a graph G contains an induced cycle v w x y v, then the pair v, w, the pair w, x, the pair x, y, and the pair v, y is required.

Proof. Assume that the pair x, y is not required, that is, there is a monopo- lar partition (A, B) of G with {x, y} ∩ A = ∅. If there is an induced C4 v w x y v in G, then v ∈ A because otherwise x y v is an induced P3 in G[B]. Since A is independent, we have w 6∈ A and w x y is induced in G[B]—this is a contradiction. The observation follows by symmetry.

Observation 62. If a vertex x of a graph G = (V,E) is blue precolored, then every pair {y, z} ⊆ N(x) with y z and every pair y, z with y ∈ N(x), z ∈ N 2(x), and y z is required.

Proof. Let G = (V,E) be a graph with precoloring (A0,B0) and let x ∈ B0. Assume that the pair y, z is not required, that is, there is an (A0B0)-monopolar extension (A, B) of G with {y, z} ∩ A = ∅. If {y, z} ⊆ N 1(x) and y z, then 1 y x z is an induced P3 in G[B]—this is a contradiction. If y ∈ N (x), 2 z ∈ N (x), and y z, then x y z is an induced P3 in G[B]—this is a contradiction. Using these observations, we can define a class of graphs that are 2SAT- capable:

Definition 13. For a graph G = (V,E) with precoloring (A0,B0), an induced

P3 P is called defused, if one of the following holds: • A vertex of P is part of a triangle of G.

• An edge of P is part of an induced C4 of G.

• A vertex of P is blue precolored of G.

• A vertex of P is adjacent to a blue precolored vertex of G.

0 0 We say that (G, A ,B ) is P3-defused, if every induced P3 of G is defused. A graph G without precoloring is called P3-defused, if (G, ∅, ∅) is P3-defused.

Lemma 63. Every defused P3 contains at least one required pair, hence, every P3-defused (precolored) graph is 2SAT-capable. 4.1. MONOPOLAR EXTENSION VIA 2-SATISFIABILITY 91

Proof. Let G = (V,E) be a graph and let P = x y z be an induced defused

P3 of G, that is, P contains a vertex of a triangle or an edge of an induced C4 or a vertex of N[V (P )] is blue precolored. Assume that a vertex of P is part of a triangle T = u v w u. Clearly, P and K cannot share more than two vertices. First, assume that P shares two vertices, that is, an edge with T , say u = x and v = y. If w z, then paw(x, w, y, z) is induced in G and, by Observation 60, y, z is a required pair. Otherwise, if w z, then diamond(w, y, x, z) is induced in G and, by Observation 60, x, z is a required pair. Now assume that P shares a single vertex with T , say x = u. If v y or w y, then T 0 = u v y u or T 00 = u w y u is a triangle that shares an edge with P , and, as already shown, P contains a required pair. If v y and w y, then paw(v, w, x, y) is induced in G and, by Observation 60, u, y is a required pair.

Assume that an edge of P , say xy, is part of an induced C4. By Observa- tion 61, x, y is a required pair. Assume that a vertex of P is blue precolored. If x is blue precolored, then y ∈ N 1(x) and z ∈ N 2(x) with y z and, by Observation 62, y, z is a required pair. Analogously, if z is blue precolored, then x, y is a required pair. If y is blue precolored, then {x, z} ⊆ N 1(x) with x z and, by Observation 62, x, z is a required pair. Assume that a vertex of P is adjacent to a blue precolored vertex v. If v ∈ V (P ), we are in the previous case, hence, let v 6∈ V (P ). First, assume that v is adjacent to exactly one vertex of P . If v x, then x ∈ N 1(v) and y ∈ N 2(v) with x y and, by Observation 62, x, y is a required pair. Analogously, if v z, then y, z is a required pair and if v y, then x, y and y, z are required pairs. Now, assume that v is adjacent to exactly two vertices of P . If v x and v z, then v x y z v is induced, hence, the edges of P are part of an induced C4 and, as already shown, P contains a required pair. If v x and v y or v y and v z, then P shares an edge with a triangle and, as already shown, P contains a required pair. Finally, assume that v is adjacent to three vertices of P . Again, P shares an edge with a triangle and, hence, contains a required pair. This shows that P contains at least one required pair, that is, P is 2SAT- capable. Clearly, if every induced P3 is defused, then G is 2SAT-capable.

Finally, we show that the required pairs of P3-defused graphs can be found efficiently. Observation 64. The required pairs described by Observations 60 to 62 of a 0 0 P3-defused graph G = (V,E) with precoloring (A ,B ) can be found in time 92 CHAPTER 4. POLARITY AND MONOPOLARITY

O(|V |4).

Proof. Clearly, all induced diamonds, all induced paws, and all induced C4 of G can be found by considering every subset of V with four elements, hence, the required pairs of Observations 60 and 61 can be found in time O(|V |4). The required pairs of Observation 62 can be found in time O(|B0| · |V |2) ⊆ O(|V |3) by starting a breadth-first-search on every vertex x of B0 to determine N 1(x) and N 2(x) and checking for every pair of vertices if it fulfills the necessary conditions.

The class of P3-defused graphs might look quite unnatural, but it includes some well-known classes, for example all biconnected hole-free graphs and all maximal planar graphs:

Lemma 65. Biconnected hole-free graphs and maximal planar graphs are

P3-defused. Proof. Let G be a biconnected hole-free graph and let P = x y z be an induced P3 in G. Let x v1 v2 ... vp z be a shortest path between x and z in G − y. Since G is biconnected, such a path exists and, since x z, we have p ≥ 1. If p = 1, then {v1, x, y, z} induces either a diamond or a C4 in G, hence, P is defused. Thus, assume that p ≥ 2. If y v1, then v1 x y v1 is a triangle and, hence, P is defused. If y v1 but y v2, then v1 v2 y x v1 is an induced C4 in G and, hence, P is defused. If y y1 and y y2, then G clearly contains an induced hole—this is a contradiction. This shows that G is P3-defused. It is well known that in a maximal planar graph with at least 4 vertices every edge belongs to at least two triangles. Hence, every induced P3 of a maximal planar graph is defused. Corollary 59, Lemma 65, and Observation 64 together imply:

Theorem 13. Monopolar extension and, hence, monopolarity can be solved on P3-defused graphs and, hence, on biconnected hole-free graphs and maximal planar graphs in time O(n4), where n is the number of vertices of the input graph.

Notice that every satisfying truth assignment of F (G, A0,B0) coincides with an (A0,B0)-monopolar extension of G. Hence, this reduction not only solves the decision version of the problem but also the search version. Section 4.2 uses the technique presented here to show tractability of monopolar extension on a superclass of chair-free graphs and Section 4.3 4.2. A SUPERCLASS OF CHAIR-FREE GRAPHS 93

a x2

b x1 c c0 y1 c z1 0 d d y2 z2

0 0 Figure 4.2: The graphs A5(a, b, c, c , d, d ) and S2,2,2(c, x1, x2, y1, y2, z1, z2). extends this result even further to a graph class that contains all hole-free graphs. Although the algorithms in the following two sections are potentially able to solve the search problem, we have to consider simplified graphs only and, hence, the one-to-one relationship between the desired monopolar extensions and the satisfying truth assignments of a 2-cnf is lost.

4.2 Monopolar Extension on a Superclass of Chair-free Graphs

0 0 The 5-apple, denoted by A5(a, b, c, c , d, d ), is the graph consisting of an in- duced cycle b c d d0 c0 b and an additional vertex a that is adjacent only to b. The (i, j, k)-star, denoted by Si,j,k(c, x1, . . . , xi, y1, . . . , yj, z1, . . . , zk), 0 is the union of three induced paths, c x1 ... xi, c y1 ... yj, and 00 0 00 c z1 ... zk, on c = c = c . The graph (1, 1, 1)-star is also called claw and the graph (2, 1, 1)-star is also called chair. Figure 4.2 shows the 5-apple and the (2, 2, 2)-star.

0 0 Definition 14. An induced 5-apple A5(a, b, c, c , d, d ) is called defused, if

a b c, a b c0, and c b c0 are defused. An induced (2, 2, 2)-star S2,2,2(c, x1, x2, y1, y2, z1, z2) is called defused, if

x1 c y1, x1 c z1, and y1 c z1 are defused. A graph is called A5-S2,2,2-defused, if every induced 5-apple and every induced (2, 2, 2)-star is defused.

In this section, we show that monopolar extension is efficiently solvable on the class of A5-S2,2,2-defused graphs. Notice that every {A5,S2,2,2}-free 94 CHAPTER 4. POLARITY AND MONOPOLARITY

y00 X Z 0 X y Z 0 x 0 00 x y z z 0 0 x x x y z z

Figure 4.3: A proof sketch for Observation 67 and Lemma 68.

graph is A5-S2,2,2-defused. Furthermore, since the 5-apple and the (2, 2, 2)- star contain the P5, the chair and the claw as induced subgraphs, this is a superclass of P5-free graphs, chair-free graphs, and claw-free graphs. The algorithm in this section stepwise reduces monopolar extension on A5-S2,2,2-defused graphs to monopolar extension on P3-defused graphs. We restrict the input to simplified graphs, so we apply Observations 55 to 57 when necessary.

For an induced P3 of the form P = x y z, we define

X := N(x) \{y} and Z := N(z) \{y} .

As a prerequisite, we need the following two observations:

Observation 66. Let G be a simplified A5-S2,2,2-defused graph with blue 0 precolored vertices B and let P = x y z be an induced P3 of G. If P is not defused, then X and Z are non-empty disjoint independent sets.

Proof. As G is simplified, every vertex of V \ B0 has degree at least 2. Since P is not defused, no vertex of N[V (P )] is precolored. Hence, X and Z are non-empty. If X or Z is not independent, then x or z respectively would be part of a triangle, that is, P would be defused. If X and Z share a vertex, say w, then w x y z w would be induced, that is, P would be defused. Hence, X and Z are disjoint and G[X] and G[Z] are edgeless.

Observation 67. Let G be a simplified A5-S2,2,2-defused graph with blue 0 precolored vertices B and let P = x y z be an induced P3 of G. If P is not defused, then deg(y) = 2.

Proof. Figure 4.3 shows a sketch for this proof. Conversely, assume that P is not defused and deg(y) ≥ 3. Let y0 6∈ {x, z} be a neighbor of y. Since y0 ∈ N[V (P )] and P is not defused, y0 is not precolored and, since G is simplified, y0 has degree at least 2. Consequently, let y00 be a neighbor of y0 4.2. A SUPERCLASS OF CHAIR-FREE GRAPHS 95 that is different from y. Since P is not defused, it shares no vertex with a 0 triangle and no edge with an induced C4, so y is not adjacent to any vertex in {x, z} ∪ X ∪ Z and we have x y00, y y00, and z y00. In particular, this means y0 6∈ X ∪Z and y00 6∈ X ∪Z. If there are vertices x0 ∈ X and z0 ∈ Z with x0 z0, 0 0 0 then A5(y , y, x, z, x , z ) is induced in G. Since G is A5-defused, this implies that x y z is defused—this is a contradiction. Hence, we have E(X,Z) = ∅. 00 0 00 0 00 If y has a neighbor w ∈ X∪Z, then A5(x, y, y , z, y , w) or A5(z, y, y , x, y , w) is induced in G. Again, since G is A5-defused, this implies that x y z is defused—this is a contradiction. Hence, we have E(y00,X ∪ Z) = ∅. Let x0 ∈ X and z0 ∈ Z. By Observation 66 and E(X,Z) = E(y00,X ∪ Z) = ∅, x0 0 0 0 00 0 and z exist and S2,2,2(y, x, x , y , y , z, z ) is induced in G. Finally, since G is S2,2,2-defused, this implies that x y z is defused—this is a contradiction. One step of the reduction is given by the following lemma:

Lemma 68. Let G be a simplified A5-S2,2,2-defused graph with blue precolored 0 vertices B and let P = x y z be an induced P3 of G. If P is not defused, then G is (∅,B0)-monopolar extendable, if and only if G − y is (∅,B0)-monopolar extendable. Proof. Figure 4.3 shows a sketch for this proof. For the non-trivial direction, let (A, B) be an (∅,B0)-monopolar extension of G − y. Assume that P is not defused. By Observation 67, we have deg(y) = 2 and, since G contains no 3-path of not precolored vertices, we have |X| > 1 or |Z| > 1. Without loss of generality, assume that |X| > 1 and let x0 ∈ X be chosen arbitrarily. By 0 0 definition of X, we have x y. This means that x x y is an induced P3 in G. Since |X| > 1, there is at least one vertex x00 ∈ X that differs from x0, that is, we have deg(x) ≥ 3. Thus, Observation 67 implies that x0 x y is defused, that is, the pair x0, x or the pair x0, y or the pair x, y is required. If x, y is a required pair, then P is defused—this is a contradiction. If x0, y is a required pair, then, by Observations 60 and 62, we have {x0, y} ⊆ N(w) for some w ∈ B0 or G contains an induced diamond(x, v, x0, y) for some v ∈ V . If {x0, y} ⊆ N(w) for some w ∈ B0, then P has the neighbor w in B0 and, hence, P is defused—this is a contradiction. If G contains the induced diamond(x, v, x0, y) for some v ∈ V , then at least two vertices of P are part of a triangle and, hence P is defused—this is a contradiction. Thus, x0, x is a required pair. Since x0 was chosen arbitrarily from X, this implies for every x0 ∈ X that x, x0 is a required pair, that is, x0 ∈ A ⇔ x ∈ B. Analogously, if additionally |Z| > 1, then for every z0 ∈ Z we have z0 ∈ A ⇔ z ∈ B. If {x, z} ⊆ A, then (A, B∪{y}) clearly is an (∅,B0)-monopolar extension of G. If {x, z} ⊆ B, then (A ∪ {y} ,B) clearly is an (∅,B0)-monopolar extension 96 CHAPTER 4. POLARITY AND MONOPOLARITY

Algorithm: A5-S2,2,2-defused-Reduction 0 0 Input: An A5-S2,2,2-defused graph G = (V,E) with precoloring (A ,B ). 0 0 0 Output: A P3-defused graph G such that G is (A ,B )-monopolar extendable, if and only if G0 is (∅,B0 ∪ N(A0))-monopolar extendable.

1. Check if A0 is independent in G. If not, then Return some trivial no- instance. 2. Determine N(A0) and set G := G − A0 and B0 := B0 ∪ N(A0). 3. Determine the set P of required pairs defined by Observations 60 to 62. 4. Do 1. If G contains a vertex y 6∈ B0 with deg(v) ≤ 1, then set G := G − y, 2. else, if G contains a 3-path x y z with {x, y, z} ∩ B0 = ∅, then set G := G − {x, y, z},

3. else, if G contains an induced P3 of G, say x y z, with deg(y) = 2 that contains no pair of P, then set G := G − y. 4. Remove every pair from P that contains a vertex that is not in G. until G was not changed in the last iteration. 5. Return G.

Table 4.1: Reduction from monopolar extension on A5-S2,2,2-defused graphs to monopolar extension on P3-defused graphs. of G. If x ∈ B and z ∈ A, then (A, B ∪{y}) is an (∅,B0)-monopolar extension of G because, as shown above, x ∈ B implies X ⊆ A. Analogously, if x ∈ A and z ∈ B and |Z| > 1, then (A, B ∪ {y}) is an (∅,B0)-monopolar extension of G. Hence, assume that x ∈ A, z ∈ B, and |Z| = 1 with Z = {z0}. If z0 ∈ A, then (A, B ∪ {y}) clearly is an (∅,B0)-monopolar extension of G. If z0 ∈ B, then (A ∪ {z} ,B \{z} ∪ {y}) is an (∅,B0)-monopolar extension of G because z0 ∈ B is the only neighbor of z in G − y and, therefore, recoloring z from blue to amber keeps A independent.

With the foregoing lemma, we can formulate the recursive reduction algorithm given in Table 4.1. 4.2. A SUPERCLASS OF CHAIR-FREE GRAPHS 97

Lemma 69. The algorithm A5-S2,2,2-defused-Reduction is correct and runs in time O(n4) on input graphs with n vertices.

Proof. Steps 1 and 2 are justified by Observation 57. Since testing A0 for being independent in G takes at most time O(|E|) ⊆ O(|V |4), N(A0) can be determined in linear time by breadth-first-search, and constructing G − A0 takes at most time O(|G|) ≤ O(|V |4), both steps can be done in time O(|V |4). In Step 3, the set of required pairs can be found in time O(|V |4) by Observation 64. The correctness of the Steps 4.1 and 4.2 follows from Observations 55 and 56. Step 4.3 is executed only if G contains no not precolored vertex of degree 1 and no not precolored 3-path, that is, if G is simplified. Hence, its correctness is given by Lemma 68. After the execution of one of the Steps 4.1 to 4.3, the set P shall contain all required pairs defined by Observations 60 to 62 of the reduced graph. The deletion of one or more vertices of a graph cannot introduce new required pairs because no new induced paws, diamonds, or C4 can arise and, for every blue precolored vertex x, the sets N 1(x) and N 2(x) cannot increase. Hence, we do not have to add new elements to P. We show that every required pair of G that does not contain one of the removed vertices is still a required pair in the reduced graph: Assume that a required pair x, y results from an induced paw(v, w, x, y) or an induced diamond(v, w, x, y). The vertices v and w have degree at least 2.

But we remove a vertex of degree 2 only if it is the midpoint of a P3. This is not the case for v and w. Hence, if the reduced graph contains x and y, then it also contains paw(v, w, x, y) or diamond(v, w, x, y) as induced subgraph. Now assume that a required pair x, y results from an induced cycle v w x y v. Again, the vertices v and w have degree at least 2. If v w x or w x y or x y v or y v w is a 3-path in G without precolored vertices, then we remove at least one of x and y. Since vw is an edge of an induced C4, neither v nor w can be of degree 2 and be the midpoint of a P3 that contains no pair of P, that is, neither v nor w are removed in that case. Finally, assume that a required pair x, y results from a blue precolored vertex that is adjacent to one or two vertices of the pair. Since we do not remove precolored vertices, the required pair also exists in the reduced graph, unless a vertex of the required pair is removed. This shows that the reduced graph contains exactly the required pairs of G except pairs that contain one of the removed vertices. Hence, Step 4.4 is correct. The loop in Step 4 is executed at most |V | times because at least one 98 CHAPTER 4. POLARITY AND MONOPOLARITY vertex of G is deleted in every iteration. We show that the execution of the body of the loop can be done in time O(|V |3): Whenever the body is executed, we first count the degree of every vertex of G. This clearly can be done in time O(|V | + |E|) ⊆ O(|V |2). To check the condition of Step 4.1, we simply consider every vertex of degree 1 and check if it is not in B0, which can be done in time O(|V |). To check the condition of Step 4.2, we consider every vertex of degree 2 that is not in B0 and check if its two neighbors are of degree 2 and not in B0. Clearly, this can also be done in time O(|V |). To check the condition of Step 4.3, we consider every vertex y of degree 2, check if its two neighbors x and z are not adjacent and if P contains no pair of {x, y, z}. This can be done in time O(|V |+|P|) ⊆ O(|V |2). Constructing G−y, respectively G−{x, y, z}, can obviously be done in time O(|G|) ⊆ O(|V |2 log |V |) ⊆ O(|V |3). Step 4.4 clearly can be done in time O(|P|) ⊆ O(|V |2).

When the loop finishes, G is simplified and every P3 of G, whose midpoint is of degree 2, is defused. Hence, Observation 67 implies that every induced

P3 of G is defused, that is, G is P3-defused and Step 5 is correct. Theorem 13 and Lemma 69 together imply:

Theorem 14. Monopolar extension and, hence, monopolarity is 4 solvable in time O(n ) on A5-S2,2,2-defused graphs and, hence, on {A5,S2,2,2}- free graphs, P5-free graphs, chair-free graphs, and claw-free graphs, where n is the number of vertices of the input graph.

4.3 Monopolar Extension on a Superclass of Hole-free Graphs

In this section, we define locally A5-S2,2,2-defused graphs, that is, graphs whose blocks are A5-S2,2,2-defused. We show that monopolar extension is polynomial-time solvable on this graph class using a technique that can be seen as a generalization of the linear time algorithm for chordal graphs given in [36]. The largest graph class for which monopolarity is known to be tractable is the class G defined in [27]. A graph is in G, if every induced P3 x y z with deg(y) ≥ 3 that is wholly contained in a cycle of G contains a vertex of a triangle or an edge of an induced C4. Churchley and Huang show that the class G contains many well-studied graphs classes like hole-free graphs and claw-free graphs and, hence, cographs, chordal graphs, permutation graphs and co-comparability graphs. The following observation shows that G is 4.3. A SUPERCLASS OF HOLE-FREE GRAPHS 99

a proper subclass of the locally A5-S2,2,2-defused graphs. Admittedly, the difference between the two classes is not substantial.

Observation 70. All graphs in G are locally A5-S2,2,2-defused and there are infinitely many A5-S2,2,2-defused graphs that are not in G.

Proof. Let G = (V,E) ∈ G and assume that G is not locally A5-S2,2,2-defused. That is, there is a block B of G that contains an induced 5-apple or (2, 2, 2)-star that is not defused. Hence, there is an induced P3 in G, say x y z, that is not defused such that G contains an induced A(x, y, z, u, v, w) or A(u, y, x, z, v, w) or S2,2,2(y, x, u, z, v, w, t) for some other vertices {u, v, w, t} ⊆ V . Since B is a block, that is, B is biconnected, x y z is contained in a cycle. Furthermore, in all configurations, deg(y) ≥ 3. Hence, by definition of G, x y z shares a vertex with a triangle or an edge with an induced C4, that is, x y z is defused—this is a contradiction.

Locally A5-S2,2,2-defused graphs can contain an induced P3 that is not defused whose midpoint is of degree at least 3 as long as one vertex of the

P3 is a cutvertex. Hence, there are infinitely many graphs that are locally A5-S2,2,2-defused but not in G. As an example, consider all apples starting from the A5, that is, the graphs consisting of an induced cycle of length at least 5 and an additional vertex that is adjacent to exactly one vertex of the cycle. The induced P3 of the cycle such whose midpoint is adjacent to the additional vertex shares no vertex with a triangle and no edge with an induced C4, hence, the graph is not in G. The blocks of every apple are an induced cycle and a single edge. Hence, the blocks are {A5,S2,2,2}-free and, therefore, every apple is locally A5-S2,2,2-defused.

The idea of this section is to solve monopolar extension on a locally A5-S2,2,2-defused graph G recursively using the block-cutvertex tree T rooted at some block node R. More precisely, we decide monopolar extension on the subgraph G[TQ] for some block Q of G in the following way: First, we solve three monopolar extension instances on G[TQ0 ] for every grandchild Q0 of Q to gather information about the behavior, in all (A0,B0)-monopolar 0 extensions of G[TQ0 ], of the cutvertex that connects Q and Q . The infor- mation we gather is formalized in three properties, namely “forced amber”, “forced blue”, and “critical”, which are defined later. After computing these properties for every child of Q, we construct a graph Qabc from Q by adding blue precolored pending vertices to the cutvertices of Q that are children of Q in T depending on the just determined properties of these cutvertices. 0 0 The graph Qabc is (A ,B )-monopolar extendable, if and only if G[TQ] is 100 CHAPTER 4. POLARITY AND MONOPOLARITY

(A0,B0)-monopolar extendable. Hence, to decide if G is (A0,B0)-monopolar 0 0 extendable, we decide if G = G[TR] is (A ,B )-monopolar extendable using recursion. Before defining forced amber, forced blue, and critical and showing how to compute them, we show that this reduction is applicable on locally A5-S2,2,2- defused graphs. Although monopolar extension is efficiently solvable on A5-S2,2,2-defused graphs and, hence, on the blocks of a locally A5-S2,2,2- defused graph, this is not obvious because we modify the blocks of G. The modification is limited to add blue precolored vertices. Hence, we show:

Lemma 71. Let G = (V,E) be a A5-S2,2,2-defused graph with precoloring (A0,B0) whose vertices of degree 1 are all in B0. The graph G0 = (V ∪{x} ,E ∪ {xy}) with precoloring (A0,B0 ∪ {x}) for a new vertex x 6∈ V and every vertex 0 y ∈ V is A5-S2,2,2-defused and all its vertices of degree 1 are in B ∪ {x}.

0 Proof. For some y ∈ V , assume that G is not A5-S2,2,2-defused. Since we only add vertices to G, one can easily check that every induced 5-apple and every induced (2, 2, 2)-star of G that is defused, is also defused in G0. Hence, there is an induced A5 or induced S2,2,2 that contains x and is not defused. Assume that G0 contains an induced 5-apple that is not defused. Since deg(x) = 1, the 5-apple is of the form A(x, y, c, d, c0, d0). By x is blue precol- ored, Definition 13 implies that x y c, x y c0, and c y c0 are defused—this is a contradiction to the assumption that the induced 5-apple is not defused. Assume that G0 contains an induced (2, 2, 2)-star that is not defused. 0 0 00 00 Since deg(x) = 1, the (2, 2, 2)-star is of the form S2,2,2(c, y, x, y , x , y , x ). If 0 0 00 degG(y) = 1, what implies y ∈ B , then, by Definition 13, y c y , y c y , and y0 c y00 are defused—this is a contradiction. Hence, assume that degG(y) ≥ 2 and let w be a neighbor of y that is different from c. Fig- 0 0 00 00 ure 4.4 shows a sketch for this case. If S2,2,2(c, y, w, y , x , y , x ) is induced 0 00 0 00 in G, then y c y , y c y , and y c y are defused because G is A5-S2,2,2- defused—this is a contradiction. Hence, w is adjacent to c, y0, y00, x0, or x00. If w c, then y c y0, y c y00, and y0 c y00 share at least one vertex with the triangle w y c w and, hence, are defused—this is a contradiction. If w y0, then y c y0, y c y00, and y0 c y00 share at least one edge with the 0 induced C4 w y c y w and, hence, are defused—this is a contradiction. Analogously, w y00 yields a contradiction. If w x0, then y c y0, y c y00, 0 00 00 0 0 and y c y are defused because A5(y , c, y, y , w, x ) is induced in G and, hence, defused—this is a contradiction. Analogously, w x00 results in a con- 0 tradiction. Hence, G is A5-S2,2,2-defused and, clearly, every vertex of degree 1 is blue precolored. 4.3. A SUPERCLASS OF HOLE-FREE GRAPHS 101

x w y

G c y0 y00 x0 x00

Figure 4.4: A sketch for the proof of Lemma 71 for the case that G0 contains an induced (2, 2, 2)-star that is not defused and degG(y) ≥ 2.

Since the blocks of a locally A5-S2,2,2-defused graph G are A5-S2,2,2-defused and biconnected, that is, without vertices of degree 1, Lemma 71 applies on the blocks of G. Hence, adding blue precolored vertices to a block results in a graph that is A5-S2,2,2-defused and, hence, we can solve monopolar extension efficiently on it. Forced amber, forced blue and critical are defined as follows:

Definition 15. Let G be a graph with precoloring (A0,B0). A vertex x of G is called forced amber, if it is colored amber in every (A0,B0)-monopolar exten- sion of G and forced blue, if it is colored blue in every (A0,B0)-monopolar extension of G. A vertex is called critical, if it has at least one blue neighbor in every (A0,B0)-monopolar extension of G.

Notice that G is (A0,B0)-monopolar extendable, if and only if there is no vertex in G simultaneously forced amber and forced blue. Actually, if G has no (A0,B0)-monopolar extension, then every vertex is forced amber, forced blue, and critical by vacuous truth. As stated above, our algorithm is based on the algorithm for chordal graphs given in [36]. The key difference between the algorithm for chordal graphs and our algorithm is the need for the definition of critical vertices and interpreting this property during the recursion. In chordal graphs, every vertex of a non-trivial block is critical because it is part of a triangle and in triangles, at least two vertices are colored blue in every monopolar partition. This is not the case in locally A5-S2,2,2-defused graphs. For example, in the graph C4, which clearly can be a non-trivial block of a locally A5-S2,2,2-defused graph, no vertex is critical. Furthermore, monopolar chordal blocks are split graphs, which allows an obvious monopolar extension algorithm. 102 CHAPTER 4. POLARITY AND MONOPOLARITY

Generally, we can decide for a vertex whether it is forced amber, forced blue, or critical by solving a monopolar extension instance:

Observation 72. Let G be a graph with precoloring (A0,B0).

• A vertex x is forced amber, if and only if G is not (A0,B0 ∪ {x})- monopolar extendable.

• A vertex x is forced blue, if and only if G is not (A0 ∪ {x} ,B0)- monopolar extendable.

• A vertex x is critical, if and only if G is not (A0 ∪ N(x),B0)-monopolar extendable.

Proof. If x is forced amber, that is, x ∈ A and, hence, x 6∈ B, for every (A0,B0)-monopolar extension (A, B) of G, then G clearly is not (A0,B0 ∪ {x})- monopolar extendable. If G is not (A0,B0 ∪ {x})-monopolar extendable, that is, there is no (A0,B0)-monopolar extension (A, B) of G with x ∈ B, hence, in every (A0,B0)-monopolar partition (A, B) of G we have x ∈ A, then x is forced amber. An analogous argumentation works for x being forced blue or critical, respectively G being not (A0 ∪ {x} ,B0)-monopolar extendable or not being (A0 ∪ N(x),B0)-monopolar extendable.

Observation 72 enables us to check whether a cutvertex c of a block Q of G is forced amber, forced blue, or critical in G[TQ] by solving three monopolar extension instances on G[TQ]. But we are interested if c is forced amber, forced blue, or critical in G[Tc]. This can be decided very easily with the following lemma:

Lemma 73. Let G be a graph with precoloring (A0,B0) and let T be the block-cutvertex-tree of G rooted at some block node R.

(1) A cutvertex c is forced amber in G[Tc], if and only if c is forced amber in G[TQ] for a child Q of c or if c is critical in both, G[TQ] and G[TQ0 ], for two different children Q and Q0 of c.

(2) A cutvertex c is forced blue in G[Tc], if and only if c is forced blue in G[TQ] for a child Q of c.

(3) A cutvertex c is critical in G[Tc], if and only if c is critical in G[TQ] for a child Q of c. 4.3. A SUPERCLASS OF HOLE-FREE GRAPHS 103

Proof. We first show the “if”-direction: Let c be a cutvertex of G an let Q 0 0 be a child of c in T . For every (A ,B )-monopolar extension (A, B) of G[Tc], 0 0 notice that (A ∩ V (G[TQ]),B ∩ V (G[TQ])) is an (A ,B )-monopolar extension of G[TQ] because G[TQ] is an induced subgraph of G[Tc]. (1): If c is forced amber in G[TQ], then c clearly is forced amber in G[Tc]. Assume that c has another child, say Q0, such that c is critical in both,

G[TQ] and G[TQ0 ], that is, c has at least one blue neighbor in G[TQ] in every 0 0 (A ,B )-monopolar extension of G[TQ] and c has at least one blue neighbor in 0 0 G[TQ0 ] in every (A ,B )-monopolar extension of G[TQ0 ]. Hence, c has at least 0 0 two blue neighbors in every (A ,B )-monopolar extension (A, B) of G[Tc], 0 say w ∈ V (G[TQ]) ∩ B and w ∈ V (G[TQ0 ]) ∩ B. This implies that c is amber colored in every (A0,B0)-monopolar extension because otherwise w c w0 would be a blue colored induced P3 in G[Tc]. (2),(3): Clearly, if c is forced blue or critical in G[TQ], then c is also forced blue or critical in G[Tc] respectively. Next, we show the “only if”-direction:

(1): Let c be forced amber in G[Tc]. Assume that c is not forced amber in G[TQ] for every child Q of c. If c is critical in at most one of its children, then combining (A0,B0)-monopolar extensions of the children of c that are chosen such that c has no blue colored neighbor, if possible, clearly yields an (A0,B0)- monopolar extension of G[Tc] that colors c blue—this is a contradiction. Hence, if x if forced amber in G[Tc], then it is is forced amber in G[TQ] for a child Q of c or c is critical in G[TQ] and G[TQ0 ] for two different children Q and Q0 of c.

(2): Let c be forced blue in G[Tc]. Assume that c is not forced blue 0 0 in G[TQ] for every child Q of c. Combining (A ,B )-monopolar extensions of the children of c that are chosen such that c is colored amber clearly 0 0 yields an (A ,B )-monopolar extension of G[Tc] that colors c amber—this is a contradiction.

(3): Let c be critical in G[Tc]. Assume that c is not critical in G[TQ] for every child Q of c. Combining (A0,B0)-monopolar extensions of the children of c that are chosen such that c has no blue colored neighbor clearly yields 0 0 an (A ,B )-monopolar extension of G[Tc] in which c has only amber colored neighbors—this is a contradiction.

Finally, we need a way to solve monopolar extension on G[TQ] for a block Q of G while taking the information about forced amber, forced blue, and critical children into account: 104 CHAPTER 4. POLARITY AND MONOPOLARITY

Lemma 74. Let G be a locally A5-S2,2,2-defused graph with precoloring (A0,B0), let T be the block-cutvertex-tree of G rooted at some block node

R, and let Q be a block of G. Given the sets Wa, Wb, and Wc containing the forced amber, forced blue, and critical children of Q in the corresponding sub- tree of T , monopolar extension on G[TQ] can be reduced to monopolar extension on a A5-S2,2,2-defused graph Qabc of size |V (Qabc)| ≤ 2|V (Q)|.

Proof. If Wa ∩ Wb =6 ∅, there is a child c of Q that is simultaneously forced 0 0 amber and forced blue in G[Tc] and hence, G[Tc] is not (A ,B )-monopolar extendable. Since G[Tc] is an induced subgraph of G[TQ], this implies that 0 0 G[TQ] is not (A ,B )-monopolar extendable, too. In that case, let Qabc simply be any graph without an (A0,B0)-monopolar extension.

Hence, we can assume that Wa and Wb are disjoint, that is, for every child 0 0 c of Q, G[Tc] is (A ,B )-monopolar extendable. 0 0 Starting from Q, construct Qabc by adding a vertex c and the edge cc for 0 each c ∈ Wc. Let Wc be the set containing the added vertices,

0 0 Aabc := (A ∩ Q) ∪ Wa, and 0 0 0 Babc := (B ∩ Q) ∪ Wb ∪ Wc. Since we only added blue precolored pending vertices to Q, by Lemma 71,

Qabc is A5-S2,2,2-defused. 0 0 We show: G[TQ] is (A ,B )-monopolar extendable, if and only if Qabc is 0 0 (Aabc,Babc)-monopolar extendable. 0 0 Let (A, B) be an (A ,B )-monopolar extension of G[TQ]. Let Aabc := 0 A ∩ V (Q) and Babc := (B ∩ V (Q)) ∪ Wc. Since Aabc clearly is independent in Q and Q is an induced subgraph of Gabc, Aabc is also independent in Qabc. If 0 0 0 Qabc[Babc] contains an induced P3, it has the form c c z for some c ∈ Wc, c ∈ Wc, and z ∈ V (Q). But since c is critical in G[Tc], there is a neighbor u ∈ V (G[Tc]) of c with u ∈ B and, hence, u c z is induced in G[B]—this is a contradiction.

Since, for every child c of Q, G[Tc] is an induced subgraph of G[TQ], by definition of Wa and Wb, it must be Wa ⊆ A and Wb ⊆ B. Hence, (Aabc,Babc) 0 0 is an (Aabc,Babc)-monopolar extension of Qabc. 0 0 Conversely, let (Aabc,Babc) be an (Aabc,Babc)-monopolar extension of Qabc. 0 0 For every child c of Q, let (Ac,Bc) be an (A ,B )-monopolar extension of G[Tc]. Such a monopolar extension exists because c 6∈ Wa ∩ Wb. If c ∈ Babc and c 6∈ Wc, that is, c is not critical in G[Tc], we can choose (Ac,Bc) such that N(c) ⊆ Ac. Let A contain the union of Aabc and Ac, for every child c 0 of Q, and let B contain the union of (Babc \ Wc) and Bc, for every child c 4.3. A SUPERCLASS OF HOLE-FREE GRAPHS 105

of Q. Obviously, A is an independent set in G[TQ] because every edge of G[TQ] is either in Q or in G[Tc] for some child c of Q. If G[TQ][B] contains an 00 00 induced P3, it has the form c c z for a child c of Q and vertices c ∈ G[Tc] and z ∈ Q. But then, by construction of (Ac,Bc), c is critical in G[Tc] and 0 0 0 Qabc[Babc] contains the induced P3 c c z with c being the vertex of Wc adjacent to c—this is a contradiction. Hence, (A, B) is an (A0,B0)-monopolar extension of G[TQ]. By construction, Qabc has |Wc| ≤ |V (Q)| more vertices than Q, hence, |V (Qabc)| ≤ 2|V (Q)|. It remains to show that Lemma 73 and Lemma 74 can be combined to a recursion scheme:

Lemma 75. Let G be a locally A5-S2,2,2-defused graph with precoloring (A0,B0), let T be the block-cutvertex-tree rooted at some block node R, let c be a cutvertex of G, and let Q be the set of all blocks of G[Tc]. Then it can be decided

• if c is forced amber in G[Tv],

• if c is forced blue in G[Tv], and

• if c is critical in G[Tv] by solving three monopolar extension instances on an A5-S2,2,2-defused graph Qabc for every Q ∈ Q, whereby |V (Qabc)| ≤ 2|V (Q)|. Proof. We will show this by induction on the structure of T .

If c has no grandchildren, we have G[TQ] = Q for every child Q of c. Since the blocks of G are A5-S2,2,2-defused, the lemma follows from Observation 72 and Lemma 73.

Otherwise, let c1, . . . , c` be the grandchildren of c. For every grandchild ci of c, let Qi contain the blocks of the graph G[Tci ]. By induction, we can decide whether a grandchild ci is forced amber, forced blue, or critical by solving three monopolar extension instances on an A5-S2,2,2-defused 0 0 0 0 graph Qabc for every Q ∈ Qi, whereby |V (Qabc)| ≤ 2|V (Q )|. Hence, we can compute the sets Wa, Wb, and Wc for all children of c by solving three 0 monopolar extension instances on an A5-S2,2,2-defused graph Qabc for 0 0 0 every Q ∈ (Q1 ∪ · · · ∪ Q`), whereby |V (Qabc)| ≤ 2|V (Q )|. Having these sets computed, we can apply Lemma 74, that is, for every child Q of c, we can solve monopolar extension on G[TQ] by solving monopolar extension on an A5-S2,2,2-defused graph Qabc with |V (Qabc)| ≤ 2|V (Q)|. By Observation 72, 106 CHAPTER 4. POLARITY AND MONOPOLARITY for a child Q of c, we can check if c is forced amber, forced blue, or critical in

G[Q] by solving three monopolar extension instances on G[Qabc]. With this information, Lemma 73 allows us to easily decide whether c is forced amber, forced blue, or critical in G[Tc]. Since Q is the union of Q1 ∪ · · · ∪ Q` and the children of c, the lemma follows.

This enables us to prove:

Theorem 15. Monopolar extension and, hence, monopolarity is 4 solvable in time O(n ) on locally A5-S2,2,2-defused graphs, where n is the number of vertices of the input graph.

0 0 Proof. Let G be a locally A5-S2,2,2-defused graph with precoloring (A ,B ). The block-cutvertex-tree T of G can be computed in linear time, for example as a byproduct of the well-known algorithm of Hopcroft and Tarjan [56] that finds all biconnected components of a graph. Let T be rooted at some block node R. Let Q be the set of all blocks of G. By definition, G is (A0,B0)- 0 0 monopolar extendable, if and only if G[TR] is (A ,B )-monopolar extendable. 0 0 By Lemma 74, the question if G[TR] is (A ,B )-monopolar extendable can be answered by determining the sets of forced amber, forced blue, and critical children of R in T and solving monopolar extension on an A5-S2,2,2- defused graph Rabc with |V (Rabc)| ≤ 2|V (R)|. By Lemma 75, finding the sets of forced amber, forced blue, and critical children of R can be done by solving three monopolar extension instances on an A5-S2,2,2-defused graph Qabc for every Q ∈ (Q\{R}), where |V (Qabc)| ≤ 2|V (Q)|. Hence, to solve monopolar extension on G, by Theorem 14, we need time P 4 P Q∈Q O(|Qabc| ). Since, by Fact 1, Q∈Q |V (Q)| ≤ 2|V (G)| which implies P Q∈Q |V (Qabc)| ≤ 4|V (G)| because |V (Qabc)| ≤ 2|V (Q)| for all Q ∈ Q, we can solve monopolar extension on G in time O(|V (G)|4).

Corollary 76. Monopolar extension and, hence, monopolarity is solvable in time O(n4) on hole-free graphs, where n is the number of vertices of the input graph.

Proof. Clearly, hole-free graphs are A5-free. The blocks of hole-free graphs are S2,2,2-free because, if a biconnected graph contains an induced S2,2,2, then, since all pairs of non-adjacent vertices are connected by at least two vertex-disjoint paths, the graph contains an induced cycle of length at least 5.

Hence, hole-free graphs are locally {A5,S2,2,2}-free and the corollary follows by Theorem 15. 4.3. A SUPERCLASS OF HOLE-FREE GRAPHS 107

8 11 1 2 v x 6 z a e w 5 3 b d 9 y c 4 7 10

7

a c e c d c e a 6 8 9

x y b b a e

2 5 10 b d d c v w ac z c

1 3 4 11

Figure 4.5: An example graph G with its 11 blocks shaded in gray (top), the block-cutvertex-tree T of G rooted at block 7 (bottom left), and the graph

7abc (bottom right), which is the monopolar extension instance of the final step of the recursion. Coloring the vertices of G that are drawn in a square amber and all other vertices blue yields a monopolar partition of G. In T , if a cutvertex is critical in a block, then the appropriate edge is doubly drawn. If a cutvertex is forced amber, forced blue, or critical in its subtree, it is labeled with a, b,orcinT respectively. In 7abc, the precolored blue vertices are drawn in a diamond. 108 CHAPTER 4. POLARITY AND MONOPOLARITY

We conclude this section with an example. Consider the graph shown in the top of Figure 4.5. First notice that the graph is locally A5-S2,2,2-defused. We try to find a monopolar partition of this graph using the presented recursion scheme on the block-cutvertex-tree T of G, which is depicted in the bottom left of Figure 4.5. The recursion descents to the leaves of T , namely the blocks 1, 3, 4, and 11, to check if the cutvertices v, w, and z are forced amber, forced blue, or critical in these blocks.

One can easily check that block 1 admits exactly two monopolar partitions, one colors v amber, the other colors v blue and its neighbors amber. Hence, it is neither forced amber, forced blue, nor critical. The blocks 3, 4, and 11 are triangles and triangles have exactly three monopolar partitions, each coloring one vertex amber and its two neighbors blue. Hence, w and z are critical in these blocks, depicted by double lines for the corresponding edges of T in the figure.

By Lemma 73, w is forced amber because it is critical in two children and w and c are critical because they are critical in at least on child. In the figure, this is denoted by the labels ac and c respectively.

Next, by Lemma 74, the graphs 2abc, 5abc, and 10abc and appropriate precolorings are constructed. Together with Observation 72, three monopo- lar extension instances are solved on these graphs to decide whether the cutvertices x and y are forced amber, forced blue, or critical in Tx and Ty respectively. It can easily be seen that x is forced blue because its neighbor w in block 5 is forced amber. Furthermore, y is forced blue because it is colored blue in every monopolar extension of 10abc. We omit the specification of 10abc, but we give an example for 7abc later.

In the same way, we figure out that a, d and e are critical in T6, T9, and T8 respectively.

The graph 7abc is depicted in the bottom right of Figure 4.5. Since a, d, and e are critical in at least one child, they are critical children of 7 and the construction of 7abc adds a pending precolored blue vertex to each of them. In the figure, these vertices are called a0, d0, and e0 and the blue precoloring is depicted by drawing the vertices in a diamond. One can easily check that coloring the vertices in squares amber and all other vertices blue is the only monopolar extension of 7abc.

Since 7 is the root of G, this shows that G is monopolar. 4.4. POLARITY ON PLANAR GRAPHS 109

4.4 Polarity on Subclasses of Planar Graphs

Polarity is known to be NP-complete on planar graphs as we show in Section 5.4. This section gives a framework for solving polarity on sub- classes of planar graphs. The framework requires to solve four problems as subroutines, which are unipolarity, monopolarity, and two special cases of monopolar extension. We show that one of the special cases of monopolar extension is efficiently solvable on every planar graph using the result of Section 4.2. Since unipolarity is efficiently solvable on every graph but polarity is NP-complete on planar graphs, at least one of the two other problems is NP-complete on every subclass on which polarity remains NP-complete. Nonetheless, we identify subclasses of planar graphs, for example hole-free planar graphs and maximal planar graphs, for which the complexity of polarity was open, whereas the framework provides an efficient algorithm. In fact, we show that polarity is polynomial-time solvable on every hereditary subclass of planar graphs that admits efficient monopolar extension. The input graphs for the framework do not need to be planar, it suffices that they are K5-free and do not contain K3,3 as a subgraph. Since planar graphs are {K5,K3,3}-minor free, every planar graph fulfills this condition. The framework is based on the following observation:

Observation 77. Let G be a K5-free graph without K3,3 as a subgraph, let (A, B) be a polar partition of G, and let A1,...,Ak be the maximal independent sets of G[A], assuming that 1 ≤ |A1| ≤ · · · ≤ |Ak|. If |A| ≥ 7, then k ≤ 3 and |A| − |Ak| ≤ 2. Proof. Notice first that k ≤ 4 because otherwise G[A] would contain the

K5. Moreover, if k = 4, then |A1| = |A2| = |A3| = 1 and |A4| ≤ 2 because otherwise K3,3 would be a subgraph of G[A]; in particular, this implies |A| ≤ 5. Hence, |A| ≥ 6 implies that k ≤ 3.

Assume that |A| ≥ 7. Since |A| = |A1| + ··· + |Ak| ≤ k · |Ak| and k ≤ 3, we have |Ak| ≥ 3. Hence, we have |A| − |Ak| ≤ 2 because otherwise, the K3,3 would be a subgraph of G[A] with three vertices of A \ Ak and three vertices of Ak.

This observation implies that every polar partition (A, B) of a K5-free graph without K3,3 as subgraph with |A| ≥ 7 has one of the following forms: Type 1 G[A] consists of an independent set of size |A| − 1 and a universal vertex x. 110 CHAPTER 4. POLARITY AND MONOPOLARITY

Algorithm: PlanarPolarity Input: A K5-free graph G without K3,3 as a subgraph.

1. Check if G is unipolar or monopolar, if so, then STOP: G is polar. 2. For every A ⊆ V with |A| ≤ 6: Check if (A, V \ A) is a polar partition of G, if so, then STOP: G is polar. 3. For every x ∈ V : Check if 1-polarity answers “yes” on G and x, if so, then STOP: G is polar. 4. For every {x, y} ⊆ V : Check if 2-polarity answers “yes” on G, x, and y, if so, then STOP: G is polar. 5. STOP: G is not polar.

Figure 4.6: A framework for solving polarity on planar graphs.

Type 2 G[A] consists of an independent set of size |A| − 2 and two universal vertices x and y.

Type 3 G[A] consists of an independent set of size |A| − 2 and two non- adjacent vertices x and y that are both (A \{x, y})-universal.

Consequently, if we look for a polar partition of a K5-free graph G without K3,3 as a subgraph, then we can test if G admits a unipolar partition, a monopolar partition, or a polar partition (A, B) with |A| ≤ 6. If no such partition exists, we can test if G admits a polar partition of Type 1, 2, or 3. This leads to the definition of the following problems:

Definition 16. 1-polarity asks for a given graph G and vertex x, if G admits a polar partition (A, B) of Type 1 such that x is the universal vertex in G[A].

Definition 17. 2-polarity asks for a given graph G and two vertices x and y, if G admits a polar partition (A, B) of Type 2 or Type 3 such that {x, y} ⊆ A are the (A \{x, y})-universal vertices in G[A]. There is no need to distinguish between Type 2 and Type 3 because, as we will see, 2-polarity is efficiently solvable on every planar graph. Hence, we can formulate the framework as shown in Figure 4.6. The correctness of the framework obviously follows from Observation 77 and the foregoing considerations. Whether the framework can be executed 4.4. POLARITY ON PLANAR GRAPHS 111 efficiently depends on the complexity of monopolarity, 1-polarity, and 2-polarity because unipolarity is known to be polynomial-time solvable, the number of subsets of V on at most six vertices is bound by O(|V |6), and testing a partition for being polar can be done in time at most O(|V |3) by checking G[A] for being (P2 + P1)-free and G[B] for being P3-free. As already mentioned, we show that 2-polarity is polynomial-time solvable on every planar graph, in particular on every graph without K3,3 as subgraph:

Lemma 78. 2-polarity can be solved in time O(|V |4) on every graph G = (V,E) without K3,3 as a subgraph.

Proof. Let G = (V,E) be a graph without K3,3 as subgraph and let {x, y} ⊆ V . Let C := N({x, y}). First, notice that G[C] has maximum degree at most 2 because otherwise, for a vertex c ∈ C of degree at least 3, x, y, c, and three neighbors of c in C form a K3,3 in G—this is a contradiction. Let G0 = (V 0,E0) := G − {x, y}. One can easily verify that G has a polar partition (A, B) of Type 2 or 3 such that {x, y} ⊆ A are the two (A \{x, y})-universal vertices in G[A], if and only if G0 has a monopolar 0 0 partition (Am,Bm) with Am ⊆ C, that is, if and only if G is (∅,V \ C)- monopolar extendable. Hence, to solve 2-polarity on G, x, and y, we can solve monopolar extension on G0 with precoloring (∅,V 0 \ C). 0 Since V \ C is blue precolored, by Observation 62, every induced P3 P of G that is not defused is completely in G[C] and has no neighbor in V 0 \ C, that is, NG0 [V (P )] ⊆ C. This implies that every vertex of a not defused 0 induced P3 of G has degree at most 2 because G[C] has maximum degree at 0 most 2. Hence, by Definition 14, G is A5-S2,2,2-defused and, by Theorem 14, monopolar extension can be solved in time O(|V 0|4) ⊆ O(|V |4) on G0.

One can easily check that 1-polarity can be expressed as a monopolar extension instance in the following way:

Observation 79. For a graph G = (V,E) and a vertex x ∈ V , G and x is a “yes”-instance of 1-polarity, if and only if G−x is (∅,V \ N(x))-monopolar extendable.

Thus, to execute PlanarPolarity efficiently on subclass C of planar graphs, we need efficient algorithms for monopolarity and monopolar extension on C. Since monopolarity is a special case of monopolar extension, the computational complexity of the framework on C is highly related to the complexity of monopolar extension on C. 112 CHAPTER 4. POLARITY AND MONOPOLARITY

We can immediately conclude that polarity is polynomial-time solvable on every hereditary subclass of planar graphs that admits an efficient monopo- lar extension algorithm. An interesting example for such a graph class are the planar hole-free graphs, in particular because polarity is NP-complete on planar graphs and on hole-free graphs, as we show in Section 5.4.

Since locally {A5,S2,2,2}-free graphs are hereditary, Theorem 15, Corol- lary 76, Lemma 78, Observation 79, and the framework imply:

Theorem 16. Polarity can be solved in polynomial time on planar locally {A5,S2,2,2}-free graphs and, hence, on hole-free planar graphs and chair-free planar graphs.

Beside hereditary graph classes, we can apply the framework as long as we can show that monopolarity and 1-polarity are tractable. As an example, we analyze maximal planar graphs.

Lemma 80. 1-polarity can be solved in polynomial time on maximal planar graphs.

Proof. Let G = (V,E) be a maximal planar graph with |V | ≥ 4 and let x ∈ V . By the maximal planarity of G, any edge of G belongs to two different triangles in G. It follows that every edge of G − x belongs to at least one triangle in G − x. This means that G − x is P3-defused. Since, by Observation 79, 1-polarity on G can be solved by monopolar extension on G − x and, by Theorem 13, monopolar extension is tractable on P3-defused graphs, the lemma follows.

Theorem 13, which states that monopolarity is polynomial-time solvable on maximal planar graphs, and Lemma 80 together imply:

Theorem 17. Polarity runs in polynomial time on maximal planar graphs. 5 NP-completeness Results

This chapter presents a reduction framework for NP-completeness proofs. The framework is used to establish NP-completeness results for all of our considered problems. Sections 5.2 and 5.3 show that both, efficient domination and efficient edge domination, are NP-complete on planar bipartite graphs with maximum degree at most 3 and girth at least g, for every fixed g. For monopolarity and polarity, Section 5.4 shows that the problems remain NP-complete on triangle-free planar graphs with maximum degree at most 3 and on {C4,...,Cg}-free planar graphs with maximum degree at most 3, for every fixed g ≥ 4. Furthermore, polarity is NP-complete on the complements of these two classes. The reduction framework and the concrete results are unified versions of the NP-completeness results given in [8, 12, 13, 63, 64].

5.1 Reduction Framework

The framework describes a reduction from a 3-satisfiability variant called monotone planar one-in-three 3-sat (mpoit 3-sat, for short) to a graph problem. Mpoit 3-sat is shortly introduced in Section 5.1.1. The reduction only works for graph problems that can be formulated as the decision whether an input graph G admits a vertex subset D with a certain property Π. In particular, efficient domination, efficient edge domination, and monopolarity can be formulated by the following vertex subset properties:

• Efficient domination: Π requires that D is efficient dominating in G.

• Efficient edge domination: Π requires that D is independent in G and G − D is 1-regular. 114 CHAPTER 5. NP-COMPLETENESS RESULTS

• Monopolarity: Π requires that (D,V (G)\D) is a monopolar partition of G.

Furthermore, the property must be additive: If F and G are graphs and

DF ⊆ V (F ) fulfills Π in F and DG ⊆ V (G) fulfills Π in G, then DF ∪ DF must fulfill Π in (G + F ). One can easily check that this is true for the three mentioned problems. For an input formula F , we construct a reduction graph G(F ) such that F has a satisfying truth assignment b, if and only if G(F ) admits a Π-fulfilling vertex subset D. In particular, G(F ) has a vertex vi for every variable Yi of F such that b(Yi) = true ⇔ vi ∈ D. The reduction framework describes how to combine three types of gadgets to construct G(F ): an initial-gadget that provides the vertex vi for every variable Yi of F , a copy-gadget that transports the truth values in G(F ), and a clause-gadget that ensures that the truth values satisfy F . In Section 5.1.2, we describe these gadgets in an abstract way. The application of the framework for a concrete problem, that is, for a concrete property Π, requires the implementation of the gadgets. We design the reduction framework so that some structural properties of the gadgets are preserved. More precisely, G(F ) is supposed to be bipartite, if the gadgets are bipartite, G(F ) is supposed to be planar, if the gadgets are planar, G(F ) is supposed to have maximum degree at most d (d ≥ 3), if the gadgets have maximum degree at most d, and G(F ) is supposed to have girth at least g, if the gadgets have girth at least g. The reduction is described in Section 5.1.3.

5.1.1 Monotone Planar One-in-Three 3-Sat

One-in-three 3-sat is a variant of the well known boolean satisfiability problem (sat for short). Given a boolean formula F in conjunctive normal form with boolean variables Y and clauses C, boolean satisfiability asks if there is a truth assignment b : Y → {true, false} such that every clause contains at least one true literal. Sat was the first problem shown to be NP-complete [28] and forms a starting point for several reductions showing NP-completeness of a wide variety of problems. In [58], along with 20 basic combinatorial problems, the variant 3-sat of sat is proved to be NP-complete. In 3-sat, the input formula in conjunctive normal form is restricted to have exactly three literals per clause. Besides sat and 3-sat, [47] contains several variants of sat that are NP-complete, including one-in-three 3-sat. 5.1. REDUCTION FRAMEWORK 115

In one-in-three 3-sat, the input formula is also restricted to contain no clause with more than three literals, but we ask for a truth assignment b such that every clause contains exactly one true literal. By [61] and [79], it is known that one-in-three 3-sat remains NP-complete, even if the input formula has a planar incidence graph and contains no negations. The incidence graph of a formula F with variables Y and clauses C is

I(G) := (Y ∪ C, {vc | v ∈ Y, c ∈ C, v ∈ c}) , that is, the graph that has the variables and clauses of F as vertices and an edge between a variable vertex and a clause vertex, if and only if the corresponding variable appears in the corresponding clause in F . We say that a formula F is planar, if I(F ) is planar. The variant of one-in-three 3-sat restricted to planar formulas without negation is called monotone planar one-in-three 3-sat (mpoit 3-sat, for short). Mpoit 3-sat is known as a standard tool for showing NP-completeness of geometric problems, as stated in [78].

5.1.2 The Gadgets We define gadget templates for the initial-gadget, the copy-gadget, and the clause-gadget by defining properties that the concrete gadgets must fulfill. Whenever it is possible to implement concrete gadgets for a specific graph problem, the reduction in the next section shows NP-completeness for this problem. Notice that our clause-gadget is called one-in-three-gadget because we reduce from mpoit 3-sat. Definition 18 (initial-gadget). The initial-gadget I(x) is a graph with a particular vertex x that admits at least two Π-fulfilling vertex subsets, D and D0, such that x ∈ D and x 6∈ D0. Attaching the copy-gadget to a vertex x of a graph G transports the value of x with respect to a Π-fulfilling set D of G to a new vertex y, that is, x ∈ D ⇔ y ∈ D. Definition 19 (copy-gadget). Let G be any graph with a particular vertex x0. The copy-gadget C(x, y) is a graph with particular distinct vertices x and y such that the following holds: If G0 is the union of G and C(x, y) on x = x0, then (1) for every Π-fulfilling set D0 of G0, we have either {x, y} ⊆ D0 or {x, y} ∩ D0 = ∅ and 116 CHAPTER 5. NP-COMPLETENESS RESULTS

x x x y x g y y z Figure 5.1: Pictographs for the gadgets I(x), C(x, y), CCg(x, y) and O(x, y, z) (from left to right).

(2) for every Π-fulfilling set D of G, there is a Π-fulfilling set D0 of G0 with D ⊆ D0.

For convenience, we also define:

Definition 20 (copy-chain-gadget). The copy-chain-gadget CCg(x, y) is the union of g copies of the copy-gadget, C1(x1, y1),...,Cg(xg, yg) on y1 = x2, y2 = x3,..., yg−1 = xg, where x equals x1 and y equals yg. Attaching the one-in-three-gadget to the vertices x, y, and z of a graph G yields a graph G0 that inherits all Π-fulfilling sets of G that contain exactly one of x, y, and z.

Definition 21 (one-in-three-gadget). Let G be any graph with particular vertices x0, y0, and z0. The one-in-three-gadget O(x, y, z) is a graph with particular distinct vertices x, y, and z such that the following holds: If G0 is the union of G and O(x, y, z) on x = x0 and y = y0 and z = z0, then

(1) for every Π-fulfilling set D0 of G0, we have | {x, y, z} ∩ D0| = 1 and

(2) for every Π-fulfilling set D of G with | {x, y, z} ∩ D| = 1, there is a Π-fulfilling set D0 of G0 with D ⊆ D0.

Figure 5.1 shows pictographs of these gadgets that are used later for better readability.

5.1.3 The Reduction Scheme Let Π be a vertex subset property, let I(x) be a concrete initial-gadget, let C(x, y) be a concrete copy-gadget, and let O(x, y, z) be a concrete one-in- three-gadget. Let F be a planar boolean formula in conjunctive normal form with variable set Y and clause set C without negation and with exactly three literals per clause and let |Y | = n and |C| = m. We construct a reduction graph G(F ) such that F is satisfiable with exactly one true literal per clause, 5.1. REDUCTION FRAMEWORK 117 if and only if G(F ) admits a Π-fulfilling vertex subset D. Our goal is to have a vertex vi in G(F ) for every variable Yi ∈ Y such that vi’s containment in a Π-fulfilling set D of G corresponds to the truth value of Yi in a truth assignment of F with exactly one true literal per clause. Precisely spoken, F admits a truth assignment b with exactly one true literal per clause, if and only if G(F ) admits a Π-fulfilling set D such that b(Yi) = true, if vi ∈ D, and b(Yi) = false, if vi 6∈ D. For better comprehension, Figure 5.2 shows an example of the reduction for a specific formula.

The vertices v1, . . . , vn are established with the initial-gadget. Hence, we start by putting disjoint copies of the initial-gadget I(vi) for every variable Yi ∈ Y into a graph G1(F ). Ideally, we would like to attach a one-in-three-gadget for every clause of

F to the corresponding vertices of the initial gadgets in G1(F ). But this would imply that the degree of a vertex vi can increase up to m. To fulfill the intended maximum degree constraints for G(F ), we copy the value of vi to m 0 0 vertices, namely vi,1, . . . , vi,m. With this, we have a copy of the value of vi for every clause of F . We create these copies using the copy-gadget by defining 0 G2(F ) inductively: Let G2,0,0(F ) := G1(F ), where vi is renamed to vi,1. For every i ∈ {1, . . . , n}, the graph G2,i,0(F ) is defined as the graph G2,i−1,m(F ). For every j ∈ {1, . . . , m}, the graph G2,i,j(F ) is defined as the union of 0 00 00 0 G2,i,j−1(F ) and two copies of the copy-gadget, C(x , vi,j) and C(x , vi,j), on 0 0 00 00 x = vi,j−1 and on x = vi,j. Finally, G2(F ) is defined as the graph G2,n,m(F ). That is, we produce m copies of every vi by a chain of copy-gadgets. Taking 0 0 two copies of the copy-gadget ensures that the distance between vi,j and vi,k is even for every 1 ≤ i ≤ n and every 1 ≤ j, k ≤ m. This makes is possible to show that G(F ) is bipartite, if the gadgets are bipartite. In Figure 5.2,

G2(F ) corresponds to the parts that are inside the dashed circles. For preserving the girth of the gadgets, we generate further copies of vi that pairwise have a distance of at least g for some fixed g. We create these copies using the copy-chain-gadget by defining G3(F ) inductively: Let G3,0,0(F ) := G2(F ) and, for every i ∈ {1, . . . , n}, let G3,i,0(F ) be defined as the graph G3,i−1,m(F ). For every j ∈ {1, . . . , m}, the graph G3,i,j(F ) is defined as the union of G3,i,j−1(F ) and a copy of the copy-chain-gadget g 0 CC (x, vi,j) on x = vi,j. Finally, G3(F ) is defined as the graph G3,n,m(F ). We connect the copies of the variables using the one-in-three-gadget according to the clauses C1,...,Cm of F . For this, we define G(F ) inductively: Let G4,0(F ) := G3(F ). For every clause Cj = {Yr,Ys,Yt}, G4,j(F ) is the union of G4,j−1(F ) and a copy of the one-in-three-gadget O(x, y, z) on x = vr,j and 118 CHAPTER 5. NP-COMPLETENESS RESULTS

v0 g 1,3 v1,3 00 v1,3

g 0 v1,2

00 v1,2 g 0 Y1 v1 = v1,1

v = v0 g 2 2,1 00 v2,2 0 v2,2 g v2,2

v1,1 00 v2,3 g 0 Y C1 v 2 v2,1 2,3 v4,1 v = v0 g 3 3,1 v3,1 00 v3,2 v1,2 0 v3,2 v3,2 g C2 v2,3 v3,3 v4,2 00 C3 v3,3 g v4,3 0 Y3 v3,3

v0 g 4,3 00 v4,3

g 0 v4,2

00 v4,2 g 0 Y4 v4 = v4,1

Figure 5.2: The graph G(F ) for F = (C1 ∧ C2 ∧ C3) with C1 = (Y1 ∨ Y2 ∨ Y4), C2 = (Y1 ∨ Y3 ∨ Y4), and C3 = (Y2 ∨ Y3 ∨ Y4). The dashed shape depicts the planar incidence graph I(F ) with round variable vertices and rectangular clause vertices. Obviously, G(F ) follows the structure of I(F ). 5.1. REDUCTION FRAMEWORK 119

y = vs,j and z = vt,j. At the end, the reduction graph G(F ) is defined as G4,m(F ). In Figure 5.2, G3(F ) introduces the edges in the dashed shape and G4(F ) attaches the clause-gadgets, that are depicted in dashed boxes.

Lemma 81. Let F be a boolean formula in conjunctive normal form without negation and exactly three literals per clause. There is a truth assignment of F that values exactly one literal per clause true, if and only if the reduction graph G(F ) admits a Π-fulfilling set D.

Proof. Let Y be the set of variables and C be the set of clauses of F and let |Y | = n and |C| = m. For the first direction, let b : Y → {true, false} be a truth assignment of F that values exactly one literal per clause true. For every copy of the initial- i i gadget in G1(F ), let D1 be a Π-fulfilling set with vi ∈ D1 ⇔ b(Yi) = true. These sets exist by Definition 18. By Definition 19, we know that we can i i repeatedly extend D1 to D2 for every i ∈ {1, . . . , n} such that D2, which is i the union of all D2, is a Π-fulfilling set of G2(F ) with

00 0 vi,1 ∈ D2 ⇔ vi ∈ D1 , vi,1 ∈ D2 ⇔ vi ∈ D1 , 00 0 v ∈ D2 ⇔ vi ∈ D1 , v ∈ D2 ⇔ vi ∈ D1 , i,2 i,2 (5.1) ..., 00 0 vi,m ∈ D2 ⇔ vi ∈ D1 , vi,m ∈ D2 ⇔ vi ∈ D1.

Analogously, by Definitions 19 and 20, we know that we can repeatedly extend i i i D2 to D3 for every i ∈ {1, . . . , n} such that D3, which is the union of all D3, is a Π-fulfilling set of G3(F ) with

0 0 0 vi,1 ∈ D3 ⇔ vi,1 ∈ D2 , vi,2 ∈ D3 ⇔ vi,2 ∈ D2 , . . . , vi,m ∈ D3 ⇔ vi,m ∈ D2, and, by (5.1),

vi,1 ∈ D3 ⇔ vi ∈ D1 , vi,2 ∈ D3 ⇔ vi ∈ D1 , . . . , vi,m ∈ D3 ⇔ vi ∈ D1.

Finally, Definition 21 guarantees that we can extend D3 to a Π-fulfilling set D4 of G(F ) because we know that for every clause Cj = {Yr,Ys,Yt} exactly one variable is valued true by b, and hence, exactly one vertex of vr,j, vs,j, and vt,j is in D3 for every j ∈ {1, . . . , m}. This shows that G(F ) admits a Π-fulfilling set. For the other direction, let D be a Π-fulfilling vertex subset of G(F ). Let

Cj = {Yr,Ys,Yt} ∈ C be an arbitrary clause of F . Definition 21 guarantees 120 CHAPTER 5. NP-COMPLETENESS RESULTS

that exactly one of the vertices vr,j, vs,j, and vt,j is in D. Hence, by Defini- 0 0 0 tion 20, we know that exactly one of the vertices vr,j, vs,j, and vt,j is in D. By Definition 19, this also holds for the vertices vr, vs, and vt. Thus, the truth assignment b with b(Yi) = true ⇔ vi ∈ D values exactly one literal of every clause of F true.

Since the construction clearly can be done in polynomial time and mpoit 3-sat is NP-complete, Lemma 81 immediately implies: Theorem 18. For an additive vertex subset property Π that admits the implementation of an initial-gadget, a copy-gadget, and a one-in-three-gadget, determining if a given graph G admits a Π-fulfilling set is NP-complete.

For showing NP-completeness on restricted graph classes, it is interesting to analyze some structural properties of G(F ).

Lemma 82. If F is a planar boolean formula in conjunctive normal form without negation and at most three literals per clause, all gadgets are planar and admit embeddings such that the vertices x, y and z are incident to the outer face, then G(F ) is planar.

Proof. Let I(F ) = (VF ,EF ) be the incidence graph of F . When considering G(F ), we can say that G(F ) results from I(F ) by replacing the variable vertices Y1,...,Yn of I(F ) by the connected components of G2(F ), replacing the edges of I(F ) by the copy-chain-gadgets that are added in G3(F ) and replacing the clause vertices C1,...,Cj by the one-in-three-gadgets added in G4(F ). Since I(F ) is planar, we can use a planar embedding of I(F ) to construct a planar embedding of G(F ): Since all gadgets are planar and x and y can be managed to touch the outer face of an embedding of C(x, y), it is easy to check that replacing an edge of I(F ) by a copy of the copy-chain-gadget introduced no edge-crossings. This is also the case for replacing the clause vertices of I(F ) with copies of the one-in-three-gadget because O(x, y, z) allows an embedding with x, y, and z incident to the outer face and this embedding can be rotated, translated, scaled, and flipped to introduce no edge crossings in G(F ). The most interesting part is the replacement of the variable vertices of I(F ) because the variable vertices can have up to m neighbors in I(F ). For a variable Yi, let Cj1 ,...,Cj` with {j1, . . . , j`} ⊆ {1, . . . , m} be the neighbors of Yi, ordered clockwise around Yi in the planar embedding of I(F ). Consider the connected components of G2(F ). Each component is a copy of the initial-gadget attached to a chain of copies of the copy-gadget. Since the 5.1. REDUCTION FRAMEWORK 121 initial-gadget and the copy-gadget are planar with x, respectively x and y, embeddable incident to the outer face, we can choose an embedding of every connected component that bends the chain of copy-gadgets like a circle such 0 0 0 0 that the vertices v·,· lie on the outer face. We can rename vi,1 to vi,j1 , vi,2 to v0 ,..., v0 to v0 for every i ∈ {1, . . . , n} without modifying the semantics i,j2 i,` i,j` of the reduction. Hence, we can attach every neighbor Cjk of Yi in I(F ) to the appropriate vertex v0 using the copy-chain-gadget without introducing i,jk edge crossings. Lemma 83. If all gadgets are bipartite and the distance between x, y, and z is pairwise even in the one-in-three-gadget, then G(F ) is bipartite. Proof. We show that the reduction introduces no cycles of odd length. Since all gadgets are bipartite, they clearly contain no cycles of odd length. In G3(F ), every cycle is contained in any of the gadgets because the gadgets are composed in a tree. Hence, G3(F ) is bipartite. Moreover, all paths between vi,j and vi,j0 have even length for all i ∈ {1, . . . , n} and all j, j0 ∈ {1, . . . , m}: Without 0 0 00 loss of generality assume that j ≤ j . Let PC (vi,k, vi,k) be an arbitrarily 0 00 0 00 0 chosen path from vi,k to vi,k for all k ∈ {j, . . . , j } and let PC (vi,`, vi,`+1) be 00 0 0 an arbitrarily chosen path from vi,` to vi,`+1 for all ` ∈ {j, . . . , j − 1} in 0 the appropriate copies of the copy-gadget. Furthermore, let PCC (vi,j, vi,j) 0 0 be an arbitrarily chosen path from vi,j to vi,j and let PCC (vi,j0 , vi,j0 ) be an 0 arbitrarily chosen path from vi,j0 to vi,j0 through the appropriate copies of the copy-chain-gadget. Notice that either all paths in C(x, y) from x to y have even length or all these paths have odd length because otherwise the copy-gadget is not bipartite. This implies that either all paths from x to y in the copy-chain-gadget CCg(x, y) are of even length or all these paths are 0 0 0 00 00 0 of odd length. Hence, the path PC (vi,k, vi,k+1) := PC (vi,k, vi,k).PC (vi,k, vi,k+1) 0 has even length for every k ∈ {j, . . . , j − 1}. Every path between vi,j and vi,j0 has the form

0 0 0 0 0 0 PCC (vi,j, vi,j).PC (vi,j, vi,j+1). ··· .PC (vi,j0−1, vi,j0 ).PCC (vi,j0 , vi,j0 ) and, since the sub-paths were chosen arbitrarily, all paths between vi,j and vi,j0 in G3(F ) have even length. j 0 In G4, let PC (i, i ) be an arbitrarily chosen path from vi,j to vi0,j in the i 0 copy of the one-in-three-gadget that corresponds to clause Cj and let PY (j, j ) be an arbitrarily chosen path from vi,j to vi,j0 . Every cycle that is not entirely contained in a copy of one of the gadgets has the form

j1 i2 vi1,j1 PC (i1, i2) vi2,j1 PY (j1, j2) vi2,j2 ... vik,jk ... vik+1,jk+1 , 122 CHAPTER 5. NP-COMPLETENESS RESULTS

i where vik+1,jk+1 equals vi1,j1 . We already know that the path PY (j`, j`+1) has even length for all i ∈ {i1, . . . , ik} and all ` ∈ {1, . . . , k}. By assumption, the distance between vi,j and vi0,j in the one-in-three-gadget is even and, since j the one-in-three-gadget is bipartite, also the path PC (i`, i`+1) has even length for all j ∈ {j1, . . . , jk} and all ` ∈ {1, . . . , k}. Hence, the length of the cycle is also even.

Lemma 84. Let mg be the maximum degree of the initial-gadget, the copy- gadget, and the one-in-three-gadget. Let mi be the degree of x in I(x), let mc be the maximum degree of x and y in C(x, y), and let mo be the maxi- mum degree of x, y, and z in O(x, y, z). The maximum degree of G(F ) is max {mg, mi + mc, 3mc, mc + mo}.

Proof. Obviously, the maximum degree of G(F ) is the maximum of the maximum degree inside the gadgets, the degree of the vertices v1, . . . , vn that 0 connect the initial-gadget and the copy-gadget, the degree of the vertices vi,j for all i ∈ {1, . . . , n} and all j ∈ {1, . . . , m} that connect three copies of the copy-gadget, and the degree of the vertices vi,j for all i ∈ {1, . . . , n} and all j ∈ {1, . . . , m} that connect the copy-gadget and the one-in-three-gadget.

Lemma 85. If the initial-gadget, the copy-gadget and the one-in-three-gadget are {Ck,...,Cg−1}-free, then G(F ) is {Ck,...,Cg−1}-free. In particular, if the initial-gadget, the copy-gadget and the one-in-three-gadget have girth at least g, then G(F ) has girth at least g.

Proof. If all gadgets are {Ck,...,Cg−1}-free, then clearly every induced cycle of G(F ) that is part of a copy of one of the gadgets has length ` with ` < k or ` ≥ g. By construction of G(F ), every induced cycle C that is not part of a copy of one of the gadgets passes at least two copies of the copy-chain-gadget. Since in the copy-gadget C(x, y), the distance between x and y is at least 1, every path from x0 to y0 in a copy of the copy-chain-gadget CCg(x0, y0) has length at least g. This immediately implies that C has length at least 2g. Hence, every induced cycle of G(F ) as length at most k − 1 or at least g.

We can use these structural relations with the following corollary of Theorem 18:

Corollary 86. For an additive vertex subset property Π that admits the implementation of an initial-gadget, a copy-gadget, and a one-in-three-gadget, deciding if an input graph G admits a Π-fulfilling set is NP-complete. If the gadgets can be implemented such that 5.2. EFFICIENT DOMINATION 123

• G(F ) is planar, then this decision remains NP-complete on planar graphs.

• G(F ) is bipartite, then this decision remains NP-complete on bipartite graphs.

• G(F ) has maximum degree at most 3, then this decision remains NP- complete on graphs with maximum degree at most 3.

• G(F ) is {Ck,...,Cg−1}-free, then this decision remains NP-complete on {Ck,...,Cg−1}-free graphs.

5.2 Efficient Domination

We can formulate efficient domination as the following property for a graph G and a vertex subset D:

Π := D is an efficient dominating set of G.

The concrete gadgets are as follows: The initial-gadget I(x) consists of a single edge, namely i x. The copy-gadget C(x, y) consists of a P4, namely x s1 s2 y. The one-in-three-gadget O(x, y, z) consists of the union of three copies of the P5, namely a1 a2 ... a5, b1 b2 ... b5, and c1 c2 ... c5, 0 0 0 0 0 0 0 0 0 and three copies of the P3, namely a1 a2 a3, b1 b2 b3, and c1 c2 c3, on a5 = b5 = c5 (where x = a1, y = b1, and z = c1) and three additional vertices 00 00 00 0 0 0 a , b , and c that are adjacent exactly to a2 and a2, b2 and b2, and c2 and c2 respectively. Figure 5.3 shows these gadgets.

Observation 87. The initial-gadget fulfills the condition of Definition 18.

Proof. Obviously, the initial-gadget allows exactly the efficient dominating sets D = {i} and D0 = {x}.

Observation 88. The copy-gadget fulfills the condition of Definition 19.

Proof. Let G = (V,E) be a graph with efficient dominating set D and let x0 ∈ V . Furthermore, let G0 = (V 0,E0) be the union of G and C(x, y) on x = x0. We show (1) and (2) simultaneously by constructing a Π-fulfilling set D0 of G0 from D with x ∈ D ⇔ y ∈ D0: 124 CHAPTER 5. NP-COMPLETENESS RESULTS

a5 = b5 = c5 x 0 0 0 a3 a4 b3 b4 c3 c4 i s1 0 0 0 a2 00 a3 b2 00 b3 c2 00 c3 x s2 a b c 0 0 0 a a2 b b c c2 y 1 1 2 1 x y z

Figure 5.3: The initial-gadget I(x), the copy-gadget C(x, y), and the one-in- three-gadget O(x, y, z) (from left to right) used for showing that efficient domination is NP-complete.

If x0 ∈ D, then every efficient dominating set D0 of G0 with D ⊆ D0 contains x and dominates s1, but it does not dominate s2 with a vertex of D. Since D0 must be efficient, this can only be done by y ∈ D0. Hence, D0 := D ∪ {y} is the only efficient dominating set of G0 with D ⊆ D0. If x0 6∈ D, then every efficient dominating set D0 of G0 with D ⊆ D0 dominates x with a vertex of V , but it does not dominate s1 with a vertex 0 0 of D. This can only be done by s2 ∈ D , which means that D dominates y 0 0 with s2. Hence, D := D ∪ {s2} is the only efficient dominating set of G with D ⊆ D0.

Observation 89. The one-in-three-gadget fulfills the condition of Defini- tion 21.

Proof. Let G = (V,E) be a graph and let {x0, y0, z0} ⊆ V . Furthermore, let G0 = (V 0,E0) be the union of G and O(x, y, z) on x = x0, y = y0, and z = z0. (1): Let D0 be an efficient dominating set of G0. 0 0 0 0 Notice that {a2, b2, c2} ⊆ D because there is no other way to dominate 0 0 0 0 0 0 0 a1, a3, b1, b3, c1, and c3 without violating the efficiency of D . This implies 00 00 00 0 {a , b , c , a2, b2, c2} ∩ D = ∅. Assume that more than one vertex of x, y, and z is in D0. Without loss 0 0 of generality, say {x, y} ⊆ D . This implies {a2, a3, b2, b3} ∩ D = ∅ by the 0 0 0 efficiency of D . Since D must dominate a3 and b3, we have {a4, b4} ⊆ D because there are no other vertices that can dominate a3 and b3. But since 0 both, a4 and b4, are adjacent to a5, this contradicts the efficiency D . Hence, at most one vertex of x, y, and z is in D0. 5.3. EFFICIENT EDGE DOMINATION 125

0 00 00 00 Assume that no vertex of x, y, and z is in D . Since {a , b , c , a2, b2, c2} ∩ 0 0 D = ∅, the only way to dominate a2, b2, and c2 is {a3, b3, c3} ⊆ D . This 0 makes it impossible to dominate a5 without violating the efficiency of D . Hence, D0 contains exactly one vertex of x, y, and z. (2): Let D be an efficient dominating set of G. If exactly one of the vertices x0, y0, and z0 is in D, say x0 ∈ D, then

0 0 0 0 D := D ∪ {a4, b3, c3, a2, b2, c2} clearly is an efficient dominating set of G0. Since the gadgets are trees and hence, bipartite, planar with only one face and cycle-free, the distance between x, y, and z is pairwise even in O(x, y, z), the vertices x, y, and z have degree 1 in all gadgets, and the maximum degree inside the gadgets is at most 3, from Lemmas 82 to 85 and Corollary 86 follows:

Theorem 19. Efficient domination is NP-complete on planar bipartite graphs with maximum degree at most 3 and girth at least g, for every fixed g.

5.3 Efficient Edge Domination

We can formulate efficient edge domination as the following property for a graph G and a vertex subset D:

Π := D is independent in G and G − D is 1-regular.

The concrete gadgets are as follows: The initial-gadget I(x) consists of a P3, namely i1 i2 x. The copy-gadget C(x, y) consists of a P4, namely x s1 s2 y. The one-in-three-gadget O(x, y, z) consists of the union of three copies of the P6, namely a1 a2 ... a6, b1 b2 ... b6, and c1 c2 ... c6, 0 0 0 0 0 0 and three copies of the P5, namely a1 a2 ... a5, b1 b2 ... b5, and 0 0 0 c1 c2 ... c5, on a6 = b6 = c6 (where x = a1, y = b1, and z = c1) and the 0 0 0 additional edges a3a3, b3b3 and c3c3. Figure 5.4 shows these gadgets. Observation 90. The initial-gadget fulfills the conditions of Definition 18. Proof. Clearly, there are exactly two different independent sets, D and D0, 0 such that I(x) − D and I(x) − D respectively are 1-regular, namely D = {i1} and D0 = {x}. Observation 91. The copy-gadget fulfills the conditions of Definition 19. 126 CHAPTER 5. NP-COMPLETENESS RESULTS

a6 = b6 = c6

x 0 0 0 a5 a5 b5 b5 c5 c5 i1 s1 0 0 0 a4 a4 b4 b4 c4 c4 i2 s2 0 0 0 a3 a3 b3 b3 c3 c3 x y 0 0 0 a2 a2 b2 b2 c2 c2

0 0 0 a1 x b1 y c1 z

Figure 5.4: The initial-gadget I(x), the copy-gadget C(x, y) and the one-in- three-gadget O(x, y, z) (from left to right) used for showing that efficient edge domination is NP-complete.

Proof. Let G = (V,E) be a graph, let x0 ∈ V , and let D be an independent vertex subset such that G − D is 1-regular. Furthermore, let G0 = (V 0,E0) be the union of G and C(x, y) on x = x0. We show (1) and (2) simultaneously by constructing a Π-fulfilling set D0 of G0 from D with x ∈ D ⇔ y ∈ D0: 0 Assume that x ∈ D. Since the two neighbors s1 and y of s2 are not in D 0 0 0 and x s1, every Π-fulfilling set D of G that fulfills D ⊆ D must contain either s2 or y. If it contains s2, then it cannot contain y and, thus, y is a vertex in G0 − D0 of degree 0—this is a contradiction. Conversely, one can easily check that D0 := D ∪ {y} is independent in G0 and that G0 − D0 is

1-regular because it equals G − D with the additional isolated edge s1s2. By definition, y ∈ D0. Assume that x0 6∈ D. Since x0 has degree 1 in G − D, every Π-fulfilling 0 0 0 set D of G that fulfills D ⊆ D must contain s1. This means that neither s2 nor y can be in D0 because otherwise either D0 is not independent or G0 − D0 0 0 is not 1-regular respectively. Clearly, D := D ∪ {s1} is independent in G and G0 − D0 is 1-regular because it equals G − D with the additional isolated 0 edge s2y. By definition, y 6∈ D . Observation 92. The one-in-three-gadget fulfills the conditions of Defini- tion 21.

Proof. Let G = (V,E) be a graph and let {x0, y0, z0} ⊆ V . Furthermore, let G0 = (V 0,E0) be the union of G and O(x, y, z) on x = x0, y = y0, and z = z0. 5.4. POLARITY AND MONOPOLARITY 127

(1): Let D0 be a Π-fulfilling set of G0. 0 0 0 0 One can easily check that it must be {a3, b3, c3} ⊆ D and, hence, 0 0 0 {a3, b3, c3} ∩ D = ∅. Since G − D is 1-regular, this implies that exactly one 0 of a2 and a4, exactly one of b2 and b4, and exactly one of c2 and c4 is in D . Assume that at least two vertices of x, y, and z are in D0. Without loss of 0 generality assume that {x, y} ⊆ D . Since x a2 and y b2, by the foregoing 0 0 0 considerations, we have a4 ∈ D and b4 ∈ D , which implies {a5, b5} ∩ D = ∅. 0 0 0 0 In both cases, a6 ∈ D and a6 6∈ D , G − D is not 1-regular—this is a contradiction. Hence, at most one of x, y, and z is in D0. Assume that {x, y, z} ∩ D0 = ∅. By the foregoing considerations, we have 0 0 0 {a2, b2, c2} ⊆ D because otherwise a2, b2, or c2 has degree 2 in G − D . This 0 0 implies {a4, b4, c4} ∩ D = ∅. Since we already know that {a3, b3, c3} ∩ D = ∅, 0 0 0 we have {a5, b5, c5} ⊆ D because otherwise a4, b4, or c4 has degree 2 in G −D . 0 0 This means that a6 is an isolated vertex in G − D —this is a contradiction. Hence, at least one of x, y, z is in D0. This shows that exactly one of x, y, and z is in D0. (2): Let D be a Π-fulfilling set of G. If exactly one vertex of x0, y0, z0 is in D, say x0 ∈ D, then

0 0 0 0 D := D ∪ {a4, a3, b2, b3, b5, c2, c4, c5} clearly is a Π-fulfilling set of G0.

Since the gadgets are trees and hence, bipartite, planar with only one face and cycle-free, the distance between x, y, and z is pairwise even in O(x, y, z), the vertices x, y, and z have degree 1 in all gadgets, and the maximum degree inside the gadgets is 3, from Lemmas 82 to 85 and Corollary 86 follows:

Theorem 20. Efficient edge domination is NP-complete on planar bipartite graphs with maximum degree at most 3 and girth at least g, for every fixed g.

5.4 Polarity and Monopolarity

This section gives two NP-completeness results for monopolarity and polarity. In fact, the reduction framework does not work for polarity because polar graphs are not additive, but we later argue that the results hold for polarity as well. 128 CHAPTER 5. NP-COMPLETENESS RESULTS

c6 c5 c c 7 c c 4 6 5 r c2g+1 2 c4 r r w c8 c3 c g 1 c c9 c c2 2g+2 3 1 g c c 1 c 2g+3 2 w w w

g Figure 5.5: The helper gadgets H1 (left) and H2 (center) and their symbolic drawings (right), where the upper pictograph represents H1 and the lower g pictograph represents H2 .

We can formulate monopolarity as the following property for a graph G and a vertex subset D:

Π := (D,V (G) \ D) is a monopolar partition of G.

The concrete gadgets are as follows: The initial-gadget I(x) simply consists of the vertex x. To define the copy- and the one-in-three-gadgets, we use a g helper-gadget. We have to define two versions, H1 and H2 , of the helper- gadget. The helper-gadget H1 consists of the cycle c1 c2 ... c9 c1 with the two chords c2c5 and c6c9 and a vertex w which is adjacent only to c1. g The helper-gadget H2 consists of the cycle c1 c2 ... c2g+3 and, for every i ∈ {1, . . . , g}, the vertex ri that is adjacent exactly to c2i+1 and c2i+2, and a g vertex w which is adjacent only to c1. Figure 5.5 shows H1 and H2 .

g Observation 93. In every monopolar partition of H1 and H2 , the vertex w g has a blue colored neighbor. Both, H1 and H2 , admit a monopolar partition that colors w amber and a monopolar partition that colors w blue.

Proof. It is easy to check that H1 −w admits exactly the monopolar partitions (A, V (H1 − w) \ A) with

A = {c2, c4, c6, c8} ,

A = {c2, c4, c7, c9} , and

A = {c3, c5, c7, c9} . 5.4. POLARITY AND MONOPOLARITY 129

g Similarly, one can easily verify that H2 − w admits exactly the monopolar g partitions (A, V (H2 − w) \ A) with

A = {c2, c4, . . . , c2g+2} ,

A = {c3, c5, . . . , c2g+3} , and, for every i ∈ {1, . . . , k},

n o A = c2, c4, . . . , c2(i−1)+2, c2i+3, c2(i+1)+3, . . . , c2g+3 , and n o A = c2, c4, . . . , c2(i−1)+2, ri, c2i+3, c2(i+1)+3, . . . , c2g+3 .

In all these monopolar partitions, the vertex c1 is blue colored. Hence, there g are monopolar partitions of H1, respectively H2 , that color w amber and w g always has a blue colored neighbor. Notice that for both, H1 −w and H2 −w, there is a monopolar partition that colors all neighbors of c1 amber. This monopolar partition clearly can be extended to a monopolar partition of H1, g respectively H2 , that colors w blue.

g The copy-gadget C1(x, y), respectively C2 (x, y), is the union of the induced 0 g 0 path x w y and H1, respectively H2 , on w = w . The one-in-three-gadget 0 0 O1(x, y, z) is the union of five copies of the copy-gadget, C1(x, x ), C1(y, y ), 0 00 00 0 00 0 00 C1(z, z ), C1(x , v), and C1(z , w) on x = x and z = z and the additional 0 0 0 0 g edges x y , y z , and vw. The one-in-three-gadget O2(x, y, z) is the union of g 0 g 0 g 0 three copies of the copy-gadget, C2 (x, x ), C2 (y, y ), and C2 (z, z ) and two g 00 g 00 0 00 copies of the copy-chain-gadget, CC2 (x , v) and CC2 (z , w) on x = x and z0 = z00 and the additional edges x0y0, y0z0, and vw. Figure 5.6 shows these gadgets.

Observation 94. The initial-gadget fulfills the condition of Definition 18.

Proof. Obviously, the initial-gadget allows exactly the monopolar partitions ({x} , ∅) and (∅, {x}).

g Observation 95. The copy-gadgets C1(x, y) and C2 (x, y) fulfill the condition of Definition 19.

Proof. Let G = (V,E) be a graph with a monopolar partition (D,V \ D) and let x0 ∈ V . Furthermore, let G0 = (V 0,E0) be the union of G and C(x, y) on 0 g 0 0 0 x = x , where either C(x, y) = C1(x, y) or C(x, y) = C2 (x, y). Let (D ,V \D ) be a monopolar partition of G0. 130 CHAPTER 5. NP-COMPLETENESS RESULTS

v w v w x x

y0 g y0 g w g w x0 z0 x0 z0

y y x y z x y z

g Figure 5.6: The copy-gadgets C1(x, y) and C2 (x, y) and the one-in-three- g gadgets O1(x, y, z) and O2(x, y, z) (from left to right) to show that monopo- larity is NP-complete. Notice that the one-in-three gadgets contain copies of the copy-gadgets and copy-chain-gadgets using the pictographs from Fig- ure 5.1. Clearly, the pictographs in O1(x, y, z) represent C1(x, y) and the g g g pictographs in O2(x, y, z) represent C2 (x, y) and CC2 (x, y) respectively.

(1): If x ∈ D0, then clearly w0 6∈ D0. Since, by Observation 93, w0 has a blue neighbor, it must be y ∈ D0 because otherwise y, w0, and the blue 0 0 0 0 neighbor of w form an induced P3 in G [V \ D ]. If x 6∈ D0, then we have w0 ∈ D0 because otherwise x, w0, and the blue 0 0 0 0 colored neighbor of w in the helper-gadget forms an induced P3 in G [V \ D ]. Thus, since D0 is independent, we have y 6∈ D0. (2): By Observation 93, w0 can be colored amber and w0 can be colored blue in the helper gadget. Since monopolar graphs are hereditary, this implies that every monopolar partition of G can be extended to a monopolar partition of G0.

g Observation 96. The one-in-three-gadgets O1(x, y, z) and O2(x, y, z) fulfill the condition of Definition 21.

k Proof. For both, O1(x, y, z) and O2 (x, y, z), Observation 95 implies that every monopolar partition colors x, x0, v with the same color and z, z0, w with the same color and y, y0 with the same color. Since v and w are adjacent, no monopolar partition colors both, v and w amber and, hence, no monopolar 0 0 0 0 0 partition colors x and z amber. Since x y z is an induced P3, at least one of its vertices is colored amber. The only way to color more than one vertex amber, namely coloring x0 and z0 amber and y0 blue, is already shown to be impossible. Hence, every monopolar partition colors exactly one vertex of x0, y0, and z0 amber, that is, exactly one vertex of x, y, and z. It is easily checked that there is a monopolar partition for all of the three choices. Let G = (V,E) be a graph with {x0, y0, z0} ⊆ V and let (D,V \ D) be a monopolar partition of G. Furthermore, let G0 = (V 0,E0) be the 5.4. POLARITY AND MONOPOLARITY 131 union of G and O(x, y, z) on x = x0, y = y0, and z = z0, where either k O(x, y, z) = O1(x, y, z) or O(x, y, z) = O2 (x, y, z). (1): Let (D0,V 0 \ D0) be a monopolar partition of G0. By the foregoing considerations, every monopolar partition of G0 colors exactly one vertex of x0, y0, and z0 blue, that is, exactly one of x0, y0, and z0 is in D0. (2): Since monopolar graphs are hereditary, it is easy to verify that, for every monopolar partition (D,V \ D) of G with | {x0, y0, z0} ∩ D| = 1, there is a monopolar partition (D0,V 0 \ D0) of G0 with D ⊆ D0.

Since the gadgets are planar with all connection vertices on the outer face, the vertices x, y, and z have degree 1 in all gadgets, the maximum degree inside the gadgets is at most 3, C1(x, y) and O1(x, y, z) are triangle-free, and g g C2 (x, y) and O2(x, y, z) are {C4,...,Cg}-free, from Lemmas 82, 84, and 85 and Corollary 86 follows:

Theorem 21. Monopolarity is NP-complete on planar triangle-free graphs with maximum degree at most 3 and on planar {C4,...,Cg}-free graphs with maximum degree at most 3, for every fixed g ≥ 4.

One can easily check that all gadgets admit only polar partitions that are also monopolar partitions. This is also true for the reduction graph G(F ) described in Section 5.1.3. As a simple argument for that, consider a polar partition (A, B) of G(F ) that is not monopolar, that is, G[A] is a complete multipartite graph with at least two independent sets. The degree restriction on G(F ), that is, every vertex has degree at most 3, implies that |A| ≤ 6.

But it is quite obvious that this is not sufficient to meet every induced P3 of G(F ). Hence, Theorem 21 also holds for polarity. Furthermore, the class of polar graphs is self-complementary, that is, a graph is polar, if and only if its complement is polar. Hence, the results can be extended to the complements of the mentioned graph classes:

Theorem 22. Polarity is NP-complete on

• planar triangle-free graphs with maximum degree at most 3,

• co-planar 3P1-free n-vertex graphs with minimum degree at least n − 4,

• planar {C4,...,Cg}-free graphs with maximum degree at most 3, and n o • co-planar C4,..., Cg -free n-vertex graphs with minimum degree at least n − 4, 132 CHAPTER 5. NP-COMPLETENESS RESULTS for every fixed g ≥ 4.

Since every K4-free graph with maximum degree at most 3 is 3-colorable by Brooks’ Theorem, Theorems 21 and 22 imply:

Corollary 97. Monopolarity and polarity are NP-complete on 3- colorable graphs. Polarity is NP-complete on claw-free co-planar graphs and on {2K2,C5}-free graphs and, therefore, on hole-free graphs and P5-free graphs. 6 Conclusion

This thesis advances the computational complexity analysis for efficient domination, efficient edge domination, polarity, and monopolar- ity on restricted graph classes. For efficient domination on F -free graphs, that is, the graph classes that are characterizable by a single forbidden induced subgraph F , we strive after a perfect dichotomy between the tractable cases and those where the problem is NP-complete. We point out that for all tractable cases, F is a linear forest. Chapter 2 succeeds in classifying the graph classes where F has at most six vertices, except for the P6-free graphs. Since the problem is NP-complete on (P3 + P3)-free graphs, the remaining open cases are:

• P6-free graphs, • (P5 + P2)-free graphs, • (P6 + P2)-free graphs, • (Pk + mP2)-free graphs, for every 3 ≤ k ≤ 6 and m ≥ 2.

For the case of P6-free graphs, some progress has been made by Friese [46]. He shows that the squares of efficiently dominatable P6-free graphs are hole- free and conjectures that they are even perfect. If this conjecture is true, the reduction technique presented in Section 2.3 will immediately imply a polynomial-time algorithm because maximum weight independent set is polynomially-time solvable on perfect graphs. In this thesis, we present an O(nm)-time algorithm for efficient edge domination on hole-free graphs. We leave it for future work whether efficient edge domination remains tractable when the C5 or even longer cycles are allowed. Since the problem is linear-time solvable on chordal bipartite graphs, as shown in Section 3.1, on chordal graphs [70], and P7-free graphs [14], one may ask if there is also a linear-time algorithm for hole-free graphs. As far as we know, our tractability result for monopolarity, namely the 134 CHAPTER 6. CONCLUSION

efficient algorithm for monopolar extension on locally A5-S2,2,2-defused graphs, covers all known tractable cases except some graph classes of bounded tree- or clique-width. In our opinion, the reduction to 2-satisfiability can hardly be improved to work for significantly larger or different graph classes. Hence, to find new tractable cases for monopolarity, we think that it is necessary to develop new techniques. Since many of the known efficient algorithms for polarity solve monopo- larity or even monopolar extension as a subroutine, finding new ap- proaches for monopolarity is of particular interest with regard to polarity. In particular, by the algorithmic framework of Section 4.4, every tractable case for monopolar extension on a hereditary graph class C implies an efficient algorithm for polarity on planar C graphs. This may lead to the opinion that the complexities of monopolarity and polarity are highly related, at least on planar graphs. In fact, we are not aware of any graph class where polarity is tractable and monopolarity is NP-complete. Conversely, there are graph classes, for example hole-free graphs, on which polarity is NP-complete, as we show in Section 5.4, but monopolarity is efficiently solvable, as we show in Section 4.3. We hope that this thesis gives new insights into the studied problems and helps to initiate future work on their classification. Bibliography

[1] S. Arnborg, J. Lagergren, and D. Seese. “Easy problems for tree- decomposable graphs”. In: Journal of Algorithms 12.2 (1991), pp. 308– 340. [2] B. Aspvall, M. F. Plass, and R. E. Tarjan. “A linear-time algorithm for testing the truth of certain quantified boolean formulas”. In: Information Processing Letters 8.3 (1979). (Erratum in IPL 14.4 (1982)), pp. 121– 123. [3] E. Balas and C. S. Yu. “On graphs with polynomially solvable maximum- weight clique problem”. In: Networks 19.2 (1989), pp. 247–253. [4] D. W. Bange, A. E. Barkauskas, and P. J. Slater. “Efficient dominat- ing sets in graphs”. In: Applications of Discrete Mathematics (1988). Proceedings in Applied Mathematics Series (33), pp. 189–199. [5] L. W. Beineke. On derived graphs and digraphs. Beitr. Graphentheorie, Int. Kolloquium Manebach (DDR). 1968. [6] N. Biggs. “Perfect codes in graphs”. In: Journal of Combinatorial Theory, Series B 15.3 (1973), pp. 289–296. [7] A. Brandstädt, P. Fičur, A. Leitert, and M. Milanič. “Polynomial-time Algorithms for Weighted Efficient Domination Problems in AT-free Graphs and Dually Chordal Graphs”. Manuscript. 2013. [8] A. Brandstädt, C. Hundt, and R. Nevries. “Efficient Edge Domination on Hole-Free Graphs in Polynomial Time”. In: LATIN 2010: Theoret- ical Informatics. Ed. by A. López-Ortiz. Vol. 6034. Lecture Notes in Computer Science. Springer Berlin Heidelberg, 2010, pp. 650–661. [9] A. Brandstädt, V. B. Le, and J. P. Spinrad. Graph Classes: A Survey. Philadelphia, PA, USA: Society for Industrial and Applied Mathematics, 1999. 136 BIBLIOGRAPHY

[10] A. Brandstädt, A. Leitert, and D. Rautenbach. “Efficient Dominating and Edge Dominating Sets for Graphs and Hypergraphs”. In: Algo- rithms and Computation. Ed. by K.-M. Chao, T.-s. Hsu, and D.-T. Lee. Vol. 7676. Lecture Notes in Computer Science. Springer Berlin Heidelberg, 2012, pp. 267–277. [11] A. Brandstädt, A. Leitert, and D. Rautenbach. “Efficient Dominating and Edge Dominating Sets for Graphs and Hypergraphs”. In: CoRR abs/1207.0953 (2012). [12] A. Brandstädt, M. Milanič, and R. Nevries. “New Polynomial Cases of the Weighted Efficient Domination Problem”. In: MFCS. Ed. by K. Chatterjee and J. Sgall. Vol. 8087. Lecture Notes in Computer Science. Springer, 2013, pp. 195–206. [13] A. Brandstädt, M. Milanič, and R. Nevries. “New Polynomial Cases of the Weighted Efficient Domination Problem”. In: CoRR abs/1304.6255 (2013). [14] A. Brandstädt and R. Mosca. “Dominating Induced Matchings for

P7-Free Graphs in Linear Time”. In: Algorithmica (2012), pp. 1–21. [15] J. I. Brown and D. G. Corneil. “On generalized graph colorings”. In: Journal of Graph Theory 11.1 (1987), pp. 87–99. [16] D. M. Cardoso, J. O. Cerdeira, C. Delorme, and P. C. Silva. “Efficient edge domination in regular graphs”. In: Discrete Applied Mathematics 156.15 (2008), pp. 3060–3065. [17] D. M. Cardoso, N. Korpelainen, and V. V. Lozin. “On the complexity of the dominating induced matching problem in hereditary classes of graphs”. In: Discrete Applied Mathematics 159.7 (2011), pp. 521–531. [18] D. M. Cardoso and V. V. Lozin. “Dominating Induced Matchings”. In: Graph Theory, Computational Intelligence and Thought. Ed. by M. Lipshteyn, V. Levit, and R. McConnell. Vol. 5420. Lecture Notes in Computer Science. Springer Berlin Heidelberg, 2009, pp. 77–86. [19] G. Chang, C. Rangan, and S. Coorg. “Weighted independent perfect domination on cocomparability graphs”. In: Discrete Applied Mathe- matics 63.3 (1995), pp. 215–222. [20] M.-S. Chang and Y.-C. Liu. “Polynomial Algorithms for the Weighted Perfect Domination Problems on Chordal Graphs and Split Graphs”. In: Inf. Process. Lett. 48.4 (1993), pp. 205–210. BIBLIOGRAPHY 137

[21] M.-S. Chang and Y.-C. Liu. “Polynomial Algorithms for Weighted Perfect Domination Problems on Interval and Circular-Arc Graphs.” In: J. Inf. Sci. Eng. 11.4 (1994), pp. 549–568. [22] Z. A. Chernyak and A. A. Chernyak. “About recognizing (α, β) classes of polar”. In: Discrete Mathematics 62.2 (1986), pp. 133–138. [23] R. Churchley. “Some Remarks on Monopolarity”. Manuscript. 2012. [24] R. Churchley and J. Huang. “Line-Polar Graphs: Characterization and Recognition”. In: SIAM Journal on Discrete Mathematics 25.3 (2011), pp. 1269–1284. [25] R. Churchley and J. Huang. “List monopolar partitions of claw-free graphs”. In: Discrete Mathematics 312.17 (2012), pp. 2545–2549. [26] R. Churchley and J. Huang. “On the Polarity and Monopolarity of Graphs”. In: Journal of Graph Theory (2013). eprint: http://dx.doi. org/10.1002/jgt.21755. [27] R. Churchley and J. Huang. “Solving Partition Problems with Colour- Bipartitions”. In: Graphs and Combinatorics (2012). eprint: http : //dx.doi.org/10.1007/s00373-012-1270-z. [28] S. A. Cook. “The Complexity of Theorem-Proving Procedures”. In: STOC. Ed. by M. A. Harrison, R. B. Banerji, and J. D. Ullman. ACM, 1971, pp. 151–158. [29] D. Coppersmith and S. Winograd. “Matrix Multiplication via Arithmetic Progressions”. In: J. Symb. Comput. 9.3 (1990), pp. 251–280. [30] D. G. Corneil, Y. Perl, and L. K. Stewart. “A Linear Recognition Algorithm for Cographs”. In: SIAM J. Comput. 14.4 (1985), pp. 926– 934. [31] B. Courcelle. “The monadic second-order logic of graphs III: tree- decompositions, minor and complexity issues”. In: ITA 26 (1992), pp. 257–286. [32] B. Courcelle, J. A. Makowsky, and U. Rotics. “Linear Time Solvable Op- timization Problems on Graphs of Bounded Clique-Width”. In: Theory Comput. Syst. 33.2 (2000), pp. 125–150. [33] B. Courcelle and M. Mosbah. “Monadic Second-Order Evaluations on Tree-Decomposable Graphs”. In: Theor. Comput. Sci. 109.1-2 (1993), pp. 49–82. 138 BIBLIOGRAPHY

[34] M. Davis and H. Putnam. “A Computing Procedure for Quantification Theory”. In: J. ACM 7.3 (1960), pp. 201–215. [35] T. Ekim, P. Heggernes, and D. Meister. “Polar permutation graphs are polynomial-time recognisable”. In: European Journal of Combinatorics 34.3 (2013), pp. 576–592. [36] T. Ekim, P. Hell, J. Stacho, and D. de Werra. “Polarity of chordal graphs”. In: Discrete Applied Mathematics 156.13 (2008), pp. 2469– 2479. [37] T. Ekim and J. Huang. “Recognizing line-polar bipartite graphs in time”. In: Discrete Applied Mathematics 158.15 (2010), pp. 1593–1598. [38] T. Ekim, N. V. R. Mahadev, and D. de Werra. “Polar cographs”. In: Discrete Applied Mathematics 156.10 (2008), pp. 1652–1660. [39] E. M. Eschen and X. Wang. “Algorithms for unipolar and generalized split graphs”. In: Discrete Applied Mathematics 162 (2014), pp. 195–201. [40] S. Even, A. Itai, and A. Shamir. “On the Complexity of Timetable and Multicommodity Flow Problems”. In: SIAM Journal on Computing 5.4 (1976), pp. 691–703. [41] M. Farber. “On diameters and radii of bridged graphs”. In: Discrete Mathematics 73.3 (1989), pp. 249–260. [42] A. Farrugia. “Vertex-Partitioning into Fixed Additive Induced-Here- ditary Properties Is NP-hard”. In: Electronic J. of Combinatorics 11 (2004). [43] T. Feder, P. Hell, S. Klein, and R. Motwani. “Complexity of Graph Partition Problems”. In: Proceedings of the Thirty-first Annual ACM Symposium on Theory of Computing. STOC ’99. New York, NY, USA: ACM, 1999, pp. 464–472. [44] T. Feder, P. Hell, S. Klein, and R. Motwani. “List Partitions”. In: SIAM Journal on Discrete Mathematics 16.3 (2003), pp. 449–478. [45] M. Fellows and M. Hoover. “Perfect Domination”. In: Australasian J. of Combinatorics 3 (1991), pp. 141–150.

[46] E. Friese. “Das Efficient-Domination-Problem auf P6-freien Graphen”. German. MA thesis. University of Rostock, 2013. [47] M. R. Garey and D. S. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman, 1979. BIBLIOGRAPHY 139

[48] M. R. Garey and D. S. Johnson. “The Rectilinear Steiner Tree Problem is NP-Complete”. In: SIAM Journal on Applied Mathematics 32.4 (1977), pp. 826–834. [49] D. L. Grinstead, P. J. Slater, N. A. Sherwani, and N. D. Holmes. “Efficient Edge Domination Problems in Graphs”. In: Inf. Process. Lett. 48.5 (1993), pp. 221–228. [50] M. Grötschel, L. Lovász, and A. Schrijver. “Polynomial Algorithms for Perfect Graphs”. In: Topics on Perfect Graphs. Ed. by C. Berge and V. Chvátal. Vol. 88. North-Holland Mathematics Studies. North-Holland, 1984, pp. 325–356. [51] T. Haynes, S. Hedetniemi, and P. Slater. Domination in Graphs: Ad- vanced Topics. Chapman and Hall/CRC Pure and Applied Mathematics Series. Marcel Dekker, Incorporated, 1998. [52] T. Haynes, S. Hedetniemi, and P. Slater. Fundamentals of Domination in Graphs. Chapman & Hall/CRC Pure and Applied Mathematics. Taylor & Francis, 1998. [53] R. B. Hayward. “Two classes of perfect graphs”. PhD thesis. McGill University, Montreal, Canada, 1988. [54] P. Heggernes and J. A. Telle. “Partitioning Graphs into Generalized Dominating Sets”. In: Nord. J. Comput. 5.2 (1998), pp. 128–142. [55] M. A. Henning. “A survey of selected recent results on total domination in graphs”. In: Discrete Mathematics 309.1 (2009), pp. 32–63. [56] J. E. Hopcroft and R. E. Tarjan. “Efficient Algorithms for Graph Manipulation”. In: Commun. ACM 16.6 (1973), pp. 372–378. [57] J. Huang and B. Xu. “A forbidden subgraph characterization of line- polar bipartite graphs”. In: Discrete Applied Mathematics 158.6 (2010), pp. 666–680. [58] R. M. Karp. “Reducibility Among Combinatorial Problems”. In: Com- plexity of Computer Computations. Ed. by R. E. Miller and J. W. Thatcher. The IBM Research Symposia Series. Plenum Press, New York, 1972, pp. 85–103. [59] N. Korpelainen. “A Polynomial-time Algorithm for the Dominating In- duced Matching Problem in the Class of Convex Graphs”. In: Electronic Notes in Discrete Mathematics 32.0 (2009), pp. 133–140. 140 BIBLIOGRAPHY

[60] N. Korpelainen, V. V. Lozin, and C. Purcell. “Dominating induced matchings in graphs without a skew star”. In: Journal of Discrete Algorithms (2013). eprint: http://dx.doi.org/10.1016/j.jda.2013. 11.002. [61] P. Laroche. “Planar 1-in-3 satisfiability is NP-complete”. In: Comtes rendus de l’academie des sciences serie I-mathematique 316.4 (1993), pp. 389–392. [62] H.-O. Le and V. B. Le. “The NP-completeness of (1,r)-subcolorability of cubic graphs”. In: Information Processing Letters 81.3 (2002), pp. 157– 162. [63] V. B. Le and R. Nevries. “Complexity and algorithms for recognizing polar and monopolar graphs”. In: Theor. Comput. Sci. (2014). eprint: http://dx.doi.org/10.1016/j.tcs.2014.01.032. [64] V. B. Le and R. Nevries. “Recognizing Polar Planar Graphs Using New Results for Monopolarity”. In: Algorithms and Computation. Ed. by T. Asano, S.-i. Nakano, Y. Okamoto, and O. Watanabe. Vol. 7074. Lecture Notes in Computer Science. Springer Berlin Heidelberg, 2011, pp. 120–129. [65] Y. D. Liang, C. L. Lu, and C. Y. Tang. “Efficient domination on permu- tation graphs and trapezoid graphs”. In: Computing and Combinatorics. Ed. by T. Jiang and D. Lee. Vol. 1276. Lecture Notes in Computer Science. Springer Berlin Heidelberg, 1997, pp. 232–241. [66] R. Lin and S. Olariu. “An NC recognition algorithm for cographs”. In: Journal of Parallel and Distributed Computing 13.1 (1991), pp. 76–90. [67] Y.-L. Lin. “Fast Algorithms for Independent Domination and Efficient Domination in Trapezoid Graphs”. In: ISAAC. 1998, pp. 267–276. [68] M. Livingston and Q. F. Stout. “Distributing Resources in Hypercube Computers”. In: Proceedings of the Third Conference on Hypercube Con- current Computers and Applications: Architecture, Software, Computer Systems, and General Issues - Volume 1. C3P. New York, NY, USA: ACM, 1988, pp. 222–231. [69] V. V. Lozin and M. Milanič. “A polynomial algorithm to find an independent set of maximum weight in a fork-free graph”. In: J. Discrete Algorithms 6.4 (2008), pp. 595–604. BIBLIOGRAPHY 141

[70] C. L. Lu, M.-T. Ko, and C. Y. Tang. “Perfect edge domination and efficient edge domination in graphs”. In: Discrete Applied Mathematics 119.3 (2002), pp. 227–250. [71] C. L. Lu and C. Y. Tang. “Efficient domination in bipartite graphs”. Manuscript. 1997. [72] C. L. Lu and C. Y. Tang. “Solving the Weighted Efficient Edge Domi- nation Problem on Bipartite Permutation Graphs”. In: Discrete Applied Mathematics 87.1-3 (1998), pp. 203–211. [73] C. L. Lu and C. Y. Tang. “Weighted efficient domination problem on some perfect graphs”. In: Discrete Applied Mathematics 117.1-3 (2002), pp. 163–182. [74] A. Lubiw. “Doubly Lexical Orderings of Matrices”. In: SIAM J. Comput. 16.5 (1987), pp. 854–879. [75] R. M. McConnell and J. Spinrad. “Modular decomposition and transitive orientation”. In: Discrete Mathematics 201.1-3 (1999), pp. 189–241. [76] M. Milanič. “Hereditary Efficiently Dominatable Graphs”. In: Journal of Graph Theory (2012). eprint: http://dx.doi.org/10.1002/jgt. 21685. [77] G. J. Minty. “On maximal independent sets of vertices in claw-free graphs”. In: Journal of Combinatorial Theory, Series B 28.3 (1980), pp. 284–304. [78] C. Moore and J. M. Robson. “Hard Tiling Problems with Simple Tiles”. In: Discrete & Computational Geometry 26.4 (2001), pp. 573–590. [79] W. Mulzer and G. Rote. “Minimum-weight triangulation is NP-hard”. In: J. ACM 55.2 (2008), Article 11. [80] D. Nakamura and A. Tamura. “A revision of Minty’s algorithm for finding a maximum weight stable set of a claw-free graph”. In: J. Oper. Res. Soc. Japan 44.2 (2001), pp. 194–204. [81] S. D. Nikolopoulos and L. Palios. “Detecting Holes and Antiholes in Graphs”. In: Algorithmica 47.2 (2007), pp. 119–138. [82] G. Oriolo, U. Pietropaoli, and G. Stauffer. “A New Algorithm for the Maximum Weighted Stable Set Problem in Claw-Free Graphs”. In: Integer Programming and Combinatorial Optimization. Ed. by A. Lodi, A. Panconesi, and G. Rinaldi. Vol. 5035. Lecture Notes in Computer Science. Springer Berlin Heidelberg, 2008, pp. 77–96. 142 BIBLIOGRAPHY

[83] R. Paige and R. E. Tarjan. “Three Partition Refinement Algorithms”. In: SIAM J. Comput. 16.6 (1987), pp. 973–989. [84] S. Poljak. “A note on stable sets and colorings of graphs.” In: Commentat. Math. Univ. Carol. 15 (1974), pp. 307–309. [85] E. Prisner. “Graphs with few cliques.” In: Graph theory, combinatorics, algorithms and applications. Vol. 2. Proceedings of the seventh quadren- nial international conference on the theory and applications of graphs, Kalamazoo, USA, New York: Wiley, 1995, pp. 945–956. [86] V. Raghavan and J. Spinrad. “Robust algorithms for restricted domains”. In: J. Algorithms 48.1 (2003), pp. 160–172. [87] J. M. Schmidt. “A simple test on 2-vertex- and 2-edge-connectivity”. In: Inf. Process. Lett. 113.7 (2013), pp. 241–244. [88] J. Spinrad. “Doubly Lexical Ordering of Dense 0-1 Matrices”. In: Inf. Process. Lett. 45.5 (1993), pp. 229–235. [89] J. Spinrad. “Finding Large Holes”. In: Inf. Process. Lett. 39.4 (1991), pp. 227–229. [90] S. Tsukiyama, M. Ide, H. Ariyoshi, and I. Shirakawa. “A New Algorithm for Generating All the Maximal Independent Sets”. In: SIAM J. Comput. 6.3 (1977), pp. 505–517. [91] R. I. Tyshkevich and A. A. Chernyak. “Algorithms for the canonical decomposition of a graph and recognizing polarity”. Russian. In: Izvestia Akad. Nauk BSSR, Ser. Fiz. Mat. Navuk. 6 (1985), pp. 16–23. [92] R. I. Tyshkevich and A. A. Chernyak. “Decomposition of graphs”. In: Cybernetics 21.2 (1985), pp. 231–242. [93] V. V. Williams. “Multiplying matrices faster than Coppersmith-Wi- nograd”. In: STOC. Ed. by H. J. Karloff and T. Pitassi. ACM, 2012, pp. 887–898. [94] C.-C. Yen and R. C. T. Lee. “The Weighted Perfect Domination Problem and Its Variants”. In: Discrete Applied Mathematics 66.2 (1996), pp. 147– 160.