Satz von Savitch

Der Satz von Savitch oder Theorem von Savitch ist ein Satz aus der Komplexitätstheorie, der 1970 von Walter Savitch bewiesen wurde. Er besagt, dass ein von einer nichtdeterministischen Turingmaschine mit einer bestimmten Platzkomplexität lösbares Problem auf einer deterministischen Turingmaschine mit einer quadratisch höheren Platzschranke gelöst werden kann.

Eine Folgerung aus dem Satz von Savitch ist die Gleichheit von PSPACE und NPSPACE.

Aussage

Sei s : N N {\displaystyle s:\mathbb {N} \rightarrow \mathbb {N} } eine platzkonstruierbare Funktion mit s ( n ) Ω ( log ( n ) ) {\displaystyle s(n)\in \Omega (\log(n))} . Dann gilt:

NSPACE ( s ( n ) ) DSPACE ( ( s ( n ) ) 2 ) {\displaystyle {\text{NSPACE}}(s(n))\subseteq {\text{DSPACE}}((s(n))^{2})}

Beweisidee

Nehmen wir an, L NSPACE ( s ( n ) ) {\displaystyle L\in {\mbox{NSPACE}}(s(n))} , d. h., es gibt eine nichtdeterministische Turingmaschine M {\displaystyle M} mit Platzbedarf s ( n ) {\displaystyle s(n)} , welche genau die Sprache L {\displaystyle L} akzeptiert. Aufgrund der Platzbeschränkung kann M {\displaystyle M} nur | Q | n s ( n ) | Γ | s ( n ) {\displaystyle |Q|\cdot n\cdot s(n)\cdot |\Gamma |^{s(n)}} verschiedene Konfigurationen annehmen, wobei | Q | {\displaystyle |Q|} die Anzahl ihrer Zustände und | Γ | {\displaystyle |\Gamma |} die Anzahl verschiedener Bandsymbole bezeichne. Wenn diese Maschine also eine Eingabe w {\displaystyle w} der Länge n {\displaystyle n} akzeptiert, (genau dann) gibt es auch einen akzeptierenden Lauf mit weniger als | Q | n s ( n ) | Γ | s ( n ) {\displaystyle |Q|\cdot n\cdot s(n)\cdot |\Gamma |^{s(n)}} Rechenschritten. Betrachten wir ein Prädikat

Reach ( α , β , i ) def {\displaystyle {\mbox{Reach}}(\alpha ,\beta ,i){\stackrel {\text{def}}{\iff }}} Die NTM M {\displaystyle M} kann ausgehend von der Konfiguration α {\displaystyle \alpha } innerhalb von 2 i {\displaystyle 2^{i}} Rechenschritten die Konfiguration β {\displaystyle \beta } erreichen.

Bezeichne Start ( w ) {\displaystyle {\mbox{Start}}(w)} die Anfangskonfiguration der NTM bei Eingabe des Wortes w {\displaystyle w} und Accept {\displaystyle {\mbox{Accept}}} die akzeptierende Haltekonfiguration. Dann können wir „ M {\displaystyle M} akzeptiert L {\displaystyle L} “ (mit geeigneter Konstante C {\displaystyle C} abhängig von s {\displaystyle s} und M {\displaystyle M} ) formulieren als:

Reach ( Start ( w ) , Accept , C s ( n ) ) w L {\displaystyle {\mbox{Reach}}({\mbox{Start}}(w),{\mbox{Accept}},C\cdot s(n))\iff w\in L} .

Wir wissen, dass eine deterministische Turingmaschine mit Platzbedarf s ( n ) {\displaystyle s(n)} berechnen kann, ob Reach ( α , β , 1 ) {\displaystyle {\mbox{Reach}}(\alpha ,\beta ,1)} zutrifft. Außerdem hat Reach {\displaystyle {\mbox{Reach}}} die Eigenschaft

Reach ( α , β , i + 1 ) {\displaystyle {\mbox{Reach}}(\alpha ,\beta ,i+1)\iff } es gibt eine Zwischen-Konfiguration γ {\displaystyle \gamma } mit Reach ( α , γ , i ) {\displaystyle {\mbox{Reach}}(\alpha ,\gamma ,i)} und Reach ( γ , β , i ) {\displaystyle {\mbox{Reach}}(\gamma ,\beta ,i)} .

Eine deterministische Turingmaschine kann Reach ( α , β , i + 1 ) {\displaystyle {\mbox{Reach}}(\alpha ,\beta ,i+1)} berechnen, indem sie alle möglichen Konfigurationen γ {\displaystyle \gamma } aufzählt und für jedes γ {\displaystyle \gamma } jeweils (nacheinander) Reach ( α , γ , i ) {\displaystyle {\mbox{Reach}}(\alpha ,\gamma ,i)} und Reach ( γ , β , i ) {\displaystyle {\mbox{Reach}}(\gamma ,\beta ,i)} berechnet. Dazu genügen (für geeignetes C {\displaystyle C'} ) C s ( n ) {\displaystyle C'\cdot s(n)} Bandzellen für γ {\displaystyle \gamma } und C i s ( n ) {\displaystyle C'\cdot i\cdot s(n)} Bandzellen für die Berechnung von Reach ( α , γ , i ) {\displaystyle {\mbox{Reach}}(\alpha ,\gamma ,i)} bzw. Reach ( γ , β , i ) {\displaystyle {\mbox{Reach}}(\gamma ,\beta ,i)} . Insbesondere kann eine solche DTM also mit Platzbedarf C C s 2 ( n ) {\displaystyle C\cdot C'\cdot s^{2}(n)} ermitteln, ob Reach ( Start ( w ) , Accept , C s ( n ) ) {\displaystyle {\mbox{Reach}}({\mbox{Start}}(w),{\mbox{Accept}},C\cdot s(n))} und damit, ob w L {\displaystyle w\in L} .

Die Wahl geeigneter Konstanten C , C {\displaystyle C,C'} ist insbesondere wegen s ( n ) Ω ( log n ) {\displaystyle s(n)\in \Omega (\log n)} möglich.

Siehe auch

Literatur

  • Walter Savitch: Relationships between nondeterministic and deterministic tape complexities. In: Journal of Computer and System Sciences. Band 4, Nr. 2. Elsevier, 1970, ISSN 0022-0000, S. 177–192, doi:10.1016/S0022-0000(70)80006-X.