Abstract 1 Introduction 2 Preliminaries 3 Polynomial-time algorithms 4 Hardness results 5 Conclusion References

List Coloring Ordered Graphs with Forbidden Induced Subgraphs

Marta Piecyk ORCID CISPA Helmholtz Center for Information Security, Saarbrücken, Germany
Warsaw University of Technology, Poland
Paweł Rzążewski ORCID Warsaw University of Technology, Poland
University of Warsaw, Poland
Abstract

In the List k-Coloring problem we are given a graph whose every vertex is equipped with a list, which is a subset of {1,,k}. We need to decide if G admits a proper coloring, where every vertex receives a color from its list.

The complexity of the problem in classes defined by forbidding induced subgraphs is a widely studied topic in algorithmic graph theory. Recently, Hajebi, Li, and Spirkl [SIAM J. Discr. Math. 38 (2024)] initiated the study of List 3-Coloring in ordered graphs, i.e., graphs with fixed linear ordering of vertices. Forbidding ordered induced subgraphs allows us to investigate the boundary of tractability more closely.

We continue this direction of research, focusing mostly on the case of List 4-Coloring. We present several algorithmic and hardness results, which altogether provide an almost complete dichotomy for classes defined by forbidding one fixed ordered graph: our investigations leave one minimal open case.

Keywords and phrases:
coloring, ordered graphs, forbidden induced subgraphs
Funding:
Marta Piecyk: Supported by Polish National Science Centre, grant no. 2022/45/N/ST6/00237.
Paweł Rzążewski: Supported by the National Science Centre grant 2024/54/E/ST6/00094.
Copyright and License:
[Uncaptioned image] © Marta Piecyk and Paweł Rzążewski; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Mathematics of computing Graph coloring
; Mathematics of computing Graph algorithms
Related Version:
Full Version: https://arxiv.org/abs/2509.22160
Funding:
Editors:
Meena Mahajan, Florin Manea, Annabelle McIver, and Nguyễn Kim Thắng

1 Introduction

Coloring is one of the best studied problems in graph theory, both from structural and from algorithmic point of view. In this paper we are interested in the list variant of the problem. For a fixed integer k, an instance of the List k-Coloring problem is a pair (G,L), where G is a graph and L is a function mapping each vertex of G to a subset of {1,,k} called list. We ask if G admits a proper coloring where every vertex v receives a color from its list L(v). Clearly, this problem is NP-hard for all k3 as it generalizes k-Coloring. However, the presence of lists makes it hard even for very restricted instances, like bipartite graphs.

A popular approach for such problem is to explore the complexity on restricted instances, in order to understand the boundary of tractability. One of typical sources of such restricted instances comes from considering graphs excluding certain substructures, most notably, as induced subgraphs. For a graph H, we say that a graph G is H-free if it does not contain H as an induced subgraph.

The complexity of List k-Coloring in H-free graphs is quite well-understood. Let us introduce some notation. For an integer t, by Pt we denote the t-vertex path. We use “+” to denote disjoint union of graphs, so H1+H2 denotes the graph with two components, one isomorphic to H1 and the other one to H2. We also write rH to denote the disjoint union of r copies of H.

Classic hardness reductions imply that if H is not a linear forest (i.e., a forest of paths), then already List 3-Coloring is NP-hard for H-free graphs [9, 15, 17]. On the other hand, for every k, the List k-Coloring problem in H-free graphs is polynomial-time solvable if (a) H is an induced subgraph of rP3, for some r [10, 3, 12], or (b) H is an induced subgraph of P5+rP1, for some r [14, 5].

For k5, all remaining cases are NP-hard [11, 16, 5]. The List 4-Coloring problem is NP-hard for P6-free graphs [11, 16], which leaves a number of open cases for disconnected H.

The case of List 3-Coloring is much more elusive. It is known to be in P for P7-free [2] and in (P6+rP3)-free graphs [4]. The general belief in the community is that List 3-Coloring in H-free graphs should be solvable in polynomial time for any linear forest H. This belief is supported by the existence of a quasipolynomial-time algorithm for all that cases [18]. This is a strong indication that the problem is not NP-hard. However, we seem to be very far from improving the quasipolynomial algorithm to a polynomial one.

Motivated by the notorious open case of k=3, Hajebi, Li, and Spirkl [13] considered a slightly different setting. An ordered graph is a graph with a fixed linear order of vertices. For ordered graphs G and H, we say that H is an induced subgraph of G if it can be obtained from G by deleting vertices. Thus, the relative ordering of vertices of H must coincide with the relative ordering of their images in G. Now, the notion of H-free (ordered) graphs is a natural one: we forbid H as an induced (ordered) subgraph.

We remark that this setting allows us to understand the distinction between easy and hard cases even better. Indeed, excluding H as an unordered induced subgraph is equivalent to excluding all possible orderings of H. But what if we exclude just one, or few possible orderings?

As a motivating example, consider the case that H=P3. The class of unordered P3-free graphs is very simple: every connected component of such a graph is a clique. Consequently, List k-Coloring is polynomial-time-solvable for every k.

Now let us look at the ordered setting. Up to isomorphism, there are three possible orderings of P3, i.e., , , and . It turns out that forbidding at least one of , leads to a problem that is in P for every fixed k. (As observed by Hajebi et al. [13], the instances of such a problem are chordal, see Proposition 1). However, List k-Coloring is NP-hard in -free ordered graphs for all k3 [13].

The results obtained by Hajebi et. al [13] are listed in Table 1. Let us make a few comments about implications between results. First, if H is an unordered graph, then hardness for H-free graphs implies hardness when we exclude any ordering of H. Second, since we consider the list problem, an algorithm for List k-Coloring implies an algorithm for List (k1)-Coloring and the hardness for List (k1)-Coloring implies the hardness for List k-Coloring. Third, if H is an induced subgraph of H, then the algorithm for H-free graphs implies the algorithm for H-free graphs, and hardness for H-free graphs implies hardness for H-free graphs. Finally, if H is an ordered graph obtained from H by reversing the ordering of vertices, the complexity in H-free and H-free graphs is the same.

Table 1: Complexity of List k-Coloring for H-free ordered graphs: state of the art. Green/red cells indicate that the problem is in P/NP-hard. Empty dots indicate vertices that might, but do not have to exist (the number of such vertices is arbitrary).
Forbidden H k=3 k=4 k5
[13] Theorem 3
[13] + folklore
[13] Theorem 5 ?
[13] Theorem 11
? Theorem 12
?
? ? ?
other [13]

In this paper we consider the complexity of List k-Coloring for k4 in ordered H-free graphs. Let us briefly discuss our results, see also Table 1.

