• Keine Ergebnisse gefunden

= { ∈{ , } | } = {| | ≥ } GrundlagenderTheoretischenInformatik/EinführungindieTheoretischeInformatikI IndeterminierteTuring-Maschine IndeterminierteTuring-Maschine Dank

N/A
N/A
Protected

Academic year: 2021

Aktie "= { ∈{ , } | } = {| | ≥ } GrundlagenderTheoretischenInformatik/EinführungindieTheoretischeInformatikI IndeterminierteTuring-Maschine IndeterminierteTuring-Maschine Dank"

Copied!
6
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Vorlesung

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I

Bernhard Beckert

Institut für Informatik

Sommersemester 2007

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 1 / 284

Diese Vorlesungsmaterialien basieren ganz wesentlich auf den Folien zu den Vorlesungen von

Katrin Erk (gehalten an der Universität Koblenz-Landau) Jürgen Dix (gehalten an der TU Clausthal)

Ihnen beiden gilt mein herzlicher Dank.

– Bernhard Beckert, April 2007

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 2 / 284

Indeterminierte Turing-Maschine

Beispiel 11.3

Eine indeterminierte Turing-Maschine, die

L={w∈ {a,b}|wbesitztabaals Teilwort} azkeptiert.

Siehe Tafel.

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 190 / 284

Indeterminierte Turing-Maschine

Beispiel 11.4 Sei

L={|n|nist nicht prim undn≥2} Eine NTM kann diese Sprache wie folgt azeptieren:

1 Eine Zahl „raten“ und (nach rechts) aufs Band schreiben.

2 Noch eine Zahl „raten“ und daneben schreiben.

3 Die beiden Zahlen miteinander multiplizieren.

4 Das Ergebnis mit der Eingabe vergleichen.

5 Genau dann, wenn beide gleich sind, anhalten

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 191 / 284

(2)

Indeterminierte Turing-Maschine

Theorem 11.5 (Simulation von NTM durch DTM)

Jede Sprache, die von einer indeterminierten Turing-Maschine akzeptiert wird, wird auch von einer Standard-DTM akzeptiert.

Beweis (Anfang) Sei

Leine Sprache überΣ0mit#6∈Σ0;

M= (K,Σ,∆,s)eine indeterminierte Turing-Maschine, dieLakzeptiert.

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 192 / 284

Indeterminierte Turing-Maschine

Beweis (Fortsetzung)

Wir konstruieren zuMeine Standard-DTMM0, die so rechnet:

M0durchläuft systematischalleRechnungen vonM, und sucht dabei nach einer Haltekonfiguration.

M0genau dann, wenn sie eine Haltekonfiguration vonMfindet.

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 193 / 284

Indeterminierte Turing-Maschine

Beweis (Fortsetzung)

Suchbaum, Rechnungsbaum:

Stelle alle Rechnungen vonMvon einer StartkonfigurationC0dar als einen Baum mit WurzelC0.

Ein Ast ist eine mögliche Rechnung vonM. C0=s,#w#

``````````

C1 C2

· · ·

Cr

#

## c

cc

#

## c

cc

#

## c

cc C1,1 C1,2

· · ·

C1,r C2,1 C2,2

· · ·

C2,r Cr,1 Cr,2

· · · Cr,r ... ... ... ... ... ... ... ... ...

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 194 / 284

Indeterminierte Turing-Maschine

Beweis (Fortsetzung) Problem:

Es kann zur Startkonfiguration

C0=s,#w# unendlich viele Rechnungen vonMgeben,

und jede einzelne von ihnen kann unendlich lang sein.

Wir können also nicht erst einen Ast ganz durchlaufen und dann den nächsten Ast durchsuchen.

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 195 / 284

(3)

Beweis (Fortsetzung) Die Lösung:

Breitensuche

Drchlaufe den Rechnungsbaum nicht depth-first, sondern periterative deepening.

Untersuchen alle möglichen Rechnungen bis zum ersten Schritt.

Untersuchen alle möglichen Rechnungen bis zum zweiten Schritt.

Untersuchen alle möglichen Rechnungen bis zum dritten Schritt.

usw.

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 196 / 284

Beweis (Fortsetzung)

Können wir damit denn in endlicher Zeit eine Haltekonfiguration finden, falls es eine gibt?

Problem:

Kann der Rechnungsbaum nicht nurunendlich tief, sondern auchunendlich breitwerden?

Nein, denn:

Maximale Anzahl von Nachfolgekonfigurationen

