Subgraph Complementation Fedor V
Total Page:16
File Type:pdf, Size:1020Kb
Subgraph Complementation Fedor V. Fomin, Petr A. Golovach, Torstein Strømme, Dimitrios M. Thilikos To cite this version: Fedor V. Fomin, Petr A. Golovach, Torstein Strømme, Dimitrios M. Thilikos. Subgraph Comple- mentation. Algorithmica, Springer Verlag, 2020, 82 (7), pp.1859-1880. 10.1007/s00453-020-00677-8. hal-03002656 HAL Id: hal-03002656 https://hal.archives-ouvertes.fr/hal-03002656 Submitted on 20 Nov 2020 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Distributed under a Creative Commons Attribution| 4.0 International License Algorithmica https://doi.org/10.1007/s00453-020-00677-8 Subgraph Complementation Fedor V. Fomin1 · Petr A. Golovach1 · Torstein J. F. Strømme1 Dimitrios M. Thilikos2 Received: 30 January 2019 / Accepted: 8 January 2020 © The Author(s) 2020 Abstract A subgraph complement of the graph G is a graph obtained from G by complement- ing all the edges in one of its induced subgraphs. We study the following algorithmic question: for a given graph G and graph class G , is there a subgraph complement of G which is in G ? We show that this problem can be solved in polynomial time for various choices of the graphs class G , such as bipartite, d-degenerate, or cographs. We complement these results by proving that the problem is NP-complete when G is the class of regular graphs. Keywords Subgraph complementation · Graph editing · Graph classes Mathematics Subject Classifcation 05C85 · 68Q25 1 Introduction One of the most important questions in graph theory concerns the efciency of rec- ognition of a graph class G . For example, how fast we can decide whether a graph is chordal, 2-connected, triangle-free, of bounded treewidth, bipartite, 3-color- able, or excludes some fxed graph as a minor? In particular, the recent develop- ments in parameterized algorithms are partially driven by the problems of recog- nizing of graph classes which difer only up to a “small disturbance” from graph * Torstein J. F. Strømme [email protected] Fedor V. Fomin [email protected] Petr A. Golovach [email protected] Dimitrios M. Thilikos [email protected] 1 University of Bergen, Bergen, Norway 2 LIRMM, Univ. Montpellier, CNRS, Montpellier, France Algorithmica classes recognizable in polynomial time. The amount of disturbance is quantifed in “atomic” operations required for modifying an input graph into the “well-behaving” graph class G . The standard operations could be edge/vertex deletions, additions or edge contractions. Many problems in graph algorithms fall into this graph modifca- tion category: is it possible to add at most k edges to make a graph 2-edge connected or to make it chordal? Or is it possible to delete at most k vertices such that the resulting graph has no edges or contains no cycles? A rich subclass of modifcation problems concerns edge editing problems. Here the “atomic” operation is the change of adjacency, i.e. for a pair of vertices u, v, we can either add an edge uv or delete the edge uv. For example, the CLUSTER EDITING problem asks to transform an input graph into a cluster graph—that is, a disjoint union of cliques—by fipping at most k adjacency relations. Besides the basic edge editing, it is natural to consider problems where the set of removed and added edges should satisfy some structural constraints. In particular, such problems were considered for complementation problems. Recall that the com- plement of a graph G is a graph H on the same vertices such that two distinct verti- ces of H are adjacent if and only if they are not adjacent in G. Seidel (see [22–24]) introduced the operation that is now known as the Seidel switch. For a vertex v of a graph G, this operation complements the adjacencies of v, that is, it removes the edges incident to v and makes v adjacent to the non-neighbors of v in G. Seidel switching a set of vertices U entails consecutively switching each vertex in the set. The result is that all adjacencies between U and its complement V(G)⧵U are fipped. The study of the algorithmic question whether it is possible to obtain a graph from a given graph class by the Seidel switch was initiated by Ehrenfeucht et al. [7]. Fur- ther results were established in [14–16, 18, 19]. Another important operation of this type is the local complementation. For a ver- tex v of a graph G, the local complementation of G at v is the graph obtained from G by replacing G[N(v)] by its complement. This operation plays crucial role in the def- inition of vertex-minors [20] and was investigated in this context (see, e.g. [6, 21]). See also [2, 17] for some algorithmic results concerning local complementations. In this paper we study the subgraph complement of a graph, which was intro- duced by Kamiński et al. [17] in their study of the clique-width of a graph. A sub- graph complement of a graph G is a graph obtained from G by complementing all the edges of one of its induced subgraphs. More formally, for a graph G and S ⊆ V(G) , we defne G ⊕ S as the graph with the vertex set V(G) whose edge set is defned as follows: a pair of distinct vertices u, v is an edge of G ⊕ S if and only if one of the following holds: • uv ∈ E(G)∧(u ∉ S ∨ v ∉ S) , or • uv ∉ E(G)∧u ∈ S ∧ v ∈ S. Thus when the set S consists only of two vertices {u, v} , the operation simply changes the adjacency between u and v, and for a larger set S, G ⊕ S changes the adjacency relations for all pairs of vertices of S. We say that a graph H is a subgraph complement of the graph G if H is isomor- phic to G ⊕ S for some S ⊆ V(G) . For a graph class G and a graph G, we say that Algorithmica there is a subgraph complement of G to G if for some S ⊆ V(G) , we have G ⊕ S ∈ G . (1) We denote by G the class of graphs such that its members can be subgraph com- plemented to G. Let G be a graph class. We consider the following generic algorithmic problem. (1) In other words, how difcult is it to recognize the class G ? In this paper we (1) show that there are many well-known graph classes G such that G is recognizable in polynomial time. We show that G O ⋅ 4 6 G • SUBGRAPH COMPLEMENT TO is solvable in (f (n) n + n ) time when is a triangle-free graph class recognizable in f(n) time. For example, this implies that (1) when G is the class of bipartite graphs, the class G is recognizable in polyno- mial time. This result is found in Sect. 3. G ⋅ 2O(d) G • SUBGRAPH COMPLEMENT TO is solvable in f (n) n time when is a d-degen- erate graph class recognizable in f(n) time. Thus when G is the class of planar graphs, class of cubic graphs, class of graph of bounded treewidth, or class of (1) H-minor free graphs, then the class G is recognizable in polynomial time. This result is found in Sect. 4. G G • SUBGRAPH COMPLEMENT TO is solvable in polynomial time when is a class of bounded clique-width expressible in monadic second-order logic (with no edge G set quantifcation). In particular, if is the class of P4-free graphs (cographs), (1) then G is recognizable in polynomial time. This result is found in Sect. 6. G G • SUBGRAPH COMPLEMENT TO is solvable in polynomial time when can be (1) described by a 2 × 2 M-partition matrix. Therefore G is recognizable in polyno- mial time when G is the class of split graphs, as they can be described by such a matrix. This result is found in Sect. 5. There are nevertheless cases when the problem is NP-hard. In particular, we prove that this holds when G is the class of regular graphs. This result is found in Sect. 7. 2 Preliminaries + We let ℕ∶={0, 1, 2 …} be the set of the natural numbers, and we let ℕ ∶=ℕ⧵{0} be the set of positive integers. For a set A and a non-negative integer k ∈ ℕ , we denote A A k ∶={A� ⊆ A ∣ A� = k} the family of all subsets of of size as k . Simple Graph A (simple) graph is a pair G∶=(V, E) , where V is a set of vertices V E ⊆ edges {u, v}∈E(G) uv and 2 is a set of . For an edge we use the shorthand Algorithmica (or equivalently, vu). For a given graph G, we refer to its vertex set as V(G), and its edge set as E(G). For a set of edges F ⊆ E(G) , we denote by V(F) the set of vertices that are contained in the edges of F, i.e. V(F)∶= uv∈F{u, v}. (Induced) Subgraph For graphs G and H we⋃ say that H is a subgraph of G, denoted by H ⊆ G if V(H) ⊆ V(G) and E(H) ⊆ E(G) .