Parameterized Pre-coloring Extension and List Coloring Problems

Golovach, Paulusma and Song (Inf. Comput. 2014) asked to determine the parameterized complexity of the following problems parameterized by $k$: (1) Given a graph $G$, a clique modulator $D$ (a clique modulator is a set of vertices, whose removal results in a clique) of size $k$ for $G$, and a list $L(v)$ of colors for every $v\in V(G)$, decide whether $G$ has a proper list coloring; (2) Given a graph $G$, a clique modulator $D$ of size $k$ for $G$, and a pre-coloring $\lambda_P: X \rightarrow Q$ for $X \subseteq V(G),$ decide whether $\lambda_P$ can be extended to a proper coloring of $G$ using only colors from $Q.$ For Problem 1 we design an $O^*(2^k)$-time randomized algorithm and for Problem 2 we obtain a kernel with at most $3k$ vertices. Banik et al. (IWOCA 2019) proved the the following problem is fixed-parameter tractable and asked whether it admits a polynomial kernel: Given a graph $G$, an integer $k$, and a list $L(v)$ of exactly $n-k$ colors for every $v \in V(G),$ decide whether there is a proper list coloring for $G.$ We obtain a kernel with $O(k^2)$ vertices and colors and a compression to a variation of the problem with $O(k)$ vertices and $O(k^2)$ colors.


Introduction
Graph coloring is a central topic in Computer Science and Graph Theory due to its importance in theory and applications. Every text book in Graph Theory has at least a chapter devoted to the topic and the monograph of Jensen and Toft [21] is completely devoted to graph coloring problems focusing especially on more than 200 unsolved ones. There are many survey papers on the topic including recent ones such as [10,18,25,27]. For a graph G, a proper coloring is a function λ : V (G) → N ≥1 such that for no pair u, v of adjacent vertices of G, λ(u) = λ(v). In the widely studied Coloring problem, given a graph G and a positive integer p, we are to decide whether there is a proper coloring λ : V (G) → [p], where henceforth [p] = {1, . . . , p}. In this paper, we consider two extensions of Coloring: the Pre-Coloring Extension problem and the List Coloring problem. We conclude Section 3 by showing that List Coloring Clique Modulator does not admit a polynomial kernel unless NP ⊆ coNP/poly. The reduction used to prove this result allows us to observe that if List Coloring Clique Modulator could be solved in time O(2 ck n O(1) ) for some c < 1, then the well-known Set Cover problem could be solved in time O(2 c|U | |F| O(1) ), where U and F are universe and family of subsets, respectively. The existence of such an algorithm is open, and it has been conjectured that no such algorithm is possible under SETH; see Cygan et al. [12]. Thus, up to the assumption of this conjecture (called Set Cover Conjecture [22]) and SETH, our O * (2 k )-time algorithm for List Coloring Clique Modulator is best possible w.r.t. its dependency on k.
In Section 4, we consider Pre-Coloring Extension Clique Modulator, which is a subproblem of List Coloring Clique Modulator and prove that Pre-Coloring Extension Clique Modulator, unlike List Coloring Clique Modulator, admits a polynomial kernel: a linear kernel with at most 3k vertices. This kernel builds on a known, but counter-intuitive property of bipartite matchings (see Proposition 2), which was previously used in kernelization by Bodlaender et al. [6].
In Section 5, we study an open problem stated by Banik et al. [3]. In a classic result, Chor et al. [9] showed that Coloring has a linear vertex kernel parameterized by k = n − p, i.e., if the task is to "save k colors". Arora et al. [2] consider the following as a natural extension to list coloring, and show that it is in XP. Banik et al. [3] show that the problem is FPT, but leave as an open question whether it admits a polynomial kernel.

Input:
A graph G on n vertices, an integer k, and a list L(v) of exactly n − k colors for every v ∈ V (G). Problem: Is there a proper list coloring for G?