r=max{|∆(q,a)| | q∈K,a∈Σ}

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 197 / 284

Indeterminierte Turing-Maschine

Beweis (Fortsetzung)

M

0kann (z.B.) als eine 3-DTM gewählt werden:

Auf dem ersten Band steht immer das Eingabewortw.

Da die Rechnung immer wieder neu mits

, #

w

#

von

M

beginnt, wird das Eingabewort immer wieder gebraucht.

Auf dem zweiten Band steht, welcher Weg durch den Rechnungsbaum gerade verfolgt wird.

Der Einfachheit halber: Wenn eine Konfiguration weniger alsr Nachfolgekonfigurationen hat, soll der zugehörige Knoten trotzdem r Söhne haben, und die überzähligen Konfigurationen sind leer.

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 198 / 284

Indeterminierte Turing-Maschine

Beweis (Fortsetzung)

Darstellung des aktuellen Pfades im Rechnungsbaum als Zahl imr-adischen System.

Eine Zahld1. . .dnbedeutet:

Von der StartkonfigurationC0aus ist died1-te derrmöglichen Nachfolgekonfigurationen gewählt worden,Cd1.

VonCd1, einem Knoten der Tiefe 1, aus wurde died2-te mögliche Nachfolgekonfiguration gewählt,

usw.

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 199 / 284

(4)

Indeterminierte Turing-Maschine

Beweis (Fortsetzung)

Ausführung des Iterative Deepening:

Beginne mit 0 auf zweitem Band.

Jeweils nächste zu betrachtende Rechnung erhöhen der Zahl auf Band 2 um 1

Auf Band 3 wird eine Rechnung von

M

determiniertsimuliert.

Und zwar entsprechend der Zahld1

. . .

dnauf Band 2.

Die EndkonfigurationCd1...dn dieser Rechnung steht im Rechnungsbaum an dem Knoten, der das Ende des Pfades d1

. . .

dnbildet.

Ist die KonfigurationCd1...dn eine Haltekonfiguration, so hält

M

0. Sonst Zahl auf Band 2 erhöhen und die nächste

Rechnungssimulation beginnen

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 200 / 284

Indeterminierte Turing-Maschine

Beweis (Ende) Damit gilt:

M0hält bei Inputw gdw

es gibt inRC0 eine Haltekonfiguration.

Das ist genau dann der Fall, wenn Mbei Inputwhält,

winLliegt.

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 201 / 284

Teil V

1 Determinierte Turing-Maschinen (DTMs)

2 Varianten von Turing-Maschinen

3 Indeterminierte Turing-Maschinen (NTMs)

4 Universelle determinierte Turing-Maschinen

5 Entscheidbar/Aufzählbar

6 Determinierte Turing-Maschinen entsprechen Typ 0

7 Unentscheidbarkeit

B. Beckert – Grundlagen d. Theoretischen Informatik: Universelle determinierte Turing-Maschinen SS 2007 202 / 284

Universelle Turing-Maschine

Vergleich Turing-Maschine / „normaler“ Computer Turing-Maschinen sind sehr mächtig.

Wie mächtig sind sie wirklich?

Eine Turing-Maschine hat eine vorgegebenes „Programm“ (Regelmenge)

„Normale“ Computer können beliebige Programme ausführen.

Tatsächlich geht das mit Turing-Maschinen auch!

B. Beckert – Grundlagen d. Theoretischen Informatik: Universelle determinierte Turing-Maschinen SS 2007 203 / 284

(5)

Turing-Maschine, die andere TMen simuliert Universelle TMUbekommt als Eingabe:

die Regelmenge einer beliebigen Turing-MaschineMund ein Wortw, auf demMrechnen soll.

UsimuliertM, indem sie jeweils nachschlägt, welchenδ-ÜbergangM machen würde.

B. Beckert – Grundlagen d. Theoretischen Informatik: Universelle determinierte Turing-Maschinen SS 2007 204 / 284

TM als Eingabe für eine andere TM Frage:

In welches Format fasst man die Regeln einer DTMMam besten, um sie einer universellen DTM als Eingabe zu geben?

Was muss man angeben, um eine DTM komplett zu beschreiben?

das Alphabet, die Zustände, dieδ-Übergänge den Startzustand.

B. Beckert – Grundlagen d. Theoretischen Informatik: Universelle determinierte Turing-Maschinen SS 2007 205 / 284

Universelle Turing-Maschine

