der satz von savitch - tum · 2010. 9. 21. · walter j. savitch 1969: phd in mathematik, uc...

26
Der Satz von Savitch Sommerakademie Rot an der Rot — AG 1 ”Wieviel Platz brauchen Algorithmen wirklich?” Peter Faymonville Reactive Systems Group Universit¨ at des Saarlandes 9. August 2010 Peter Faymonville: Satz von Savitch 1/ 17

Upload: others

Post on 17-Mar-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Der Satz von Savitch

Sommerakademie Rot an der Rot — AG 1”Wieviel Platz brauchen Algorithmen wirklich?”

Peter Faymonville

Reactive Systems GroupUniversitat des Saarlandes

9. August 2010

Peter Faymonville: Satz von Savitch 1/ 17

Page 2: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Ubersicht

1 Einfuhrung

2 Quadratisch-logarithmischer Algorithmus

3 Verhaltnis von NSPACE und SPACE

4 Konsequenzen

5 Zusammenfassung

Peter Faymonville: Satz von Savitch 2/ 17

Page 3: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Einfuhrung

Wiederholung

Definition: REACH fur Graph G und Knoten s,t

• Frage: Gibt es einen Pfad in G von s nach t?

• Antwort: Ja/Nein

Das Erreichbarkeitsproblem (REACH) fur gerichtete Graphen...

• ...liegt in NL.

• ...ist NL-vollstandig.

Peter Faymonville: Satz von Savitch 3/ 17

Page 4: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Einfuhrung

Walter J. Savitch

• 1969: PhD in Mathematik, UCBerkeley (Betreuer: Stephen Cook)

• seit 1969: Professor (jetzt Emeritus),UC San Diego

• Komplexitatstheorie,Computerlinguistik

• Lehrbucher: Ada, Java, C++

Peter Faymonville: Satz von Savitch 4/ 17

Page 5: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Ein quadratisch-logarithmischer Algorithmus fur REACH

IdeeJeder Pfad hat einen aquidistanten Mittelpunkt.

DefinitionreachMax (s, t, k)⇔ ∃ Pfad von s nach t mit Maximallange 2k

1: function reachMax(s, t, k): Boolean2: if k < 0 then return false3: else if (s, t) ∈ E then return true4: else5: for v ∈ V − {s, t} do6: if reachMax(s,v ,k − 1) then7: if reachMax(v ,t,k − 1) then8: return true9: return false

Peter Faymonville: Satz von Savitch 5/ 17

Page 6: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Algorithmus fur REACH – Visualisierung

s t

reachMax (s, t, 2)?

Peter Faymonville: Satz von Savitch 6/ 17

Page 7: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Algorithmus fur REACH – Visualisierung

s v1 v2

v3 v4 v5

t

reachMax (s, t, 2)?→ (s, v1, 1)?, (v1, t, 1)?

→ (s, v1, 1)!, (v1, t, 1)?→ (s, v1, 1)!, (v1, v3, 0)?(v3, t, 0)?→ (s, v1, 1)!, (v1, v3, 0)!(v3, t, 0)?

Peter Faymonville: Satz von Savitch 7/ 17

Page 8: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Algorithmus fur REACH – Visualisierung

s v1 v2

v3 v4 v5

t

reachMax (s, t, 2)?→ (s, v1, 1)?, (v1, t, 1)?→ (s, v1, 1)!, (v1, t, 1)?

→ (s, v1, 1)!, (v1, v3, 0)?(v3, t, 0)?→ (s, v1, 1)!, (v1, v3, 0)!(v3, t, 0)?

Peter Faymonville: Satz von Savitch 7/ 17

Page 9: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Algorithmus fur REACH – Visualisierung

s v1 v2

v3 v4 v5

t

reachMax (s, t, 2)?→ (s, v1, 1)?, (v1, t, 1)?→ (s, v1, 1)!, (v1, t, 1)?→ (s, v1, 1)!, (v1, v3, 0)?(v3, t, 0)?

→ (s, v1, 1)!, (v1, v3, 0)!(v3, t, 0)?

Peter Faymonville: Satz von Savitch 7/ 17

Page 10: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Algorithmus fur REACH – Visualisierung

s v1 v2

v3 v4 v5

t

reachMax (s, t, 2)?→ (s, v1, 1)?, (v1, t, 1)?→ (s, v1, 1)!, (v1, t, 1)?→ (s, v1, 1)!, (v1, v3, 0)?(v3, t, 0)?→ (s, v1, 1)!, (v1, v3, 0)!(v3, t, 0)?

