Então eu entendo a ideia de que o problema de decisão é definido como
Existe um caminho P tal que o custo seja menor que C?
e você pode facilmente verificar se isso é verdade, verificando o caminho que você recebe.
No entanto, e se não houver um caminho que atenda a esse critério? Como você verificaria a resposta do "não" sem resolver o melhor problema de TSP do caminho e descobrir o melhor caminho tem um custo pior que o C?
Respostas:
NP é a classe de problemas em que você pode verificar instâncias "yes". Não há garantia de que você possa verificar instâncias "não".
A classe de problemas em que você pode verificar instâncias "não" em tempo polinomial é co-NP . Qualquer idioma no co-NP é o complemento de algum idioma no NP e vice-versa. Exemplos incluem coisas como não-3-colourability. O problema que você descreve: "Não existe um caminho TSP com comprimento no máximo ?" também está em co-NP : se você desmarcar a negação dupla, uma instância "não" para esse problema é uma instância "yes" para o TSP e podemos verificar as ocorrências em tempo polinomial.C
Existem alguns problemas, como fatoração de número inteiro e qualquer problema em P , que sabemos estar em NP e co-NP . (Obrigado a user21820 por apontar isso.)
Não se sabe se NP e co-NP são o mesmo conjunto de problemas. Se forem iguais, podemos verificar as instâncias "yes" e "no" do TSP. Se eles são diferentes, então P NP≠ , já que sabemos que P co-P= (porque podemos apenas negar a resposta de uma máquina determinística, dando a resposta para o problema do complemento) .
fonte
Ou na maneira como você descreve, ou não se sabe que seja assim.
Nesse caso, para todas as máquinas NP para o problema de decisão, a máquina retornará não para todos os certificados-candidatos.
Bem, pode-se receber uma prova interativa de que não existem tais caminhos .
O problema que você descreve, TSP, não é conhecido como coNP ; portanto, não é conhecido como um modo "NP-like" de verificar se esse caminho não existe.
fonte