Standardisierung von Alphabet, Zustandsmenge, Startzustand Unendliches AlphabetΣ={a0,a1, . . .},

so daß das Alphabet jeder DTM eine Teilmenge vonΣist.

Namen der Zustände einer DTM sind egal.

Sie seien alsoq1, . . . ,qn

(nkann dabei von DTM zu DTM verschieden sein).

Seiq1immer der Startzustand, und bezeichneq0den Haltezustand

Damit:

Wir können eine DTM komplett beschreiben, indem wir nur ihreδ-Übergänge beschreiben.

B. Beckert – Grundlagen d. Theoretischen Informatik: Universelle determinierte Turing-Maschinen SS 2007 206 / 284

Universelle Turing-Maschine

(Mögliche) Kodierung der Übergangsrelation Die DTML#habe die Regeln

q1,#7→q2,L q2,#7→ h,# q1,| 7→q2,L q2,| 7→q2,L

Dabei sei:#=a0und|=a1

Dann kann die DTML#so beschrieben werden:

a0 a1 q1 q2,L q2,L q2 h,a0 q2,L

oder kürzer: Z S2λS2λ Z S00S2λ

B. Beckert – Grundlagen d. Theoretischen Informatik: Universelle determinierte Turing-Maschinen SS 2007 207 / 284

(6)

Universelle Turing-Maschine

(Mögliche) Kodierung der Übergangsrelation Dabei steht:

Z für “nächste Zeile”

Sfür “nächste Spalte”

λfür “links”,ρfür “rechts”

die Zahlnfür denn-ten Zustand und für dasn-te Zeichen vonΣ. Damit ist die DTM insgesamt durch ein einziges Wort beschrieben:

ZS2λS2λZS00S2λ

B. Beckert – Grundlagen d. Theoretischen Informatik: Universelle determinierte Turing-Maschinen SS 2007 208 / 284

Universelle Turing-Maschine

Gödelisierung

Ein Verfahren, jeder Turing-Maschine eine Zahl oder ein Wort (Gödelzahlbzw.

Gödelwort) so zuzuordnen, daß man aus der Zahl bzw. dem Wort die Turing-Maschine effektiv rekonstruieren kann.

B. Beckert – Grundlagen d. Theoretischen Informatik: Universelle determinierte Turing-Maschinen SS 2007 209 / 284

Kurt Gödel

Kurt Gödel b1906,d1978

Bedeutendster Logiker des 20. Jahrhunderts Vollständigkeitssatz (1929)

Promotion in Wien

Unvollständigkeitssatz (1931) Idee er Gödilisierung

Beweis der Unabhängigkeit der Kontinuuemshypothese

Dozent in Princeton,

befreundet mit Albert Einstein Tragischer Tod:

Verfolgungswahn, Depressionen, Tod durch Unterernährung.

B. Beckert – Grundlagen d. Theoretischen Informatik: Universelle determinierte Turing-Maschinen SS 2007 210 / 284

Referenzen

ÄHNLICHE DOKUMENTE

Eine Sprache wird genau dann von einer Turing -Maschine akzeptiert, wenn sie Wertevorrat einer Turing -berechenbaren Funktion ist... Endliche Automaten versus regul¨ are

Determinierte und indeterminierte endliche Automaten sind äquivalent Pumping Lemma erlaubt, eine Sprache als nicht rational nachzuweisen.. Es gibt Algorithmen, die Probleme

L ist rational heißt: es gibt einen endlichen Automaten, der L akzeptiert L ist regulär heißt: es gibt eine linkslineare Grammatik für L. Theoretischen Informatik: Endliche

Die durch endliche Automaten akzeptierten Sprachen sind genau die, die man durch reguläre Ausdrücke beschreiben kann. Theoretischen Informatik: Rational = Reguläre Ausdrücke SS 2007

Theoretischen Informatik: Pumping-Lemma für kontextfreie Sprachen SS 2007 269 / 356.. Theoretischen Informatik: Pumping-Lemma für kontextfreie Sprachen SS 2007 270

Immer nur zwei benachbarte Kanten betrachten, um herauszufinden, ob darüber eine neue Kante eingefügt werden kann. Theoretischen Informatik: SS 2007 119

Betrachtet werden Abbildungen über den natürlichen Zahlen N : Welche davon sollen berechenbar genannt werdenB.

Satz 13.8 (Charakterisierung von Entscheidbarkeit) Eine Sprache L ist genau dann entscheidbar, wenn sie und ihr Komplement akzeptierbar