We show that if H has one edge, then List k-Coloring is polynomial-time-solvable in H-free graphs, for any fixed k; see Theorem 3. This extends earlier result of Hajebi et al. [13] for k=3. Even though our algorithm works for every k, it is significantly simpler and has better complexity bound. Our approach is based on branching which allows us to obtain a family of “cleaned” instances that can be efficiently solved by dynamic programming.

We also show that List 4-Coloring can be solved in polynomial time for graphs that exclude a graph consisting of a copy of preceded by an arbitrary number of isolated vertices; see Theorem 5. This algorithm is much more involved than the one from Theorem 3 and is the main algorithmic contribution of the paper. It consists of a few phases of branching that again lead us to a “cleaned” instance. In such an instance we remove certain edges. We remark that in general such an operation is not safe in H-free graphs as it might take us outside the class. However, we argue that in our case we can indeed do it. Finally, we reduce the problem to solving List 4-Coloring for a chordal graph, which can be done in polynomial time.

In stark contrast, in Theorem 11 we show that if H is a graph consisting of a copy of , followed by a single isolated vertex, then List 4-Coloring is NP-hard in H-free graphs. We remark that this is also where the complexity of List 4-Coloring differs from the complexity of List 3-Coloring. Indeed, the latter problem is in P in classes defined by forbidding any graph obtained by adding isolated vertices before and after a copy of .

Finally, in Theorem 12 we show that List 4-Coloring is NP-hard for -free graphs; this is one of the open cases for List 3-Coloring.

We also look at the closely related List Coloring problem, where the number of colors is not bounded; see Appendix. Unsurprisingly, this problem turns out to be NP-hard in H-free graphs for all graphs H with at least three vertices. If H has two vertices, the problem is actually trivial.

The paper is concluded with several open questions and possible directions for further research.

Proofs of the statements marked with can be found in the full version of the paper.

2 Preliminaries

For a positive integer n, by [n] we denote the set {1,,n}. For two positive integers i,j such that i<j by [i,j] we denote {i,i+1,,j}. For a set X, by 2X we denote the set of all subsets of X, and by (Xk), where kN, we denote the set of all k-element subsets of X.

For k,, by 𝖱𝖺𝗆(k,) we denote the Ramsey number of k and , i.e., the minimum number n such that every graph on n vertices contains either a clique on k vertices or an independent set on vertices. It is known that for every k,, the number 𝖱𝖺𝗆(k,) exists [19].

Ordered graphs.

An ordered graph G is a graph given with a linear ordering of its vertices. For two vertices u,v, we write uv if u appears the ordering earlier than v.

We say that u is a forward neighbor (resp., backward neighbor) of v if uvE(G) and vu (resp., uv). The set of forward (resp., backward) neighbors of v is denoted by N+(v) (resp., N(v)).

Special graphs.

Let us define some special ordered graphs that will be crucial for us.

For a non-negative integer , the vertex set of consists of +2 vertices v1,,v+2, ordered so that vivj for i<j, and the edge set consists of one edge v1v+2.

For a non-negative integer , the vertex set of consists of 3+2 vertices v1,,v3+2, ordered so that vivj for i<j, and the edge set consists of one edge v+1v2+2.

The vertex set of consists of three vertices v1,v2,v3 ordered so that v1v2v3, and the edge set consists of two edges v1v2,v1v3.

1

The vertex set of 1 consists of four vertices v1,v2,v3,v4 ordered so that v1v2v3v4, and the edge set consists of two edges v1v2,v1v3.

For a non-negative integer , the vertex set of consists of +3 vertices v1,,v+3 ordered so that ordered so that vivj for i<j, and the edge set consists of two edges v+1v+2,v+1v+3.

The vertex set of consists of four vertices v1,v2,v3,v4, ordered so that v1v2v3v4, and the edge set consists of two edges v1v4,v2v3.

A graph G is chordal if it contains no cycle on at least 4 vertices as an induced subgraph. The following observation by Hajebi et al. [13] will be useful.

Proposition 1 (Hajebi et al. [13]).

A graph G is chordal if and only if there exists a linear ordering of V(G) such that G (as an ordered graph) is -free.

List coloring.

The instance of the List Coloring problem is (G,L), where G is a graph and L:V(G)2 is a list function. We ask whether G admits a proper coloring such that every vertex receives a color from its list. For a fixed integer k, the List k-Coloring is a restriction of List Coloring, where every list is a subset of [k].

The following result of Edwards [8] will be useful for us.

Theorem 2 (Edwards [8]).

For every k, there is a polynomial-time algorithm that solves every instance (G,L) of List k-Coloring such that for every vV(G), it holds |L(v)|2.

3 Polynomial-time algorithms

In both algorithm presented in this section we will use two simple reduction rules. Let (G,L) be an instance of List k-Coloring for some k.

  1. (R1)

    If there is vV(G) such that L(v)=, then return NO.

  2. (R2)

    For vV(G) such that L(v)={a}, remove a from lists of all neighbors of v, and remove v from G.

Clearly, the reduction rules are safe and their exhaustive application can be performed in polynomial time.

3.1 𝑯-free graphs where |𝑬(𝑯)|=𝟏

In this section we prove the following result.

Theorem 3.

Let H be a fixed ordered graph with one edge. For every k, the List k-Coloring problem is polynomial-time solvable in H-free ordered graphs.

Proof.

Observe that every graph H with one edge is an induced subgraph of , for some |V(H)|. Thus, it is sufficient to consider the case that H= . We can also assume that 1, as for =0 the problem is trivial: all instances are edgeless.

We proceed by induction on k; the case k2 is obvious. Thus suppose that k3 and the claim holds for k1. Let (G,L) be an n-vertex instance of List k-Coloring such that G is an -free ordered graph.

Branching.

We first verify if there is a list coloring c:(G,L)[k] such that some color i[k] is used on at most 21 vertices; for every i[k], and for every AiV(G) of size at most 21, we create an instance (G1,L1) from (G,L) as follows:

  1. 1.

    for every vAi, we remove from L(v) all colors but i,

  2. 2.

    for every vV(G)Ai, we set its list to L(v){i},

  3. 3.

    we exhaustively apply reduction rules (R1) and (R2).

Note that now (G1,L1) can be seen as an instance of List (k1)-Coloring, and thus, it can be solved in polynomial time by the inductive assumption.

So since now we can assume that for every list coloring c:(G,L)[k], every color i[k] is used on at least 2 vertices. Now we branch on the choice of first and last vertices in each color, i.e., for every (2k)-tuple 𝖠=(A1,,Ak,B1,,Bk) of pairwise disjoint sets, each of size , where Ai precedes Bi, we create from (G,L) an instance (G𝖠,L𝖠) as follows:

  1. 1.

    for every i[k], for vAiBi, we remove from L(v) all colors but i,

  2. 2.

    for every i[k], for every vV(G)(AiBi), if v precedes the last vertex of Ai or the first vertex of Bi precedes v, then we remove i from L(v),

  3. 3.

    we exhaustively apply reduction rules.

