Monday, July 2, 2018

Textual description of firstImageUrl

Cook-Levin-Theorem - Wikipedia


In der Theorie der rechnerischen Komplexität besagt der Cook-Levin-Theorem der auch als Cooks Theorem bekannt ist, dass das Boolesche Erfüllbarkeitsproblem NP-vollständig ist. Das heißt, jedes Problem in NP kann in der Polynomzeit durch eine deterministische Turingmaschine auf das Problem reduziert werden, zu bestimmen, ob eine boolesche Formel zufriedenstellend ist.

Der Satz wurde nach Stephen Cook und Leonid Levin benannt.

Eine wichtige Konsequenz dieses Theorems ist, dass, wenn ein deterministischer Polynomialzeitalgorithmus zum Lösen der Booleschen Erfüllbarkeit existiert, jedes NP-Problem durch einen deterministischen Polynomialzeitalgorithmus gelöst werden kann. Die Frage, ob ein solcher Algorithmus für die Boolesche Erfüllbarkeit existiert, ist daher das P-Problem gegenüber dem NP-Problem, das weithin als das wichtigste ungelöste Problem in der theoretischen Informatik angesehen wird.

Beiträge [ edit ]

Das Konzept der NP-Vollständigkeit wurde in den späten 1960er und frühen 1970er Jahren parallel von Forschern in den USA und der UdSSR entwickelt. In den USA veröffentlichte Stephen Cook 1971 seinen Artikel "Die Komplexität der Theorem, der Verfahren beweist" [1] im Konferenzverfahren des neu gegründeten ACM-Symposiums über Theorie des Rechnens. Richard Karp's nachfolgender Artikel "Reduzierbarkeit unter kombinatorische Probleme ", [2] erweckte erneut Interesse an Cooks Artikel, indem er eine Liste von 21 NP-Komplettproblemen vorschlug. Cook und Karp erhielten für diese Arbeit einen Turing-Preis.

Das theoretische Interesse an NP-Vollständigkeit wurde auch durch Theodore P. Baker, John Gill und Robert Solovay verstärkt, die zeigten, dass die Lösung von NP-Problemen in Oracle-Maschinenmodellen exponentielle Zeit erfordert. Das heißt, es gibt ein Orakel A so dass für alle subexponentiell deterministischen Zeitkomplexitätsklassen T die relativierte Komplexitätsklasse NP A keine Untermenge von T A ist ]. Für dieses Orakel ist insbesondere P A ≠ NP A [3]

in der USSR ein Ergebnis, das Baker, Gill und entspricht Solovay's wurde 1969 von M. Dekhtiar veröffentlicht. [4] Später erschien Levins Arbeit "Universelle Suchprobleme" [5] im Jahr 1973, obwohl er in Gesprächen erwähnt und einige Jahre zuvor zur Veröffentlichung eingereicht wurde.

Levins Ansatz unterschied sich ein wenig von Cooks und Karps darin, dass er Suchprobleme in Betracht zog, die Lösungen erfordern und nicht nur die Existenz bestimmen. Er stellte 6 solcher NP-vollständigen Suchprobleme oder universelle Probleme bereit. Außerdem fand er für jedes dieser Probleme einen Algorithmus, der es in optimaler Zeit löst (insbesondere laufen diese Algorithmen in Polynomialzeit, wenn und nur wenn P = NP).

Definitionen [ edit ]

Ein Entscheidungsproblem ist in NP wenn es durch einen nicht deterministischen Algorithmus in Polynomialzeit gelöst werden kann.

Eine Instanz des booleschen Erfüllbarkeitsproblems ist ein boolescher Ausdruck, der boolesche Variablen mit Booleschen Operatoren kombiniert.

Ein Ausdruck ist erfüllbar wenn den Variablen eine Zuweisung von Wahrheitswerten vorliegt, die den gesamten Ausdruck wahr machen.

