Satz von Immerman und Szelepcsényi – Wikipedia
Der Satz von Immerman und Szelepcsényi ist ein Satz aus der Komplexitätstheorie und besagt, dass die nichtdeterministischen Platzkomplexitätsklassen unter Komplementbildung abgeschlossen sind. Insbesondere ist daher die Klasse NL (nichtdeterministisch logarithmischer Platz) unter Komplementbildung abgeschlossen.
Lange nahm man wie für die nichtdeterministischen Zeitkomplexitätsklassen an, dass NL nicht unter dem Komplement abgeschlossen sei, bis 1988 Immerman und Szelepcsényi unabhängig voneinander den Beweis erbrachten. Dafür wurde beiden gemeinsam der Gödel-Preis (1995) verliehen.
Sei eine monotone Funktion mit
. Dann gilt:
Insbesondere gilt dann .
Es gilt aber auch, dass aus
mit der Paddingtechnik das Theorem für alle
folgt.
Der Beweis verwendet die Beweistechnik des (nichtdeterministischen) induktiven Zählens.
Sei eine Sprache über der Typ-1-Grammatik
mit den üblichen Symbolen für Nichtterminale
, Terminale
, Produktionsregeln
und dem Startsymbol
.
Dann ist für ein Wort
der Graph
derjenige Graph, der alle Satzformen mit einer Länge höchstens der Länge von
enthält, wobei der Graph genau dann eine Kante zwischen zwei Satzformen hat, wenn es eine Produktion in
gibt.
Insbesondere enthält der Graph sowohl
als auch
selbst und es gilt, dass
genau dann, wenn es einen Pfad von
nach
in diesem Graphen gibt.
Wenn es nun möglich ist, eine nichtdeterministische, linear beschränkte Turingmaschine zu konstruieren, die genau dann akzeptiert, wenn es keinen Pfad von nach
gibt, ist der Beweis erbracht.
Zunächst sei angenommen, dass die Anzahl der erreichbaren Knoten von
bekannt ist (wir verschieben die Berechnung von
auf später).
Dann löst folgender Algorithmus die Nicht-Erreichbarkeit.
Gegeben Graph , Startknoten
, Zielknoten
und Anzahl erreichbarer Knoten
.
- Initialisiere Zähler
- Für jeden Knoten
:
- Falls
, breche mit nein ab, ansonsten gebe ja aus.
Weder noch
können größer als
sein und verbrauchen demnach (binär kodiert) nicht mehr als
Speicherplatz.
Der Algorithmus stellt sicher, dass alle
Knoten, die von
erreichbar sind, aufgezählt werden und akzeptiert nur dann, wenn
keiner dieser Knoten war.
Es bleibt jetzt nur noch die bislang unbekannte Anzahl der erreichbaren Knoten zu ermitteln. Die Idee ist, die Anzahl
der Knoten zu berechnen, die in höchstens
Schritten erreichbar sind. Man lässt
dann induktiv hochzählen und verwendet, dass
gilt. Der Algorithmus funktioniert wie folgt:
- Initialisiere
(der Startknoten benötigt keinen Schritt um erreicht zu werden)
- Für jede Anzahl an Schritten
:
- Initialisiere
.
Für jeden Knoten
:
- Initialisiere einen Zähler
- Für jeden Knoten
:
- Falls
, breche die Berechnung ab
- Initialisiere einen Zähler
- Initialisiere
- Gebe
zurück.
Da sich der Algorithmus lediglich drei Zähler () gleichzeitig merken muss, lässt er sich mit logarithmischem Speicherplatz realisieren.
Ein formaler Beweis der Korrektheit wird dem interessierten Leser überlassen. Als Beweisidee dient folgender Hinweis:
wird genau dann nicht inkrementiert, wenn alle Knoten mit einer Distanz kleiner als
ausprobiert wurden und kein weiterer direkt (d. h. in höchstens einem Schritt) erreichbarer Knoten gefunden werde konnte.
Nun müssen lediglich beide Algorithmen kombiniert werden.
- Berechne
für
und
durch induktives Zählen.
- Benutze Nicht-Erreichbarkeit für
und
mit zuvor berechnetem
.
Eine solche Turingmaschine akzeptiert genau dann, wenn es keinen Pfad von nach
gibt und da beide Teilalgorithmen nur logarithmischen Speicherplatz benötigen, ist der Beweis komplett.
Originalpublikationen:
- Neil Immerman: Nondeterministic space is closed under complementation. In: SIAM Journal on Computing. Band 17, Nr. 5, Oktober 1988, S. 935 - 938, doi:10.1137/0217058.
- Róbert Szelepcsényi: The method of forcing for nondeterministic automata. In: Acta Informatica. Band 26, Nr. 3, November 1988, S. 279 - 284, doi:10.1007/BF00299636.
Lehrbücher:
- Sanjeev Arora, Boaz Barak: Computational Complexity: A Modern Approach. Cambridge University Press, Cambridge; New York 2009, ISBN 978-0-521-42426-4, 4.3.2 NL=coNL (Draft [PDF]).