

When used without any qualification, a coloring of a graph is almost always a proper vertex coloring, namely a labeling of the graph’s vertices with colors such that no two vertices sharing the same edge have the same color. This graph can be 3-colored in 12 different ways. One of the major applications of graph coloring, register allocation in compilers, was introduced in 1981. Graph coloring has been studied as an algorithmic problem since the early 1970s: the chromatic number problem is one of Karp’s 21 NP-complete problems from 1972, and at approximately the same time various exponential-time algorithms were developed based on backtracking and on the deletion-contraction recurrence of Zykov (1949). The conjecture remained unresolved for 40 years, until it was established as the celebrated strong perfect graph theorem by Chudnovsky, Robertson, Seymour, and Thomas in 2002. In 1960, Claude Berge formulated another conjecture about graph coloring, the strong perfect graph conjecture, originally motivated by an information-theoretic concept called the zero-error capacity of a graph introduced by Shannon. Kempe had already drawn attention to the general, non-planar case in 1879, and many results on generalisations of planar graph coloring to surfaces of higher order followed in the early 20th century. In 1912, George David Birkhoff introduced the chromatic polynomial to study the coloring problems, which was generalised to the Tutte polynomial by Tutte, important structures in algebraic graph theory. The proof of the four color theorem is also noteworthy for being the first major computer-aided proof. The proof went back to the ideas of Heawood and Kempe and largely disregarded the intervening developments. In the following century, a vast amount of work and theories were developed to reduce the number of colors to four, until the four color theorem was finally proved in 1976 by Kenneth Appel and Wolfgang Haken. However, in that paper he proved the five color theorem, saying that every planar map can be colored with no more than five colors, using ideas of Kempe. In 1890, Heawood pointed out that Kempe’s argument was wrong. For his accomplishment Kempe was elected a Fellow of the Royal Society and later President of the London Mathematical Society. The same year, Alfred Kempe published a paper that claimed to establish the result, and for a decade the four color problem was considered solved. Arthur Cayley raised the problem at a meeting of the London Mathematical Society in 1879. Guthrie’s brother passed on the question to his mathematics teacher Augustus de Morgan at University College, who mentioned it in a letter to William Hamilton in 1852. While trying to color a map of the counties of England, Francis Guthrie postulated the four color conjecture, noting that four colors were sufficient to color the map so that no regions sharing a common border received the same color. The first results about graph coloring deal almost exclusively with planar graphs in the form of the coloring of maps. Note: Many terms used in this article are defined in Glossary of graph theory. Graph coloring is still a very active field of research. It has even reached popularity with the general public in the form of the popular number puzzle Sudoku. Beside the classical types of problems, different limitations can also be set on the graph, or on the way a color is assigned, or even on the color itself. Graph coloring enjoys many practical applications as well as theoretical challenges. The nature of the coloring problem depends on the number of colors but not on what they are. In general, one can use any finite set as the "color set". In mathematical and computer representations, it is typical to use the first few positive or non-negative integers as the "colors". By planar duality it became coloring the vertices, and in this form it generalizes to all graphs. This was generalized to coloring the faces of a graph embedded in the plane. The convention of using colors originates from coloring the countries of a map, where each face is literally colored. This is partly pedagogical, and partly because some problems are best studied in their non-vertex form, as in the case of edge coloring. However, non-vertex coloring problems are often stated and studied as-is. For example, an edge coloring of a graph is just a vertex coloring of its line graph, and a face coloring of a plane graph is just a vertex coloring of its dual. Vertex coloring is usually used to introduce graph coloring problems, since other coloring problems can be transformed into a vertex coloring instance. A proper vertex coloring of the Petersen graph with 3 colors, the minimum number possible.
