Graphs & Algorithms: Advanced Topics Counting and Polynomials Johannes Lengler, Uli Wagner ETH Zürich Counting Colorings Definition N Let G = (V , E ) be a multigraph on n vertices, x ∈ . Let pG (x) be the number of proper colorings of G with (at most) x colors. Example For the edge-free graph En on n vertices, pEn (x) = x n . For the complete graph, pKn (x) = x(x − 1)(x − 2) · · · (x − n + 1). For a tree T on n vertices, pT (x) = x(x − 1)n−1 . For the Petersen graph P, pP (x) = x(x − 1)(x − 2) ·(x 7 − 12x 6 + 67x 5 − 230x 4 + 529x 3 − 814x 2 + 775x − 352). Theorem (Whitney 1932) For every loop-free multigraph G on n vertices, pG (x) is a polynomial of degree n, the chromatic polynomial. The Chromatic Polynomial Theorem (Whitney 1932) For every loop-free multigraph G on n vertices, pG (x) is a polynomial of degree n, the chromatic polynomial. Proof. Let πr (G ) be the number of partitions of V (G ) into r non-empty independent sets. Then pG (x) = n X πr (G )(x)r , r =1 where (x)r = x(x − 1) · · · (x − r + 1) is the falling factorial. Note that πn (G ) = 1 if and only if G is loop-free. First Properties of pG Lemma Let G be a multigraph. Then x(x − 1) · · · (x − χ(G ) + 1) divides pG . Proof. 0, 1, . . . , χ(G ) − 1 are roots of pG . Lemma If a multigraph G = (V , E ) has two components A and B with ˙ = V , then pG = pA · pB . A∪B Corollary Let G be a multigraph with k components. Then x k divides pG . Proof. Every component contributes a factor x to pG . Recursion Proposition Let G = (V , E ) be a multigraph and let e ∈ E be a simple edge (no loop, no multiple edge). Then pG (x) = pG −e (x) − pG /e (x). Proof. Let e = {u, v }. We count the number of colorings of G − e. A coloring c of G − e is proper for G as well if and only if c(u) 6= c(v ). On the other hand, the colorings of G − e with c(u) = c(v ) are in bijection with colorings of G /e. Hence, pG −e (x) = pG (x) + pG /e (x). Recursion Proposition Let G = (V , E ) be a multigraph and let e ∈ E be a simple edge (no loop, no multiple edge). Then pG (x) = pG −e (x) − pG /e (x). Corollary For any simple graph G with n vertices, m edges, and k components, n−k X pG (x) = (−1)i ai x n−i , i=0 where a0 = 1, a1 = m and ai is a positive integer for every 0 ≤ i ≤ n − k. Proof. Induction on m. The Rank-Generating Polynomial Recall: e ∈ E is a bridge if G −e has (one) more component than G . Definition For a multigraph G with n(G ) vertices, m(G ) edges, and k(G ) components, we define its rank ρ(G ) and nullity ν(G ) as ρ(G ) = n(G ) − k(G ), ν(G ) = m(G ) − ρ(G ). The rank-generating polynomial SG (x, y ) is X x ρ(E )−ρ(F ) y ν(F ) . SG (x, y ) = Lemma F ⊆E Let G = (V , E ) be a multigraph and e ∈ E . (x + 1)SG −e (x, y ), SG (x, y ) = (y + 1)SG −e (x, y ), SG −e (x, y ) + SG /e (x, y ), Then if e is a bridge, if e is a loop, otherwise. The Rank-Generating Polynomial Definition rank: ρ(G ) = n(G ) − k(G ), nullity: ν(G ) = m(G ) − ρ(G ). The rank-generating polynomial SG (x, y ) is X SG (x, y ) = x ρ(E )−ρ(F ) y ν(F ) . F ⊆E Lemma Let G be a plane multigraph and G ∗ its dual graph. Then SG (x, y ) = SG ∗ (y , x). Remark In a shifted version, the rank-generating polynomial is also known as Tutte polynomial TG (x, y ): TG (x, y ) = SG (x − 1, y − 1) Chromatic Polynomial Proposition For any multigraph G , the chromatic polynomial is given by pG (x) = (−1)ρ(G ) x k(G ) SG (−x, −1). Proof. We use induction on m. For m = 0, we have pG (x) = x n , k(G ) = n, ρ(G ) = n − k(G ) = 0, and SG (x, y ) = 1. For m > 0, use x−1 if e is a bridge, x pG −e (x), pG (x) = 0, if e is a loop, pG −e (x) − pG /e (x), otherwise, and the recursion formula for SG . Tutte and Flow Polynomial Proposition Let Γ be a finite abelian group, and G a multigraph. Let qG (Γ) be the number of Γ-NZFs (nowhere zero flows) on G . Then qG (Γ) = (−1)ν(G ) SG (−1, −|Γ|). Proof. We use induction on m. For m = 0, we have qG (x) = 1, ν(G ) = 0 and SG (x, y ) = 1. For m > 0, use if e is a bridge, 0, qG (Γ) = (|Γ| − 1)qG −e (Γ), if e is a loop, −qG −e (Γ) + qG /e (Γ), otherwise, and the recursion formula for SG . Corollary Let G be a plane multigraph and G ∗ its dual. Let Γ be a finite 1 abelian group. Then qG (Γ) = |Γ| pG ∗ (|Γ|). Ehrhart-Macdonald Reciprocity Reciprocity Theorem (Ehrhart, 1961) Let P be a d-dimensional integral polytope (defined by inequalities with integer coefficients), and let P ◦ bethe interior of the polytope. Let ehrP (t) := # ( 1t Z)d ∩ P , and similarly for ehrP ◦ (t). Then ehrP (t) and ehrP ◦ (t) are polynomials, and ehrP (−t) = (−1)d ehrP ◦ (t). Corollary (−1)n pG (−1) is the number of acyclic orientations of G . More generally, (−1)n pG (−k) is the number of pairs (O, χ), where O is an acyclic orientation of G , and χ : E → {1, . . . , k} is a map such that χ(u) ≥ χ(v ) for every oriented edge (u, v ). More Special Values For a connected multigraph G , I SG (0, 0) counts the number of spanning trees. I SG (1, 0) counts the number of forests. I SG (0, 1) counts the number of connected spanning subgraphs. I SG (−1, 1) counts the number of strongly connected orientations. I SG (0, −1) counts the number of acyclic orientations with unique source v , for a v ∈ V . (In particular, this number is independent of v .) I If G is connected, and every edge fails independently with probability p , then (1 − p)n−1 p m−n+1 SG (0, 1/p) is the probability that G stays connected. Thank you and good luck for the exam!