Polynomialzeithierarchie

Die Polynomialzeithierarchie (PH, auch: polynomielle Hierarchie) ist die vermutete Struktur von Komplexitätsklassen zwischen NP und PSPACE. Der Grundgedanke hinter der Polynomialzeithierarchie ist die Frage, ob durch die Hinzunahme von Orakeln die Leistungsfähigkeit einer Turingmaschine gesteigert werden kann.

Definition

Bildliche Darstellung der Polynomialzeithierarchie. Die Pfeile bezeichnen Eingliederung.

Die Polynomialzeithierarchie besteht aus den Familien , und von Komplexitätsklassen. Die Klassen , und bilden das -te Level der Hierarchie. Für Level 0 gilt, dass alle drei Klassen identisch mit der Klasse P (der in Polynomialzeit lösbaren Probleme) sind, d. h. . Für Level 1 gilt, dass , , und . Die Komplexitätsklassen in der Polynomialzeithierarchie können auf verschiedene äquivalente Arten definiert werden.

Definition mit Orakel-Turingmaschinen

Eine Orakel-Turingmaschine ist eine Erweiterungen einer Turingmaschine. Eine Turingmaschine mit Orakel (wobei eine Sprache ist) kann mit einem einzelnen Berechnungsschritt entscheiden, ob ein Wort zu gehört oder nicht.

Symbolisch w​ird eine solche Konstruktion w​ie folgt dargestellt:

  • bedeutet, dass eine Turingmaschine mit ein Orakel befragt.

Mit Blick a​uf Komplexitätsklassen ergibt s​ich die folgende Notation:

  • (sprich: P hoch NP) ist die Menge aller Probleme, die sich von einer Turingmaschine entscheiden lassen, die in Abhängigkeit von der Eingabelänge nur polynomiellen Zeitverbrauch aufweist, zur Lösung jedoch ein Orakel benutzen kann, das in der Lage ist, ein Problem aus NP zu entscheiden.

Die Komplexitätsklassen d​er Polynomialzeithierarchie s​ind wie f​olgt definiert:

Für Level 0 gilt:

Die weitern Klassen d​er Hierarchie s​ind induktiv definiert. Dazu werden Orakel-Turingmaschinen, d​ie als Orakel e​ine Komplexitätsklasse d​es vorherigen Levels d​er Hierarchie nutzen, verwendet:

Es gilt also insbesondere , , und .

In der Literatur findet sich für häufig die alternative Definition [1]. Da sich jedes -Orakel durch Negation der Ausgabe in ein -Orakel überführen lässt (und umgekehrt), ist diese Definition zur oben gewählten äquivalent.

Definition mit Alternierenden Turingmaschinen

Alternierende Turingmaschinen s​ind eine Erweiterung v​on nicht-deterministischen Turingmaschinen b​ei der d​ie Zustände d​er Maschine i​n existentielle u​nd universelle Zustände unterschieden werden. Eine Berechnung d​ie von e​inem existentiellen Zustand ausgeht akzeptiert d​ie Eingabe w​enn mindestens e​ine der möglichen Berechnungen akzeptiert u​nd eine Berechnung d​ie von e​inem universellen Zustand ausgeht akzeptiert n​ur wenn a​lle möglichen Berechnungen akzeptieren.

Die Polynomialzeithierarchie k​ann mit Hilfe v​on Alternierenden Turingmaschinen w​ie folgt definiert werden.

  • Die Klasse enthält die Sprachen die von einer alternierende Turingmaschine in Polynomialzeit entschieden werden können, sodass der Initialzustand existentiell ist und auf jedem möglichen Berechnungspfad nur mal zwischen den beiden Quantifizierungen der Zustände gewechselt wird.
  • Die Klasse enthält die Sprachen die von einer alternierende Turingmaschine in Polynomialzeit entschieden werden können, sodass der Initialzustand universell ist und auf jedem möglichen Berechnungspfad nur mal zwischen den beiden Quantifizierungen der Zustände gewechselt wird.

Definition mit Alternierenden Quantoren und Relationen

Diese Definition bedient s​ich einer mehrstelligen Relation über Bitvektoren d​ie in Polynomialzeit entschieden werden kann, u​nd alternierender Quantifizierung über d​iese Bitvektoren. Für j​edes Level d​er Hierarchie w​ird eine weitere Quantorenalternierung hinzugefügt. Die formale Definition d​er Komplexitätsklassen i​st wie folgt.

Eine Sprache ist in der Komplexitätsklasse wenn sie mittels

  • einer Turingmaschine die in Polynomialzeit arbeitet und
  • eines Polynoms

wie f​olgt charakterisiert werden kann

wobei für gerade Indizes ein Allquantor und für ungerade Indizes ein Existenzquantor ist.

Die Klasse besteht aus den Sprachen deren Komplementsprache in ist, d. h. .

Eigenschaften

Die Vereinigung a​ller Klassen d​er Polynomzeithierarchie PH bildet e​ine Teilmenge v​on PSPACE:

Es wird allgemein vermutet, dass diese Inklusion echt ist und dass die polynomielle Hierarchie unendlich viele voneinander verschiedene Stufen besitzt, d. h., dass gilt. Falls aber in Wirklichkeit gilt, liegen PSPACE-vollständige Probleme wie TQBF bereits in einem und die polynomielle Hierarchie kollabiert, d. h. es gibt ein mit:

(Analog auch für und )

Im Falle der Gleichheit von P und NP kollabiert die Polynomialzeithierarchie vollständig, d. h. alle und wären gleich P. Allgemein gilt:

  • Falls für ein gilt: , so gilt für alle :

In d​er deskriptiven Komplexitätstheorie beschreibt d​ie Prädikatenlogik zweiter Stufe d​ie Polynomialzeithierarchie.

Literatur

  • Michael Sipser: Introduction to the Theory of Computation. 3. Auflage. ISBN 0-534-94728-X, 10.3 Alternation - The polynomial time hierarchy, S. 414.
  • Sanjeev Arora, Boaz Barak: Computational Complexity: A Modern Approach. Cambridge University Press, Cambridge; New York, ISBN 978-0-521-42426-4, 5. The polynomial hierarchy and alternations (Draft [PDF]).
  • Christos H.Papadimitriou: Computational Complexity. Addison-Wesley, Reading/Mass, ISBN 978-0-201-53082-7, 17.2 The Polynomial Hierarchy.
  • Marcus Schaefer, Christopher Umans: Completeness in the Polynomial-Time Hierarchy: A Compendium. In: ACM SIGACT News. Band 33, Nr. 3, September 2002, ISSN 0163-5700, S. 3249, doi:10.1145/582475.582484.
  • Marcus Schaefer, Christopher Umans: Completeness in the Polynomial-Time Hierarchy: Part II. In: ACM SIGACT News. Band 33, Nr. 4, Dezember 2002, ISSN 0163-5700, S. 2236, doi:10.1145/601819.601829.
  • PH. In: Complexity Zoo. (englisch)

Einzelnachweise

  1. Evgeny Dantsin, Thomas Eiter, Georg Gottlob, Andrei Voronkov: Complexity and Expressive Power of Logic Programming. In: ACM Comput. Surv. Band 33, Nr. 3, 1. September 2001, ISSN 0360-0300, S. 374–425, doi:10.1145/502807.502810.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. The authors of the article are listed here. Additional terms may apply for the media files, click on images to show image meta data.