Five color theorem

Five color theorem

The five color theorem is a result from graph theory that given a plane separated into regions, such as a political map of the counties of a state, the regions may be colored using no more than five colors in such a way that no two adjacent regions receive the same color.

The five color theorem is implied by the stronger four color theorem, but can be proven with considerably less effort. It was based on a failed attempt at the four color proof by Alfred Kempe in 1879. Percy John Heawood found an error 11 years later, and proved the five color theorem based on Kempe's work. The four color theorem was finally proven by Kenneth Appel and Wolfgang Haken at the University of Illinois, with the aid of a computer. They were assisted in some algorithmic work by John A. Koch.

Outline of the proof by contradiction

First of all, one associates a planar graph G to the given map, namely one puts a vertex in each region of the map, then connects two vertices with an edge if and only if the corresponding regions share a common border. The problem is then translated into a graph coloring problem: one has to paint the vertices of the graph so that no edge has endpoints of the same color.

The proof relies on the Euler characteristic to show that there must be a vertex V shared by at most five edges, and on the fact that G is planar, i.e. it may be embedded in the plane without intersecting edges.

Now remove V from G. The graph V' obtained this way has fewer vertices than G, so we can assume by induction that it can be colored with only five colors. V must be connected to five other vertices, since if not it can be colored in G with a color not used by them. So now look at those five vertices V_1, V_2, V_3, V_4, V_5 that were adjacent to V in cyclic order (which depends on how we write G). If we did not use all the five colors on them, then obviously we can paint V in a consistent way to render our graph 5-colored.

So we can assume that V_1, V_2, V_3, V_4, V_5 are colored with colors 1, 2, 3, 4, 5 respectively.

Now consider the subgraph G_{13} of V' consisting of the vertices that are colored with colors 1 and 3 only, and edges connecting two of them. If V_1 and V_3 lie in different connected components of G_{13}, we can reverse the coloration on that containing V_1, thus assigning color number 1 to V and completing the task.

If on the contrary V_1 and V_3 lie in the same connected component of G_{13}, we can find a path in G_{13} joining them, that is a sequence of edges and vertices painted only with colors 1 and 3.

Now turn to the subgraph G_{24} of V' consisting of the vertices that are colored with colors 2 and 4 only, and edges connecting two of them, and apply the same arguments as before. Then either we are able to reverse a coloration on a subgraph of G_{24} and paint V with, say, color number 2, or we can connect V_2 and V_4 with a path containing vertices colored only with colors 2 and 4. The latter possibility is clearly absurd, as such a path would intersect the path we constructed in G_{13}.

So G can in fact be five-colored, contrary to the initial presumption.

Linear time five-coloring algorithm

