 # Polynomial Cases for the Vertex Coloring Problem

The computational complexity of the Vertex Coloring problem is known for all hereditary classes of graphs defined by forbidding two connected five-vertex induced subgraphs, except for seven cases. We prove the polynomial-time solvability of four of these problems: for (P_5, dart)-free graphs, (P_5, banner)-free graphs, (P_5, bull)-free graphs, and (fork, bull)-free graphs.

## Authors

##### This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

## 1 Introduction

Vertex coloring of graphs is one among the basic graph colorings and has a long history starting with the four color problem, and is widely studied in graph theory and in theoretical computer science. It occupies a central place in the complexity theory of algorithms and arises naturally in many real world applications such as storage problem, register allocation and time table scheduling. Recent publications show that vertex coloring problems still receive maximum attention.

A vertex coloring (or simply coloring) of a graph is an assignment of colors to the vertices of such that no two adjacent vertices receive the same color. That is, a partitioning of the vertex set of into stable sets (called color classes), where a stable set is a set of pairwise nonadjacent vertices. The minimum number of colors required to color is called the chromatic number of , and is denoted by . Given a graph , the Minimum Vertex Coloring (VC) problem is to determine the chromatic number . The VC problem is well known to be -complete in general, see , and also in may restricted classes of graphs. Lund and Yannakakis  showed that there exists a constant such that approximating the chromatic number of an arbitrary graph within a factor of is -hard, where is the number of vertices. This result is further improved by Feige and Kilian , who proved that the chromatic number cannot be approximated within a factor of , for any , unless . These algorithmic issues are main motivations for current research to study the VC problem in restricted classes of graphs.

A class of graphs is hereditary if every induced subgraph of a member of is also in . If is a family of graphs, a graph is said to be -free if it contains no induced subgraph isomorphic to any graph in . In this paper, we are interested in the VC problem for some hereditary classes of graphs which are defined by two forbidden induced subgraphs. The VC problem remains -complete even for restricted classes of graphs, such as triangle-free graphs , -free graphs , and -free graphs (see ). But, for many classes of graphs, such as perfect graphs  and for (, triangle)-free graphs , the VC problem can be solved in polynomial time. The VC problem for -free graphs is -complete , but for every fixed , the problem of coloring a -free graph with colors admits a polynomial-time algorithm . Král et al.  showed that the VC problem is solvable in polynomial time for -free graphs, whenever is a (not necessarily proper) induced subgraph of or ; otherwise, the problem is -complete. When we forbid two induced subgraphs, only partial results are known for the VC problem. The motivation of this paper is the following open problem of Golovach et al. .

###### Problem 1.1 ()

Complete the classification of the complexity of the Vertex Coloring problem for -free graphs.

We refer to  for a recent comprehensive survey and for other open problems on the computational complexity of the VC problem for classes of graphs defined by forbidden induced subgraphs, and we refer to Theorem 1 of , for the complexity dichotomy of the VC problem for some classes of graphs which are defined by two forbidden induced subgraphs. It is known that the VC problem is either -complete or polynomial time solvable for the classes of graphs which are defined by two four-vertex forbidden induced subgraphs, except for three classes of graphs namely, -free graphs, -free graphs, and for -free graphs. Recently, the complexity dichotomy of the VC problem for classes of graphs which are defined by two connected five-vertex forbidden induced subgraphs received considerable attention. The VC problem is known to be solvable in polynomial time for: , gem)-free graphs , -free graphs , ()-free graphs , ()-free graphs , and for ()-free graphs . In particular, the complexity dichotomy of the VC problem is known for classes of graphs which are defined by two connected five-vertex forbidden induced subgraphs except for the following seven cases: (fork, bull)-free graphs, and ()-free graphs, where .

In the weighted version of the problem, we are given a graph and an integer weight function on , and the Minimum Weighted Vertex Coloring (WVC) problem is to find not necessarily different stable sets such that every vertex belongs to at least of these sets. The smallest such is denoted by and is called the weighted chromatic number of ; the stable sets are called a weighted coloring of . Note that in the context of the WVC problem, the size of the input is considered to be . Hence, algorithms for weighted graphs are polynomial on the sum of weights but not necessarily on the number of vertices. However, whenever we want to solve the (unweighted) coloring problem on a graph and we reduce it to a weighted problem on an another graph, it will always be the case that the size of the reduced instance is not larger than (as can be easily checked, since the reduction usually consists in replacing a subset of vertices with one vertex of weight at most ); hence the final complexity will be polynomial in .

In this paper, using decomposition techniques, we establish structure theorems and derive the polynomial time solvability of the WVC problem for the following classes (see Figure 1), which are four of the seven open cases mentioned above:

• (, dart)-free graphs,

• (, banner)-free graphs,

• , bull)-free graphs,

• (fork, bull)-free graphs.

Rao  showed that the VC problem is polynomial-time solvable for graphs of bounded cliquewidth. Note that the cliquewidth is unbounded for each of the four classes above. This is because each class contains the class of co-triangle-free graphs, which has unbounded cliquewidth since even the class of bipartite graphs has unbounded cliquewidth (see ).

## 2 Notation and preliminaries

For notation and terminology which are not defined here, we follow . All our graphs are finite, simple and undirected. For any integer , we write to denote the set . Let , , and denote respectively the complete graph, the chordless path, the chordless cycle, and the edgeless graph on vertices. The graph is usually called a triangle. A triad in a graph is a subset of three mutually non-adjacent vertices.

Given two vertex-disjoint graphs and , the graph is the graph with and . For any positive integer , denotes the union of graphs each isomorphic to . For a graph , the complement of is denoted by . The graph is usually called the house. The complement of a dart is called a co-dart. See Figure 1 for some of the special graphs used in this paper.

Let be a graph. For we denote by the induced subgraph of with vertex-set , and we simply write instead of . If is an induced subgraph of , then we write . For a vertex , the neighborhood of is the set . Given a subset and , let denote the set .

For and , we say that a vertex is complete to if is adjacent to every vertex in , and that is anticomplete to if has no neighbor in . For two sets we say that is complete to if every vertex of is adjacent to every vertex of , and we say that is anticomplete to if no vertex of is adjacent to any vertex of .

A clique in a graph is a subset of pairwise adjacent vertices in . The maximum size of a clique in is denoted by . A clique cover of a graph is a partition of into cliques. Hence of a coloring of a graph is a clique cover of and vice-versa.

A hole in a graph is an induced cycle on at least five vertices, and an anti-hole is the complement of a hole. The length of a hole or anti-hole is the number of vertices in it. A hole or anti-hole is odd

if its length is odd. A graph

is perfect if for every induced subgraph of . The Strong Perfect Graph Theorem (SPGT)  states that a graph is perfect if and only if it does not contain an odd hole or an odd anti-hole.

A clique separator (or clique cutset) in a connected graph is a subset of vertices in such that is a clique and such that the graph induced by is disconnected. For a given graph , a -block is a maximal induced subgraph of without proper clique separators. For a class of graphs , let denotes the set of all graphs whose every -block belongs to .

###### Theorem 2.1 ()

If the WVC problem can be solved in polynomial time for a hereditary class , then it is so for .

A homogeneous set in a graph is a set such that every vertex in is either complete or anticomplete to . A homogeneous set is proper if it contains at least two vertices and is different from . A module is a homogeneous set such that every homogeneous set satisfies either or or . In particular is a module and every one-vertex set is a module. The trivial modules in are , , and all one-elementary vertex sets. A graph is prime if it contains only trivial modules. Note that prime graphs with at least three vertices are connected. It follows from their definition that the modules form a “nested” family, so their inclusion relation can be represented by a tree, and any graph has at most modules. The modules of a graph can be produced by an algorithm of linear (i.e., ) time complexity [9, 10, 31]. For a class of graphs , let denotes the set of all graphs whose every prime induced subgraph belongs to .

If the WVC problem can be solved in polynomial time for a hereditary class , then it is so for .

## 3 WVC for (P5, dart)-free graphs

Before considering (, dart)-free graphs, we first look at (, dart)-free graphs and their complements.

###### Theorem 3.1

Let be any prime (house, co-dart)-free graph that contains an odd hole of length at least . Then is triangle-free.

Proof. Let be the length of any odd hole of length at least  in . It follows that there exist non-empty and pairwise disjoint subsets of such that, for each modulo , the set is complete to , and there are no other edges between any two of these sets. Let . We choose these sets so that is inclusionwise maximal. Let be the set of vertices of that are complete to . We claim that:

 Each Ai is a stable set. (1)

Proof: Suppose that are two adjacent vertices in . Pick an arbitrary vertex for each . Then induces a co-dart. Thus (1) holds.

 For any vertex v∈V(G)∖(A∪B), the set NA(v) is a stable set. (2)

Proof: Suppose the contrary. By (1), and since , we can pick a vertex for each such that is adjacent to and and not to . Then is adjacent to for all , for otherwise induces a co-dart; but then induces a co-dart. Thus (2) holds.

 B=∅. (3)