Consider such an instance (G𝖠,L𝖠). Let i[k], and let Xi be the set of vertices v in G𝖠 with iL𝖠(v).

Claim 4 ().

For every i[k], the graph G𝖠[Xi] is -free.

Dynamic programming.

So since now, we assume that we are dealing with an instance that satisfies the property from Claim 4. For simplicity, let us denote the current instance (G,L), omitting the subscript 𝖠.

Let v1vn denote the vertices of G. Moreover, for j[n], we define Vj={v1,,vj}. Let j[n], let 𝒞j denote the family of all k-tuples of pairwise disjoint independent subsets of Vj, each of size at most . We say that a list coloring c:(G[Vj],L)[k] is compatible with (C1,,Ck)𝒞j if, for every i[k], the following hold: if |Ci|1, then c1(i)=Ci, and if |Ci|=, then Ci is the set of last vertices of Vj colored with i.

For every j[n], we will construct a table 𝖳𝖺𝖻j of entries, indexed by all elements of 𝒞j; note that the total size of of all tables is bounded by nnkw. We will set 𝖳𝖺𝖻j[(C1,,Ck)] to true if and only if there exists a list coloring of (G[Vj],L) that is compatible with (C1,,Ck). Clearly, (G,L) is a yes-instance of List k-Coloring if and only if 𝖳𝖺𝖻n contains at least one true entry. So it remains to show how to compute the entries efficiently.

First, we set 𝖳𝖺𝖻1[C1,,Ck] to true if and only if there is iL(v1) such that Ci={v1} and Ct= for ti. So now assume that j2, we computed all entries for 𝖳𝖺𝖻j1, and let (C1,,Ck)𝒞j. If there is no tL(vj) such that vjCt, we set 𝖳𝖺𝖻j[C1,,Ck] to false. So now assume that such t exists; clearly it is unique. We set 𝖳𝖺𝖻j[(C1,,Ck)] to true if and only if at least one of following conditions is satisfied.

  1. 1.

    𝖳𝖺𝖻j1[(C1,,Ct{vj},,Ck)] is true.

  2. 2.

    |Ct|= and there exists xVj1 such that: (i) x precedes all the vertices of Ct, (ii) x is non-adjacent to Ct, and (iii) for Ct=Ct{vj}{x}, we have that 𝖳𝖺𝖻j1[(C1,,Ct1,Ct,Ct+1,,Ck)] is true.

Clearly, all table entries can be computed in polynomial time in n.

Correctness.

The full proof of the correctness can be found in the full version of the paper (). Let us only mention how we use -freeness here. In general, it might happen that for some j, there exists xVj1 such that Ct{x} is an independent set and there is a coloring c of Vj1 compatible with (C1,,Ct1,Ct{vj}{x},Ct+1,,Ck), but such a coloring cannot be extended to Vj by c(vj)=t since there is some neighbor y of vj such that c(y)=t. In our case, existence of such a vertex y yields an induced copy of on vertices of Xt, which contradicts Claim 4. This completes the proof.

3.2 -free graphs

Theorem 5.

For every fixed , List 4-Coloring can be solved in polynomial time on -free ordered graphs.

Proof.

Let G be an ordered n-vertex -free graph, given with a list function L:V(G)2[4]. We start with checking if G contains a K5 and, if so, we immediately reject the instance. This can be done in polynomial time by brute force.

First, suppose there is a list 4-coloring of G such that for some i[4], at most 1 vertices receive color i. We might exhaustively guess such an i and the set of vertices colored i, remove them from the graph, and remove i from the lists of all remaining vertices. This way we reduced the problem to solving a polynomial number of instances of List 3-Coloring, each of which can be solved in polynomial time by using the result of Hajebi et al. [13, Theorem 22], mentioned in Table 1.

So, from now on let us focus on looking for a list 4-coloring, where each color appears at least times. The algorithm consists of four main phases.

Phase 1.

For each i[4], we exhaustively guess the first vertices that will receive color i. More precisely, for every 4-tuple 𝒜=(A1,A2,A3,A4) of pairwise disjoint independent sets, each of size , we create an instance as follows.

  1. 1.

    For every i[4] and every vertex vAi, we set the list of v to L(v){i}.

  2. 2.

    For every i[4], we remove i from lists of all vertices not in Ai that precede the last vertex of Ai.

  3. 3.

    We exhaustively apply reduction rules.

Observe that as we assumed that in any list 4-coloring of G there are at least vertices in each color, (G,L) is a yes-instance if and only if at least one of the created instances is a yes-instance. Furthermore, the number of branches in Phase 1 is at most n4, which is polynomial. Consider one such branch for 𝒜=(A1,A2,A3,A4) and let (G1,L1) be the current instance. Before we proceed to Phase 2, let us analyze the properties of (G1,L1).

Claim 6 ().

Let x,y,zV(G1) be such that {x,y,z} induces a , where xyz. Then L1(x)L1(y)L1(z)=.

Let us classify forward neighbors of a vertex v. We say that a forward neighbor u of v is safe (in (G1,L1)) if L1(u)L1(v), and otherwise it is dangerous. Now, for every vertex we can bound the number of its safe forward neighbors.

Claim 7 ().

Let vV(G1) and let iL1(v). Then v has at most 3 forward neighbors whose list contains i. Consequently, v has at most 12 safe forward neighbors.

We say that a vertex v is bad if it has at least 3+4 dangerous forward neighbors. If v is not bad, then it is good. Let 𝖡𝖺𝖽 and 𝖦𝗈𝗈𝖽 denote, respectively, the sets of bad and good vertices.

Let us make a few comments about bad and good vertices. First, every v𝖡𝖺𝖽 has list of size 2. Indeed, the reduction rules assert that there are no vertices with lists of size at most one, and if the list of v has at least three elements, then there are no vertices with lists disjoint with L1(v) (and in particular v has no dangerous forward neighbors). Second, for analogous reasons, all dangerous forward neighbors of a bad vertex v have the same list, i.e., [4]L1(v). Finally, if v is good, ˜7 implies that v has at most 12+(3+3)=3+15 forward neighbors.

Claim 8 ().

Let v be a bad vertex. Let B be the set of all vertices u𝖡𝖺𝖽 with uv for which L1(u)L1(v). Then v is non-adjacent to at most 𝖱𝖺𝗆(5,)1 vertices of B.

Phase 2.

