Chromatic polynomial

Jump to navigation Jump to search
All non-isomorphic graphs on 3 vertices and their chromatic polynomials, clockwise from the top. The independent 3-set: ${\displaystyle k^{3}}$. An edge and a single vertex: ${\displaystyle k^{2}(k-1)}$. The 3-path: ${\displaystyle k(k-1)^{2}}$. The 3-clique: ${\displaystyle k(k-1)(k-2)}$.

The chromatic polynomial is a graph polynomial studied in algebraic graph theory, a branch of mathematics. It counts the number of graph colorings as a function of the number of colors and was originally defined by George David Birkhoff to study the four color problem. It was generalised to the Tutte polynomial by Hassler Whitney and W. T. Tutte, linking it to the Potts model of statistical physics.

History

George David Birkhoff introduced the chromatic polynomial in 1912, defining it only for planar graphs, in an attempt to prove the four color theorem. If ${\displaystyle P(G,k)}$ denotes the number of proper colorings of G with k colors then one could establish the four color theorem by showing ${\displaystyle P(G,4)>0}$ for all planar graphs G. In this way he hoped to apply the powerful tools of analysis and algebra for studying the roots of polynomials to the combinatorial coloring problem.

Hassler Whitney generalised Birkhoff’s polynomial from the planar case to general graphs in 1932. In 1968, Read asked which polynomials are the chromatic polynomials of some graph, a question that remains open, and introduced the concept of chromatically equivalent graphs.[1] Today, chromatic polynomials are one of the central objects of algebraic graph theory.[2]

Definition

All proper vertex colorings of vertex graphs with 3 vertices using k colors for ${\displaystyle k=0,1,2,3}$. The chromatic polynomial of each graph interpolates through the number of proper colorings.

For a graph G, ${\displaystyle P(G,k)}$ counts the number of its (proper) vertex k-colorings. Other commonly used notations include ${\displaystyle P_{G}(k)}$, ${\displaystyle \chi _{G}(k)}$, or ${\displaystyle \pi _{G}(k)}$. There is a unique polynomial ${\displaystyle P(G,x)}$ which evaluated at any integer k ≥ 0 coincides with ${\displaystyle P(G,k)}$; it is called the chromatic polynomial of G.

For example, to color the path graph ${\displaystyle P_{3}}$ on 3 vertices with k colors, one may choose any of the k colors for the first vertex, any of the ${\displaystyle k-1}$ remaining colors for the second vertex, and lastly for the third vertex, any of the ${\displaystyle k-1}$ colors that are different from the second vertex's choice. Therefore, ${\displaystyle P(P_{3},k)=k\cdot (k-1)\cdot (k-1)}$ is the number of k-colorings of ${\displaystyle P_{3}}$. For a variable x (not necessarily integer), we thus have ${\displaystyle P(P_{3},x)=x(x-1)^{2}=x^{3}-2x^{2}+x}$. (Colorings which differ only by permuting colors or by automorphisms of G are still counted as different.)

Deletion–contraction

The fact that the number of k-colorings is a polynomial in k follows from a recurrence relation called the deletion–contraction recurrence or Fundamental Reduction Theorem.[3] It is based on edge contraction: for a pair of vertices ${\displaystyle u}$ and ${\displaystyle v}$ the graph ${\displaystyle G/uv}$ is obtained by merging the two vertices and removing any edges between them. If ${\displaystyle u}$ and ${\displaystyle v}$ are adjacent in G, let ${\displaystyle G-uv}$ denote the graph obtained by removing the edge ${\displaystyle uv}$. Then the numbers of k-colorings of these graphs satisfy:

${\displaystyle P(G,k)=P(G-uv,k)-P(G/uv,k)}$

Equivalently, if ${\displaystyle u}$ and ${\displaystyle v}$ are not adjacent in G and ${\displaystyle G+uv}$ is the graph with the edge ${\displaystyle uv}$ added, then

${\displaystyle P(G,k)=P(G+uv,k)+P(G/uv,k)}$