Proof: Suppose that . Consider any and any . For each pick a vertex . By (2) and since is odd, there is an integer such that has no neighbor in , say ; moreover has a non-neighbor in . Then is adjacent to , for otherwise induces a co-dart. This means that is complete to . Since is also complete to , we deduce that is a homogeneous set, which contradicts that is prime. Thus (3) holds.

To finish the proof of the theorem, let us assume on the contrary that contains a triangle . By (1), the graph is triangle-free. Moreover, by (2) and (3), no triangle of has two vertices in . So contains at most one vertex from . Note that is connected, for otherwise the vertex-set of the component that contains would be a proper homogeneous set. So there is a shortest path from to . Let --, with , , , , and . We choose so as to minimize . We can pick vertices for each so that . If , then induces a co-dart. So . Suppose that . So . By (2) and (3), and have no neighbor in . If has no neighbor in , then induces a co-dart. If has only one neighbor in , then induces a house. So is adjacent to both , and is a triangle. Then we can repeat this argument with instead of , which leads to a contradiction since is odd. Therefore . So . Since is odd, and by (2) and (3), we may assume that is adjacent to and not to and . Then has a neighbor in , say , for otherwise induces a co-dart, and then is not adjacent to , for otherwise is a triangle that contradicts the minimality of . Then is not adjacent to , by (2) and (3), and has no neighbor in , for otherwise either is a triangle (contradicting the minimality of ) or induces a house. But then induces a co-dart, a contradiction. This completes the proof of the theorem.

###### Theorem 3.2

The Weighted Vertex Coloring problem can be solved in polynomial time in the class of (, dart)-free graphs.

Proof. Let be a (, dart)-free graph. First suppose that is prime. If has no odd anti-hole of length at least 7, then by SPGT , is perfect. Otherwise, is -free, by Theorem 3.1. Since the class of perfect graphs can be recognized in polynomial time , and since the WVC problem can be solved in polynomial time for perfect graphs , and for -free graphs , WVC can be solved in polynomial time for . By Theorem 2.2, the same holds when is not prime.

###### Lemma 3.3

Let be a prime dart-free graph. Then is -free.

Proof. Suppose to the contrary that contains an induced subgraph which is isomorphic to , for (as shown in Figure 2). Since is prime, is not a module, so there exists a vertex such that (up to symmetry) and . Then since does not induce a dart, has a neighbor in . By symmetry, we may assume that . Then since does not induce a dart, .

Suppose that . Then since does not induce a dart, . But, then induces a dart. So, is -free.

Suppose that . Then since and do not induce a dart, we have . But, then or induces a dart. So, is -free.

This shows Lemma 3.3.

###### Lemma 3.4

Let be a prime (, dart)-free graph. Then is -free.

Proof. Suppose to the contrary that contains an induced subgraph which is isomorphic to , for (as shown in Figure 2). Since is prime, is not a module, so there exists a vertex such that (up to symmetry) and . Then since does not induce a dart, has a neighbor in .

Suppose that . By symmetry, we may assume that . Since does not induce a dart, . Since does not induce a , . Since does not induce a dart, . But, then induces a dart. So, is -free.

Suppose that . First suppose that . Since and do not induce a dart, we have and . But, then induces a dart. So, , and hence . Since does not induce a dart, , and since does not induce a , . But, then induces a dart. So, is -free.

Finally, suppose that . First suppose that . Since and do not induce a dart, we have and . But, then induces a dart. So, , and hence . Since and do not induce a , we have and . Again, since is prime, is not a module in , so there exists a vertex such that (up to symmetry) and . Note that . Suppose that . If , then induces an , and if , then since does not induce a , . But, then induces a (and similar proof holds when ). So, . Then (otherwise, or induces a dart). Then since does not induce an , we have . Then since does not induce a , . But, then induces a dart. So, is -free.

This shows Lemma 3.4.

By Lemmas 3.3 and 3.4 prime (, dart)-free graphs are -free; see Figure 2.

###### Theorem 3.5

Let be a prime (, dart)-free graph that contains an induced . Then either or is -free.

Proof. Consider an induced in , with vertex-set and edge-set . We associate the following notation with , taking the indices modulo :

 Wi := {x∈V∖C∣NC(x)={vi−1,vi+1}}, Xi := {x∈V∖C∣NC(x)={vi−1,vi,vi+1}}, Yi := {x∈V∖C∣NC(x)={vi,vi+1,vi−2}}, Zi := {x∈V∖C∣NC(x)=V(C)∖{vi}}, T := {x∈V∖C∣NC(x)=V(C)}, R := {x∈V∖C∣NC(x)=∅}.

Let , , , and .

For every (mod ) the following properties hold true.