We proceed further with the instance (G1,L1). We consider two cases depending on the size of 𝖦𝗈𝗈𝖽. First, if |𝖦𝗈𝗈𝖽|<𝖱𝖺𝗆(5,), then we can exhaustively guess coloring on 𝖦𝗈𝗈𝖽. More precisely, for each c:𝖦𝗈𝗈𝖽[4] we create a corresponding instance by setting the list of every v𝖦𝗈𝗈𝖽 to L1(v){c(v)} and then exhaustively applying reduction rules.

The number of instances created this way is at most 4𝖱𝖺𝗆(5,)1, which is a constant as is fixed. Since every bad vertex has list of size 2, in any produced instance, every vertex must have a list of size 2. Here we emphasize that the vertices in the newly created instances might become good, but they were bad before the guessing and their lists could only shrink. Therefore, applying Theorem 2, we can solve each instance in polynomial time. This completes the proof in this case.

So since now, we can assume that |𝖦𝗈𝗈𝖽|𝖱𝖺𝗆(5,). Let D be the set of first 𝖱𝖺𝗆(5,) good vertices. We exhaustively guess the coloring of DN+(D), i.e., for every c:DN+(D)[4], we create a corresponding instance by setting the list of every vDN+(D) to L1(v){c(v)} and applying reduction rules exhaustively.

Recall that every good vertex has at most 3+15 forward neighbors, and thus the size of DN+(D) is bounded by |D|+|D|(3+15)=𝖱𝖺𝗆(5,)(3+16). Therefore, the number of instances created in Phase 2 is at most 4𝖱𝖺𝗆(5,)(3+16), which is again constant for fixed .

Consider one such instance and denote it by (G2,L2). We partition the vertex set of G2 into sets P,S called prefix and suffix so that in P are all vertices that in G1 precede the last vertex of D, and S contains the remaining vertices of G2. Observe that all vertices in P were bad at the end of Phase 1, i.e., before we guessed a coloring on DN+(D). In the instance (G2,L2) they do not have to be bad, but we do not care if they are bad now. We will only use the facts that (i) they have lists of size 2 and (ii) ˜8 holds for all vertices of P. Indeed, note that reduction rules did not increase the size of lists or the number of non-neighbors.

Moreover, observe that the graph induced by S is -free. Indeed, since all vertices of S were not removed by reduction rules applied after the branching in Phase 2, there are no edges between D and S. Moreover, since G has no K5, there is an independent set DD of size . Consequently, if G[S] contained an induced , then, together with D, it would form an induced in G, a contradiction. We proceed to the third phase.

Phase 3.

Let (G2,L2) be an instance produced in Phase 2. For X([4]2), by PX we denote the set of vertices of P with list X; recall that each vertex of P is bad and thus has list of size 2. If, for some X, the set PX does not induce a bipartite graph, we can immediately terminate the current call and reject. So assume that, for each X, the graph G[PX] is bipartite. We consider two cases.

If |PX|<2, then we exhaustively guess the coloring of PX, i.e., for every c:PXX, we create a corresponding instance by setting the list of every vPX to L2(v){c(v)} and applying reduction rules exhaustively. The number of instances created in this case is at most 221, i.e., a constant.

Now let us assume that |PX|2. Denote X={i,j}, and suppose that we are dealing with a yes-instance, i.e., there is a coloring c of G2 respecting lists L2. Observe that one of the following holds.

  1. (C1)

    For some ι{i,j}, at most 1 vertices of PX receive color ι in c.

  2. (C2)

    Each of colors i,j appears at least times on PX in c.

We create the following instances, corresponding to the cases above.

  1. (I1)

    For every ιX and every set UPX of size at most 1, we create a corresponding instance by setting the list of every vertex vU to L2(v){ι}, and the list of every vertex vPXU to L2(v){ι}.

  2. (I2)

    For every pair (UX,i,UX,j), where UX,i,UX,j are disjoint independent sets contained in PX, each of size , we create a corresponding instance in the following way: (i) for every vertex vUXi, we set its list to L2(v){i}, (ii) for every vertex vUX,j, we set its list to L2(v){j}, and (iii) for every vertex u of PXUX,i preceding the last vertex of UX,i, we remove i from L2(u), and (iv) and for every vertex u of PXUX,j preceding the last vertex of UX,j, we remove j from L2(u).

We exhaustively apply reduction rules to all created instances. The number of instances created in this case is at most n2.

The intended role of the set UX,i (resp., UX,j) in (I2) is that it contains the first vertices of PX colored i (resp., j). If (G2,L2) is a yes-instance, and there is coloring satisfying (C1), then at least one of the instances created in (I1) is a yes-instance, and if there is a coloring satisfying (C2), then at least one of the instances created in (I2) is a yes-instance. Thus, if (G2,L2) is a yes-instances, then at least one of the instances created in Phase 3 is a yes-instance. The total number of instances created in this phase is at most (42)n2, i.e., polynomial in n.

Let us analyze an instance (G3,L3) created in Phase 3. Recall that all vertices of PV(G3) have lists of size 2.

Claim 9 ().

For any two vertices v,vPV(G3), either L3(v)=L3(v) or L3(v)L3(v)=. In particular, at most two distinct lists might appear among the vertices of P in (G3,L3).

We proceed to Phase 4. We emphasize that sets P and Good are not redefined with respect to the current instance.

Phase 4.

Let (G3,L3) be an instance given by Phase 3. By ˜9, there are at most two distinct lists on PV(G3), and by symmetry, we can assume that every vertex of P in (G3,L3) has list either {1,2} or {3,4}. Furthermore, if for X={i,j}{{1,2},{3,4}}, we have PXV(G3), then (G3,L3) corresponds to a branch of type (I1), i.e., a branch for the sets UX,i,UX,j. Let Y be the set of vertices in G3 that consists of safe forward neighbors of U{1,2},1 (if P{1,2}V(G3)) and safe forward neighbors of U{3,4},3 (if P{3,4}V(G3)).

For every c:Y[4], we create a corresponding instance as follows:

  1. 1.

    for every vY, we set the list of v to L3(v){c(v)},

  2. 2.

    we exhaustively apply reduction rules,

  3. 3.

    we remove all edges whose one endpoint has list {1,2} and the other {3,4}, and at least one endpoint is in P.

By ˜7, each vertex has at most 12 safe forward neighbors and thus, we guess a coloring on at most 122=24 vertices. Therefore, the number of instances created in this phase is at most 424. Note that the edges removed in the final step do not matter for coloring, so we obtain an equivalent instance. Let (G4,L4) be an instance obtained in this phase. We point out that in general, if we remove edges in a (ordered) graph which is F-free for some graph F, it does not have to stay F-free. However, in our case, we will show that the resulting graph is even -free.

Claim 10 ().

G4 is -free.