Peter Faymonville: Satz von Savitch 7/ 17

Page 11: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Algorithmus fur REACH – Visualisierung

s v1 v2

v3 v4 v5

t

reachMax (s, t, 2)?→ (s, v3, 1)?, (v3, t, 1)?

→ (s, v1, 0)?, (v1, v3, 0)?, (v3, t, 1)?→ (s, v1, 0)!, (v1, v3, 0)!, (v3, t, 1)?→ (s, v1, 0)!, (v1, v3, 0)!, (v3, v5, 0)?, (v5, t, 0)?→ (s, v1, 0)!, (v1, v3, 0)!, (v3, v5, 0)!, (v5, t, 0)!

Peter Faymonville: Satz von Savitch 8/ 17

Page 12: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Algorithmus fur REACH – Visualisierung

s v1 v2

v3 v4 v5

t

reachMax (s, t, 2)?→ (s, v3, 1)?, (v3, t, 1)?→ (s, v1, 0)?, (v1, v3, 0)?, (v3, t, 1)?

→ (s, v1, 0)!, (v1, v3, 0)!, (v3, t, 1)?→ (s, v1, 0)!, (v1, v3, 0)!, (v3, v5, 0)?, (v5, t, 0)?→ (s, v1, 0)!, (v1, v3, 0)!, (v3, v5, 0)!, (v5, t, 0)!

Peter Faymonville: Satz von Savitch 8/ 17

Page 13: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Algorithmus fur REACH – Visualisierung

s v1 v2

v3 v4 v5

t

reachMax (s, t, 2)?→ (s, v3, 1)?, (v3, t, 1)?→ (s, v1, 0)?, (v1, v3, 0)?, (v3, t, 1)?→ (s, v1, 0)!, (v1, v3, 0)!, (v3, t, 1)?

→ (s, v1, 0)!, (v1, v3, 0)!, (v3, v5, 0)?, (v5, t, 0)?→ (s, v1, 0)!, (v1, v3, 0)!, (v3, v5, 0)!, (v5, t, 0)!

Peter Faymonville: Satz von Savitch 8/ 17

Page 14: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Algorithmus fur REACH – Visualisierung

s v1 v2

v3 v4 v5

t

reachMax (s, t, 2)?→ (s, v3, 1)?, (v3, t, 1)?→ (s, v1, 0)?, (v1, v3, 0)?, (v3, t, 1)?→ (s, v1, 0)!, (v1, v3, 0)!, (v3, t, 1)?→ (s, v1, 0)!, (v1, v3, 0)!, (v3, v5, 0)?, (v5, t, 0)?

→ (s, v1, 0)!, (v1, v3, 0)!, (v3, v5, 0)!, (v5, t, 0)!

Peter Faymonville: Satz von Savitch 8/ 17

Page 15: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Algorithmus fur REACH – Visualisierung

s v1 v2

v3 v4 v5

t

reachMax (s, t, 2)?→ (s, v3, 1)?, (v3, t, 1)?→ (s, v1, 0)?, (v1, v3, 0)?, (v3, t, 1)?→ (s, v1, 0)!, (v1, v3, 0)!, (v3, t, 1)?→ (s, v1, 0)!, (v1, v3, 0)!, (v3, v5, 0)?, (v5, t, 0)?→ (s, v1, 0)!, (v1, v3, 0)!, (v3, v5, 0)!, (v5, t, 0)!

Peter Faymonville: Satz von Savitch 8/ 17

Page 16: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Algorithmus fur REACH – Korrektheit

1: function reachMax(s, t, k): Boolean2: if k < 0 then return false3: else if (s, t) ∈ E then return true4: else5: for v ∈ V − {s, t} do6: if reachMax(s,v ,k − 1) then7: if reachMax(v ,t,k − 1) then8: return true9: return false

• Basisfall: Wenn k = 0, teste direkte Erreichbarkeit uber eine Kante

• Rekursion: Wenn k > 0, iteriere uber alle moglichen Mittelpunkte.

Peter Faymonville: Satz von Savitch 9/ 17

Page 17: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Beweis

Satz von Savitch

REACH ∈ SPACE(O(log2 n))

Realisierung als Mehrband-DTM

• Reprasentation von G liegt auf dem Eingabeband

• Arbeitsband 1: Aktuell betrachtetes v (foreach)

• Arbeitsband 2: Rekursionsstack

Analyse des Speicherplatzes

