Claramente, hay una reducción de CLIQUE a k-Color porque ambos son NP-Complete. De hecho, puedo construir uno componiendo una reducción de CLIQUE a 3-SAT con una reducción de 3-SAT a k-Color. Lo que me pregunto es si existe una reducción directa razonable entre estos problemas. Digamos, una reducción que podría explicar a un amigo bastante brevemente sin necesidad de describir un idioma intermedio como el SAT.
Como ejemplo de lo que estoy buscando, aquí hay una reducción directa en la dirección inversa: dado G con y algo de (el número de colores), haga un gráfico G 'con vértices (uno por color por vértice). Los vértices , correspondientes a los vértices y los colores respectivamente son adyacentes si y solo si y ( o ). Una -clique en tiene solo un vértice por vértice en , y los colores correspondientes son un -coloring adecuado de. De manera similar, cualquier color apropiado de tiene una camarilla correspondiente en .
Editar : para agregar una breve motivación, los 21 problemas originales de Karp se prueban NP-Completo por un árbol de reducciones donde CLIQUE y Chromatic Number forman las raíces de los principales subárboles. Hay algunas reducciones naturales entre los problemas en el subárbol CLIQUE y el subárbol Número cromático, pero muchos de ellos son tan difíciles de encontrar como el que estoy preguntando. Estoy tratando de profundizar en si la estructura de este árbol muestra alguna estructura subyacente en los otros problemas o si es completamente una consecuencia de las reducciones que se encontraron primero, ya que hay menos motivación para buscar reducciones entre dos problemas cuando se sabe que están en la misma clase de complejidad. Ciertamente, el orden tuvo cierta influencia, y partes del árbol se pueden reorganizar, pero ¿se puede reorganizar arbitrariamente?
Edición 2 : Continúo buscando una reducción directa, pero aquí hay un bosquejo de lo más cercano que he llegado (debería ser una reducción válida, pero tiene CIRCUIT SAT como un intermediario claro; es algo subjetivo si esto es mejor que componer dos reducciones como se menciona en el primer párrafo).
Dado , sabemos que puede ser -colorido con vértices todos coloreados Verdadero si tiene una -clique. los vértices originales de y luego agregamos a vértices adicionales: con , . La clave invariante será que puede ser coloreado Verdadero si y solo si entre vértices hay al menos vértices coloreados Verdadero. Entonces, cada puede ser Verdadero. Luego,¯ G n - k + 1 k G k G v 1 , … , v n ¯ G C 1≤i≤n0≤j≤k C i j { v 1 ,…, v i }j C i 0 C i j para obtiene el color donde todos los colores no verdaderos se tratan como falsos. Hay una -clique en si puede ser coloreado Verdadero, así que si forzamos esa coloración, la nueva gráfica es coloreable si hubiera una clique en la gráfica original.C ( i - 1 ) j ∨ C ( i - 1 ) ( j - 1 ) ∧ v i k G C n k k
Los gadgets AND y OR para imponer las relaciones son muy parecidos a la reducción de CIRCUIT SAT a 3-COLOR, pero aquí incluimos una en nuestro gráfico, seleccionamos los vértices T, F y Ground, y luego conecta a todos los demás a todo menos a los s; esto asegura que los sy los otros gadgets reciban solo 3 colores. v i C i j
De todos modos, la parte de esta reducción se siente directa, pero el uso de compuertas AND / OR es mucho menos directo. La pregunta sigue siendo, ¿hay una reducción más elegante?
Edición 3 : Ha habido algunos comentarios sobre por qué esta reducción sería difícil de encontrar. CLIQUE y k-Color son realmente problemas muy diferentes. Sin embargo, incluso sin una reducción, una respuesta que detalle por qué la reducción es difícil en una dirección pero posible en la otra sería muy útil y contribuiría mucho al problema.
fuente
Respuestas:
Dado un grafo y un número , de tal manera que usted quiere saber si contiene un -clique, Sea n el número de vértices en . Construimos otro gráfico , de modo que sea -colorable si y solo si tiene una -clique, de la siguiente manera:k G k G H H n G kG k G k G H H n G k
(1) Para cada vértice en , haga una camarilla de vértices en , donde varía de a .G n ( v , i ) H i 1 nv G n (v,i) H i 1 n
(2) Añadir un vértice adicionales a .Hx H
(3) Para cada triple de vértices en , donde y , compruebe si una de las siguientes condiciones cumple: u e , y son vértices no adyacentes en con . Si cualquiera de estas dos cosas es cierta, añadir otro -clique a . Dentro de esta camarilla, seleccione tres vértices , y . Conecte a cada vértice de la camarilla, excepto para yH y = ( v , i ) z = ( u{x,y,z} H y=(v,i) z=(u,j) i = j u v G max ( i , j ) ≤ k n H x ′ y ′ z ′ x y ′ z ′ y x ′ z ′ z x ′ yu≠v i=j u v G max(i,j)≤k n H x′ y′ z′ x y′ z′ ; conecta a cada vértice de la camarilla, excepto y ; y conecte a cada vértice de la camarilla, excepto e .y x′ z′ z x′ y′
Los aparatos añadido en la etapa (3) impedir la triple de vértices , , y de todos los que se da el mismo color que el uno al otro en una coloración válida de . La camarilla en se puede recuperar de una coloración de como el conjunto de vértices que están en la misma clase de color que y que tienen .x y H G H ( v , i ) x i ≤ kz H G H (v,i) x i≤k
fuente
?? Se sabe que la coloración y el hallazgo de camarillas están estrechamente vinculados durante décadas a través de la teoría de gráficos (¿posiblemente incluso en los años 60?) Incluso no a través del SAT como intermediario (que se convirtió en típico después de la prueba de Cook en 1971). cree que hay algoritmos basados en la siguiente propiedad básica :
no estoy seguro de referencias exactas pero [1,2] son buenos lugares para comenzar, un algoritmo exacto o referencia es al menos probablemente citado en estos libros.
[1] Camarillas, coloración y satisfacción, segundo desafío DIMACS
[2] Dimacs vol 26: camarillas, coloración y satisfacción
fuente