This follows from the observation that every k-coloring of G either gives different colors to ${\displaystyle u}$ and ${\displaystyle v}$, or the same colors. In the first case this gives a (proper) k-coloring of ${\displaystyle G+uv}$, while in the second case it gives a coloring of ${\displaystyle G/uv}$. Conversely, every k-coloring of G can be uniquely obtained from a k-coloring of ${\displaystyle G+uv}$ or ${\displaystyle G/uv}$ (if ${\displaystyle u}$ and ${\displaystyle v}$ are not adjacent in G).

The chromatic polynomial can hence be recursively defined as

${\displaystyle P(G,x)=x^{n}}$ for the edgeless graph on n vertices, and
${\displaystyle P(G,x)=P(G-uv,x)-P(G/uv,x)}$ for a graph G with an edge ${\displaystyle uv}$ (arbitrarily chosen).

Since the number of k-colorings of the edgeless graph is indeed ${\displaystyle k^{n}}$, it follows by induction on the number of edges that for all G, the polynomial ${\displaystyle P(G,x)}$ coincides with the number of k-colorings at every integer point x=k. In particular, the chromatic polynomial is the unique interpolating polynomial of degree at most n through the points

${\displaystyle \left\{(0,P(G,0)),(1,P(G,1)),\cdots ,(n,P(G,n))\right\}.}$

Tutte’s curiosity about which other graph invariants satisfied such recurrences led him to discover a bivariate generalization of the chromatic polynomial, the Tutte polynomial ${\displaystyle T_{G}(x,y)}$.

Examples

 Triangle ${\displaystyle K_{3}}$ ${\displaystyle x(x-1)(x-2)}$ Complete graph ${\displaystyle K_{n}}$ ${\displaystyle x(x-1)(x-2)\cdots (x-(n-1))}$ Edgeless graph ${\displaystyle {\overline {K}}_{n}}$ ${\displaystyle x^{n}}$ Path graph ${\displaystyle P_{n}}$ ${\displaystyle x(x-1)^{n-1}}$ Any tree on n vertices ${\displaystyle x(x-1)^{n-1}}$ Cycle ${\displaystyle C_{n}}$ ${\displaystyle (x-1)^{n}+(-1)^{n}(x-1)}$ Petersen graph ${\displaystyle x(x-1)(x-2)\left(x^{7}-12x^{6}+67x^{5}-230x^{4}+529x^{3}-814x^{2}+775x-352\right)}$

Properties

For fixed G on n vertices, the chromatic polynomial ${\displaystyle P(G,x)}$ is a monic polynomial of degree exactly n, with integer coefficients.

The chromatic polynomial includes at least as much information about the colorability of G as does the chromatic number. Indeed, the chromatic number is the smallest positive integer that is not a zero of the chromatic polynomial,

${\displaystyle \chi (G)=\min\{k\in \mathbb {N} :P(G,k)>0\}.}$

The polynomial evaluated at ${\displaystyle -1}$, that is ${\displaystyle P(G,-1)}$, yields ${\displaystyle (-1)^{|V(G)|}}$ times the number of acyclic orientations of G.[4]

