Tutorials › Graph Theory (Undergraduate) › Roots and Basic Constraints on Chromatic Polynomials

The Chromatic Polynomial · Tutorial 375 of 799

Roots and Basic Constraints on Chromatic Polynomials

Use component structure and small graph polynomials to identify basic roots and distinguish real roots from conjugate nonreal pairs.

Intermediate 9 min read

What You'll Learn

  • Relate the multiplicity of zero to the number of connected components.
  • Handle the empty graph and isolated vertices correctly.
  • Determine exactly when one is a root of a chromatic polynomial.
  • Identify integer roots forced by the chromatic number.
  • Compute and compare real and nonreal roots for explicit examples.
  • Explain why nonreal roots of a chromatic polynomial occur in conjugate pairs.

What a Chromatic Root Tells Us

The chromatic polynomial \(P_G(q)\) counts proper vertex colorings when \(q\) is a positive integer, and is treated as a polynomial when \(q\) is allowed to be complex. Its roots encode constraints on coloring, but not every root is an integer or even real. A few basic facts can be read directly from the graph: the number of connected components controls the root at zero, and the presence of an edge determines whether one is a root.

Throughout, graphs are finite and simple. A proper coloring assigns colors to vertices so that adjacent vertices have different colors. The chromatic number \(\chi(G)\) is the least number of colors in a proper coloring of a nonempty graph. We use \(P_G(q)\) for the chromatic polynomial, including for \(q=0\) and complex \(q\), where it means polynomial evaluation rather than a count of colorings with a non-integer number of colors.

Definition: A complex number \(z\) is a chromatic root of \(G\) if \(P_G(z)=0\). The multiplicity of \(z\) is the largest integer \(r\) such that \((q-z)^r\) divides \(P_G(q)\).

For a graph with no vertices, the empty coloring is the unique coloring for every positive integer number of colors, so \(P_G(q)=1\). This case matters: the empty graph has no root at zero. For any nonempty graph, an isolated vertex is still a component and still contributes a factor of \(q\).

The Root at Zero

Write \(c(G)\) for the number of connected components, counting isolated vertices. The polynomial of a disjoint union is the product of the component polynomials: colorings on distinct components can be chosen independently. Consequently, if the connected components are \(H_1,\dots,H_c\), then \(P_G(q)=\prod_{i=1}^c P_{H_i}(q)\). We now establish that each nonempty connected component contributes exactly one factor of \(q\), not a higher power.

Theorem: If \(G\) is nonempty and has \(c(G)\) connected components, then zero is a root of \(P_G(q)\) with multiplicity exactly \(c(G)\). For the empty graph, \(P_G(q)=1\), so zero is not a root.

Proof. First consider a connected graph \(H\) with \(n\ge1\) vertices. We show that the coefficient \(a(H)\) of \(q\) in \(P_H(q)\) is nonzero. In fact, it has sign \((-1)^{n-1}\). We use induction on the number of edges, with the one-vertex graph as the base case: its polynomial is \(q\), so \(a(H)=1\).

For a connected graph with at least one edge \(e\), deletion-contraction gives \(P_H=P_{H-e}-P_{H/e}\). If \(e\) is not a bridge, \(H-e\) remains connected. The induction hypothesis gives coefficients of \(q\) with signs \((-1)^{n-1}\) in \(P_{H-e}\) and \((-1)^{n-2}\) in \(P_{H/e}\), since contraction has \(n-1\) vertices. Thus subtracting the second coefficient adds positive magnitudes with sign \((-1)^{n-1}\), so \(a(H)\ne0\).

If \(e\) is a bridge, \(H-e\) has two nonempty connected components. Each component polynomial is divisible by \(q\), so their product \(P_{H-e}\) is divisible by \(q^2\) and has coefficient of \(q\) equal to zero. The graph \(H/e\) is connected with \(n-1\) vertices. Hence \(a(H)=-a(H/e)\), which is nonzero and has sign \((-1)^{n-1}\). This completes the induction. Since a connected graph has \(P_H(0)=0\), while its coefficient of \(q\) is nonzero, it has exactly one factor of \(q\). Multiplying the component polynomials gives exactly \(c(G)\) such factors. For the empty graph the polynomial is \(1\), as stated. \(\square\)