1. If and if , then , as is -free.

2. is an independent set.

1. and are cliques.

2. is complete to .

3. is complete to .

4. If , then .

1. .

2. If , then .

3. .

4. is anticomplete to .

1. If , then .

2. If , for some , then .

3. is anticomplete to .

1. If , then .

2. is -free.

1. If , then . So, if , then since is connected, .

2. Let and . Then and have the same neighbors in .

3. .

4. If , for some , then .

Proof of properties . Some of the above properties can be verified routinely and in that case we omit their proof; however, we do give a proof for those properties which are not trivial.

(2): If there are adjacent vertices and in , then induces an , which contradicts Lemma 3.4.

(3:a): If there are non-adjacent vertices and in or in , then induces a dart.

(3:b): If there are non-adjacent vertices and , then induces a .

(3:c): If there are non-adjacent vertices and , say, by symmetry, , then induces a dart.

(3:d): Suppose not. Let and let . Then up to symmetry we have the following cases. If , then induces a dart or an . If , then induces an (if ), or induces a dart (if ). If , then induces a dart (if ), or induces a (if ). If , then induces an (if ), or induces a dart (if ). If , then induces a dart or an . If , then induces a dart or . So, (3:d) holds.

(4:a): Suppose not. Then there are two vertices and in . Now, if , then induces an , and if , then induces a dart. So, (4:a) holds.

(4:b): Suppose not. Then there are two vertices and , say, up to symmetry, . Now, if , then induces a dart, and if , then induces a . So, (4:b) holds.

(4:c): The proof follows from (4:a) and (4:b).

(4:d): If there are adjacent vertices and , then induces a dart.

(5:a): Suppose not. Let and let . Up to symmetry, we have the following cases. If , then induces a dart (if ), or induces an (if ). If , then induces an (if ), or induces a dart (if ). If , then induces a dart (if ), or induces a dart (if ). So, (5:a) holds.

(5:b): Suppose not. Let and let . Then up to symmetry we have the following cases. If , then induces an (if ), or induces a dart (if ). If , then induces a dart (if ), or induces a dart (if ). Thus, (5:b) holds.

(5:c): If there are adjacent vertices and , then induces a dart.

(6:a): Suppose not. Let . Now, if , then or induces a dart, and if , then or induces a dart. Since the other cases are symmetric, these contradictions show that (6:a) holds.

(6:b): Suppose to the contrary that contains a triad, say . Consider the co-connected component of containing . Since is prime, is not a module in , so there exists a vertex in (by (6:a)) that is adjacent to and not to . Since , there exist such that , and . Then since does not induce a dart, . But, then induces a dart. So, (6:b) holds.

(7:a): Suppose not. Let be such that . Let . Now, if , then there exists such that . But, then induces a dart. So, , say . Then induces a .

(7:b): Suppose not. Then up to symmetry, let be such that and . But, then since (by (4:d)), induces a .

(7:c): Since is prime, the proof follows from (7:a) and (7:b).

(7:d): Suppose not. Let and . Then by (7:a), and , and by (5:b) we obtain . Thus, . Let be such that . Then, by (5:c), . But, then induces a .

Moreover, the following holds.

1. For every , we have . So, .

Proof: We prove for . Suppose to the contrary that . Then by , there exist three mutually non-adjacent vertices in , say , and . Let be the graph induced by , and let . Since is prime, . Then we have the following claim.

###### Claim 1

Let . Suppose that has a neighbor and a non-neighbor in . Then: (i) has exactly one neighbor in , and (ii) .

Proof of Claim 1. We may assume, up to symmetry, that and .

(): If has no neighbor in , then since does not induce a , . Similarly, since does not induce a , . Then induces a in , a contradiction. If is adjacent to both and , then since does not induce a dart, . But then induces an , which contradicts Lemma 3.4. So holds.

(): By our assumption, . We show that . Suppose not. Up to symmetry, we may assume that . By (), has exactly one neighbor in , say, by symmetry, . Now, induces a dart. So, holds. This shows Claim 1.

Since is prime, is not a module. So, by Claim 1(ii) and by symmetry, there are vertices , , in such that , , and . Then by Claim 1(i), two of the vertices in have the same neighbor in . Up to symmetry, let and have the same neighbor . Again by Claim 1(i), and . Then since does not induce a dart, . Also, since the subgraph induced by does not contain a dart, and . Then since the subgraph induced by does not contain a , we have and . But then induces a . Thus, (8) holds.

Now, we claim that:

1. is -free.

Proof: Suppose to the contrary that contains a triad, say . By the definitions of and , the set has at most one vertex from . If