(n − k)-Regular List Coloring parameterized by k
We answer this question in affirmative by giving a kernel with O(k 2 ) vertices and colors, as well as a compression to a variation of the problem with O(k) vertices, encodable in O(k 2 log k) bits. We note that this compression is asymptotically almost tight, as even 4-Coloring does not admit a compression into O(n 2−ε ) bits for any ε > 0 unless the polynomial hierarchy collapses [20]. This kernel is more intricate than the above. Via known reduction rules from Banik et al. [3], we can compute a clique modulator of at most 2k vertices (hence our result for List Coloring Clique Modulator also solves (n − k)-Regular List Coloring in 2 O(k) time). However, the usual "crown rules" (as in [9] and in Section 4) are not easily applied here, due to complications with the color lists. Instead, we are able to show a set of O(k) vertices whose colorability make up the "most interesting" part of the problem, leading to the above-mentioned compression and kernel.
Finally, in Section 6, we consider further natural pre-coloring and list coloring variants of the "saving k colors" problem of Chor et al. [9]. We show that the known fixed-parameter tractability and linear kernelizability [9] carries over to a natural pre-coloring generalization but fails for a more general list coloring variant. Since (n − k)-Regular List Coloring was originally introduced in [2] as a list coloring variant of the "saving k colors" problem, it is natural to consider other such variants. We conclude the paper in Section 7, where in particular a number of open questions are discussed.
Omitted proofs are marked by (⋆) and can be found in the full version of this paper.