Summing up, the instances obtained in Phase 4 are -free and thus chordal. Chordal graphs of bounded clique number have bounded treewidth, and thus, each obtained instance can be solved in polynomial time by standard dynamic programming on tree decomposition (see for example [6]). This completes the proof.

Let us conclude this section with brief discussion why the approach from Theorem 5 fails for more than 4 colors. In general, in List k-Coloring, it is beneficial if adjacent vertices have intersecting lists. This way deciding on a color of one vertex allows to shrink the list of the other, see e.g. [18, 1]. On the other hand, adjacent vertices with disjoint lists of size at least 2 often appear in hardness proofs of List k-Coloring for k4, see Section 4 or, e.g., [1].

In the proof of Theorem 5, we called (forward) neighbors of v with list disjoint from L(v) dangerous and dealing with them was the most technically involved part of the argument. The crucial property that was very useful here is that every dangerous forward neighbor of v has the same list, i.e., [4]L(v). This enforces many constraints on possible lists of vertices.

Already for List 5-Coloring, a vertex v can have several types of forward neighbors with list disjoint from L(v), and this is the main obstacle in generalizing our approach to more than 4 colors.

4 Hardness results

The proof of the following theorem can be found in the full version of the paper.

Theorem 11 ().

List 4-Coloring is NP-hard on 1-free ordered graphs.

In this section we show the following hardness result.

Theorem 12.

List 4-Coloring is NP-hard on -free graphs.

The construction.

First, let us describe the main building blocks in our reduction. For positive integers ,, a link is a tuple (F,(x1,,x),(y1,,y)), where F is an ordered graph, and (x1,,x) and (y1,,y) are tuples of vertices of F, such that:

  1. 1.

    x1,,x are, in this order, the first vertices of F,

  2. 2.

    y1,,y are, in this order, the last vertices of F,

  3. 3.

    sets {x1,,x} and {y1,y} are disjoint and independent,

  4. 4.

    F is -free.

The vertices x1,,x (resp., y1,,y)) are called input (resp., output) vertices of the link.

The properties of links allow us combine them, without creating the forbidden subgraph. This operation, that we call chaining, is formally described in the following lemma.

Lemma 13 ().

Let (F1,(x11,,x1),(y11,,y1)) and (F2,(x12,,x2),(y12,,y′′2)) be two links on disjoint sets of vertices. The ordered graph F obtained from F1 and F2 by identifying yi1 with xi2 for each i[] is a link.

In our reduction we will use gadgets that are links enriched by a list function. We will also speak about chaining gadgets – in such a situation, we always ensure that the lists of vertices that are identified are equal. Thus, the operation is straightforward.

The main gadget used in our hardness proof is a NAE gadget.

Definition 14 (NAE gadget).

Let n and let I([n]3) be a set of pairwise disjoint subsets of [n], each of size 3. A NAE gadget (for I) is a tuple (C,(x1,,xn),(y1,,yn),L), where (C,(x1,,xn),(y1,,yn)) is a link and L:V(C)2[4] is a list function, such that:

  1. (C1)

    For every i[n], it holds that L(xi)=L(yi)={1,2}.

  2. (C2)

    For every f:{x1,,xn}{1,2} such that for every {i,j,k}I, it holds that {f(xi),f(xj),f(xk)}={1,2}, we can extend f to a coloring of (C,L).

  3. (C3)

    For every coloring f of (C,L), it holds that:

    1. (a)

      for every i[n], f(xi)=f(yi),

    2. (b)

      for every {i,j,k}I, it holds that {f(xi),f(xj),f(xk)}={1,2}

For simplicity of notation, we will denote the gadget by C.

Intuitively, the gadget plays two roles. First, it transfers the coloring of input vertices to their corresponding output vertices. Second, it makes sure that for every triple in I, the input/output vertices corresponding to that triple are not monochromatic or, in other words, not all equal (NAE). The following lemma is the main technical ingredient of our hardness proof.

Lemma 15.

Let n and let I([n]3) be a set of pairwise disjoint subsets of [n], each of size 3. In time polynomial in n, we can construct a NAE gadget for I.

Let us postpone the proof of Lemma 15, and first let us show Theorem 12 assuming that Lemma 15 holds.

Proof of Theorem 12.

We reduce from Positive NAE-3-Sat. An instance of this problem consists of a set of boolean variables and a set of clauses, each containing exactly three variables (none of them is negated). We ask if there exists a truth assignment in which each clause contains a true and a false variable, i.e., for each clause, the variables in it are not all equal.

Let Φ be an instance of Positive NAE-3-Sat with variables v1,,vn and clauses C1,,Cm. We can assume that every variable appears at most four times [7]. In polynomial time, we will construct an instance (G,L) of List 4-Coloring such that:

  1. 1.

    G is an ordered -free graph,

  2. 2.

    (G,L) admits a proper coloring if and only if Φ is satisfiable.

As each clause has three variables and each variable appears in at most four clauses, we can greedily partition the set of clauses into 10 pairwise disjoint subsets; denote them by 𝒞1,,𝒞10 (we can think of this as a greedy edge coloring of a hypergraph: for each hyperedge, each its vertex blocks at most three colors). For s[10], we define Is([n]3) so that {i,j,k}Is, if and only if there is a clause {vi,vj,vk} in 𝒞s.

Now we are ready to construct the instance (G,L). We start with introducing NAE gadgets CI1,,CI10, for, respectively, I1,,I10. For s[10], let us denote the input (resp., output) vertices of CIs by by (x1s,,xns) (resp., (y1s,,yns)). Next, we chain gadgets CI1,,CI10, i.e., for every s[9], we identify the output vertices of CIs with input vertices of CIs+1. This completes the construction of (G,L).

As each gadget is in particular a link, a repeated application of Lemma 13 yields that G is -free. Thus, we are left with proving the equivalence of instances.

Suppose that Φ is satisfiable and let ψ:{v1,,vn}{true,false} be a satisfying assignment. For every i[n], we set f(xi1)=1 if ψ(vi)=true, and f(xi1)=2 if ψ(vi)=false. Since for every clause {vi,vj,vk}𝒞1, we have {ψ(vi),ψ(vj),ψ(vk)}={true,false}, and thus, for every {i,j,k}I1 we have {f(xi1),f(xj1),f(xk1)}={1,2}, we can extend this coloring to a coloring of the whole gadget CI1. Since for every i[n], we have that f(xi1)=f(yi1)=f(xi2), we can repeat the reasoning inductively for every s[10] and extend f to all vertices of G.

