Transcript
13.1.2016
Konfiguration von TM M bei Eingabe w und höchstens N Zellen/A-Band Inhalt Eingabeband
Lesekopf Position
Zustand
{w}
× {1,L,|w|} ×
Q
Inhalt der k Arbeitsbänder ×
( ΓN )k
KGM(w,N) Konfigurationsgraph von TM M bei Eingabe w und
×
Sei γ : N → R beliebig langsam wachsend, aber nicht-fallend und limn→∞γ(n) = ∞
höchstens N Zellen/A-Band n=|w|
Positionen der k Lese/Schreibköpfe
Knoten: Kanten:
{1,L,N}k
z.B. γ(n) = log log log log log n
Konfigurationen [C,C’ wenn M in einem Rechenschritt von Konf. C zu Konfig. C’ kommt
Sei f(n) ≥ log2n
Satz A: (Verhältnis zwischen det. Zeit und Platz) DTIME( f(n) ) ⊆ DSPACE( f(n) ) ⊆ DTIME( 2γ(n)f(n) )
KGM(w,N) Konfigurationsgraph von TM M bei Eingabe w und höchstens N Zellen/A-Band
Knoten: Kanten:
Anzahl der Knoten:
Konfigurationen {1,L,|w|}× Q × ( ΓN )k ×{1,L,N}k [C,C’ wenn M in einem Rechenschritt von Konf. C zu Konfig. C’ kommt
Anzahl der Knoten: n·|Q|·|Γ|kN·Nk Anzahl der Kanten: α·n·|Q|·|Γ|kN·Nk
n·|Q|·|Γ|kN·Nk
AN
(falls N≥ log2 n)
A eine von M abh. Konstante
Eingrad und Ausgrad jedes Knoten α
α eine von M abh. Konstante
n=|w|
α eine von M abh. Konstante
13.1.2016
1
13.1.2016
Sei γ : N → R beliebig langsam wachsend, aber nicht-fallend und limn→∞γ(n) = ∞
2
13.1.2016
Sei γ : N → R beliebig langsam wachsend, aber nicht-fallend und limn→∞γ(n) = ∞
Sei f(n) ≥ log2n
Lemma A: (i) L ∈ DTIME( f(n) ) ⇒ L ∈ DSPACE( f(n) )
z.B. γ(n) = log log log log log n
z.B. γ(n) = log log log log log n
(ii) L ∈ DSPACE( f(n) ) ⇒ L ∈ DTIME( Af(n) )
Sei f(n) ≥ log2n
Sei f(n) ≥ log2n
für eine von L abh. Konstante A
Satz A: (Verhältnis zwischen det. Zeit und Platz)
Lemma A: (i) L ∈ DTIME( f(n) ) ⇒ L ∈ DSPACE( f(n) ) (ii) L ∈ DSPACE( f(n) ) ⇒ L ∈ DTIME( Af(n) )
(und so, dass es mit O(f(n)) Platz berechnet werden kann)
Satz B: (Verhältnis zwischen deterministischer und nicht-det. Zeit)
DTIME( f(n) ) ⊆ DSPACE( f(n) ) ⊆ DTIME( 2γ(n)f(n) ) Bew: (i) trivial (ii) M det. TM für L mit Platzverbrauch f(n) w Eingabe für M n=|w|, N=f(n)
3
DTIME( f(n) ) ⊆ NTIME( f(n) ) ⊆ DTIME( 2γ(n)f(n) ) ( ≥ log2 n )
Berechnung von M entspricht Pfad durch KGM(w,N)
für eine von L abh. Konstante A
KGM(w,N) hat höchstens AN Knoten ⇒ M macht auf Eingabe w höchstens AN viele Schritte (sonst Endlosloop ! ) ⇒ M entscheidet L in Zeit Af(n) ⇒ L ∈ DTIME( Af(n) )
13.1.2016
4
13.1.2016
5
13.1.2016
6
1
13.1.2016
Sei f(n) ≥ log2n Sei γ : N → R beliebig langsam wachsend, aber nicht-fallend und limn→∞γ(n) = ∞ Sei f(n) ≥ log2n
Sei γ : N → R beliebig langsam wachsend, aber nicht-fallend und limn→∞γ(n) = ∞
Lemma B: (i) L ∈ DTIME( f(n) ) ⇒ L ∈ NTIME( f(n) ) (ii) L ∈ NTIME( f(n) ) ⇒ L ∈ DTIME( Af(n) )
z.B. γ(n) = log log log log log n
z.B. γ(n) = log log log log log n
Sei f(n) ≥ log2n
für eine von L abh. Konstante A
(und so, dass es mit O(f(n)) Platz berechnet werden kann)
(und so, dass es mit O(f(n)) Platz berechnet werden kann)
Satz C: (Verhältnis zwischen deterministischem und nicht-det. Platz) (Savitch)
Satz B: (Verhältnis zwischen deterministischer und nicht-det. Zeit)
Bew: (i) trivial (ii) M nicht-det. TM für L mit Zeitverbrauch und daher Platzverbrauch f(n) w Eingabe für M n=|w|, N=f(n) ( ≥ log2 n )
DTIME( f(n) ) ⊆ NTIME( f(n) ) ⊆ DTIME( 2γ(n)f(n) ) Lemma B: (i) L ∈ DTIME( f(n) ) ⇒ L ∈ NTIME( f(n) )
DSPACE( f(n) ) ⊆ NSPACE( f(n) ) ⊆ DSPACE( f 2(n) )
Berechnung von M entspricht Pfad durch KGM(w,N) von init(w) zu einer Endkonfiguration
(ii) L ∈ NTIME( f(n) ) ⇒ L ∈ DTIME( Af(n) )
KGM(w,N) hat höchstens AN Knoten und O(AN ) Kanten
für eine von L abh. Konstante A
⇒ det. TM M’ macht Tiefensuche (DFS) in KGM(w,N) und testet, ob eine Endkonfiguration von init(w) erreichbar; braucht Zeit O( # Kanten ) ⇒ M’ entscheidet L in Zeit O(Af(n)) ⇒ L ∈ DTIME( Af(n) )
13.1.2016
7
13.1.2016
Lemma C: (i) L ∈ DSPACE( f(n) ) ⇒ L ∈ NSPACE( f(n) )
Sei γ : N → R beliebig langsam wachsend, aber nicht-fallend und limn→∞γ(n) = ∞
(ii) L ∈ NSPACE( f(n) ) ⇒ L ∈ DSPACE( f(n)2 )
z.B. γ(n) = log log log log log n
Sei f(n) ≥ log2n
8
(und so, dass es mit O(f(n)) Platz berechnet werden kann)
Bew: (i) trivial (ii) M nicht-det. TM für L mit daher Platzverbrauch f(n) w Eingabe für M n=|w|, N=f(n) ( ≥ log2 n
Satz C: (Verhältnis zwischen deterministischem und nicht-det. Platz) (Savitch) DSPACE( f(n) ) ⊆ NSPACE( f(n) ) ⊆ DSPACE( f 2(n) )
13.1.2016
9
Lemma C:
L ∈ NSPACE( f(n) ) ⇒ L ∈ DSPACE( f(n)2 )
Lemma D:
L ∈ NSPACE( f(n) ) ⇒ L ∈ NSPACE( f(n) )
)
Berechnung von M entspricht Pfad durch KGM(w,N) von init(w) zu einer Endkonfiguration
Lemma C: (i) L ∈ DSPACE( f(n) ) ⇒ L ∈ NSPACE( f(n) )
KGM(w,N) hat höchstens AN Knoten und O(AN ) Kanten (A konstant)
(ii) L ∈ NSPACE( f(n) ) ⇒ L ∈ DSPACE( f(n)2 )
Daher ist die Darstellungsgröße von Knoten O(log AN) = O(N·log A) = O(f(n)) ⇒ Brauche det. TM M’ (deterministischen Algorithmus) zum Testen, ob in KGM(w,N) eine Endkonfiguration von init(w) erreichbar ist;
Dieser Algorithmus soll wenig Platz brauchen !! 13.1.2016
10
13.1.2016
11
13.1.2016
12
2
13.1.2016
Lemma C: Lemma D:
Abstraktes Problem:
L ∈ NSPACE( f(n) ) ⇒ L ∈ DSPACE( f(n)2 )
Für Beweis von Lemma C, deterministische Lösung mit O(log2|V|) Platzverbrauch
Gerichteter Graph G = (V,E) ist implizit gegeben, d.h. man kann (i) die Knoten in V aufzählen (ii) für zwei Knoten u,v testen, ob u=v (iii) für zwei Knoten u,v testen, ob [u,v ∈ E und zwar jeweils mit Speicherverbrauch O(log |V|) (Knotendarstel-
L ∈ NSPACE( f(n) ) ⇒ L ∈ NSPACE( f(n) )
Der Beweis reduziert sich auf “Berechnen” von Erreichbarkeit in einem sehr großen, implizit gegebenen Graphen. Es muss die Frage beantwortet werden
erreichbar( s , v, λ ) = if λ =0 then return (s=v) if λ =1 then return (s=v) or [s,v∈E else for each m∈V do if erreichbar( s , m , ⌊λ/2⌋ ) and erreichbar( m , v ,⌈λ /2⌉ ) then return true endfor return false
lungsgröße)
Berechne
∃ gerichteter Pfad von startw zu einer Endkonfiguration im Konfigurationsgraphen KGM(w,N)
erreichbar( s , v, λ ) . . . gibt es in G einen gerichteten Pfad von s nach v der Länge höchstens λ ?
n=|w| N=f(n)
Laufzeit: O((log λ)· Darstellungsgröße(v) ) = O (log2|V|) mit λ=|V| 13.1.2016
13
13.1.2016
14
13.1.2016
15
3