Ein Ein-Satz-Beweis von P ⊆ NP


7

Kürzlich lese ich ein Dokument [1]. In diesem Dokument liefert Prof. Cook einen kurzen Beweis für , der nur ein Satz ist:PNP

Es ist trivial zu zeigen, dass , da wir für jede Sprache über , wenn , die Polynom-Zeit-Überprüfungsrelation von für alle .PNPLΣLPRΣΣ

R(w,y)wL
w,yΣ

Ich kenne die Definitionen von und wie in [1], aber ich kann diesen Beweis immer noch nicht verstehen. Könnte mir jemand den Beweis erklären? Schon ein Satz ist gut.PNP

Ich denke übrigens, sollte . Habe ich recht?ΣΣΣ×Σ

Referenz

[1] S. Cook, Das P-gegen-NP-Problem , [Online] http://www.claymath.org/sites/default/files/pvsnp.pdf .


2
ja es sollte ein×
adrianN

1
Für fast alle äquivalenten Definitionen von und gibt es einzeilige Beweise für . PNPPNP
Shreesh

@Shreesh Könnten Sie mir bitte sagen, wo ich diese einzeiligen Proofs finden kann? Vielen Dank.
Wei-Cheng Liu

1
Gary & Johnson verwenden eine andere Definition für NP, aber sie verwenden einen einfachen Beweis (nur eine Erwähnung), um dies zu zeigen PNPIgnorieren Sie im Grunde die Vermutungszeichenfolge. Die Zertifikatsdefinition wird in Arora und Barak verwendet, sie verwenden auch einen einfachen Beweis (nur einen Hinweis) fürPNP, die das Zertifikat grundsätzlich ignoriert. Hopcroft und Ullman verwenden eine andere Definition für NP und ignorieren den Nichtdeterminismus, um dies zu beweisenPNP(nur eine Erwähnung im Text, dass es möglich ist).
Shreesh

Antworten:


12

Da L in P ist, können Sie das Wortproblem in Polynomzeit beantworten. Um zu zeigen, dass L auch in NP ist, müssen wir eine Polynomprüfungsrelation bereitstellenR so dass

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

Jetzt sagt Prof. Cook, dass er eine sehr einfache nehmen soll R. Für jedenw im L, egal was yΣ du nimmst, R(w,y) ist wahr und für jeden w nicht in L, R(w,y) ist falsch, unabhängig von der y. Dies ist eine polynomielle Zeitbeziehung, da wir entscheiden können, obwL oder nicht in Polynomzeit (seit LP), ohne zu schauen yüberhaupt. Und wie jedery funktioniert, es gibt auch einige y die kurz genug sind, um die Längenbeschränkung in der obigen Definition zu erfüllen.


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}

Mit diesen Definitionen PNP ist ziemlich offensichtlich.

Lass uns anrufen NP~={L:There is some R so that LRP} wo RΣ×Σ und LR={u#v:(u,v)R}. Die Idee hier ist dasu ist der "echte" Eingang und v ist eine zusätzliche Information, die uns hilft zu wissen, warum wir akzeptieren sollten u. Zum Beispiel, wenn das Problem istSAT, u ist die Formel und v kann eine Bewertung sein.

  • NP~NP : Vermuten v und dann überprüfen u#v es.

  • NPNP~ : Gegeben u, v werden die Listenübergänge in einer Ausführung akzeptiert u. Verifizierenu#vmüssen Sie nur die Ausführung der nicht deterministischen Maschine auf simulieren u während dem Benutzen v Nichtdeterminismus zu entfernen.

Der Beweis, auf den Sie sich beziehen, ist nur das zu sagen PNP~ und du brauchst nicht einmal v weil es keinen Nichtdeterminismus zu entfernen gibt.

Und ja, das sollte es sein Σ×Σ.


Ich habe Ihre Antwort gelesen, vielen Dank. Aber ich kann den Inhalt nicht verstehen "NP~NP... kein Nichtdeterminismus zu entfernen. "Könnten Sie es mir bitte erklären? Vielen Dank im Voraus.
Wei-Cheng Liu

1
Wenn Sie das beweisen NP\widetileNPSie nehmen ein Problem XNP und versuchen Sie das zu beweisen X\widetileNP. Schon seitX ist in NPSie haben eine nicht deterministische Turingmaschine M das entscheidet es in polynomialer Zeit f(n) für jede Eingabe der Größe n. Um zu beweisen, dass es drin ist\widetileNPmüssen Sie einen deterministischen Verifizierer bereitstellen . Da weißt du so gut wie nichts darüberXEs scheint ziemlich offensichtlich, dass Sie verwenden müssen Mum den Verifizierer zu konstruieren. AberMist nicht deterministisch und Sie möchten einen deterministischen Prüfer. Sie müssen "die Nichtbestimmung entfernen".
Xavierm02

1
Sie tun dies, indem Sie die Liste der Übergänge des Computers, die während einer akzeptierenden Ausführung vorgenommen wurden, als Zertifikat verwenden. Dies gibt Ihnen ein GrößenzertifikatP(n) und angesichts der Liste der Übergänge können Sie simulieren M und folge einfach diesen Übergängen, so dass obwohl MIst dies nicht deterministisch, können Sie diese Ausführung in Polynomzeit deterministisch simulieren . | Nun, wenn Sie genau das Gleiche mit tunP anstatt NP, Sie brauchen das Zertifikat nicht, weil Mist bereits deterministisch, und wenn Sie nur die Eingabe haben, können Sie auf alle Übergänge schließen, die vorgenommen wurden.
Xavierm02

Ich habe Ihre Kommentare sorgfältig gelesen. Vielen Dank. Aber es gibt einige Eigennamen, die ich immer noch nicht verstehen kann. Was ist der Prüfer? Was ist der deterministische Verifizierer? Was ist das Zertifikat? Könnten Sie sie mir bitte erklären? Oder könnten Sie bitte einige Referenzen auflisten, damit ich diese Eigennamen aus den Referenzen verstehen kann? Danke im Voraus.
Wei-Cheng Liu
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.