The derivative evaluated at 1, ${\displaystyle P'(G,1)}$ equals the chromatic invariant ${\displaystyle \theta (G)}$ up to sign.

If G has n vertices and c components ${\displaystyle G_{1},\cdots ,G_{c}}$, then

• The coefficients of ${\displaystyle x^{0},\cdots ,x^{c-1}}$ are zeros.
• The coefficients of ${\displaystyle x^{c},\cdots ,x^{n}}$ are all non-zero and alternate in signs.
• The coefficient of ${\displaystyle x^{n}}$ is 1 (the polynomial is monic).
• The coefficient of ${\displaystyle x^{n-1}}$ is ${\displaystyle -|E(G)|}$.
• The coefficient of ${\displaystyle x^{1}}$ is ${\displaystyle (-1)^{n-1}}$ times the number of acyclic orientations that have a unique sink, at a specified, arbitrarily chosen vertex.[5]
• The absolute values of coefficients of every chromatic polynomial form a log-concave sequence.[6]
• ${\displaystyle \scriptstyle P(G,x)=P(G_{1},x)P(G_{2},x)\cdots P(G_{c},x)}$

The last property is generalized by the fact that if G is a k-clique-sum of ${\displaystyle G_{1}}$ and ${\displaystyle G_{2}}$ (i.e., a graph obtained by gluing the two at a clique on k vertices), then

${\displaystyle P(G,x)={\frac {P(G_{1},x)P(G_{2},x)}{x(x-1)\cdots (x-k+1)}}.}$

A graph G with n vertices is a tree if and only if

${\displaystyle P(G,x)=x(x-1)^{n-1}.}$

Chromatic equivalence

The three graphs with a chromatic polynomial equal to ${\displaystyle (x-2)(x-1)^{3}x}$.

Two graphs are said to be chromatically equivalent if they have the same chromatic polynomial. Isomorphic graphs have the same chromatic polynomial, but non-isomorphic graphs can be chromatically equivalent. For example, all trees on n vertices have the same chromatic polynomial. In particular, ${\displaystyle (x-1)^{3}x}$ is the chromatic polynomial of both the claw graph and the path graph on 4 vertices.

A graph is chromatically unique if it is determined by its chromatic polynomial, up to isomorphism. In other words, G is chromatically unique, then ${\displaystyle P(G,x)=P(H,x)}$ would imply that G and H are isomorphic. All cycle graphs are chromatically unique.[7]

Chromatic roots

A root (or zero) of a chromatic polynomial, called a “chromatic root”, is a value x where ${\displaystyle P(G,x)=0}$. Chromatic roots have been very well studied, in fact, Birkhoff’s original motivation for defining the chromatic polynomial was to show that for planar graphs, ${\displaystyle P(G,x)>0}$ for x ≥ 4. This would have established the four color theorem.

No graph can be 0-colored, so 0 is always a chromatic root. Only edgeless graphs can be 1-colored, so 1 is a chromatic root of every graph with at least one edge. On the other hand, except for these two points, no graph can have a chromatic root at a real number smaller than or equal to 32/27.[8] A result of Tutte connects the golden ratio ${\displaystyle \phi }$ with the study of chromatic roots, showing that chromatic roots exist very close to ${\displaystyle \phi ^{2}}$: If ${\displaystyle G_{n}}$ is a planar triangulation of a sphere then

${\displaystyle P(G_{n},\phi ^{2})\leq \phi ^{5-n}.}$

While the real line thus has large parts that contain no chromatic roots for any graph, every point in the complex plane is arbitrarily close to a chromatic root in the sense that there exists an infinite family of graphs whose chromatic roots are dense in the complex plane.[9]

Colorings using all colors

For a graph G on n vertices, let ${\displaystyle e_{k}}$ denote the number of colorings using exactly k colors up to renaming colors (so colorings that can be obtained from one another by permuting colors are counted as one; colorings obtained by automorphisms of G are still counted separately). In other words, ${\displaystyle e_{k}}$ counts the number of partitions of the vertex set into k (non-empty) independent sets. Then ${\displaystyle k!\cdot e_{k}}$ counts the number of colorings using exactly k colors (with distinguishable colors). For an integer x, all x-colorings of G can be uniquely obtained by choosing an integer k ≤ x, choosing k colors to be used out of x available, and a coloring using exactly those k (distinguishable) colors. Therefore:

${\displaystyle P(G,x)=\sum _{k=0}^{x}{\binom {x}{k}}k!\cdot e_{k}=\sum _{k=0}^{x}(x)_{k}\cdot e_{k}}$,

where ${\displaystyle (x)_{k}=x(x-1)(x-2)\cdots (x-k+1)}$ denotes the falling factorial. Thus the numbers ${\displaystyle e_{k}}$ are the coefficients of the polynomial ${\displaystyle P(G,x)}$ in the basis ${\displaystyle 1,(x)_{1},(x)_{2},(x)_{3},\dots }$ of falling factorials.

Let ${\displaystyle a_{k}}$ be the k-th coefficient of ${\displaystyle P(G,x)}$ in the standard basis ${\displaystyle 1,x,x^{2},x^{3},\dots }$, that is:

${\displaystyle P(G,x)=\sum _{k=0}^{n}a_{k}x^{k}}$

Stirling numbers give a change of basis between the standard basis and the basis of falling factorials. This implies:

${\displaystyle a_{k}=\sum _{j=0}^{n}(-1)^{j-k}{\begin{bmatrix}j\\k\end{bmatrix}}e_{j}}$   and   ${\displaystyle e_{k}=\sum _{j=0}^{n}{\begin{Bmatrix}j\\k\end{Bmatrix}}a_{j}}$.

Categorification

The chromatic polynomial is categorified by a homology theory closely related to Khovanov homology.[10]

Algorithms

Chromatic polynomial
InputGraph G with n vertices.
OutputCoefficients of ${\displaystyle P(G,x)}$
Running time${\displaystyle O(2^{n}n^{r})}$ for some constant ${\displaystyle r}$
Complexity#P-hard
Reduction from#3SAT
#k-colorings
InputGraph G with n vertices.
Output${\displaystyle P(G,k)}$
Running timeIn P for ${\displaystyle k=0,1,2}$. ${\displaystyle O(1.6262^{n})}$ for ${\displaystyle k=3}$. Otherwise ${\displaystyle O(2^{n}n^{r})}$ for some constant ${\displaystyle r}$
Complexity#P-hard unless ${\displaystyle k=0,1,2}$
ApproximabilityNo FPRAS for ${\displaystyle k>2}$

Computational problems associated with the chromatic polynomial include

• finding the chromatic polynomial ${\displaystyle P(G,x)}$ of a given graph G;
• evaluating ${\displaystyle P(G,x)}$ at a fixed point x for given G.

The first problem is more general because if we knew the coefficients of ${\displaystyle P(G,x)}$ we could evaluate it at any point in polynomial time because the degree is n. The difficulty of the second type of problem depends strongly on the value of x and has been intensively studied in computational complexity. When x is a natural number, this problem is normally viewed as computing the number of x-colorings of a given graph. For example, this includes the problem #3-coloring of counting the number of 3-colorings, a canonical problem in the study of complexity of counting, complete for the counting class #P.

Efficient algorithms

For some basic graph classes, closed formulas for the chromatic polynomial are known. For instance this is true for trees and cliques, as listed in the table above.

Polynomial time algorithms are known for computing the chromatic polynomial for wider classes of graphs, including chordal graphs[11] and graphs of bounded clique-width.[12] The latter class includes cographs and graphs of bounded tree-width, such as outerplanar graphs.

Deletion–contraction

The deletion-contraction recurrence gives a way of computing the chromatic polynomial, called the deletion–contraction algorithm. In the first form (with a minus), the recurrence terminates in a collection of empty graphs. In the second form (with a plus), it terminates in a collection of complete graphs. This forms the basis of many algorithms for graph coloring. The ChromaticPolynomial function in the Combinatorica package of the computer algebra system Mathematica uses the second recurrence if the graph is dense, and the first recurrence if the graph is sparse.[13] The worst case running time of either formula satisfies the same recurrence relation as the Fibonacci numbers, so in the worst case, the algorithm runs in time within a polynomial factor of

${\displaystyle \phi ^{n+m}=\left({\frac {1+{\sqrt {5}}}{2}}\right)^{n+m}\in O\left(1.62^{n+m}\right),}$

on a graph with n vertices and m edges.[14] The analysis can be improved to within a polynomial factor of the number ${\displaystyle t(G)}$ of spanning trees of the input graph.[15] In practice, branch and bound strategies and graph isomorphism rejection are employed to avoid some recursive calls, the running time depends on the heuristic used to pick the vertex pair.

Cube Method

There is a natural geometric perspective on graph colorings by observing that, as an assignment of natural numbers to each vertex, a graph coloring is a vector in the integer lattice. Since two vertices ${\displaystyle i}$ and ${\displaystyle j}$ being given the same color is equivalent to the ${\displaystyle i}$’th and ${\displaystyle j}$’th coordinate in the coloring vector being equal, each edge can be associated with a hyperplane of the form ${\displaystyle \{x\in R^{d}:x_{i}=x_{j}\}}$. The collection of such hyperplanes for a given graph is called its graphic arrangement. The proper colorings of a graph are those lattice points which avoid forbidden hyperplanes. Restricting to a set of ${\displaystyle k}$ colors, the lattice points are contained in the cube ${\displaystyle [0,k]^{n}}$. In this context the chromatic polynomial counts the number of lattice points in the ${\displaystyle [0,k]}$-cube that avoid the graphic arrangement.

Computational complexity

The problem of computing the number of 3-colorings of a given graph is a canonical example of a #P-complete problem, so the problem of computing the coefficients of the chromatic polynomial is #P-hard. Similarly, evaluating ${\displaystyle P(G,3)}$ for given G is #P-complete. On the other hand, for ${\displaystyle k=0,1,2}$ it is easy to compute ${\displaystyle P(G,k)}$, so the corresponding problems are polynomial-time computable. For integers ${\displaystyle k>3}$ the problem is #P-hard, which is established similar to the case ${\displaystyle k=3}$. In fact, it is known that ${\displaystyle P(G,x)}$ is #P-hard for all x (including negative integers and even all complex numbers) except for the three “easy points”.[16] Thus, from the perspective of #P-hardness, the complexity of computing the chromatic polynomial is completely understood.

In the expansion

${\displaystyle P(G,x)=a_{1}x+a_{2}x^{2}+\dots +a_{n}x^{n},}$

the coefficient ${\displaystyle a_{n}}$ is always equal to 1, and several other properties of the coefficients are known. This raises the question if some of the coefficients are easy to compute. However the computational problem of computing ar for a fixed r ≥ 1 and a given graph G is #P-hard, even for bipartite planar graphs.[17]

No approximation algorithms for computing ${\displaystyle P(G,x)}$ are known for any x except for the three easy points. At the integer points ${\displaystyle k=3,4,\dots }$, the corresponding decision problem of deciding if a given graph can be k-colored is NP-hard. Such problems cannot be approximated to any multiplicative factor by a bounded-error probabilistic algorithm unless NP = RP, because any multiplicative approximation would distinguish the values 0 and 1, effectively solving the decision version in bounded-error probabilistic polynomial time. In particular, under the same assumption, this rules out the possibility of a fully polynomial time randomised approximation scheme (FPRAS). For other points, more complicated arguments are needed, and the question is the focus of active research. As of 2008, it is known that there is no FPRAS for computing ${\displaystyle P(G,x)}$ for any x > 2, unless NP = RP holds.[18]

References

• Biggs, N. (1993), Algebraic Graph Theory, Cambridge University Press, ISBN 978-0-521-45897-9
• Chao, C.-Y.; Whitehead, E. G. (1978), "On chromatic equivalence of graphs", Theory and Applications of Graphs, Lecture Notes in Mathematics, 642, Springer, pp. 121–131, ISBN 978-3-540-08666-6
• Dong, F. M.; Koh, K. M.; Teo, K. L. (2005), Chromatic polynomials and chromaticity of graphs, World Scientific Publishing Company, ISBN 978-981-256-317-0
• Giménez, O.; Hliněný, P.; Noy, M. (2005), "Computing the Tutte polynomial on graphs of bounded clique-width", Proc. 31st Int. Worksh. Graph-Theoretic Concepts in Computer Science (WG 2005), Lecture Notes in Computer Science, 3787, Springer-Verlag, pp. 59–68, CiteSeerX 10.1.1.353.6385, doi:10.1007/11604686_6, ISBN 978-3-540-31000-6
• Goldberg, L.A.; Jerrum, M. (2008), "Inapproximability of the Tutte polynomial", Information and Computation, 206 (7): 908, arXiv:cs/0605140, doi:10.1016/j.ic.2008.04.003
• Helme-Guizon, Laure; Rong, Yongwu (2005), "A categorification of the chromatic polynomial", Algebraic & Geometric Topology, 5 (4): 1365–1388, arXiv:math/0412264, doi:10.2140/agt.2005.5.1365
• Huh, J. (2012), "Milnor numbers of projective hypersurfaces and the chromatic polynomial of graphs", arXiv:1008.4749v3 [math.AG]
• Jackson, B. (1993), "A Zero-Free Interval for Chromatic Polynomials of Graphs", Combinatorics, Probability and Computing, 2 (3): 325–336, doi:10.1017/S0963548300000705
• Jaeger, F.; Vertigan, D. L.; Welsh, D. J. A. (1990), "On the computational complexity of the Jones and Tutte polynomials", Mathematical Proceedings of the Cambridge Philosophical Society, 108 (1): 35–53, Bibcode:1990MPCPS.108...35J, doi:10.1017/S0305004100068936
• Linial, N. (1986), "Hard enumeration problems in geometry and combinatorics", SIAM J. Algebr. Discrete Methods, 7 (2): 331–335, doi:10.1137/0607036
• Makowsky, J. A.; Rotics, U.; Averbouch, I.; Godlin, B. (2006), "Computing graph polynomials on graphs of bounded clique-width", Proc. 32nd Int. Worksh. Graph-Theoretic Concepts in Computer Science (WG 2006), Lecture Notes in Computer Science, 4271, Springer-Verlag, pp. 191–204, CiteSeerX 10.1.1.76.2320, doi:10.1007/11917496_18, ISBN 978-3-540-48381-6
• Naor, J.; Naor, M.; Schaffer, A. (1987), "Fast parallel algorithms for chordal graphs", Proc. 19th ACM Symp. Theory of Computing (STOC '87), pp. 355–364, doi:10.1145/28395.28433, ISBN 978-0897912211.
• Oxley, J. G.; Welsh, D. J. A. (2002), "Chromatic, flow and reliability polynomials: The complexity of their coefficients.", Combinatorics, Probability and Computing, 11 (4): 403–426, doi:10.1017/S0963548302005175
• Pemmaraju, S.; Skiena, S. (2003), Computational Discrete Mathematics: Combinatorics and Graph Theory with Mathematica, Cambridge University Press, section 7.4.2, ISBN 978-0-521-80686-2
• Read, R. C. (1968), "An introduction to chromatic polynomials" (PDF), Journal of Combinatorial Theory, 4: 52–71, doi:10.1016/S0021-9800(68)80087-0
• Sekine, K.; Imai, H.; Tani, S. (1995), "Computing the Tutte polynomial of a graph of moderate size", Algorithms and Computation, 6th International Symposium, Lecture Notes in Computer Science 1004, Cairns, Australia, December 4–6, 1995: Springer, pp. 224–233
• Sokal, A. D. (2004), "Chromatic Roots are Dense in the Whole Complex Plane", Combinatorics, Probability and Computing, 13 (2): 221–261, arXiv:cond-mat/0012369, doi:10.1017/S0963548303006023
• Stanley, R. P. (1973), "Acyclic orientations of graphs", Discrete Math., 5 (2): 171–178, doi:10.1016/0012-365X(73)90108-8
• Voloshin, Vitaly I. (2002), Coloring Mixed Hypergraphs: Theory, Algorithms and Applications., American Mathematical Society, ISBN 978-0-8218-2812-0
• Wilf, H. S. (1986), Algorithms and Complexity, Prentice–Hall, ISBN 978-0-13-021973-2
• Ellis-Monaghan, Joanna A.; Merino, Criel (2011). "Graph polynomials and their applications I: The Tutte polynomial". In Dehmer, Matthias (ed.). Structural Analysis of Complex Networks. arXiv:0803.3079. doi:10.1007/978-0-8176-4789-6. ISBN 978-0-8176-4789-6.