Graphs, Matchings, and Clique Modulator
We consider finite simple undirected graphs. For basic terminology on graphs, we refer to a standard textbook [13]. Let H = (V, E) be an undirected bipartite graph with bi-partition (A, B). We say that a set C is a Hall set for A or B if C ⊆ A or C ⊆ B, respectively, and |N H (C)| < |C|. We will need the following well-known properties for matchings.
◮ Proposition 1 (Hall's Theorem [13] Clique Modulator. Let G be an undirected graph. We say that a set D ⊆ V (G) is a clique modulator for G if G − D is a clique. Since we will use the size of a smallest clique modulator as a parameter for our coloring problems, it is natural to ask whether the following problem can be solved efficiently.

Input:
A graph G and an integer k Problem: Does G have a clique modulator of size at most k?
Clique Modulator parameterized by k The following proposition shows that this is indeed the case. Namely, Clique Modulator is both FPT and can be approximated within a factor of two. The former is important for our FPT algorithms and the later for our kernelization algorithms as it allows us to not depend on a clique modulator given as part of the input.

Parameterized Complexity
An instance of a parameterized problem Π is a pair (I, k) where I is the main part and k is the parameter; the latter is usually a non-negative integer. A parameterized problem is fixed-parameter tractable (FPT) if there exists a computable function f such that instances (I, k) can be solved in time O(f (k)|I| c ) where |I| denotes the size of I and c is an absolute constant. The class of all fixed-parameter tractable decision problems is called FPT and algorithms which run in the time specified above are called FPT algorithms. As in other literature on FPT algorithms, we will often omit the polynomial factor in O(f (k)|I| c ) and write O * (f (k)) instead. To establish that a problem under a specific parameterization is not in FPT we prove that it is W[1]-hard as it is widely believed that FPT =W [1].
A reduction rule R for a parameterized problem Π is an algorithm A that given an instance (I, k) of a problem Π returns an instance (I ′ , k ′ ) of the same problem. The reduction rule is said to be safe if it holds that (I, k) ∈ Π if and only if (I ′ , k ′ ) ∈ Π. If A runs in polynomial time in |I| + k then R is a polynomial-time reduction rule. Often we omit the adjectives "safe" and "polynomial-time" in "safe polynomial-time reduction rule" as we consider only such reduction rules.
A kernelization (or, a kernel) of a parameterized problem Π is a reduction rule such that |I ′ | + k ′ ≤ f (k) for some computable function f . Note that a decidable parameterized problem is FPT if and only if it admits a kernel [11,15,17]. The function f is called the size of the kernel, and we have a polynomial kernel if f (k) is polynomially bounded in k.
A kernelization can be generalized by considering a reduction (rule) from a parameterized problem Π to another parameterized problem Π ′ . Then instead of a kernel we obtain a generalized kernel (also called a bikernel [1] in the literature). If the problem Π ′ is not parameterized, then a reduction from Π to Π ′ (i.e., (I, k) to I ′ ) is called a compression, which is polynomial if |I ′ | ≤ p(k), where p is a fixed polynomial in k. If there is a polynomial compression from Π to Π ′ and Π ′ is polynomial-time reducible back to Π, then combining the compression with the reduction gives a polynomial kernel for Π.

List Coloring Clique Modulator
The following lemma is often used in the design of randomized algorithms.
Both parts of the next lemma will be used in this section. The part for fields of characteristic two was proved by Wahlström [28]. The part for reals can be proved similarly. Then for any monomial T divisible by Π i∈J x i we have coef Q T = coef P T, and for every other monomial T we have coef Q T = 0.
Using the lemmas, we can prove the following: Parameterized Pre-Coloring Extension and List Coloring ℓ ∈ d∈Di L(d). Finally, if c ∈ C and ℓ ∈ L, then assign the edge cℓ weight j∈J x j , where x j 's are variables and j ∈ J if and only if ℓ ∈ ( d∈D ′ j L(d)) ∩ L(c) and c is not adjacent to any vertex in D ′ j . All other edges in B are given weight 1. In the following we will assume that B is balanced; if this is not the case then we simply add the right amount of dummy vertices to the smaller side and make them adjacent (with an edge of weight 1) to all vertices in the opposite side. Note that B has a perfect matching M such that there is a bijection α between [t] and t edges in M such that for every i ∈ x j if and only if B has a perfect matching M such that there is a bijection α between [t] and t edges in M such that for every i ∈ [t], the weight of the edge α(i) contains the term x i , which in turn is equivalent to G having a proper list coloring that is compatible with (D, D ′ ).
Hence, deciding whether G has a proper list coloring that is compatible with (D, D ′ ) boils down to deciding whether the permanent of M contains the monomial t j=1 x j . For any evaluation of variables x j , we can compute per(M ) over the field of characteristic two by replacing permanent with determinant, which can be computed in polynomial-time [7].

A faster FPT algorithm
We now show a faster FPT algorithm, running in time O * (2 k ). It is a variation on the same algebraic sieving technique as above, but instead of guessing a partition of the modulator it works over a more complex matrix. We begin by defining the matrix, then we show how to perform the sieving step in O * (2 k ) time.

Matrix definition
As before, let L = v∈V (G) L(v) be the set of all colors, and let C = G − D. Define an to no other vertex. Finally, pad U H with |V H | − |U H | artificial vertices connected to all of V H ; note that this is a non-negative number, since otherwise |L| < |V (C)| and we may reject the instance. Next, we associate with every edge vℓ ∈ E H a set S(vℓ) ⊆ 2 D as follows.
If v ∈ V (C), then S(vℓ) contains all sets S ⊆ D such that the following hold: If v ∈ D and ℓ ∈ L, then S(vℓ) contains all sets S ⊆ D such that the following hold: where as usual an empty product equals 1. Then for each edge vℓ ∈ E H we let A[v, ℓ] = y vℓ P (vℓ), and the remaining entries of A are 0. We argue the following. (Expert readers may note although the argument can be sharpened to show the existence of a multilinear term, we do not wish to argue that there exists such a term with odd coefficient. Therefore we use the simpler sieving of Lemma 5 instead of full multilinear detection, cf. [11].)

◮ Lemma 7. Let A be defined as above. Then det A (as a polynomial) contains a monomial divisible by x∈X x if and only if G is properly list colorable.
Proof. We first note that no cancellation happens in det A. Note that monomials of det A correspond (many-to-one) to perfect matchings of H, and thanks to the formal variables Y , two monomials corresponding to distinct perfect matchings never interact. On the other hand, if we fix a perfect matching M in H, then the contributions of M to det A equal σ M e∈M y e P (e), where σ M ∈ {1, −1} is a sign term depending only on M . Since the polynomials P (e) contain only positive coefficients, no cancellation occur, and every selection of a perfect matching M of H and a factor from every polynomial P (e), e ∈ M results (many-to-one) to a monomial with non-zero coefficient in det A.
We now proceed with the proof. On the one hand, let c be a proper list coloring of G. Define an ordering ≺ on V (G) such that V (C) precedes D, and define a matching M as follows.
Pad M to a perfect matching in H by adding arbitrary edges connected to the artificial vertices in U H ; note that this is always possible. Finally, for every edge vℓ ∈ M with ℓ ∈ L we let D vℓ = D ∩ c −1 (ℓ). Observe that for every edge vℓ in M , D vℓ ∈ S(vℓ); indeed, this holds by construction of S(vℓ) and since c is a proper list coloring. Further let p vℓ = v∈D vℓ x v ; thus p vℓ is a term of P (vℓ). It follows, by the discussion in the first paragraph of the proof, that is verified in the creation of the term p vc (v) in P (vc(v)). Next, consider two vertices u, v ∈ V (G) with c(u) = c(v). If u, v ∈ D, then u and v are represented in the same term p v ′ c(v) for some v ′ , hence u and v form an independent set; otherwise assume u ∈ V (C). Note that u, v ∈ V (C) is impossible since otherwise the matching M would contain two edges uc(u) and vc(u) which intersect. Thus v ∈ D, and v is represented in the term p uc(u) . Therefore uv / ∈ E(G), by construction of P (uc(u)). We conclude that c is a proper coloring respecting the lists L(v), i.e., a proper list coloring. ◭

Fast evaluation
By the above description, we can test for the existence of a list coloring of G using 2 k evaluations of det A, as in Theorem 6; and each evaluation can be performed in O * (2 k ) time, including the time to evaluate the polynomials P (vℓ), making for a running time of O * (4 k ) in total (or O * (3 k ) with more careful analysis). We show how to perform the entire sieving in time O * (2 k ) using fast subset convolution.
For I ⊆ D, let us define A −I as A with all occurrences of variables x i , i ∈ I replaced by 0, and for every edge vℓ of H, let P (vℓ) −I denote the polynomial P (vℓ) with x i , i ∈ I replaced by 0. Then a generic entry (v, ℓ) of A −I equals A −I [v, ℓ] = y vℓ P −I (vℓ), and in order to construct A −I it suffices to pre-compute the value of P −I (vℓ) for every edge vℓ ∈ E H , I ⊆ D. For this, we need the fast zeta transform of Yates [29], which was introduced to exact algorithms by Björklund et al. [5]. We show the following lemma, which is likely to have analogs in the literature, but we provide a short proof for the sake of completeness. Proof. Let A be the matrix defined above (but do not explicitly construct it yet). By Lemma 7, we need to check whether det A contains a monomial divisible by x∈X x, and by Lemma 5 this is equivalent to testing whether I⊆D (−1) |I| det A −I ≡ 0. By the Schwartz-Zippel lemma, it suffices to randomly evaluate the variables X and Y occurring in A and evaluate this sum once; if G has a proper list coloring and if the values of X and Y are chosen among sufficiently many values, then with high probability the result is non-zero, and if not, then the result is guaranteed to be zero. Thus the algorithm is as follows.
1. Instantiate variables of X and Y uniformly at random from [N ] for some sufficiently large N . Note that for an error probability of ε > 0, it suffices to use N = Ω(n 2 (1/ε)).

Refuting Polynomial Kernel
In this section, we prove that List Coloring Clique Modulator does not admit a polynomial kernel. We prove this result by a polynomial parameter transformation from Hitting Set where the parameter is the number of sets, which is known not to have a polynomial kernel [14]. We note here that the reduction also shows that if List Coloring Clique Modulator could be solved in time O(2 ǫk n O(1) ) for some ǫ < 1, then Hitting Set could be solved in time O(2 ǫ|F | |U | O(1) ), which in turn would imply that any instance I with universe U and set family F of the well-known Set Cover problem could be solved in time O(2 ǫ|U | |F| O(1) ). The existence of such an algorithm is open, and it has been conjectured that no such algorithm is possible under SETH (the strong exponential-time hypothesis); see Cygan et al. [12]. Thus, up to the assumption of this conjecture and SETH, the algorithm for List Coloring Clique Modulator given in Theorem 10 is best possible w.r.t. its dependency on k.

Polynomial kernel for Pre-Coloring Extension Clique Modulator
In the following let (G, D, k, λ P , X, Q) be an instance of Pre-Coloring Extension Clique Modulator, let C = G − D, let D P be the set of all pre-colored vertices in D, and let D ′ = D \ D P .
◮ Reduction Rule 1. Remove any vertex v ∈ D ′ that has less than |Q| neighbors in G.
The proof of the following lemma is obvious and thus omitted.

◮ Lemma 12. Reduction Rule 1 is safe and can be implemented in polynomial time.
S TA C S 2 0 2 0

19:10 Parameterized Pre-Coloring Extension and List Coloring
Note that if Reduction Rule 1 can no longer be applied, then every vertex in D ′ has at least |Q| neighbors, which because of |Q| ≥ |C| implies that every such vertex has at most |D| ≤ k non-neighbors in G and hence also in C. Let C N be the set of all vertices in C that are not adjacent to all vertices in D ′ and let C ′ = C − C N . Note that |C N | ≤ |D||D| ≤ k 2 . We show next how to reduce the size of C N to k. Note that this step is optional if our aim is solely to obtain a polynomial kernel, however, it allows us to reduce the number of vertices in the resulting kernel from O(k 2 ) to O(k). Let J be the bipartite graph with partition (C N , D) having an edge between c ∈ C N and d ∈ D if {c, d} / ∈ E(G). Hence after an exhaustive application of Reduction Rule 2, we obtain that |C N | ≤ |D ′ | ≤ k. We now introduce our final two reduction rules, which allow us to reduce the size of C ′ .
◮ Reduction Rule 3. Let v ∈ V (C ′ ) be a pre-colored vertex with color λ P (v). Then remove λ −1 P (λ P (v)) from G and λ P (v) from Q.

◮ Lemma 14. Reduction Rule 3 is safe and can be implemented in polynomial time.
Proof. Because v ∈ V (C ′ ), it holds that only vertices in D P can have color λ P (v), but these are already pre-colored. Hence in any coloring for G that extends λ P , the vertices in λ −1 P (λ P (v)) are the only vertices that obtain color λ P (v), which implies the safeness of the rule. ◭ Because of Reduction Rule 3, we can from now on assume that no vertex in C ′ is pre-colored. Note that the only part of G, whose size is not yet bounded by a polynomial in the parameter k is C ′ . To reduce the size of C ′ , we need will make use of Proposition 2. Let P = λ P (D P ) and H be the bipartite graph with bi-partition (C ′ , P ) containing an edge between c ′ ∈ C ′ and p ∈ P if and only if c ′ is not adjacent to a vertex pre-colored by p in G. In the following let C M and C M be as defined in the above reduction rule for an arbitrary maximum matching M of H. To show that the reduction rule is safe, we need the following auxiliary lemma, which shows that if a coloring for G reuses colors from P in C ′ , then those colors can be reused solely on the vertices in C M .
◮ Lemma 15. If there is a coloring λ for G extending λ P using only colors in Q, then there is a coloring λ ′ for G extending λ P using only colors in Q such that λ ′ (C M ) ∩ P = ∅.
Proof. Let C P be the set of all vertices v in C ′ with λ(v) ∈ P . If C P ∩ C M = ∅, then setting λ ′ equal to λ satisfies the claim of the lemma. Hence assume that C P ∩ C M = ∅.
for every other vertex. To see that λ ′ is a proper coloring note that λ ′ (C ′ ) = λ(C ′ ). Moreover, all the colors in λ(C ′ ) \ P are "universal colors" in the sense that exactly one vertex of G obtains the color and hence those colors can be freely moved around in C ′ . Finally, the matching N ′ in H ensures that the vertices in C M [N ′ ] can be colored using the colors from P . ◭ ◮ Lemma 16. Reduction Rule 4 is safe and can be implemented in polynomial time.
Proof. Note first that the reduction can always be applied since if Q \ λ P (X) contains less than |C M | colors, then the instance is a no-instance. It is clear that the rule can be implemented in polynomial time using any polytime algorithm for finding a maximum matching. Moreover, if the reduced graph has a coloring extending λ P using only the colors in Q, then so does the original graph, since the vertices in C M can be colored with the colors removed from the original instance. Hence, it remains to show that if G has a coloring, say λ, extending λ P using only colors in Q, then G \ C M has a coloring extending λ P that uses only colors in Q ′ := Q \ Q M , where Q M is the set of |C M | colors from Q \ λ P (X) that have been removed from Q.
Because of Lemma 15, we may assume that λ(C M ) ∩ P = ∅. Let B be the set of all vertices v in G − C M with λ(v) ∈ Q M . If B = ∅, then λ is a coloring extending λ P using only colors from Q ′ . Hence assume that B = ∅. Let A be the set of all vertices v in C M with λ(v) ∈ Q ′ . Then λ(A) ∩ λ P (X) = ∅, which implies that every color in λ(A) appears only in C M (and exactly once in C M ). Moreover, |λ(A)| ≥ |λ(B)|. Let α be an arbitrary bijection between λ(B) and an arbitrary subset of λ(A) (of size |B|) and let λ ′ be the coloring obtained from λ by setting λ ′ (v) = α(λ(v)) for every v ∈ B, λ ′ (v) = α −1 (λ(v)) for every v ∈ A, and λ ′ (v) = λ(v), otherwise. Then λ ′ restricted to G − C M is a coloring for G − C M extending λ P using only colors from Q ′ . Note that λ ′ is a proper coloring because the colors in λ(A) are not in P and hence do not appear anywhere else in G and moreover the colors in λ(B) do not appear in λ(C M ). ◭ Note that after the application of Reduction Rule 4, it holds that |C ′ | = |C M | ≤ |P | ≤ |D P | ≤ |D| ≤ k. Together with the facts that |D| ≤ k, |C N | ≤ k, we obtain that the reduced graph has at most 3k vertices.
◮ Theorem 17. Pre-Coloring Extension Clique Modulator admits a polynomial kernel with at most 3k vertices.

Polynomial kernel and Compression for (n − k)-Regular List Coloring
We now show our polynomial kernel and compression for (n − k)-Regular List Coloring, which is more intricate than the one for Pre-Coloring Extension Clique Modulator. Let (G, k, L) be an input of (n − k)-Regular List Coloring. We begin by noting that we can assume that G has a clique-modulator of size at most 2k.
◮ Lemma 18 ([3]). In polynomial-time either we can either solve (G, k, L) or compute a clique-modulator for G of size at most 2k.
is a clique and D is a clique modulator, |D| ≤ 2k. Let T = v∈V (G) L(v). We note one further known reduction rules for (n − k)-Regular List Coloring. Consider the bipartite graph H G with bi-partition (V (G), T ) having an edge between v ∈ V (G) and t ∈ T if and only if t ∈ L(v).

◮ Reduction Rule 5 ([3]). Let T ′ be an inclusion-wise minimal subset of T such that
Note that after an exhaustive application of Reduction Rule 5, it holds that |T | ≤ |V (G)| since otherwise Proposition 1 would ensure the applicability of the reduction rule. Hence in the following we will assume that |T | ≤ |V (G)|.
With this preamble handled, let us proceed with the kernelization. We are not able to produce a direct "crown reduction rule" for List Coloring, as for Pre-Coloring Extension (e.g., we do not know of a useful generalization of Reduction Rule 2). Instead, we need to study more closely which list colorings of G[D] extend to list colorings of G. For this purpose, let H = H G − D be the bipartite graph with bi-partition (C, T ) having an edge {c, t} with c ∈ C and t ∈ T if and only if t ∈ L(c). Say that a partial list coloring λ 0 : A → T is extensible if it can be extended to a proper list coloring λ of G. If D ⊆ A, then a sufficient condition for this is that H − (A ∪ λ 0 (A)) admits a matching saturating C \ A. (This is not a necessary condition, since some colors used in λ 0 (D) could be reused in λ(C \ A), but this investigation will point in the right direction.) By Proposition 1, this is characterized by Hall sets in H − (A ∪ λ 0 (A)).
A Hall set S ⊆ U in a bipartite graph G ′ with bi-partition (U, W ) is trivial if N (S) = W . We start by noting that if a color occurs in sufficiently many vertex lists in H, then it behaves uniformly with respect to extensible partial colorings λ 0 as above. In the following, we will assume that n ≥ 11k. 2 This is safe, since otherwise (by Reduction Rule 5) we already have a kernel with a linear number of vertices and colors. We say that a color t ∈ T is rare if it occurs in at most 6k lists of vertices in C.
◮ Lemma 20. If n ≥ 11k, then there are at most 3k rare colors.
For every t ∈ S, there are |C| − 6k "non-occurrences" (i.e., vertices v ∈ C with t / ∈ L(v)), and there are |C|k non-occurrences in total. Thus where the bound is monotonically decreasing in |C| and maximized (under the assumption that n ≥ 11k and hence |C| ≥ 9k) for |C| = 9k yielding |S| ≤ 3k. Proof. The number of colors usable in C \ X is |T ′ | − p where p is the number counted above (since constrained rare colors cannot be used in C \ X even if they are unused in λ 0 ). Thus it is a requirement that |T ′ | − p ≥ |C \ X|. That is, p ≤ |T ′ | − |C \ X| = q. Thus necessity is clear. We show sufficiency as well. That is, let λ 0 be a partial list coloring with scope V ′ = (C ∩ X) ∪ (D \ X) which uses at most q colors of T ′ . We modify and extend λ 0 to a list coloring of G.
First let H 0 be the bipartite graph with bi-partition (V, T R \ X) and let M 0 be a matching saturating T R \ X; note that this exists by reduction rule 5. We modify λ 0 to a coloring λ ′ 0 so that every constrained rare color is used by λ ′ 0 , by iterating over every color t ∈ T R \ X; for every t, if t is not yet used by λ ′ 0 , then let vt ∈ M 0 and update λ ′ 0 with λ ′ 0 (v) = t. Note that the scope of λ ′ 0 after this modification is contained in (C ∩ X) ∪ D. Next, let M be a maximum matching in H * . We use M to further extend λ ′ 0 in stages to a partial list coloring λ which colors all of D and uses all rare colors. In phase 1, for every color t ∈ T R ∩ X which is not already used, let vt ∈ M be the edge covering t and assign λ(v) = t. Note that M matches every vertex of X in H * with a vertex not in X, thus the edge vt exists and v has not yet been assigned in λ. Hence, at every step we maintain a partial list coloring, and at the end of the phase all rare colors have been assigned. Finally, as phase 2, for every vertex v ∈ D ∩ X not yet assigned, let uv ∈ M where u ∈ C; necessarily u ∈ C \ X and u is as of yet unassigned in λ. The number of colors assigned in λ thus far is at most |X| + |D| ≤ |T R | + 2|D| ≤ 7k, whereas |L(u) ∩ L(v)| ≥ n − 2k ≥ 9k, hence there always exists an unused shared color that can be mapped to λ(u) = λ(v). Let λ be the resulting partial list coloring. We claim that λ can be extended to a list coloring of G.
Let A be the scope of λ and let H ′ = H − (A ∩ λ(A)). Note that A ∩ C ⊆ V (M ), hence |A ∩ C| ≤ |D| + |T R | ≤ 5k. Thus by Lemma 19, no non-trivial Hall set in H ′ can contain a rare color. However, all rare colors are already used in λ. Thus H ′ contains no non-trivial Hall set of colors. Thus the only possibility that λ is not extensible is that H ′ has a trivial Hall set, i.e., |T \ λ(A)| < |C \ A|. However, every modification after λ ′ 0 added one vertex to A and one color to λ(A), keeping the balance between the two sides. Thus already the partial coloring λ ′ 0 leaves behind a trivial Hall set. However, λ ′ 0 colors precisely C ∩ X in C and leaves at least |T ′ | − q colors remaining. By design this is at least |C \ X|, yielding a contradiction. Thus we find that H ′ contains no Hall set, and λ is a list coloring of G. ◭ Before we give our compression , we need the following auxiliary lemma. Proof. The list of every vertex v ∈ V ′ misses at most k colors from T ′ . Hence all but at most |V ′ |k colors in T ′ are universal to all vertices in V ′ . ◭ For clarity, let us define the output problem of our compression explicitly.

Input:
A graph G, a set T of colors, a list L(v) ⊆ T for every v ∈ V (G), and a pair (T ′ , q) where T ′ ⊆ T and q ∈ N. Problem: Is there a proper list coloring for G that uses at most q distinct colors from T ′ ? Proof. Lemma 21 shows that the existence of a list coloring in G is equivalent to the existence of a list coloring in G[V ′ ] that uses at most q colors from T ′ . Since |V ′ | ≤ 7k, it only remains to reduce the number of colors in T R ∪ T ′ . Clearly, if |T ′ | < |V ′ |k + q, then |T R ∪ T ′ | ≤ 3k + (7k)k ∈ O(k 2 ) and there is nothing left to show. So suppose that |T ′ | ≥ |V ′ |k + q. Then, it follows from Lemma 22 that T ′ contains at least q colors that are universal to the vertices in V ′ and we obtain an equivalent instance by removing all but exactly q universal colors from T ′ , which leaves us with an instance with at most |T R | + q ≤ 3k + 7k 2 ∈ O(k 2 ) colors, as required. Finally, to describe the output concisely, note that G[V ′ ] can be trivially described in O(k 2 ) bits, and the lists L(v) can be described by enumerating T \ L(v) for every vertex v, which is k colors per vertex, each color identifiable by O(log k) bits. ◭ Note that the compression is asymptotically essentially optimal, since even the basic 4-Coloring problem does not allow a compression in O(n 2−ε ) bits for any ε > 0 unless the polynomial hierarchy collapses [20]. For completeness, we also give a proper kernel, which can be obtained in a similar manner to the compression given in Theorem 23.
If on the other hand, |T ′ | ≥ |V ′ |k + q, then, because of Lemma 22 it holds that T ′ contains a set U of exactly q colors that are universal to the vertices in V ′ . Recall that Lemma 21 shows that the existence of a list coloring in G is equivalent to the existence of a list coloring in G[V ′ ] that uses at most q = |T ′ | − |C \ X| colors from T ′ . It follows that the graph G[V ′ ] has a list coloring using only colors in (T R \ X) ∪ U if and only if G has a list coloring. Hence, it only remains to restore the regularity of the instance. We achieve this as follows. First we add a set T N of |(T R \ X) ∪ U | novel colors. We then add these colors (arbitrarily) to the color lists of the vertices in V ′ such that the size of every list (for any vertex in V ′ ) is |(T R \ X) ∪ U |. This clearly already makes the instance regular, however, now we also need to ensure that no vertex in V ′ can be colored with any of the new colors in T N . To achieve this we add a set C N of |T N | novel vertices to G[V ′ ], which we connect to every vertex in (C ∩ X) ∪ C N and whose lists all contain all the new colors in T N . It is clear that the constructed instance is equivalent to the original instance since all the new colors in T N are required to color the new vertices in C N and hence no new color can be used to color a vertex in V ′ . Moreover, D is still a clique modulator and the number k ′ of missing colors (in each list of the constructed instance) is equal to |D| + |C ∩ X| ≤ 2k + 5k because the instance is (n − |D| − |C ∩ X|)-regular. Finally, the instance has at most |V ′ ∪ C N | ≤ 7k + 3k + 7k = 17k ∈ O(k) vertices and at most 2(|T R | + |U |) ≤ 2(3k + 7k) = 20k ∈ O(k) colors, as required. ◭

Saving k colors: Pre-coloring and List Coloring Variants
In this section, we consider natural pre-coloring and list coloring variants of the "saving k colors" problem, which given a graph on n vertices and an integer k asks whether G has a proper coloring with at most n − k colors. This problem is known to be FPT (it even allows for a linear kernel) [9], when parameterized by k. Notably the problem provided the main motivation for the introduction of (n − k)-Regular List Coloring in [3,2]. We consider the following (pre-coloring and list coloring) extensions of (n − k)-Coloring.

Input:
A graph G with n vertices and a pre-coloring λP : X → Q for X ⊆ V (G) where Q is a set of colors. Problem: Can λP be extended to a proper coloring of G using only colors from Q? (n − |Q|)-Pre-Coloring Extension parameterized by n − |Q|

Input:
A graph G on n vertices with a list L(v) of colors for every v ∈ V (G) and an integer k. Problem: Is there a proper list coloring of G using at most n − k colors?
List Coloring with n − k colors parameterized by k S TA C S 2 0 2 0