Konstruieren Sie für jedes Entscheidungsproblem in NP eine nicht deterministische Maschine, die sie in Polynomialzeit löst. Erstellen Sie dann für jede Eingabe an diese Maschine einen booleschen Ausdruck, der besagt, dass die Eingabe an die Maschine übergeben wird, die Maschine ordnungsgemäß ausgeführt wird und die Maschine anhält und "Ja" antwortet. Dann kann der Ausdruck erfüllt werden, wenn und nur dann, wenn es eine Möglichkeit gibt, dass die Maschine korrekt läuft und "Ja" antwortet. Die Erfüllbarkeit des konstruierten Ausdrucks entspricht der Frage, ob die Maschine "Ja" antwortet oder nicht.

Schematisch akzeptierte Berechnung durch die Maschine M .

Dieser Beweis basiert auf dem von Garey und Johnson gegebenen Nachweis. [6]

zwei Teile zum Nachweis, dass das boolesche Erfüllbarkeitsproblem (SAT) NP-vollständig ist. Eines ist zu zeigen, dass SAT ein NP-Problem ist. Zum anderen soll gezeigt werden, dass jedes NP-Problem durch eine vielfache Polynomialzeit-Reduktion auf ein SAT-Problem reduziert werden kann.

SAT befindet sich in NP, da jede Zuweisung von booleschen Werten zu booleschen Variablen, von der behauptet wird, dass sie den angegebenen Ausdruck erfüllt, in polynomialer Zeit durch eine deterministische Turingmaschine überprüft werden kann. (Die Aussagen nachweisbar in polynomialer Zeit durch eine deterministische Turing-Maschine und lösbar in polynomialer Zeit durch eine nicht-deterministische -Turing-Methode machine sind völlig gleichwertig, und der Beweis kann in vielen Lehrbüchern gefunden werden, zum Beispiel in Sipsers Einführung in die Theorie der Berechnung Abschnitt 7.3.).

Nehmen wir nun an, dass ein gegebenes Problem in NP durch die nichtdeterministische Turingmaschine M = ( Q s F) gelöst werden kann δ) wobei Q die Menge von Zuständen ist, Σ das Alphabet der Bandsymbole ist, s Q die Initiale ist State, F Q ist die Menge akzeptierender Staaten und δ ⊆ (([ Q F ) × Σ ) × ( Q × Σ × {-1, +1}) ist die Übergangsbeziehung. Nehmen wir weiter an, dass M eine Instanz des Problems rechtzeitig akzeptiert oder ablehnt p ( n ), wobei n die Größe der Instanz ist und p ist eine Polynomfunktion.

Für jede Eingabe I geben wir einen booleschen Ausdruck an, der genau dann und nur dann zufriedenstellend ist, wenn die Maschine M I akzeptiert.

Der boolesche Ausdruck verwendet die in der folgenden Tabelle angegebenen Variablen. q [1945 Q - p ( n ) i p p n ), j und 0 k p [ n ) .

Variablen Beabsichtigte Interpretation Wie viele?
T i, j, k Trifft zu, wenn die Bandzelle i das Symbol j bei Schritt k der Berechnung enthält. O ( p ( n ) 2 )
H i, k Trifft zu, wenn sich der Schreib- / Lesekopf von M bei Bandzelle i im Schritt k von befindet die Berechnung. O ( p ( n ) 2 )
Q q, k Trifft zu, wenn M sich im Zustand q im Schritt k der Berechnung befindet. O ( p ( n ))

Definieren Sie den booleschen Ausdruck B als Konjunktion der Unterausdrücke in der folgenden Tabelle für alle - p ( n ) i p ( n ) und 0 k p p n ) :

Ausdruck Bedingungen Interpretation Wie viele?
Bandzelle i enthält zunächst das Symbol j Anfangsinhalt des Bandes. Für i > n -1 und i <0 außerhalb der eigentlichen Eingabe ist das Anfangssymbol das spezielle Standard- / Leersymbol. O ( p ( n ))
Anfangszustand von M . 1
Anfangsposition des Lese- / Schreibkopfes. 1