Skript in PDF - Theoretische Informatik - Technische Universität ...
Skript in PDF - Theoretische Informatik - Technische Universität ... Skript in PDF - Theoretische Informatik - Technische Universität ...
76 KAPITEL 3. TURINGMASCHINEN Die Berechnung von Eingaben formalisieren wir jetzt. Konfigurationen: Eine Konfiguration einer Turingmaschine ist die vollständige Information über die TM zu einem Zeitpunkt der Berechnung; sie wird durch (1) den momentanen Zustand q, (2) den Inhalt des Bandes und (3) die Position des Kopfes bestimmt. Also ist (1) ein Element der Menge Q. Wir können (2) und (3) zusammenfassen, indem wir sagen, welches Wort u links vom Kopf steht, welches Wort v rechts steht und welches Symbol a aus Σ = Σ ∪ {#} der Kopf liest. Dabei ist u entweder leer, oder hat das erste Symbol aus Σ und die weiteren aus Σ: u ∈ Σ × Σ ∗ ∪ {ε}. Analog v ∈ Σ ∗ × Σ ∪ {ε}. Eine Konfiguration ist also ein Quadrupel (q, u, a, v), wobei q ∈ Q, u ∈ Σ × Σ ∗ ∪ {ε}, a ∈ Σ und v ∈ Σ ∗ × Σ ∪ {ε}. Die Menge K = Q × (Σ × Σ ∗ ∪ {ε}) × Σ × (Σ ∗ × Σ ∪ {ε}) heißt Konfigurationsmenge. Die üblichere (und übersichtlichere) Schreibweise ist, u, a, v zu konkatenieren und a zu unterstreichen: (q, uav). In Beispiel 1 in Abschnitt 3.1 hat die Berechnung also die Konfigurationen (q0, 132) (q0, 132) (q0, 132) (q0, 132#) und (q1, 132) Berechnung: Die Eingabe s1s2 . . . sn ∈ Σ ∗ wird immer so auf das Band geschrieben, dass die Buchstaben ohne Leerzeichen hintereinander stehen. Der Kopf wird auf den ersten Buchstaben gestellt und der Zustand ist initial. Mit anderen Worten heißt das: wir erwarten am Anfang, dass die Konfiguration die folgende Form hat: (∗) (q0, s1s2 . . .sn), wobei s1 . . . sn ∈ Σ ∗ . Der Fall der leeren Eingabe ε ∈ Σ ∗ (also n = 0) entspricht der Konfiguration (q0, #). Konfigurationen der Form (∗) heißen Initialkonfigurationen. Falls die Turingmaschine eine Konfiguration (q, s1s2 . . .si−1sisi+1 . . . sn) erreicht hat, gibt es zwei Möglichkeiten: entweder ist δ(q, si) nicht definiert, dann heißt die Konfiguration Haltekonfiguration, oder es gilt δ(q, si) = (q ′ , s ′ ) mit s ′ ∈ {L,R} ∪ Σ, dann definieren wir die Folgekonfiguration wie folgt: 1. falls s ′ =L, dann ist die Folgekonfiguration (q ′ , s1s2 . . . si−1sisi+1 . . . sn) 2. falls s ′ =R, dann ist die Folgekonfiguration (q ′ , s1s2 . . . si−1sisi+1 . . . sn) 3. falls s ′ ∈ Σ, dann ist die Folgekonfiguration (q ′ , s1s2 . . . si−1s ′ si+1 . . . sn). Diese Definition ist in Tabelle 3.1 zusammengefasst.
3.1. DEFINITION EINER TURINGMASCHINE 77 Konfiguration δ(q, si) Folgekonfiguration (q, s1s2 . . . si−1sisi+1 . . . sn) (q ′ , L) (q ′ , s1s2 . . .si−1sisi+1 . . .sn) (q, s1s2 . . . si−1sisi+1 . . . sn) (q ′ , R) (q ′ , s1s2 . . .si−1sisi+1 . . .sn) (q, s1s2 . . . si−1sisi+1 . . . sn) (q ′ , s ′ ) (q ′ , s1s2 . . .si−1s ′ si+1 . . .sn) (q, s1s2 . . . si−1sisi+1 . . . sn) nicht definiert keine (Haltekonfiguration) Tabelle 3.1: Definition der Folgekonfiguration der TM Bemerkung 1. Wie ist der Fall 1 zu verstehen, falls i = 1 gilt? Die Folgekonfiguration zu (q0, s1 . . . sn) ist natürlich (q ′ , #s1 . . .sn). Analog folgt im Fall 2 aus i = n, dass die Folgekonfiguration (q ′ , s1 . . . sn#) ist. Notation. Die Relation ” Folgekonfiguration“ auf der Menge K aller Konfigurationen bezeichnen wir mit dem Symbol ⊢. Also ergibt der 1. Fall (q, s1s2 . . .si−1sisi+1 . . . sn) ⊢ (q ′ , s1s2 . . . si−1sisi+1 . . .sn) usw. Die reflexive und transitive Hülle dieser Relation wird mit ⊢ ∗ bezeichnet; d.h., K ⊢ ∗ K ′ bedeutet, dass K und K ′ zwei Konfigurationen sind, die entweder gleich sind oder dass es Konfigurationen K = K0, K1, . . .,Kn = K ′ mit Ki−1 ⊢ Ki für i = 1, . . .,n gibt. Wir sagen, dass die Konfiguration K ′ von K berechenbar ist. In Beispiel 1 in Abschnitt 3.1 gilt (q0, 132) ⊢ (q0, 132) ⊢ . . . ⊢ (q1, 132) und, die letzte Konfiguration hat keine Folgekonfiguration, da sie eine Haltekonfiguration ist. Definition. Für jede Turingmaschine ist die Berechnung einer Eingabe s1s2 . . . sn ∈ Σ ∗ eine endliche oder unendliche Liste von Konfigurationen: K0 ⊢ K1 ⊢ K2 ⊢ . . . wobei 1. K0 die Initialkonfiguration mit K0 = (q0, s1s2 . . .sn) ist, und 2. falls die Liste endlich ist, ist die letzte Konfiguration eine Haltekonfiguration. Wir sagen, dass die Turingmaschine die Eingabe genau dann akzeptiert, wenn ihre Berechnung endlich ist und der Zustand der letzten Konfiguration final ist. Bemerkung 2. Die Berechnung einer Eingabe w hat also drei mögliche Ergebnisse: 1. die TM hält und akzeptiert w, 2. die TM hält und akzeptiert w nicht, 3. die TM hält nicht (und akzeptiert w deshalb nicht). Am Anfang ist die Eingabe ” kompakt“, also ohne Unterbrechung (durch #) auf dem Band geschrieben. Im Verlauf der Berechnung kann # an jeder Stelle erscheinen. Beispiel 2. In Beispiel 1 in Abschnitt 3.1 haben wir die Berechnung der Eingabe 132 beschrieben. Die letzte Konfiguration ist (q1, 132). Da q1 nicht final ist, wird 132 nicht akzeptiert. Auch das leere Wort wird nicht akzeptiert: hier haben wir eine 1-Schritt-Berechnung, denn (q0, #) ist eine Haltekonfiguration, und q0 ist nicht final.
- Seite 1: THEORETISCHE INFORMATIK Vorlesungss
- Seite 4 und 5: ii INHALTSVERZEICHNIS 3.4 Nichtdete
- Seite 6 und 7: iv INHALTSVERZEICHNIS
- Seite 8 und 9: 74 KAPITEL 3. TURINGMASCHINEN hat h
- Seite 12 und 13: 78 KAPITEL 3. TURINGMASCHINEN Diese
- Seite 14 und 15: 80 KAPITEL 3. TURINGMASCHINEN ist.
- Seite 16 und 17: 82 KAPITEL 3. TURINGMASCHINEN 3.2.5
- Seite 18 und 19: 84 KAPITEL 3. TURINGMASCHINEN (q0,
- Seite 20 und 21: 86 KAPITEL 3. TURINGMASCHINEN 3. Di
- Seite 22 und 23: 88 KAPITEL 3. TURINGMASCHINEN 4. L
- Seite 24 und 25: 90 KAPITEL 3. TURINGMASCHINEN 3.4 N
- Seite 26 und 27: 92 KAPITEL 3. TURINGMASCHINEN 1. Di
- Seite 28 und 29: 94 KAPITEL 3. TURINGMASCHINEN sie k
- Seite 30 und 31: 96 KAPITEL 3. TURINGMASCHINEN falls
- Seite 32 und 33: 98 KAPITEL 4. CHURCHSCHE THESE Zeil
- Seite 34 und 35: 100 KAPITEL 4. CHURCHSCHE THESE 0.
- Seite 36 und 37: 102 KAPITEL 4. CHURCHSCHE THESE 4.2
- Seite 38 und 39: 104 KAPITEL 4. CHURCHSCHE THESE Bei
- Seite 40 und 41: 106 KAPITEL 4. CHURCHSCHE THESE [uq
- Seite 42 und 43: 108 KAPITEL 4. CHURCHSCHE THESE Bew
- Seite 44 und 45: 110 KAPITEL 4. CHURCHSCHE THESE Alg
- Seite 46 und 47: 112 KAPITEL 4. CHURCHSCHE THESE All
- 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
76 KAPITEL 3. TURINGMASCHINEN<br />
Die Berechnung von E<strong>in</strong>gaben formalisieren wir jetzt.<br />
Konfigurationen: E<strong>in</strong>e Konfiguration e<strong>in</strong>er Tur<strong>in</strong>gmasch<strong>in</strong>e ist die vollständige<br />
Information über die TM zu e<strong>in</strong>em Zeitpunkt der Berechnung; sie wird durch (1)<br />
den momentanen Zustand q, (2) den Inhalt des Bandes und (3) die Position des<br />
Kopfes bestimmt. Also ist (1) e<strong>in</strong> Element der Menge Q. Wir können (2) und (3)<br />
zusammenfassen, <strong>in</strong>dem wir sagen, welches Wort u l<strong>in</strong>ks vom Kopf steht, welches<br />
Wort v rechts steht und welches Symbol a aus Σ = Σ ∪ {#} der Kopf liest. Dabei<br />
ist u entweder leer, oder hat das erste Symbol aus Σ und die weiteren aus Σ:<br />
u ∈ Σ × Σ ∗ ∪ {ε}.<br />
Analog v ∈ Σ ∗ × Σ ∪ {ε}. E<strong>in</strong>e Konfiguration ist also e<strong>in</strong> Quadrupel<br />
(q, u, a, v), wobei q ∈ Q, u ∈ Σ × Σ ∗ ∪ {ε}, a ∈ Σ und v ∈ Σ ∗ × Σ ∪ {ε}.<br />
Die Menge<br />
K = Q × (Σ × Σ ∗ ∪ {ε}) × Σ × (Σ ∗ × Σ ∪ {ε})<br />
heißt Konfigurationsmenge.<br />
Die üblichere (und übersichtlichere) Schreibweise ist, u, a, v zu konkatenieren und a<br />
zu unterstreichen:<br />
(q, uav).<br />
In Beispiel 1 <strong>in</strong> Abschnitt 3.1 hat die Berechnung also die Konfigurationen<br />
(q0, 132)<br />
(q0, 132)<br />
(q0, 132)<br />
(q0, 132#) und<br />
(q1, 132)<br />
Berechnung: Die E<strong>in</strong>gabe<br />
s1s2 . . . sn ∈ Σ ∗<br />
wird immer so auf das Band geschrieben, dass die Buchstaben ohne Leerzeichen<br />
h<strong>in</strong>tere<strong>in</strong>ander stehen. Der Kopf wird auf den ersten Buchstaben gestellt und der<br />
Zustand ist <strong>in</strong>itial. Mit anderen Worten heißt das: wir erwarten am Anfang, dass<br />
die Konfiguration die folgende Form hat:<br />
(∗) (q0, s1s2 . . .sn), wobei s1 . . . sn ∈ Σ ∗ .<br />
Der Fall der leeren E<strong>in</strong>gabe ε ∈ Σ ∗ (also n = 0) entspricht der Konfiguration<br />
(q0, #).<br />
Konfigurationen der Form (∗) heißen Initialkonfigurationen.<br />
Falls die Tur<strong>in</strong>gmasch<strong>in</strong>e e<strong>in</strong>e Konfiguration<br />
(q, s1s2 . . .si−1sisi+1 . . . sn)<br />
erreicht hat, gibt es zwei Möglichkeiten: entweder ist δ(q, si) nicht def<strong>in</strong>iert, dann<br />
heißt die Konfiguration Haltekonfiguration, oder es gilt<br />
δ(q, si) = (q ′ , s ′ ) mit s ′ ∈ {L,R} ∪ Σ,<br />
dann def<strong>in</strong>ieren wir die Folgekonfiguration wie folgt:<br />
1. falls s ′ =L, dann ist die Folgekonfiguration<br />
(q ′ , s1s2 . . . si−1sisi+1 . . . sn)<br />
2. falls s ′ =R, dann ist die Folgekonfiguration<br />
(q ′ , s1s2 . . . si−1sisi+1 . . . sn)<br />
3. falls s ′ ∈ Σ, dann ist die Folgekonfiguration<br />
(q ′ , s1s2 . . . si−1s ′ si+1 . . . sn).<br />
Diese Def<strong>in</strong>ition ist <strong>in</strong> Tabelle 3.1 zusammengefasst.