In 1996, Robertson, Sanders, Seymour, and Thomas described a quadratic four-coloring algorithm in their "Efficiently four-coloring planar graphs". [* Robertson, Neil; Sanders, Daniel; Seymour, Paul; and Thomas, Robin, [http://portal.acm.org/citation.cfm?id=237814.238005&coll=ACM&dl=ACM&type=series&idx=237814&part=Proceedings&WantType=Proceedings&title=Annual%20ACM%20Symposium%20on%20Theory%20of%20Computing&CFID=36220143&CFTOKEN=50709087 Efficiently four-coloring planar graphs] , New York: ACM Press, 1996.] In the same paper they briefly describe a linear-time five-coloring algorithm, which is asymptotically optimal. The algorithm as described here operates on multigraphs and relies on the ability to have multiple copies of edges between a single pair of vertices. It is based on Wernicke's theorem, which states the following:

:Wernicke's Theorem: Assume G is planar, nonempty, has no faces bounded by two edges, and has minimum degree 5. Then G has a vertex of degree 5 which is adjacent to a vertex of degree at most 6.

We will use a representation of the graph in which each vertex maintains a circular linked list of adjacent vertices, in clockwise planar order.

In concept, the algorithm is recursive, reducing the graph to a smaller graph with one less vertex, five-coloring that graph, and then using that coloring to determine a coloring for the larger graph in constant time. In practice, rather than maintain an explicit graph representation for each reduced graph, we will remove vertices from the graph as we go, adding them to a stack, then color them as we pop them back off the stack at the end. We will maintain three stacks:

* S4: Contains all remaining vertices with either degree at most four, or degree five and at most four distinct adjacent vertices (due to multiple edges).
* S5: Contains all remaining vertices that have degree five, five distinct adjacent vertices, and at least one adjacent vertex with degree at most six.
* Sd: Contains all vertices deleted from the graph so far, in the order that they were deleted.

The algorithm works as follows:

# In the first step, we collapse all multiple edges to single edges, so that the graph is simple. Next, we iterate over the vertices of the graph, pushing any vertex matching the conditions for S4 or S5 onto the appropriate stack.
# Next, as long as S4 is non-empty, we pop "v" from S4 and delete "v" from the graph, pushing it onto Sd, along with a list of its neighbors at this point in time. We check each former neighbor of "v", pushing it onto S4 or S5 if it now meets the necessary conditions.
# When S4 becomes empty, we know that our graph has minimum degree five. If the graph is empty, we go to the final step 5 below. Otherwise, Wernicke's Theorem tells us that S5 is nonempty. Pop "v" off S5, delete it from the graph, and let "v"1, "v"2, "v"3, "v"4, "v"5 be the former neighbors of "v" in clockwise planar order, where "v"1 is the neighbor of degree at most 6. We check if "v"1 is adjacent to "v"3 (which we can do in constant time due to the degree of "v"1). There are two cases:
## If "v"1 is not adjacent to "v"3, we can merge these two vertices into a single vertex. To do this, we remove "v" from both circular adjacency lists, and then splice the two lists together into one list at the point where "v" was formerly found. Provided that "v" maintains a reference to its position in each list, this can be done in constant time. It's possible that this might create faces bounded by two edges at the two points where the lists are spliced together; we delete one edge from any such faces.

After doing this, we push "v"3 onto Sd, along with a note that "v"1 is the vertex that it was merged with. Any vertices affected by the merge are added or removed from the stacks as appropriate.
## Otherwise, "v"2 lies inside the face outlined by "v", "v"1, and "v"3. Consequently, "v"2 cannot be adjacent to "v"4, which lies outside this face. We merge "v"2 and "v"4 in the same manner as "v"1 and "v"3 above.
# Go to step 2.
# At this point S4, S5, and the graph are empty. We pop vertices off Sd. If the vertex was merged with another vertex in step 3, the vertex that it was merged with will already have been colored, and we assign it the same color. This is valid because we only merged vertices that were not adjacent in the original graph. If we had removed it in step 2 because it had at most 4 adjacent vertices, all of its neighbors at the time of its removal will have already been colored, and we can simply assign it a color that none of its neighbors is using.

See also

* Four color theorem

References


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • Four color theorem — Example of a four colored map A four colori …   Wikipedia

  • Theorem — The Pythagorean theorem has at least 370 known proofs[1] In mathematics, a theorem is a statement that has been proven on the basis of previously established statements, such as other theorems, and previously accepted statements …   Wikipedia

  • De Bruijn–Erdős theorem (graph theory) — This article is about coloring infinite graphs. For the number of lines determined by a finite set of points, see De Bruijn–Erdős theorem (incidence geometry). In graph theory, the De Bruijn–Erdős theorem, proved by Nicolaas Govert de Bruijn and… …   Wikipedia

  • Theorem on friends and strangers — All the 78 possible friends strangers graphs with 6 nodes. For each graph the red/blue nodesshows a sample triplet of mutual friends/strangers.The friendship theorem is a mathematical theorem in an area of mathematics called Ramsey… …   Wikipedia

  • Nyquist–Shannon sampling theorem — Fig.1: Hypothetical spectrum of a bandlimited signal as a function of frequency The Nyquist–Shannon sampling theorem, after Harry Nyquist and Claude Shannon, is a fundamental result in the field of information theory, in particular… …   Wikipedia

  • Graph coloring — A proper vertex coloring of the Petersen graph with 3 colors, the minimum number possible. In graph theory, graph coloring is a special case of graph labeling; it is an assignment of labels traditionally called colors to elements of a graph… …   Wikipedia

  • List of mathematics articles (F) — NOTOC F F₄ F algebra F coalgebra F distribution F divergence Fσ set F space F test F theory F. and M. Riesz theorem F1 Score Faà di Bruno s formula Face (geometry) Face configuration Face diagonal Facet (mathematics) Facetting… …   Wikipedia

  • List of theorems — This is a list of theorems, by Wikipedia page. See also *list of fundamental theorems *list of lemmas *list of conjectures *list of inequalities *list of mathematical proofs *list of misnamed theorems *Existence theorem *Classification of finite… …   Wikipedia

  • List of mathematical proofs — A list of articles with mathematical proofs:Theorems of which articles are primarily devoted to proving them: See also: *Bertrand s postulate and a proof *Estimation of covariance matrices *Fermat s little theorem and some proofs *Gödel s… …   Wikipedia

  • Coloration de graphe — En théorie des graphes, colorer un graphe signifie attribuer une couleur à chacun de ses sommets de manière à ce que deux sommets reliés par une arête soient de couleur différente. Est souvent recherchée l utilisation d un nombre minimal de… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”