Uma prova de uma frase de P ⊆ NP


7

Recentemente, estou lendo um documento [1]. Neste documento, o Prof. Cook fornece uma breve prova dePNP, que é apenas uma frase:

É trivial mostrar que PNP, já que para cada idioma L sobre Σ, E se LP então podemos definir a relação de verificação do tempo polinomial RΣΣ de

R(w,y)wL
para todos w,yΣ.

Eu sei as definições de P e NP, como em [1], mas ainda não consigo entender essa prova. Alguém poderia me explicar a prova? Até uma frase é boa.

A propósito, eu acho ΣΣ deveria estar Σ×Σ. Estou certo?

Referência

[1] S. Cook, The P versus NP problem , [Online] http://www.claymath.org/sites/default/files/pvsnp.pdf .


2
sim deveria ser um ×
Adriann

11
Para quase todas as definições equivalentes de P e NP, existem provas de uma linha para PNP.
Shreesh

@Shreesh Você poderia me dizer onde posso encontrar essas provas de uma linha? Muito obrigado.
Wei-Cheng Liu

11
Gary & Johnson usam definições diferentes para NP, mas usam provas simples (apenas uma menção) para mostrar que PNP, basicamente ignore a sequência de suposições. A definição de certificado é usada em Arora e Barak, eles também usam prova simples (apenas uma dica) paraPNP, que basicamente ignora o certificado. Hopcroft e Ullman usam definições diferentes para NP e ignoram o não-determinismo para provarPNP(apenas uma menção no texto, que isso pode ser feito).
Shreesh 23/05

Respostas:


12

Como L está em P, você pode responder a palavra problema em tempo polinomial. Para mostrar que L também está em NP, precisamos fornecer uma relação de verificação polinomialR de tal modo que

wLy.(|y||wk| and R(w,y))

Agora, o professor Cook diz que é preciso R. Para cadaw no L, não importa o que yΣ você toma, R(w,y) é verdade e para cada w não em L, R(w,y) é falso, independentemente do y. Esta é uma relação de tempo polinomial, pois podemos decidir sewL ou não em tempo polinomial (desde LP), without looking at y at all. And as any y works, there are also some y that are short enough to satisfy the length restriction in the above definition.


3

P={L:L is decided by a deterministic Turing machine in polynomial time}

NP={L:L is decided by a (possibly non-deterministic) Turing machine in polynomial time}

With these definitions, PNP is fairly obvious.

Let's call NP~={L:There is some R so that LRP} where RΣ×Σ and LR={u#v:(u,v)R}. The idea here is that u is the "real" input and v is some extra information to help us know why we should accept u. For example, if the problem is SAT, u is the formula and v can be a valuation.

  • NP~NP : Guess v and then verify u#v it.

  • NPNP~ : Given u, v will be the list transitions taken in an execution accepting u. To verify u#v, you just need to simulate the execution of the non-deterministic machine on u while using v to remove non-determinism.

The proof you're referring to is just saying that PNP~ and you don't even need v because there is no non-determinism to remove.

And yes, it should be Σ×Σ.


I have read your answer, thank you very much. But I can't understand the contents "NP~NP ... no non-determinism to remove." Could you please explain it to me? Thanks in advance.
Wei-Cheng Liu

1
When you prove that NP\widetileNP, you take a problem XNP and try to prove that X\widetileNP. Since X is in NP, you have a non-deterministic Turing machine M that decides it in polynomial time f(n) for any input of size n. To prove it's in \widetileNP, you need to provide a deterministic verifier. Since you know close to nothing about X, it seems fairly obvious that you'll have to use M to construct the verifier. But M is non-deterministic and you want a determnistic verifier. You you need to "remove the non-determnism".
xavierm02

1
You do that by taking the list of transitions of the machine taken during an accepting execution as certificate. This gives you a certificate of size P(n) and given the list of transition, you can simulate M and just follow those transitions, so that even though M is non-deterministic, you can simulate this execution in a deterministic way in polynomial time. | Now if you do the exact same thing with P instead of NP, you don't need the certificate because M is already deterministic, and so just having the input lets you infer all the transitions that were taken.
xavierm02

I have read your comments carefully. Thank you very much. But there are some proper nouns I still can't understand. What is the verifier? What is the deterministic verifier? What is the certificate? Could you please explain them to me? Or could you please list some references so that I can understand these proper nouns from the references? Thanks in advance.
Wei-Cheng Liu
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.