In this proof, contraction can produce parallel edges; parallel edges impose the same coloring restriction as a single edge, so they do not change the chromatic polynomial. This is the deletion-contraction convention used here.

Worked Example: A Graph with Three Components

Let \(G\) have vertex set \(V=\{1,2,3,4,5,6\}\) and edge set \(E=\{12,23,45\}\). Its components are the path on \(\{1,2,3\}\), the edge on \(\{4,5\}\), and the isolated vertex \(6\). A path on \(n\) vertices has polynomial \(q(q-1)^{n-1}\), so the component polynomials are \(q(q-1)^2\), \(q(q-1)\), and \(q\).

Multiplying gives \(P_G(q)=q(q-1)^2\cdot q(q-1)\cdot q=q^3(q-1)^3\). Thus zero has multiplicity \(3\), matching the three components. The isolated vertex contributes its own factor \(q\); omitting it would incorrectly give multiplicity \(2\).

Check: substituting \(q=0\) gives \(P_G(0)=0\). After dividing by \(q^3\), the remaining factor is \((q-1)^3\), whose value at zero is \((-1)^3=-1\ne0\). Therefore the multiplicity is exactly \(3\).

When Is One a Root?

Theorem: For a finite simple graph \(G\), \(P_G(1)=0\) if and only if \(G\) has at least one edge.

Proof. If \(G\) has an edge, a coloring with one color assigns the same color to both endpoints, so it is not proper. There are no proper one-colorings, and \(P_G(1)=0\). If \(G\) has no edges, every assignment of one color to all vertices is proper, and there is exactly one such assignment. Thus \(P_G(1)=1\), including for the empty graph, whose polynomial is also \(1\). Therefore \(P_G(1)=0\) exactly when \(G\) has an edge. \(\square\)

This identifies whether one is a root, but it does not say that the root at one always has the same multiplicity. For example, a graph with an edge need not have a factor \((q-1)^2\); the polynomial itself must be examined to determine multiplicity.

Worked Example: An Isolated Vertex Does Not Force a Root at One

Let \(G\) have vertex set \(V=\{a,b,c\}\) and edge set \(E=\{ab\}\). The component \(\{a,b\}\) is a single edge, with polynomial \(q(q-1)\). The isolated vertex \(c\) has polynomial \(q\). Therefore

$$ P_G(q)=q(q-1)\cdot q=q^2(q-1). $$

At \(q=1\), direct substitution gives \(P_G(1)=1^2(1-1)=0\), as expected because \(ab\) is an edge. At \(q=2\), \(P_G(2)=2^2(2-1)=4\). Directly, \(a\) and \(b\) can be assigned the two colors in two orders, and \(c\) can receive either color, giving \(2\cdot2=4\) proper colorings.

Check: the factor \(q-1\) occurs once, so one is a root of multiplicity one in this example. The factor \(q^2\) records the two components, not the number of vertices.

Integer and Nonreal Roots

For a nonempty graph, every integer \(r\) with \(1\le r<\chi(G)\) is a root: no proper coloring with \(r\) colors exists, so \(P_G(r)=0\). Also, zero is a root, with the multiplicity established above. These facts force certain integer roots, but they do not imply that all roots are real. Since a chromatic polynomial has real coefficients, any nonreal root must be accompanied by its complex conjugate.

Proposition: If \(z\) is a nonreal root of a chromatic polynomial, then its complex conjugate \(\overline z\) is also a root.

Proof. Write the polynomial as \(P_G(q)=\sum_{j=0}^n a_jq^j\), where each coefficient \(a_j\) is real. Complex conjugation respects sums and products, so \(P_G(\overline z)=\sum_{j=0}^n a_j\overline z^{\,j}=\overline{\sum_{j=0}^n a_jz^j}=\overline{P_G(z)}\). If \(P_G(z)=0\), then \(P_G(\overline z)=\overline0=0\). \(\square\)

