Un resultado clásico de la teoría de grafos establece que dado un grafo no dirigido:
Donde es el número mínimo de colores necesarios para pintar los nodos de con la restricción habitual de que ningún nodo tenga el mismo color que alguno de sus vecinos, y , es decir, el grado máximo. Este resultado se conoce como el Teorema de Brookes.
La forma usual de demostrar este resultado es utilizar el algoritmo de coloreo voraz: se recorre cada nodo y se elige el color más bajo que aún no haya sido usado por ninguno de sus vecinos. Es bastante directo probar el resultado con esta idea: cada nodo tiene a lo sumo vecinos, por lo que el color más alto que se podría elegir es . Este es el resultado que probablemente encontrarás en la mayoría de los libros y cursos de teoría de grafos. El otro día estaba hablando con unos amigos cuando surgió este tema y se nos ocurrió esta demostración.
Para mayor completitud, incluyo aquí algunas definiciones:
Definición: La vecindad de un nodo es
Definición: La vecindad cerrada de un nodo es
Concretamente, la idea reside en la siguiente observación: dada una coloración minimal , . ¿Qué significa esto? Significa que existe un vértice tal que el número de colores en la vecindad cerrada de es exactamente . Asumiendo que el enunciado anterior es verdadero, notemos que , luego:
Que es precisamente el Teorema de Brookes. Entonces, si encontramos una forma de demostrar que , habremos terminado. Planteemos el enunciado formal:
Lema: Dado un grafo no dirigido, una coloración minimal de , .
Demostración: Supongamos que . Claramente, no puede ser mayor que , pues tal situación contradiría que es una coloración minimal de . Por lo tanto, tenemos que toda vecindad cerrada de tiene . Sea , donde ; estos son los nodos coloreados con el color . Solo por brevedad, llamemos a los nodos coloreados con el último color.
Dado cualquier nodo , podemos cambiar su color por otro color más bajo que no esté usado en su vecindad, porque (esto significa que no todos los colores están usados en la vecindad, por lo que al menos podemos tomar ). Llamemos a ese color más bajo que elegimos. Notemos que por construcción no hay conflictos con ningún vecino.
Definamos como
Veamos que esto es una coloración: dado cualquier , queremos verificar que . Supongamos que ; entonces hay tres casos posibles:
- : era el conjunto de nodos coloreados con según , que era una coloración por hipótesis. Por lo tanto, esto no puede ocurrir, ya que contradiría que es una coloración propia.
- : tenemos que , luego , lo que contradiría la hipótesis de que es una coloración propia.
- : por definición, tenemos que , y elegimos de modo que no entre en conflicto con ninguno de sus vecinos. Por lo tanto, esto tampoco puede ocurrir.
Finalmente, ¡hemos demostrado que es una coloración! Sin embargo, esto significa que construimos una coloración de que usa menos colores que . Esto es un absurdo, y por lo tanto no puede haber sido una coloración minimal.