Complexity #P-hard | Reduction from #3SAT | |
![]() | ||
Input Graph G with n vertices. Output Coefficients of P ( G , t ) {\displaystyle P(G,t)} Running time O ( 2 n n r ) {\displaystyle O(2^{n}n^{r})} for some constant r {\displaystyle r} |
The chromatic polynomial is a 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 attack the four color problem. It was generalised to the Tutte polynomial by H. Whitney and W. T. Tutte, linking it to the Potts model of statistical physics.
Contents
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
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. Today, chromatic polynomials are one of the central objects of algebraic graph theory.
Definition
The chromatic polynomial of a graph G counts the number of its proper vertex colorings. It is commonly denoted by
For example, the path graph
For a graph G with n vertices, the chromatic polynomial is defined as the unique interpolating polynomial of degree at most n through the points
If G does not contain any vertex with a self-loop, then the chromatic polynomial is a monic polynomial of degree exactly n. In fact for the above example we have:
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,
Properties
For fixed G on n vertices, the chromatic polynomial
The expression
yields the number of acyclic orientations of G.
The derivative evaluated at 1,
If G has n vertices, m edges, and c components
A graph G with n vertices is a tree if and only if
Chromatic equivalence
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,
is the chromatic polynomial of both the claw graph and the path graph on 4 vertices.
Chromatic uniqueness
A graph is chromatically unique if it is determined by its chromatic polynomial, up to isomorphism. In other words, G is chromatically unique, then
All cycle graphs are chromatically unique.
Chromatic roots
A root (or zero) of a chromatic polynomial, called a “chromatic root”, is a value x where
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. A result of Tutte connects the golden ratio
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.
Categorification
The chromatic polynomial is categorified by a homology theory closely related to Khovanov homology.
Algorithms
Computational problems associated with the chromatic polynomial include
The first problem is more general because if we knew the coefficients of
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 and graphs of bounded clique-width. The latter class includes cographs and graphs of bounded tree-width, such as outerplanar graphs.
Deletion–contraction
A recursive way of computing the chromatic polynomial is based on edge contraction: for a pair of vertices
where
if
The expressions give rise to a recursive procedure, called the deletion–contraction algorithm, which forms the basis of many algorithms for graph coloring. The ChromaticPolynomial function in the computer algebra system Mathematica uses the second recurrence if the graph is dense, and the first recurrence if the graph is sparse. 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
on a graph with n vertices and m edges. The analysis can be improved to within a polynomial factor of the number
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
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
In the expansion
the coefficient
No approximation algorithms for computing