Worked Example: A Cycle with Nonreal Roots

Let \(G=C_4\), with vertex set \(V=\{1,2,3,4\}\) and edge set \(E=\{12,23,34,41\}\). The cycle formula is \(P_{C_n}(q)=(q-1)^n+(-1)^n(q-1)\). For \(n=4\), set \(x=q-1\). Then \(P_{C_4}(q)=x^4+x=x(x^3+1)\). Factoring \(x^3+1=(x+1)(x^2-x+1)\) gives

$$ P_{C_4}(q)=q(q-1)(q^2-3q+3). $$

The first two roots are \(0\) and \(1\). The discriminant of the quadratic is \((-3)^2-4(1)(3)=9-12=-3\), so its roots are \(\frac{3+i\sqrt3}{2}\) and \(\frac{3-i\sqrt3}{2}\). These are nonreal conjugates. The polynomial has degree \(4\), and these four displayed roots account for all four roots, counting multiplicity.

Check: the quadratic roots have sum \(3\) and product \((9+3)/4=3\), so their factor is \(q^2-3q+3\), as in the polynomial. The conjugate pair agrees with the proposition.

Worked Example: A Cycle with Three Real Roots and a Nonreal Pair

Let \(G=C_5\), with vertex set \(V=\{1,2,3,4,5\}\) and edge set \(E=\{12,23,34,45,51\}\). Using the cycle formula with \(n=5\), and again writing \(x=q-1\), gives \(P_{C_5}(q)=x^5-x\). Factor:

$$ x^5-x=x(x^4-1)=x(x^2-1)(x^2+1), $$

so \(P_{C_5}(q)=q(q-1)(q-2)((q-1)^2+1)\). The real roots are \(0,1,2\). The final factor vanishes when \((q-1)^2=-1\), giving the nonreal roots \(1+i\) and \(1-i\). These five roots account for the degree-five polynomial.

Check: the last factor is \((q-1)^2+1=q^2-2q+2\), whose discriminant is \((-2)^2-4(1)(2)=4-8=-4\). Its roots are \((2\pm 2i)/2=1\pm i\), confirming the calculation. The real roots \(0,1,2\) are consistent with the graph’s chromatic number \(3\): the integers \(1\) and \(2\) are below it, and zero is a root by the component result.

Common Pitfalls and How to Read the Roots

Confusing zero multiplicity with the number of vertices. In the first example there are six vertices but three components, so the zero has multiplicity three, not six. The correct count includes each connected component once, including isolated vertices.

Assuming all roots are real. The cycle examples show why this fails: \(C_4\) and \(C_5\) each have nonreal roots, and those roots occur in conjugate pairs. A real-coefficient polynomial guarantees conjugate pairing, not real roots.

Treating a polynomial evaluation as a coloring count for every input. At positive integer inputs the polynomial counts proper colorings. At a complex input, such as \(1+i\), it is an algebraic evaluation, not a count. In particular, the root at \(1+i\) in the \(C_5\) example does not describe a coloring with a non-integer number of colors.

These basic constraints are useful checks when computing a chromatic polynomial. For a nonempty graph, its factor at zero should reflect its components; an edge forces a root at one; and a nonreal root should have a conjugate partner. They do not determine every root, but they provide reliable tests for a proposed polynomial and help distinguish structural information from numerical coincidence.

Check Your Understanding

Use the component and root results above, and show the calculations that support your answers.

  1. A graph has two components, one a triangle and one an isolated vertex. What is the multiplicity of its root at zero?
  2. Can an edgeless graph have one as a chromatic root? Include the empty graph in your explanation.
  3. For \(P(q)=q(q-1)(q^2-4q+5)\), find the nonreal roots and verify that they are conjugates.
  4. Explain why every integer \(r\) with \(1\le r<\chi(G)\) is a chromatic root of a nonempty graph \(G\).
  5. A proposed chromatic polynomial has a nonreal root \(2+3i\) but not \(2-3i\). What necessary property does this violate?