List Coloring

Graphs & Algorithms: Advanced Topics
List Coloring
Uli Wagner
ETH Zürich
List Coloring/Choosability
Definition
Let G be a graph.
I
Suppose for every vertex v ∈ V (G ), we are given a list of
colors L(v ). A properSlist coloring of G (with the given lists)
is a map f : V (G ) → v L(v ) such that f (v ) ∈ L(v ) for all
v ∈ V (G ) and f (v ) 6= f (w ) whenever {v , w } ∈ E (G ).
I
G is k-choosable or k-list-colorable if every assignment of
k-element lists permits a proper list coloring.
I
List chromatic number or choice number
χ` (G ) := min{k : G is k-choosable}
Observation
I
χ` (G ) ≥ χ(G )
I
χ` (G ) ≤ ∆(G ) + 1
(Greedy coloring; works more generally
for ∆-degenerate graphs.)
List Chromatic Number vs. Chromatic Number
Examples
I
χ` (Kn ) = n = χ(Kn ).
I
χ` (K2,2 ) = 2 = χ(K2,2 ).
Is the case where all lists are equal the hardest? NO!
Example
χ` (K3,3 ) > 2 = χ(K3,3 ).
Proposition
Kn,n is not k-choosable if n =
2k−1
k
.
χl (G ) − χ(G ) can be arbitrarily large.
Exercise.
Edge (List) Colorings and (List) Chromatic Index
Definition
I
Let G = (V , E ) be a graph, and let a list L(e) of colors be
given for every edge eS∈ E . A proper edge list coloring of G
is a map c : E (G ) → e L(e) such that c(e) ∈ L(e) for all
e ∈ E and c(e) 6= c(e 0 ) whenever e and e 0 share a vertex.
I
G is k-edge colorable if G admits a proper edge coloring if we
are given the same list L(e) = {1, 2, . . . , k} of k colors for
every edge. The chromatic index of G is defined as
χ0 (G ) := min{k : G is k-edge colorable}.
I
G is k-edge list colorable if every assigment of lists of k colors
to the edges admits a proper edge list coloring. The list
chromatic index of G is
χ0` := min{k : G is k-list edge colorable}.
I
Equivalently, if χ0 (G ) and χ0` (G ) are the chromatic number
and the list chromatic number, respectively, of the line graph
L(G ).
List Coloring Conjecture
Theorem (König, 1916)
G bipartite
⇒
χ0 (G ) = ∆(G ) (maximum degree).
Exercise.
Theorem (Vizing, 1964)
For every graph G ,
∆(G ) ≤ χ0 (G ) ≤ ∆(G ) + 1.
(Proof omitted)
Conjecture (Vizing; Gupta; Albertson; Collins; 1985)
For every graph G ,
χ0` (G ) = χ0 (G )
Theorem (Galvin, 1995)
G bipartite
⇒
χ0` (G ) = χ0 (G ) = ∆(G ).
Kernel-perfect digraphs and choosability
Definition
I
A kernel of a digraph D is an independent set S ⊆ V (D),
such that for every v ∈ V (D) \ S there is w ∈ S, such that
~ ∈ E (D).
vw
I
A digraph is kernel-perfect if every induced subdigraph has a
kernel.
I
Let G be a graph and f : V (G ) → 0 a function. G is
f -choosable if it has a proper list coloring for any family of
lists {L(v )}v ∈V (G ) with |L(v )| ≥ f (v ) for every v ∈ V (G ).
N
Lemma (Bondy-Boppana-Siegel)
Let D be a kernel-perfect orientation of G . Then G is f -choosable
with f (v ) = 1 + dD+ (v ).
Proof of the Bondy-Boppana-Siegel Lemma
Induction on |V (G )| (generalize greedy coloring for d-degenerate
graphs).
I
Induction base: |V (G )| = 0. Nothing to prove (empty
coloring).
I
Induction step: Let |V (G )| > 0 and let D be a kernel-perfect
orientation of G . Let {L(v )}v ∈V (G ) be the given assignment
of lists, and let a be a color that appears in at least one list.
I
W := {w ∈ V (G ) : a ∈ L(w )}, D 0 := D[W ].
I
By assumption, D 0 has a kernel U. Color the vertices in U
with a. Remove a from all lists L(w ), w ∈ W . Since each
w ∈ W \ U has an outneighbor in U, the graph D − U with
+
the modified lists L0 (v ) satisfy |L0 (v )| ≥ 1 + dD−U
(v ) for all
v ∈ V (G ) \ U.
I
Thus, by induction, G − U can be properly list colored with
colors from the lists {L0 (v )}v ∈V \U . Together with the coloring
of U by a, this yields the desired list coloring of G .
Proof of Galvin’s Theorem (1)
Theorem (Galvin, 1995)
G bipartite
⇒
χ0` (G ) = χ0 (G ) = ∆(G ).
Proof.
I
I
Let G = (A ∪ B, E ) be the given bipartite graph and let
L = L(G ) be the line graph of G . Suppose χ(L) = χ0 (G ) = k.
We need to show that χ0` (G ) = χ` (L) ≤ k (“≥” is trivial).
Let c : E → [k] be a proper edge coloring of G .
Proof idea: Exhibit a kernel perfect ori1
entation D of L with dD+ (e) ≤ k − 1 for
7
all e ∈ E = V (L).
3
2
If e and e 0 share a vertex v and c(e) <
c(e 0 ), then orient the corresponding edge
of L from e 0 to e if v ∈ A and from e to
e 0 if v ∈ B.
c(e) = 5
A
4
8
6
B
Proof of Galvin’s Theorem (2)
I
I
Out-degrees in D: Suppose c(e) = i. Any out-neighbor e 0 of
e in D must have c(e 0 ) ∈ {1, 2, . . . , i − 1} if e ∩ e 0 ∈ A and
c(e 0 ) ∈ {i + 1, . . . , k} if e ∩ e 0 ∈ B. Since c is a proper
coloring of L, we have dD+ (e) ≤ k − 1.
Kernel-perfectness: Let E 0 ⊆ E and D 0 = D[E 0 ]. Show that
D 0 has a kernel, by induction on |E 0 |.
If a ∈ A is incident to some e ∈ E 0 , let ea ∈ E 0 be the edge
incident to a with minimal color c(ea ), and let
U := {ea : a ∈ A incident to E 0 }.
−→
Every e ∈ E 0 \ U meets some e ∈ U in A, and e 0 e in D. Thus,
if U is independent then it is a kernel. So suppose e, e 0 ∈ U
are adjacent in D. By definition of U, e ∩ e 0 ∈ B. W.l.o.g.
−
→
c(e) < c(e 0 ), so ee 0 in D. By induction, D 0 − e has a kernel
U 0 . If e 0 ∈ U 0 , we are done. Else, there is e 00 ∈ U 0 such that
−−
→
e 0 e 00 in D. If e 0 ∩ e 00 ∈ X then c(e 00 ) < c(e 0 ) 6∈ U,
contradiction. Thus Y 3 e 0 ∩−→
e 00 = e ∩ e 0 and
c(e 00 ) > c(e 0 ) > c(e), hence ee 00 in D, so U 0 is a kernel for D 0 .
Aside: Stable Matchings
Definition
Suppose we have n women and n men, each with a (totally
ordered) preference ranking of the members of the opposite
gender.
Suppose we have a perfect matching in the complete bipartite
graph of men and women (married couples).
Bonnie and Clyde are an unstable pair if
I
Bonnie and Clyde are currently not a couple,
I
Bonnie prefers Clyde to her current partner, and
I
Clyde prefers Bonnie to his current partner.
A perfect matching (of n women and n men) is a stable matching
if it yields no unstable pair.
Theorem (Stable Marriage Theorem, Gale-Shapley, 1962)
For any preference rankings of n men and n women there is a
stable matching.
The Proposal Algorithm
Proposal Algorithm (Gale-Shapley, 1962)
Input. Preference ranking by each of n men and n women.
Iteration:
Each man proposes to the woman highest on his list
who has not previously rejected him.
IF each woman receives exactly one proposal, THEN
stop and report the resulting matching as stable.
ELSE
every woman receiving more than one proposal
rejects all of them except the one highest on her list.
Every woman receiving at least one proposal says
“maybe” to the most attractive proposal she received.
ITERATE until there is a matching or some proposal list is empty.
Theorem (Gale-Shapley, 1962)
The Proposal Algorithm produces a stable matching.
The Proposal Algorithm—Proof of Correctness
I
Whenever a man gets rejected, the total length of the
remaining proposal lists decreases. Thus, the algorithm
eventually terminates.
Lemma
During the execution of the algorithm, no man can ever be
rejected by all women.
(Exercise.)
I Thus, the algorithm terminates with a perfect matching M.
We need to show that M is stable.
Observation
The sequence of proposals made by each man is nonincreasing in
his preference ranking, and the list of men to whom a woman says
”maybe” is nondecreasing.
I If M is not stable, there is an unstable pair (a, b) with
(a, x) ∈ M and (y , b) ∈ M, say. Thus, a can never have
proposed to b. But also, a would never have proposed to x
without previously proposing to b. Contradiction!