NP

Die Klasse von Problemen, die alle jene Entscheidungsprobleme enthält, die Richtigkeit einer bestimmten Lösung eines nicht-deterministische Turingmaschine, um zu überprüfen, beschäftigt Polynomialzeit. Die Klasse NP hat seinen Namen von der Abkürzung des Nichtdeterministische Polynomialzeit.

Die Klasse kann in einer alternativen Art und Weise gehen die Vorteile der nicht-determinisTuringMaschinen nehmen definiert werden. In der Tat wird es folgen, als eine Reihe von Wörtern von einem Alphabet, gegeben wird, dann in der Klasse ist, wenn und nur wenn eine Turingmaschine nondeterministic polynomial davon, für jeden Eingang, der zumindest eine Rechen konvergiert hat existiert.

Grundsätzlich, wenn es eine nicht-determinis Turing Maschine, übernimmt.

Taken eine nichtdeterministische Turingmaschine in polynomieller Zeit, dann wird es eine Sprache, die ein Problem, das zu der Klasse gehört sein wird, anzunehmen. Die Turing-Maschine dann, für jeden Eingang wird unter allen möglichen Berechnungen an diesem Eingang, ein Krachen.

Allerdings, wenn der Eingang, der Turing-Maschine, die nicht zu dieser Sprache gehören, akzeptieren bietet, dann werden Sie nur endlose Berechnungen und die Turing-Maschine offensichtlich divergiert.

Sie haben, dass. Aus dieser Aussage ist es klar, dass in erster Linie Probleme der Klasse P sind auch Probleme der Klasse NP.

Folgenden wird gezeigt, daß die Klasse als diejenige Klasse von Problemen, für die es in der Lage, schnell zu überprüfen, ob eine mögliche Lösung ist tatsächlich derart ist, charakterisiert werden.

Projektionstheorem

Eine Sprache ist, ein Problem ist. Dann haben wir, wenn und nur wenn es eine Klasse Ausgabe und ein Polynom, dass unser Problem kann wie folgt ausgedrückt werden:

{} Mit so dass T

Im wesentlichen das Theorem besagt, dass das Problem in der Klasse, wenn es ein Problem der Klasse, so daß für jeden Eingang durch Polynomzeit akzeptiert, mit der Einschränkung, dass die Länge durch Polynom beschränkt.

Diese letztere Bedingung auf der Länge ist es wichtig, sicherzustellen, dass die Steuerung auf der Tatsache, dass es ein effektives Element in Polynomzeit geschehen ist.

In der Tat ist es nicht ausreichend, und daher in Polynoms annehmen. Also im Grunde kann man sagen, dass genau dann, wenn für jede in der Lage, um eine mögliche Lösung, die ich kenne Check in polynomieller Zeit zuzuordnen sind.

Demonstration

Auf dem Weg, wenn der Satz) Angenommen, Sie einen Sprachkurs, der durch deterministische Turingmaschine entschieden wird, und auch davon ausgehen, die Bedingung wahr ist angesichts des Satzes haben. Dann müssen wir, um die nicht-deterministischen Turing-Maschine zu bauen, so dass für jeden Eingang stehen die folgenden drei Schritte:

  • Berechnet
  • Er schreibt in einem nicht-determinis
  • Berechnet die Maschine für das Eingangs

Die erste Beobachtung, die getan werden kann, ist, dass die Maschine nicht deterministisch Polynom, da alle drei Schritte sind so, dass es zu spielen. Deshalb.

Beachten Sie auch, dass, wenn gilt, und dann die Berechnung der Haltestellen. Deshalb haben wir, dass, wenn sie wert \ in T und dann zu akzeptieren. Aber wenn Sie einverstanden sind, bedeutet dies, dass.

Richtung und nur wenn der Satz) Grundsätzlich müssen wir zeigen, daß, wenn, das heißt, wenn es von einem deterMaschine Polynomzeit angenommen, so daß gilt und daß T.

Zu tun, dass ich die Sprache richtig zu bauen. Zu diesem Zweck nehmen wir an, dass es der Maschine, die nicht-determinis akzeptiert ist. Wie wir wissen, für jede Maschine, die nicht deterministisch ist, wobei jede Berechnung wird als eine Folge von aufeinanderfolgenden Konfigurationen dargestellt.

Insbesondere für jede konvergente Berechnung, werden wir, dass die Liste von aufeinander folgenden Konfigurationen ist eine endliche Liste. Für jede dieser Sequenzen von Konfigurationen können wir eine Zahl ist, die in unserem Fall werden binäre zuzuordnen.

Aber für eine nicht-deterministischen Turingmaschine, als unendliche kann mehrere mögliche Berechnungen, dass Erkenntnis sein, werden Sie Probleme haben. Um dies zu überwinden, können wir gehen, um die Paare zu berücksichtigen:

 {Bei der Codierung eine Berechnung des Endes des Eingabe}

wie wir sehen können, dass das Leben zu geben, um die ganze Sprache. Solcher Sprache muss die Mitgliedschaft in der Klasse von Problemen überprüft werden. Zu diesem Zweck müssen wir prüfen Eingangssignal-Berechnungs stoppt wirklich.

Im Wesentlichen muss überprüft werden, dass der erste Schritt, den Sie in den Staat, die auf dem Band Eingangs sagt sind; dann müssen Sie sicherstellen, dass jeder nächste Konfiguration von der vorherigen durch die Übergangsfunktion ergibt; Schließlich muss der letzte Konfiguration beachten ist die Konfiguration eines Terminals. Wenn dies dann wahr.

An dieser Stelle muß gemacht werden, um zu sehen, dass ein Polynom, daß. Hierfür sehen wir, dass, wenn die Berechnung der Berechnungs konvergiert dann hat dies eine Polynom Anzahl von Schritten und in jedem Schritt I eine Konfiguration, Polynomlänge als die Länge besitzt; außerdem auch, es wird Polynomlänge Vergleich zu haben. So haben wir das Polynom erforderlich.

  0   0
Vorherige Artikel Ugo Riccarelli
Nächster Artikel Ric Ocasek

Kommentare - 0

Keine Kommentare

Fügen Sie einen Kommentar

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Zeichen übrig: 3000
captcha