Como entender a redução do problema de 3 cores para geral

8

O problema da 3-Coloração pode ser comprovado pelo NP-Complete, utilizando a redução do 3SAT Graph Coloring (da 3SAT) . Como consequência, o problema 4-Coloring é NP-Complete usando a redução de 3-Coloring:

Redução da instância de 3 cores: adicionando um vértice extra ao gráfico do problema de 3 cores e tornando-o adjacente a todos os vértices originais.

Seguindo o mesmo raciocínio, 5 cores, 6 cores e até mesmo geral k- O problema de cores pode ser comprovado facilmente com NP-Complete. No entanto, meu problema surge com a indução matemática subjacente:

Meu problema: e se a indução continuar n-1-Coloração e n-Problema de cores, onde né o número de vértices no gráfico? Eu certamente sei quen- O problema da coloração pode ser resolvido trivialmente. Então, há algo errado com o raciocínio? Como entender a redução do problema de 3 cores para o geralk-Colorindo um?

hengxin
fonte

Respostas:

7

o kO problema de cores é geralmente definido apenas para constantes k, tão n-colorir não faz sentido. Para cada constantek3, a redução mencionada funciona. Ao adicionar um número superconstante de vértices, é possível mostrar, por exemplo, que(n/2+3)-coloring é NP-complete.

Yuval Filmus
fonte
3

Sua aparente contradição vem do abuso da notação "n": seu significado muda à medida que você percorre a pergunta.

Quando você diz isso n-coloring é trivial, o que você quer dizer é que é trivial colorir qualquer gráfico G com |V(G)|cores. Mas onproblema de cor para qualquer constante n é o problema de determinar se um gráfico de entrada arbitrário, com qualquer número de vértices, possui um n-coloração.

A cadeia de reduções de 3-colourability to n-colourability adiciona n3vértices para o gráfico. Isso significa que a única maneira de você terminar com uma instância trivial donproblema de cor é se a sua entrada original para o 3problema de cor teve 3 ou menos vértices - essa instância já era trivialmente 3-colourable.

A propósito, não há necessidade de usar indução para provar que k-colourability é NP- complete para cada k3porque é fácil compor a sequência de reduções que apareceria na indução. Um gráfico G é 3-colourable se, e somente se, o gráfico G é k-colourable, onde G é a união disjunta de G e uma cópia de Kk3, além de todas as arestas possíveis entre as duas partes.

David Richerby
fonte
1

o kO problema da coloração é colorir qualquer gráfico. Você certamente pode encontrar gráficos para os quaiskA coloração é trivial, assim como as fórmulas para as quais o SAT é trivial ou etc. Isso não afeta a complexidade dos problemas em geral.

Karolis Juodelė
fonte
1
"Gráficos para os quais k-coloring é trivial ... fórmulas para as quais o SAT é trivial "- todo gráfico é trivial para k-color, todas as fórmulas para determinar sua satisfação, uma vez que a solução pode ser codificada. No entanto, SAT e 3-colorability são difíceis de NP. Em contraste,n-colorability possui um algoritmo polytime. O OP estava preocupado que isso contradisse uma prova de quek-colorability é NP-difícil para cada k.
Yuval Filmus 01/01
1
@YuvalFilmus, suponho que quis dizer classes de gráficos ou fórmulas para os quais os problemas são mais fáceis. Estou confuso embora. Os problemas de coloração k e n-coloração são diferentes de alguma forma?
precisa saber é o seguinte
Sim, k é constante enquanto ndepende do tamanho do gráfico.
Yuval Filmus 01/01