Skript in PDF - Theoretische Informatik - Technische Universität ...
Skript in PDF - Theoretische Informatik - Technische Universität ... Skript in PDF - Theoretische Informatik - Technische Universität ...
iv INHALTSVERZEICHNIS
Kapitel 3 Turingmaschinen Weder endliche Automaten noch Kellerautomaten sind genügend starke Berechnungsmodelle, denn sie sind nicht fähig, selbst so einfache Sprachen wie z. B. {a n b n c n ; n ≥ 1} zu akzeptieren. Wir führen jetzt ein Modell einer Maschine ein, die eine sehr starke Leistung hat, obwohl die Definition nicht komplizierter als die der Kellerautomaten ist: die Turingmaschinen. Diese Maschinen wurden von Alan Turing in den dreißiger Jahren als Formalisierung des intuitiven Begriffs des Algorithmus eingeführt. Turing versuchte zu zeigen, dass jeder Rechenprozess, den ein Mensch aufgrund einer (endlichen, eindeutigen) Anweisung durchführen kann, auch automatisch von einer Maschine durchgeführt werden kann. Was einem menschlichen Rechner zur Verfügung steht, ist eine endliche Liste von Instruktionen, die zusammen mit den Daten in seinem Gedächtnis eine endliche Menge von (inneren) Zuständen formt. Außerdem hat er einen unbeschränkten Raum, in dem er lesen, schreiben und überschreiben darf. Das kann (zweidimensional) durch einen beliebig erweiterbaren Papierstoß realisiert werden, oder äquivalent, falls alle Zeilen als Erweiterungen der ersten angesehen werden, als ein (eindimensionales) unendliches Band. Das formale Modell ist dann dem eines Kellerautomaten ähnlich: anstelle des Kellers gibt es hier ein Band, auf dem sich ein read-and-write-Kopf unbeschränkt bewegt. Die Leistungsfähigkeit von Turingmaschinen ist trotzdem unvergleichlich größer als die der Kellerautomaten. Es zeigt sich, dass die Klasse aller Probleme, die mit Turingmaschinen gelöst werden können, dieselbe ist wie die Klasse aller Probleme, die moderne Rechner mit modernen Programmiersprachen lösen können. Die Churchsche These, die wir später genauer erläutern, behauptet, dass die Turingmaschine sogar ein ganz allgemeines Modell des Begriffs des Algorithmus ist. Also kann ein Problem genau dann mit einem Algorithmus gelöst werden, wenn eine Turingmaschine es lösen kann. Diese These kann nicht bewiesen werden (der Begriff des Algorithmus ist eben doch nur intuitiv), aber sie wurde mehrmals überzeugend dadurch untermauert, dass andere – oft grundsätzlich verschiedene – Berechnungsmodelle dieselbe Klasse lösbarer Probleme ergeben. 3.1 Definition einer Turingmaschine Eine Turingmaschine besteht – analog zum Kellerautomaten – aus inneren Zuständen, externem Speicher und einer Betriebseinheit, die aufgrund des momentanen Zustandes und des gerade gelesenen Symbols entscheidet, welcher der nächste Zustand ist und wie der Speicher geändert wird. Im Vergleich zu Kellerautomaten 73
- Seite 1: THEORETISCHE INFORMATIK Vorlesungss
- Seite 4 und 5: ii INHALTSVERZEICHNIS 3.4 Nichtdete
- Seite 8 und 9: 74 KAPITEL 3. TURINGMASCHINEN hat h
- Seite 10 und 11: 76 KAPITEL 3. TURINGMASCHINEN Die B
- 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
Kapitel 3<br />
Tur<strong>in</strong>gmasch<strong>in</strong>en<br />
Weder endliche Automaten noch Kellerautomaten s<strong>in</strong>d genügend starke Berechnungsmodelle,<br />
denn sie s<strong>in</strong>d nicht fähig, selbst so e<strong>in</strong>fache Sprachen wie z. B.<br />
{a n b n c n ; n ≥ 1} zu akzeptieren. Wir führen jetzt e<strong>in</strong> Modell e<strong>in</strong>er Masch<strong>in</strong>e e<strong>in</strong>,<br />
die e<strong>in</strong>e sehr starke Leistung hat, obwohl die Def<strong>in</strong>ition nicht komplizierter als die<br />
der Kellerautomaten ist: die Tur<strong>in</strong>gmasch<strong>in</strong>en. Diese Masch<strong>in</strong>en wurden von Alan<br />
Tur<strong>in</strong>g <strong>in</strong> den dreißiger Jahren als Formalisierung des <strong>in</strong>tuitiven Begriffs des Algorithmus<br />
e<strong>in</strong>geführt. Tur<strong>in</strong>g versuchte zu zeigen, dass jeder Rechenprozess, den e<strong>in</strong><br />
Mensch aufgrund e<strong>in</strong>er (endlichen, e<strong>in</strong>deutigen) Anweisung durchführen kann, auch<br />
automatisch von e<strong>in</strong>er Masch<strong>in</strong>e durchgeführt werden kann. Was e<strong>in</strong>em menschlichen<br />
Rechner zur Verfügung steht, ist e<strong>in</strong>e endliche Liste von Instruktionen, die<br />
zusammen mit den Daten <strong>in</strong> se<strong>in</strong>em Gedächtnis e<strong>in</strong>e endliche Menge von (<strong>in</strong>neren)<br />
Zuständen formt. Außerdem hat er e<strong>in</strong>en unbeschränkten Raum, <strong>in</strong> dem er lesen,<br />
schreiben und überschreiben darf. Das kann (zweidimensional) durch e<strong>in</strong>en beliebig<br />
erweiterbaren Papierstoß realisiert werden, oder äquivalent, falls alle Zeilen als<br />
Erweiterungen der ersten angesehen werden, als e<strong>in</strong> (e<strong>in</strong>dimensionales) unendliches<br />
Band. Das formale Modell ist dann dem e<strong>in</strong>es Kellerautomaten ähnlich: anstelle des<br />
Kellers gibt es hier e<strong>in</strong> Band, auf dem sich e<strong>in</strong> read-and-write-Kopf unbeschränkt<br />
bewegt.<br />
Die Leistungsfähigkeit von Tur<strong>in</strong>gmasch<strong>in</strong>en ist trotzdem unvergleichlich größer als<br />
die der Kellerautomaten. Es zeigt sich, dass die Klasse aller Probleme, die mit Tur<strong>in</strong>gmasch<strong>in</strong>en<br />
gelöst werden können, dieselbe ist wie die Klasse aller Probleme, die<br />
moderne Rechner mit modernen Programmiersprachen lösen können. Die Churchsche<br />
These, die wir später genauer erläutern, behauptet, dass die Tur<strong>in</strong>gmasch<strong>in</strong>e<br />
sogar e<strong>in</strong> ganz allgeme<strong>in</strong>es Modell des Begriffs des Algorithmus ist. Also kann e<strong>in</strong><br />
Problem genau dann mit e<strong>in</strong>em Algorithmus gelöst werden, wenn e<strong>in</strong>e Tur<strong>in</strong>gmasch<strong>in</strong>e<br />
es lösen kann. Diese These kann nicht bewiesen werden (der Begriff des Algorithmus<br />
ist eben doch nur <strong>in</strong>tuitiv), aber sie wurde mehrmals überzeugend dadurch<br />
untermauert, dass andere – oft grundsätzlich verschiedene – Berechnungsmodelle<br />
dieselbe Klasse lösbarer Probleme ergeben.<br />
3.1 Def<strong>in</strong>ition e<strong>in</strong>er Tur<strong>in</strong>gmasch<strong>in</strong>e<br />
E<strong>in</strong>e Tur<strong>in</strong>gmasch<strong>in</strong>e besteht – analog zum Kellerautomaten – aus <strong>in</strong>neren Zuständen,<br />
externem Speicher und e<strong>in</strong>er Betriebse<strong>in</strong>heit, die aufgrund des momentanen<br />
Zustandes und des gerade gelesenen Symbols entscheidet, welcher der nächste Zustand<br />
ist und wie der Speicher geändert wird. Im Vergleich zu Kellerautomaten<br />
73