Now suppose that there is a proper coloring f of (G,L). We define ψ:{v1,,vn}{true,false} so that ψ(vi)=true if f(xi1)=1 and ψ(vi)=false if f(xi1)=2. Let us verify that ψ satisfies Φ. Suppose that there is a clause Cq={vi,vj,vk} which is not satisfied, i.e., all vi,vj,vk are either set true or set false by ψ. By property (C3) (a), this means that for every s[10], we have f(xis)=f(xjs)=f(xks). As Cq𝒞s for some s[10], we obtain a contradiction with property (C3) (b) of a NAE gadget. This completes the proof.

From NOT-𝒄𝒄𝒄 gadgets to NAE gadgets.

We will construct NAE gadgets in several steps. First, let us show that in order to construct a NAE gadget, it is sufficient to construct its restricted variant, called NOT-ccc gadget.

Definition 16 (NOT-ccc gadget).

Let c{1,2}. Let n and let I([n]3) be a set of pairwise disjoint subsets of [n], each of size 3. A NOT-ccc gadget (for I) is a tuple (Cc,(x1,,xn),(y1,,yn),L), where (Cc,(x1,,xn),(y1,,yn)) is a link and L:V(Cc)2[4] is a list function, such that:

  1. (C1)

    For every i[n], it holds that L(xi)=L(yi)={1,2}.

  2. (C2)

    For every f:{x1,,xn}{1,2} such that for every {i,j,k}I, it holds that {f(xi),f(xj),f(xk)}{c}, we can extend f to a coloring of (Cc,L).

  3. (C3)

    For every coloring f of (Cc,L), it holds that:

    1. (a)

      for every i[n], f(xi)=f(yi),

    2. (b)

      for every {i,j,k}I, it holds that {f(xi),f(xj),f(xk)}{c}

As usual, we will simply denote the gadget by Cc.

Let us emphasize the difference between a NAE gadget and a NOT-ccc gadget. The first one is responsible for ensuring that for each triple in I, the colors assigned to the corresponding vertices are not all 1 and not all 2. The role of a NOT-ccc gadget is to ensure that the vertices corresponding to each triple in I are not all colored c, where c{1,2}. Thus, a NAE gadget is simultaneously a NOT-111 gadget and a NOT-222 gadget.

As the gadget not only forbids some colorings, but also copies the coloring of the input to the output, we immediately obtain the following observation.

Observation 17.

Chaining a NOT-111 gadget and a NOT-222 yields a NAE gadget.

Thus, in order to prove Lemma 15, it is sufficient to build a NOT-ccc gadget for c{1,2}.

Permutation gadgets.

On the way to the proof of Lemma 15, we will first construct another type of a gadget.

Definition 18 (Permutation gadget).

Let , and let σ:[][] be a permutation. A permutation gadget (for σ) is a tuple (Pσ,(x1,,x),(y1,,y),L), where (Pσ,(x1,,x),(y1,,y)) is a link and L:V(Pσ)2[4] is a list function, such that:

  1. (P1)

    For every i[], it holds that L(xi)=L(yi)={1,2}.

  2. (P2)

    Every mapping f:{x1,,x}{1,2} can be extended to a coloring of (Pσ,L).

  3. (P3)

    For every coloring f of (Pσ,L), for every i[], it holds that f(xi)=f(yσ(i)).

Again, we will shortly denote a permutation gadget for σ by Pσ. Intuitively, the role of a permutation gadget is to transfer the coloring of the input to the output, but after applying σ on it. We will show that we can efficiently construct permutation gadgets.

Lemma 19.

Let , and let σ:[][] be a permutation. In time polynomial in , we can construct a permutation gadget for σ.

Let us break the proof of Lemma 19 in three steps.

First, we observe that that chaining permutation gadgets yields a permutation gadget for the composition of permutations: this follows directly from Lemma 13 and the definition of a permutation gadget.

Observation 20.

For , let σ,σ:[][] be two permutations and let Pσ,Pσ be their corresponding permutation gadgets. Let P be obtained by chaining Pσ with Pσ. Then, P is a permutation gadget for σσ.

Thus, in order to show Lemma 19, it is enough to construct permutation gadgets for some basic permutations that can be composed into an arbitrary permutation. These basic permutations are rotations. For integers jk, a rotation, denoted by ;j,k is a permutation of such that:

;j,k(i)={i if i<j or i>ki+1 if ji<kj if i=k.

In other words, ;j,k performs a cyclic shift on elements {j,,k}, leaving the remaining ones untouched. In particular, if j=k, then ;j,k is an identity.

Observation 21 ().

Every permutation σ:[][] can be written as the composition of 1 rotations.

Thus, in order to prove Lemma 19, it is sufficient to show how to construct permutation gadgets for rotations. We do this in the next lemma, consult also Figure 1.

Figure 1: A permutation gadget for the rotation ;3,5.
Lemma 22.

Let j<k be integers. In time polynomial in , we can construct a permutation gadget for ;j,k.

Proof.

The gadget has 5+2 vertices. We partition them into five sets S1,,S5 such that |S1|=|S3|=|S5|= and |S2|=|S4|=+1 in a natural way: the first vertices belong to S1, next +1 vertices belong to S2 and so on. For p[5], the i-th vertex of Sp is denoted by sip.

The lists of vertices of the gadget are as follows:

L(s)={{1,4} if s{sk2,sj4}{2,3} if s{sk+12,sj+14}{3,4} if s=sk3{1,2} otherwise.

The edge set of the gadget consists of the following elements:

Between S1 and S2:

si1si2 for i[k] and si1si+12 for i[k,],

Between S2 and S3:

si2si3 for i[k] and si2si13 for i[k+1,+1],

Inside S3:

sk3si3 for i[]{k},

Between S3 and S4:

si3si4 for i[j1] and si3si+24 for i[j,k1] and sk3sj4,sk3sj+14, and si3si+14 for i[k+1,],

Between S4 and S5:

si4si5 for i[j] and si4si15 for i[j+1,+1].

This completes the construction of the gadget P;j,k: the input vertices are S1 and the output vertices are S5. It can be shown that P;j,k satisfies the desired properties (), which completes the proof.

Now, Lemma 19 follows directly from Observation 20, Observation 21, and Lemma 22,

Indicator gadgets.

The next type of a gadget that we will need is an indicator.

Throughout this paragraph, let n and let I([n]2) be a set of pairwise disjoint pairs from of [n], each of the form {i,i+1}, and let N=n+|I|. Let us define a bijection γ:[n]I[n+|I|]. We will do it by specifying the relative order of images of particular elements of [n]I. The images of elements in [n] are in the natural order, i.e., γ(1)<γ(2)<<γ(n). For each {i,i+1}I, the image of this pair is placed between γ(i) and γ(i+1). Note that, as the pairs in I are of the form {i,i+1}, γ is well-defined.

Definition 23 (Indicator gadget).

Let c{1,2}. An indicator gadget (for c,n and I) is a tuple (𝖨𝗇𝖽c,(x1,,xn), (y1,,yN),L), where (𝖨𝗇𝖽c,(x1,,xn),(y1,,yN)) is a link and L:V(𝖨𝗇𝖽c)2[4] is a list function, such that:

  1. (I1)

    For every i[n] and j[N], it holds that L(xi)=L(yj)={1,2}.

  2. (I2)

    Every f:{x1,,xn}{1,2} can be extended to a coloring of the gadget so that the following holds. For every {i,i+1}I, if {f(xi),f(xi+1)}{c}, then f(yγ({i,i+1})) c.

  3. (I3)

    For every coloring f of the gadget, the following holds. For every i[n], we have f(xi)=f(yγ(i)), and for every {i,i+1}I, if f(xi)=f(xi+1)=c, then f(yγ({i,i+1}))=c.

Note that each output vertex of the gadget corresponds either to an input vertex, or to a pair in I; this correspondence is given by γ. The gadget plays two roles. First, the coloring of input vertices is copied to their corresponding output vertices. Second, for each pair in I, the color of its corresponding output vertex indicates if both input vertices representing this pair are colored c.

Figure 2: Gadget 𝖨𝗇𝖽1 for n=6 and I={{2,3},{4,5}}.

In the following lemma we show how to construct indicator gadgets; consult also Figure 2.

Lemma 24.

Let c{1,2}, let n and let I([n]2) be a set of pairwise disjoint pairs from of [n], each of the form {i,i+1}. In time polynomial in n, we can construct an indicator gadget for c,n, and I.

Proof.

By symmetry, assume that c=1. Let γ be the function defined for n and I as before.

The vertex set of the gadget is partitioned into five sets V1,,V5, where, for all i[4], all vertices of Vi precede all vertices from Vi+1. We will construct the sets one by one.

Set V1:

We start with introducing the vertices v11,,vn1 (in that order), all with list {1,2}.

Set V2:

Next, we introduce vertices v12,,vn2 (in that order), all with list {1,2}. Next, for every {i,i+1}I, we add vertices ui2,wi2, with lists, respectively, {1,3} and {1,4}. We position them in the order so that vi2ui2wi2vi+12. For every i[n], we add the edge vi1vi2, and for every {i,i+1}I, we add edges vi1ui2 and vi+11wi2.

Set V3:

We introduce vertices v13,,vn3 (in that order), all with list {1,2}. For every {i,i+1}I, we add a vertex zi3, with list {1,3,4}. We insert zi3 between vi3 and vi+13. For every i[n], we add the edge vi2vi3, and for every {i,i+1}I, we add edges ui2zi3 and wi2zi3.

Set V4:

We introduce vertices v14,,vn4 (in that order), all with list {1,2}. For every {i,i+1}I, we add vertex zi4 with list {1,2}. We insert zi4 between vi4 and vi+14. For every i[n], we add the edge vi3vi4, and for every {i,i+1}I, we add the edge zi3zi4.

Set V5:

We introduce vertices v15,,vn5 (in that order), all with list {1,2}. For every {i,i+1}I, we add a vertex zi5 with list {1,2}. We insert zi5 between vi5 and vi+15. For every i[n], we add the edge vi4vi5, and for every {i,i+1}I, we add the edge zi4zi5.

This completes the construction of 𝖨𝗇𝖽1; the input vertices are V1 and the output vertices are V5. Note that, for each i[n], the γ(i)-th output vertex is vi5, and for each {i,i+1}I, the γ({i,i+1})-th output vertex is zi5. It can be verified that 𝖨𝗇𝖽1 satisfies the desired properties (), which completes the proof.

NOT-𝒄𝒄 gadgets.

The last type of a gadget is a NOT-cc gadget, for c{1,2}.

Throughout this paragraph, let N and let I([N]2) be a set of pairwise disjoint pairs from of [N], each of the form {i,i+1}. Let n=N|I|; note that n>0. Let δ:[n][N] be an injection defined as follows. The image of this function is the set of these i, for which {i,i+1}I. Furthermore, we have δ(1)<δ(2)<<δ(n). Note that δ is well-defined.

Definition 25 (NOT-cc).

Let c{1,2}. An NOT-cc gadget (for N and I) is a tuple (Bc,(x1,,xN),(y1,,yn),L), where (Bc,(x1,,xN),(y1,,yn)) is a link and L:V(Bc)2[4] is a list function, such that:

  1. (B1)

    For every i[N] and j[n], it holds that L(xi)=L(yj)={1,2}.

  2. (B2)

    Every f:{x1,,xN}{1,2} such that for every {i,i+1}I it holds that {f(x1),f(x2)}{c}, can be extended to a coloring of the gadget.

  3. (B3)

    For every coloring f of the gadget, the following holds. For every i[n], we have f(yi)=f(xδ(i)), and for every {i,i+1}I we have {f(xi),f(xi+1)}{c}.

Note that there are two types of input vertices: those xi for which {i,i+1}I, and the remaining ones. The former ones have corresponding output vertices; this correspondence is given by δ. The remaining input vertices do not have corresponding output vertices.

Again, the gadget plays two roles. First, it transfers the coloring of input vertices of the first type to their corresponding output vertices. Second, for each pair in I, the gadget ensures that input vertices corresponding to that pair are not both colored c.

The construction of NOT-cc gadgets is quite similar to the one for indicator gadget, so we omit here the proof of the following lemma.

Lemma 26 ().

Let c{1,2}, let N and let I([N]2) be a set of pairwise disjoint pairs from of [N], each of the form {i,i+1}. Let n=N|I|. In time polynomial in N, we can construct a NOT-cc gadget for I.

Constructing NOT-𝒄𝒄𝒄 gadgets.

Finally, we can prove the following statement, which would finish the proof of Lemma 15 and thus, of Theorem 12.

Lemma 27 ().

Let c{1,2}, let n and let I([n]3) be a set of pairwise disjoint subsets of [n], each of size 3. In time polynomial in n, we can construct a NOT-ccc gadget for I.

The proof of Lemma 27 can be found in the full version of the paper. Let us just present here the general idea of our approach. Let x1,,xn be the input vertices of the gadget. The gadget is supposed to forbid some triples of vertices to be colored only with color 1. However, doing this directly seems difficult, while keeping -freeness. Thus, we do it in two steps.

For each triple {i,j,k}I, we create a new vertex xi,j, so that if both vertices xi and xj are colored c, then the color of xi,j is forced to be c, and otherwise xi,j can be colored with the other color in {1,2}. This is precisely the behavior that can be forced by an indicator gadget. Then we make sure that xi,j and xk (actually, a vertex whose color is equal to the color of xk; here we use the second role of an indicator) are not both colored c. This can be done using the NOT-cc gadget.

There is one last thing to do: recall that the indicator and the NOT-cc gadgets can only operate on pairs of consecutive vertices, and {i,j,k} do not have to be consecutive. However, this can be easily obtained by reshuffling the vertices using appropriate permutation gadgets.

Summing up, the NOT-cc is obtained by chaining a permutation gadget, an indicator gadget, another permutation gadget, a NOT-cc gadget, and, finally, yet another permutation gadget, to restore the original ordering of vertices.

Now, Lemma 15 follows directly by combining Lemma 27 and Observation 17. This completes the proof of Theorem 12.

5 Conclusion

Let us conclude the paper with pointing out some possible directions for future research. An obvious one is to fill the gaps in Table 1. We believe obtaining a full dichotomy here is much easier than the analogous question for unordered graphs. In particular, we believe that understanding the complexity of List k-Coloring for k3 in -free ordered graphs is a specific and intriguing problem.

Second, we believe it is interesting to investigate the complexity of the (non-list) k-Coloring problem in hereditary classes of ordered graphs. While algorithms for List k-Coloring clearly carry over to k-Coloring this is not the case for hardness reductions. Note that our proofs crucially use lists, and a standard way of simulating lists by adding a k-clique and using the edges to this clique to forbid certain colors introduces new induced subgraphs.

On the other hand, the reduction in Theorem 12 is quadratic, and thus, it only excludes algorithms with running time 2o(n), where n is the number of vertices of the input. The bottleneck is the construction of a permutation gadget, which has Θ(n2) vertices. It would be interesting to improve this construction to a linear one, or provide a subexponential-time algorithm for the problem.

References

  • [1] Édouard Bonnet and Paweł Rzążewski. Optimality program in segment and string graphs. Algorithmica, 81(7):3047–3073, 2019. doi:10.1007/S00453-019-00568-7.
  • [2] Flavia Bonomo, Maria Chudnovsky, Peter Maceli, Oliver Schaudt, Maya Stein, and Mingxian Zhong. Three-coloring and list three-coloring of graphs without induced paths on seven vertices. Comb., 38(4):779–801, 2018. doi:10.1007/S00493-017-3553-8.
  • [3] Maria Chudnovsky, Sepehr Hajebi, and Sophie Spirkl. List-k-Coloring H-Free Graphs for All k>4. Comb., 44(5):1063–1068, 2024. doi:10.1007/S00493-024-00106-2.
  • [4] Maria Chudnovsky, Shenwei Huang, Sophie Spirkl, and Mingxian Zhong. List 3-coloring graphs with no induced P6+rP3. Algorithmica, 83(1):216–251, 2021. doi:10.1007/S00453-020-00754-Y.
  • [5] Jean-François Couturier, Petr A. Golovach, Dieter Kratsch, and Daniël Paulusma. List coloring in the absence of a linear forest. Algorithmica, 71(1):21–35, 2015. doi:10.1007/S00453-013-9777-0.
  • [6] Marek Cygan, Fedor V. Fomin, Lukasz Kowalik, Daniel Lokshtanov, Dániel Marx, Marcin Pilipczuk, Michal Pilipczuk, and Saket Saurabh. Parameterized Algorithms. Springer, 2015. doi:10.1007/978-3-319-21275-3.
  • [7] Andreas Darmann and Janosch Döcker. On simplified NP-complete variants of Not-All-Equal 3-Sat and 3-Sat. CoRR, abs/1908.04198, 2019. arXiv:1908.04198.
  • [8] Keith Edwards. The complexity of colouring problems on dense graphs. Theor. Comput. Sci., 43:337–343, 1986. doi:10.1016/0304-3975(86)90184-2.
  • [9] Thomas Emden-Weinert, Stefan Hougardy, and Bernd Kreuter. Uniquely colourable graphs and the hardness of colouring graphs of large girth. Comb. Probab. Comput., 7(4):375–386, 1998. URL: http://journals.cambridge.org/action/displayAbstract?aid=46667.
  • [10] Esther Galby, Paloma T. Lima, Andrea Munaro, and Amir Nikabadi. Maximum list r-colorable induced subgraphs in kP3-free graphs. In Anne Benoit, Haim Kaplan, Sebastian Wild, and Grzegorz Herman, editors, 33rd Annual European Symposium on Algorithms, ESA 2025, Warsaw, Poland, September 15-17, 2025, volume 351 of LIPIcs, pages 40:1–40:13. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2025. doi:10.4230/LIPICS.ESA.2025.40.
  • [11] Petr A. Golovach, Daniël Paulusma, and Jian Song. Closing complexity gaps for coloring problems on H-free graphs. Inf. Comput., 237:204–214, 2014. doi:10.1016/J.IC.2014.02.004.
  • [12] Sepehr Hajebi, Yanjia Li, and Sophie Spirkl. Complexity dichotomy for list-5-coloring with a forbidden induced subgraph. SIAM J. Discret. Math., 36(3):2004–2027, 2022. doi:10.1137/21M1443352.
  • [13] Sepehr Hajebi, Yanjia Li, and Sophie Spirkl. List-3-Coloring ordered graphs with a forbidden induced subgraph. SIAM J. Discret. Math., 38(1):1158–1190, 2024. doi:10.1137/22M1515768.
  • [14] Chính T. Hoàng, Marcin Kamiński, Vadim V. Lozin, Joe Sawada, and Xiao Shu. Deciding k-colorability of P5-free graphs in polynomial time. Algorithmica, 57(1):74–81, 2010. doi:10.1007/S00453-008-9197-8.
  • [15] Ian Holyer. The NP-completeness of edge-coloring. SIAM J. Comput., 10(4):718–720, 1981. doi:10.1137/0210055.
  • [16] Shenwei Huang. Improved complexity results on k-coloring Pt-free graphs. Eur. J. Comb., 51:336–346, 2016. doi:10.1016/J.EJC.2015.06.005.
  • [17] Daniel Leven and Zvi Galil. NP completeness of finding the chromatic index of regular graphs. J. Algorithms, 4(1):35–44, 1983. doi:10.1016/0196-6774(83)90032-9.
  • [18] Marcin Pilipczuk, Michał Pilipczuk, and Paweł Rzążewski. Quasi-polynomial-time algorithm for independent set in Pt-free graphs via shrinking the space of induced paths. In Hung Viet Le and Valerie King, editors, 4th Symposium on Simplicity in Algorithms, SOSA 2021, Virtual Conference, January 11-12, 2021, pages 204–209. SIAM, 2021. doi:10.1137/1.9781611976496.23.
  • [19] Frank Plumpton Ramsey. On a problem of formal logic. Proceedings of the London Mathematical Society, 30(1):264–286, 1930. doi:10.1112/plms/s2-30.1.264.