• Keine Ergebnisse gefunden

6∈ ∈ 6∈ ∈ GrundlagenderTheoretischenInformatik/EinführungindieTheoretischeInformatikI TeilV AkzeptierbarkeitundEntscheidbarkeit Dank

N/A
N/A
Protected

Academic year: 2021

Aktie "6∈ ∈ 6∈ ∈ GrundlagenderTheoretischenInformatik/EinführungindieTheoretischeInformatikI TeilV AkzeptierbarkeitundEntscheidbarkeit Dank"

Copied!
7
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 / 271

Dank

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 / 271

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

Akzeptierbarkeit und Entscheidbarkeit

Akzeptieren

Eine DTMakzeptierteine SpracheL, wenn sie für jedes Eingabe-Wortw∈Lirgendwann hält

für jedes Wortv 6∈Lunendlich lang rechnet oder hängt

Entscheiden

Eine DTMentscheideteine SpracheL, wenn sie

für jedes Eingabe-Wortw∈Lhält mit dem BandinhaltY (“Yes”) für jedes Wortv 6∈Lhält mit dem BandinhaltN(“No”)

(2)

Akzeptierbarkeit und Entscheidbarkeit

Definition 13.1 (Entscheidbar)

Lsei eine Sprache überΣ0mit#,N,Y6∈Σ0. M= (K,Σ,δ,s)sei eine DTM mitΣ0⊆Σ. M entscheidetL, falls für allew∈Σ0gilt:

s,#w#`M

h,#Y# fallsw∈L h,#N# sonst

Lheißtentscheidbar, falls es eine DTM gibt, dieLentscheidet.

B. Beckert – Grundlagen d. Theoretischen Informatik: Entscheidbar/Aufzählbar SS 2007 213 / 271

Akzeptierbarkeit und Entscheidbarkeit

Definition 13.2 (Akzeptierbar)

Lsei eine Sprache überΣ0mit#,N,Y6∈Σ0. M= (K,Σ,δ,s)sei eine DTM mitΣ0⊆Σ. Makzeptiertein Wortw∈Σ0,

fallsMbei Inputwhält.

Makzeptiert die SpracheL, falls für allew∈Σ0gilt:

Makzeptiertw genau dann wenn w∈L

Lheißtakzeptierbar(oder auchsemi-entscheidbar), falls es eine DTM gibt, dieLakzeptiert.

B. Beckert – Grundlagen d. Theoretischen Informatik: Entscheidbar/Aufzählbar SS 2007 214 / 271

Rekursiv aufzählbar

Definition 13.3 (Rekursiv Aufzählbar (recursively enumerable)) Lsei eine Sprache überΣ0mit#,N,Y6∈Σ0.

M= (K,Σ,δ,s)sei eine DTM mitΣ0⊆Σ.

MzähltLauf, falls es einen ZustandqB∈Kgibt (denBlinkzustand), so daß:

L={w∈Σ0| ∃u∈Σ:s,#`MqB,#w#u}

Lheißtrekursiv aufzählbar, falls es eine DTM gibt, dieLaufzählt.

Rekursiv aufzählbar

Achtung:aufzählbar6=abzählbar.

Unterschied

Mabzählbar: Es gibt eine surjektive Abbildung der natürlichen Zahlen aufM Maufzählbar: Diese Abbildung kann von einer Turing-Maschine berechnet

werden.

Wegen Endlichkeit der Wörter und des Alphabets sind alle Sprachen abzählbar.

Aber nicht alle Sprachen sind aufzählbar.

(3)

Rekursiv aufzählbar: Beispiele

Beispiel 13.4 (Rekursiv aufzählbar aber nicht entscheidbar) Folgende Mengen sind rekursiv aufzählbar abernichtentscheidbar:

Die Menge der Gödelisierungen aller haltenden Turing-Maschinen Die Menge aller terminierenden Programme

Die Menge aller allgemeingültigen prädikatenlogischen Formeln

B. Beckert – Grundlagen d. Theoretischen Informatik: Entscheidbar/Aufzählbar SS 2007 217 / 271

Akzeptierbar gleich rekursiv aufzählbar

Satz 13.5 (Akzeptierbar = Rekursiv Aufzählbar)

Eine Sprache ist genau dann rekursiv aufzählbar, wenn sie akzeptierbar ist.

B. Beckert – Grundlagen d. Theoretischen Informatik: Entscheidbar/Aufzählbar SS 2007 218 / 271

Akzeptierbar gleich rekursiv aufzählbar

Beweis

SeiLrekursiv aufzählbar

Es gibt also eine DTMML, dieLaufzählt.

Zu zeigen:List akzeptierbar.

Akzeptierbar gleich rekursiv aufzählbar

Beweis (Fortsetzung)

Wir konstruieren ausMLeine 2-DTMM, dieLakzeptiert:

Mwird gestartet mit

s0, #w#

# Msimuliert auf Band 2 die MaschineML.

WennMLdenBlinkzustandqBerreicht, dann enthält Band 2 vonMein Wort

#w0#u mitw0∈L.

(4)

Akzeptierbar gleich rekursiv aufzählbar

Beweis (Fortsetzung)

Nach erreichen des Blinkzustands:

Mvergleichtwundw0.

Fallsw=w0, dann hältM:w∈L.

Ansonsten simuliertMauf Band 2 weiter die Arbeit vonML. WennMLhält, ohne das Wortwauf Band 2 erzeugt zu haben, gerätMin eine Endlosschleife.

B. Beckert – Grundlagen d. Theoretischen Informatik: Entscheidbar/Aufzählbar SS 2007 221 / 271

Akzeptierbar gleich rekursiv aufzählbar

Beweis (Fortsetzung)

SeiLakzeptierbar

Es gebe also eine DTMML, dieLakzeptiert.

Zu zeigen:List rekursiv aufzählbar.

Wir konstruieren eine DTMM, dieLrekursiv aufzählt.

Grundidee:

die Wörter ausΣder Reihe nach aufzählen jedes Wort der MaschineMLvorlegen

wennMLdas Wort akzeptiert, in den BlinkzustandqBgehen

B. Beckert – Grundlagen d. Theoretischen Informatik: Entscheidbar/Aufzählbar SS 2007 222 / 271

Akzeptierbar gleich rekursiv aufzählbar

Beweis (Fortsetzung)

Problem: MLakzeptiert, sie entscheidet nicht.

WennMLein Wort nicht akzeptiert, rechnet sie unendlich.

Lösung: Wir betrachten die Rechnung vonMLzu allen Wörtern ausΣ gleichzeitig.

Akzeptierbar gleich rekursiv aufzählbar

Beweis (Fortsetzung)

Σ={w1,w2,w3, . . .} (in lexikalischer Reihenfolge aufgezählt).

Dann rechnetMso:

Im ersten Durchlauf berechne den ersten Rechenschritt vonMLfürw1. Im zweiten Durchlauf berechne

die ersten zwei Rechenschritte vonMLfürw1, einen Rechenschritt fürw2.

Im dritten Durchlauf berechne drei Rechenschritte fürw1, zwei fürw2und einen fürw3und so weiter.

Immer wieder bei der Startkonfiguration anfangen: So müssen wir uns den Bandinhalt der Rechnung vonMLzuwi nachjSchritten nicht merken.

(5)

Akzeptierbar gleich rekursiv aufzählbar

Beweis (Fortsetzung) WennMso rechnet, dann gilt:

Mfängt für jedeswi∈Σin endlicher Zeit (nämlich imi-ten Durchlauf) an, die Arbeit vonMLzuwi zu simulieren, und

fallswi ∈Lund fallsML, gestartet mits,#wi#, injSchritten einen Haltezustand erreicht, dann erreichtMnach endlicher Zeit (nämlich im i+j-ten Durchlauf) den Haltezustand vonMLin der Rechnung zuwi.

B. Beckert – Grundlagen d. Theoretischen Informatik: Entscheidbar/Aufzählbar SS 2007 225 / 271

Akzeptierbar gleich rekursiv aufzählbar

Beweis (Ende)

WennMbei Simulation vonMLzur Eingabenwi auf eine Haltekonfiguration trifft, dann istwi∈L.

Mnimmt dann eine Konfiguration

qB,#wi#ui ein –qBist der Blinkzustand.

In der Nebenrechnungui steht, welche Teilrechnung vonMLals nächste zu simulieren ist.

Also zähltMdiew∈Σauf, für dieMLhält, und das sind gerade die w∈L.

B. Beckert – Grundlagen d. Theoretischen Informatik: Entscheidbar/Aufzählbar SS 2007 226 / 271

Entscheidbarkeit und Akzeptierbarkeit

Satz 13.6 (Entscheidbar und akzeptierbar) Jede entscheidbare Sprache ist akzeptierbar.

Beweis

SeiLeine entscheidbare Sprache undMeine DTM, dieLentscheidet.

Dann wirdLakzeptiert von der DTMM0,

die zunächstMsimuliert und danach in eine Endlosschleife geht, fallsMmit h,#N#endet.

Entscheidbarkeit und Akzeptierbarkeit

Satz 13.7 (Komplement einer entscheidbaren Sprache ist entscheidbar) Das Komplement einer entscheidbaren Sprache ist entscheidbar.

Beweis

SeiLeine entscheidbare Sprache undMeine DTM, dieLentscheidet.

Dann wirdLentschieden von einer DTMM0, die genau wieMrechnet

und nur am Schluß die AntwortenYundNvertauscht.

(6)

Entscheidbarkeit und Akzeptierbarkeit

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

B. Beckert – Grundlagen d. Theoretischen Informatik: Entscheidbar/Aufzählbar SS 2007 229 / 271

Entscheidbarkeit und Akzeptierbarkeit

Beweis

“⇒”

SeiList entscheidbar.

Zu zeigen:LundLsind akzeptierbar.

List entscheidbar, also istLakzeptierbar List entscheidbar, also istLentscheidbar List entscheidbar, also istLakzeptierbar

B. Beckert – Grundlagen d. Theoretischen Informatik: Entscheidbar/Aufzählbar SS 2007 230 / 271

Entscheidbarkeit und Akzeptierbarkeit

Beweis (Fortsetzung)

“⇐”

SeienLundLakzeptierbar.

Zu zeigen:List entscheidbar.

SeiM1eine DTM, dieLakzeptiert.

SeiM2eine DTM, dieLakzeptiert.

Daraus konstruieren wir eine 2-DTMM, dieLentscheidet:

Mwird gestartet mit s0,#w#

#

Entscheidbarkeit und Akzeptierbarkeit

Beweis (Ende)

M simuliert abwechselnd

einen Schritt vonM1auf Band 1 und einen Schritt vonM2auf Band 2.

Das tutM, bis entwederM1oderM2hält.

Eine von beiden muss halten:wgehört entweder zuLoder zuL.

WennM1hält, dann hältMmit

#Y#auf Band 1 und

#auf Band 2.

WennM2hält, dann hältMmit

#N#auf Band 1 und

#auf Band 2.

(7)

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: Determinierte Turing-Maschinen entsprechen Typ 0 SS 2007 233 / 271

Rekursiv Aufzählbar = Typ 0

Zur Erinnerung

Formale Sprachen sind vomTyp 0, wenn sie durch beliebige Grammatiken (keinerlei Einschränkungen) erzeugt werden können.

B. Beckert – Grundlagen d. Theoretischen Informatik: Determinierte Turing-Maschinen entsprechen Typ 0 SS 2007 234 / 271

Rekursiv Aufzählbar = Typ 0

Satz 14.1 (Rekursiv aufzählbar = Typ 0) Die rekursiv aufzählbaren Sprachen

(also die durch DTMn akzeptierbaren Sprachen)

sind genau die durch beliebige Grammatiken erzeugten Sprachen (also die vom Typ 0).

Beweisidee

Zu jeder Turing-Maschine kann eine Grammatik konstruiert werden, deren Ableitungsschritte die Rechenschritte der TM simulieren (spezielle Variable markiert Position des Schreib-/Lesekopfes).

Zu jeder Grammatik kann eine indeterminierte Turing-Maschine (und damit auch eine DTM) konstruiert werden, deren Rechenschritte den Ableitungsschritten der Grammatik entsprechen.

Referenzen

ÄHNLICHE DOKUMENTE

Professor für Linguistik und Philosophie am MIT Bedeutender Linguist. Bedeutender Beitrag

Ein Algorithmus für ein Problem P ist eine Vorschrift (ein Programm), die zu beliebigem Objekt o berechnet, ob die Eigenschaft für o zutrifft oder nicht..Q. Probleme und Algorithmen

Ein Algorithmus für ein Problem P ist eine Vorschrift (ein Programm), die zu beliebigem Objekt o berechnet, ob die Eigenschaft für o zutrifft oder

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

Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 140 / 219... Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 141

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

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

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