Skript in PDF - Theoretische Informatik - Technische Universität ...
Skript in PDF - Theoretische Informatik - Technische Universität ... Skript in PDF - Theoretische Informatik - Technische Universität ...
164 KAPITEL 6. KOMPLEXITÄT VON ALGORITHMEN Zelle Nr.: −2 −1 0 1 2 n n+1 n+2 n+3 . . . # # # si1 si2 . . . sin # # # . . . ⇑ q0 Initialkonfiguration (d) Die Übergänge sind mit y = 1, 2, . . ., d durchnumeriert und wie folgt in eine Tabelle geschrieben: y Übergang Nr. y 1 (q i(1), s j(1)) → (q i ′ (1), s j ′ (1)) 2 (q i(2), s j(2)) → (q i ′ (2), s j ′ (2)) . . d (q i(d), s j(d)) → (q i ′ (d), s j ′ (d)) Hier ist s j(y) ein Bandsymbol und s j ′ (y) ist entweder L, R oder ein Bandsymbol. Bemerkung 1. In der Zeit p(n) kann die TM höchstens p(n) Felder beschriften, also genügt es, die Bandzellen Nr. −p(n), −p(n) + 1, . . .,0, 1, . . ., p(n) zu betrachten. Die Reduktion der Sprache L auf ERFÜLLBARKEIT bedeutet, dass für jedes Wort w über Σ eine Boolesche Formel φw konstruiert wird, so dass φw ist erfüllbar ⇐⇒ w ∈ L und dass die Konstruktion in polynomialer Zeit durchgeführt wird. Die Aussage w ∈ L bedeutet, dass es eine Berechnung des Wortes w durch M gibt, die im Zustand q1 hält. Eine solche Berechnung können wir durch eine Formel φw eindeutig beschreiben, wenn wir die folgenden Booleschen Variablen einführen: NAME BEDEUTUNG: ist true belegt genau dann, wenn UMFANG q t i Zur Zeit t hat M den Zustand qi. t = 0, . . .,p(n) i = 0, . . .,m k t r Zur Zeit t steht der Kopf im Feld r t = 0, . . .,p(n) r = −p(n), . . .,p(n) s t j,r Zur Zeit t steht im Feld r das Symbol sj t = 0, . . .,p(n) j = 0, . . .,k r = −p(n), . . .,p(n) u t y Zur Zeit t wird der Übergang Nr. y durchgeführt t = 0, . . .,p(n) − 1 y = 1, . . .,d Mit Hilfe dieser Variablen können wir alle Bedingungen einer akzeptierenden Berechnung von w formal darstellen: (a) Initialisierung. Zur Zeit t = 0 ist die folgende Belegung true: q0 0 (Initialzustand q0) k0 1 (initiale Kopfposition 1) s0 i1,1 , . . .,s0 in,n (die gegebene Eingabe w = si1 . . .sin in Feldern 1, . . .,n) s0 0,b für alle b = −p(n), . . .,p(n) außer b = 1, . . .,n (das Symbol s0 = # in allen Zellen des Bandes außer der Eingabe)
6.7. N P-VOLLSTÄNDIGKEIT 165 Jede von diesen Variablen formt eine Klausel von φw, also ist der Anfang von φw: (1) φw = q 0 0 ∧ k 0 1 ∧ n b=1 s 0 ib,b ∧ p(n) b=−p(n) b=1,...,n s 0 0,b ∧ . . . (b) Akzeptanz von w. Eine weitere Klausel von φw gewährleistet, dass w zum Zeitpunkt t = 1, . . .,p(n) akzeptiert wird, d.h., der Zustand ist q1 (finaler Haltezustand). Das ist die Klausel (2) q 1 1 ∨ q 2 1 ∨ · · · ∨ q p(n) 1 (die genau dann true ist, wenn q t 1 für einen Zeitpunkt t true ist). (c) Randbedingungen. Wir müssen auch sicherstellen, dass zu jedem Zeitpunkt t die TM i. genau einen Zustand hat, ii. in jedem Feld genau ein Symbol steht, iii. der Kopf genau eine Position hat und iv. genau ein Übergang (falls es sich um keine Haltekonfiguration handelt) durchgeführt wird. Z.B. verlangt (i), dass φw für jeden Zeitpunkt t = 0, 1, . . ., p(n) die folgende Klausel hat: (3) m i=0 q t i = qt 0 ∨ qt 1 ∨ · · · ∨ qt m (also: es gibt einen Zustand zum Zeitpunkt t), sowie die Klauseln (4) q t i → ¬qt i ′ für alle i = i′ (also: zwei Zustände qi und qi ′ können nicht gleichzeitig vorhanden sein). Analoges gilt für (ii)–(iv). (d) Übergänge. Nehmen wir an, dass die Zeile y der Übergangstabelle die Bewegung des Kopfes nach links darstellt: ZEILE y: (q i(y), s j(y)) → (q i ′ (y), L) (Bewegung nach rechts oder Überschreibung des Bandsymbols werden analog behandelt). Dann müssen wir zu der Konjunktion von φw Klauseln hinzufügen, die gewährleisten, dass ut y die erwartete Auswirkung zum Zeitpunkt t hat: Falls der Kopf im Feld r steht, wird er als nächstes im Feld r − 1 stehen: (5) (u t y ∧ kt r ) → kt+1 r−1 für alle r = −p(n) + 1, . . . , p(n). Der Zustand zum Zeitpunkt t muß q i(y) sein und der zum Zeitpunkt t+1 muß q i ′ (y) sein, also hat φw zwei Klauseln (6) u t y → q t i(y) und u t y → q t i ′ (y) Falls der Kopf im Feld r steht, muß das Symbol im Feld r gleich s j(y) sein: (7) (u t y ∧ k t r) → s t j(y),r für alle r = -p(n), . . . , p(n)
- Seite 48 und 49: 114 KAPITEL 4. CHURCHSCHE THESE Bem
- Seite 50 und 51: 116 KAPITEL 4. CHURCHSCHE THESE Sei
- Seite 52 und 53: 118 KAPITEL 5. UNENTSCHEIDBARE PROB
- Seite 54 und 55: 120 KAPITEL 5. UNENTSCHEIDBARE PROB
- Seite 56 und 57: 122 KAPITEL 5. UNENTSCHEIDBARE PROB
- Seite 58 und 59: 124 KAPITEL 5. UNENTSCHEIDBARE PROB
- Seite 60 und 61: 126 KAPITEL 5. UNENTSCHEIDBARE PROB
- Seite 62 und 63: 128 KAPITEL 5. UNENTSCHEIDBARE PROB
- Seite 64 und 65: 130 KAPITEL 5. UNENTSCHEIDBARE PROB
- Seite 66 und 67: 132 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 68 und 69: 134 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 70 und 71: 136 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 72 und 73: 138 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 74 und 75: 140 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 76 und 77: 142 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 78 und 79: 144 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 80 und 81: 146 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 82 und 83: 148 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 84 und 85: 150 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 86 und 87: 152 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 88 und 89: 154 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 90 und 91: 156 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 92 und 93: 158 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 94 und 95: 160 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 96 und 97: 162 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 100 und 101: 166 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 102 und 103: 168 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 104 und 105: 170 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 106 und 107: 172 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 108 und 109: 174 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 110 und 111: 176 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 112 und 113: 178 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 114 und 115: 180 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 116 und 117: 182 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 118 und 119: 184 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 120 und 121: 186 KAPITEL 6. KOMPLEXITÄT VON ALG
- Seite 122 und 123: 188 KAPITEL 6. KOMPLEXITÄT VON ALG
164 KAPITEL 6. KOMPLEXITÄT VON ALGORITHMEN<br />
Zelle Nr.:<br />
−2 −1 0 1 2 n n+1 n+2 n+3<br />
. . . # # # si1<br />
si2 . . . s<strong>in</strong> # # # . . .<br />
⇑<br />
q0<br />
Initialkonfiguration<br />
(d) Die Übergänge s<strong>in</strong>d mit y = 1, 2, . . ., d durchnumeriert und wie folgt <strong>in</strong><br />
e<strong>in</strong>e Tabelle geschrieben:<br />
y Übergang Nr. y<br />
1 (q i(1), s j(1)) → (q i ′ (1), s j ′ (1))<br />
2 (q i(2), s j(2)) → (q i ′ (2), s j ′ (2))<br />
.<br />
.<br />
d (q i(d), s j(d)) → (q i ′ (d), s j ′ (d))<br />
Hier ist s j(y) e<strong>in</strong> Bandsymbol und s j ′ (y) ist entweder L, R oder e<strong>in</strong> Bandsymbol.<br />
Bemerkung 1. In der Zeit p(n) kann die TM höchstens p(n) Felder beschriften,<br />
also genügt es, die Bandzellen Nr. −p(n), −p(n) + 1, . . .,0, 1, . . ., p(n) zu<br />
betrachten.<br />
Die Reduktion der Sprache L auf ERFÜLLBARKEIT bedeutet, dass für jedes<br />
Wort w über Σ e<strong>in</strong>e Boolesche Formel φw konstruiert wird, so dass<br />
φw ist erfüllbar ⇐⇒ w ∈ L<br />
und dass die Konstruktion <strong>in</strong> polynomialer Zeit durchgeführt wird. Die Aussage<br />
w ∈ L bedeutet, dass es e<strong>in</strong>e Berechnung des Wortes w durch M gibt,<br />
die im Zustand q1 hält. E<strong>in</strong>e solche Berechnung können wir durch e<strong>in</strong>e Formel<br />
φw e<strong>in</strong>deutig beschreiben, wenn wir die folgenden Booleschen Variablen<br />
e<strong>in</strong>führen:<br />
NAME BEDEUTUNG: ist true belegt genau dann, wenn UMFANG<br />
q t i Zur Zeit t hat M den Zustand qi. t = 0, . . .,p(n)<br />
i = 0, . . .,m<br />
k t r Zur Zeit t steht der Kopf im Feld r t = 0, . . .,p(n)<br />
r = −p(n), . . .,p(n)<br />
s t j,r Zur Zeit t steht im Feld r das Symbol sj t = 0, . . .,p(n)<br />
j = 0, . . .,k<br />
r = −p(n), . . .,p(n)<br />
u t y Zur Zeit t wird der Übergang Nr. y durchgeführt t = 0, . . .,p(n) − 1<br />
y = 1, . . .,d<br />
Mit Hilfe dieser Variablen können wir alle Bed<strong>in</strong>gungen e<strong>in</strong>er akzeptierenden<br />
Berechnung von w formal darstellen:<br />
(a) Initialisierung. Zur Zeit t = 0 ist die folgende Belegung true:<br />
q0 0 (Initialzustand q0)<br />
k0 1 (<strong>in</strong>itiale Kopfposition 1)<br />
s0 i1,1 , . . .,s0 <strong>in</strong>,n (die gegebene E<strong>in</strong>gabe w = si1 . . .s<strong>in</strong> <strong>in</strong> Feldern 1, . . .,n)<br />
s0 0,b<br />
für alle b = −p(n), . . .,p(n) außer b = 1, . . .,n<br />
(das Symbol s0 = # <strong>in</strong> allen Zellen des Bandes außer der E<strong>in</strong>gabe)