• Rekursionstiefe: log n Aufrufe (Halbierung der Distanz)

• Große des Aufrufs: 3× log n (Kodierung s,t,k)

Peter Faymonville: Satz von Savitch 10/ 17

Page 18: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Beweis

Satz von Savitch

REACH ∈ SPACE(O(log2 n))

Realisierung als Mehrband-DTM

• Reprasentation von G liegt auf dem Eingabeband

• Arbeitsband 1: Aktuell betrachtetes v (foreach)

• Arbeitsband 2: Rekursionsstack

Analyse des Speicherplatzes

• Rekursionstiefe: log n Aufrufe (Halbierung der Distanz)

• Große des Aufrufs: 3× log n (Kodierung s,t,k)

Peter Faymonville: Satz von Savitch 10/ 17

Page 19: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Beweis

Satz von Savitch

REACH ∈ SPACE(O(log2 n))

Realisierung als Mehrband-DTM

• Reprasentation von G liegt auf dem Eingabeband

• Arbeitsband 1: Aktuell betrachtetes v (foreach)

• Arbeitsband 2: Rekursionsstack

Analyse des Speicherplatzes

• Rekursionstiefe: log n Aufrufe (Halbierung der Distanz)

• Große des Aufrufs: 3× log n (Kodierung s,t,k)

Peter Faymonville: Satz von Savitch 10/ 17

Page 20: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Quadratisch-logarithmischer Algorithmus

Konsequenzen

NL ⊆ SPACE(O(log2 n))

L ⊆ NL ⊆ L2

Peter Faymonville: Satz von Savitch 11/ 17

Page 21: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Verhaltnis von NSPACE und SPACE

Verhaltnis von NSPACE und SPACE

IdeeJede NDTM M kann durch eine quadratische Simulation determinisiertwerden.

1 Ausrollen des Konfigurationsgraphen von M

2 Erreichbarkeit der Endzustande mittels REACH testen

Peter Faymonville: Satz von Savitch 12/ 17

Page 22: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Verhaltnis von NSPACE und SPACE

Nichtdeterministische Turingmaschinen

NDTM M akzeptiert Sprache L

• Eingabeband, Ausgabeband

• s Arbeitsbander

• Zustandsraum Q

• c Elemente desBandalphabets

• n Lange der Eingabe w

Konfigurationsgraph fur w

• Graph ist azyklisch

• |Q| Zustande

• cs+2·f (n)

Bandkonfigurationen, wennL ∈ NSPACE(f (n))

• n · f (n)s+1

Bandkopfpositionen

Anzahl der Konfigurationen

|Q| · cs+2·f (n) · n · f (n)s+1

Peter Faymonville: Satz von Savitch 13/ 17

Page 23: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Verhaltnis von NSPACE und SPACE

Beweis

NSPACE(f (n)) ⊆ SPACE(f 2(n))

fur eine ordentliche1 Komplexitatsfunktion f (n) ≥ O(log n).

1 Gegeben eine NDTM M, die eine Sprache L ∈ NSPACE(f (n))akzeptiert.

2 Modifiziere Savitch’s Algorithmus:

3 Beim Test auf (s, t) ∈ E , benutze Transitionsrelation von M.

4 Der Konfigurationsgraph hat k log n+f (n) Knoten, fur k konstant.

5 Daher reicht O(f 2(n)) Platz, um die Erreichbarkeit von Endzustandenzu entscheiden.

1monoton steigend, berechenbar von einer TM in O(|n| + f (n)) Zeit, O(f (n)) Platz

Peter Faymonville: Satz von Savitch 14/ 17

Page 24: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Konsequenzen

Konsequenzen

NPSPACE = PSPACE

Peter Faymonville: Satz von Savitch 15/ 17

Page 25: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Zusammenfassung

Zusammenfassung

• Es gibt einen quadratisch-logarithmischen Algorithmus fur gerichteteErreichbarkeit.

• Nichtdeterministischer Platz und deterministischer Platz fallen furpolynomiellen Platz zusammen.

Peter Faymonville: Satz von Savitch 16/ 17

Page 26: Der Satz von Savitch - TUM · 2010. 9. 21. · Walter J. Savitch 1969: PhD in Mathematik, UC Berkeley (Betreuer: Stephen Cook) seit 1969: Professor (jetzt Emeritus), UC San Diego

Zusammenfassung

Vielen Dank fur ihre Aufmerksamkeit!

Peter Faymonville: Satz von Savitch 17/ 17