• Keine Ergebnisse gefunden

5.2 Linear beschr¨ ankte Automaten Definition 98

N/A
N/A
Protected

Academic year: 2021

Aktie "5.2 Linear beschr¨ ankte Automaten Definition 98"

Copied!
30
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

5.2 Linear beschr¨ ankte Automaten Definition 98

Eine Turingmaschine heißt linear beschr¨ ankt (kurz: LBA), falls f¨ ur alle q ∈ Q gilt:

(q 0 , c, d) ∈ δ(q, ) = ⇒ c = . Ein Leerzeichen wird also nie durch ein anderes Zeichen

¨ uberschrieben. Mit anderen Worten: Die Turingmaschine darf ausschliesslich die Positionen beschreiben, an denen zu Beginn die Eingabe x steht.

Info IV 5.2 Linear beschr¨ankte Automaten 165/217

c

Ernst W. Mayr

(2)

Satz 99

Die von linear beschr¨ ankten, nichtdeterministischen Turingmaschinen akzeptierten Sprachen sind genau die kontextsensitiven (also Chomsky-1) Sprachen.

Beweis:

Wir beschreiben nur die Beweisidee.

” = ⇒“: Wir benutzen eine Menge von Nichtterminalsymbolen, die Q × Σ enth¨ alt, f¨ ur die Grammatik. Die Grammatik erzeugt zun¨ achst alle akzeptierenden Konfigurationen (der Form αq f β mit q f ∈ F ), wobei q f und β 1 zusammen als ein Zeichen codiert sind.

Sie enth¨ alt weiterhin Regeln, die es gestatten, aus jeder Satzform, die eine Konfiguration darstellt, alle m¨ oglichen unmittelbaren Vorg¨ angerkonfigurationen abzuleiten. Die zur Anfangskonfiguration (, q 0 , w) geh¨ orige Satzform ist damit ableitbar gdw der LBA das Wort w akzeptiert.

Info IV 166/217

c

Ernst W. Mayr

(3)

Satz 99

Die von linear beschr¨ ankten, nichtdeterministischen Turingmaschinen akzeptierten Sprachen sind genau die kontextsensitiven (also Chomsky-1) Sprachen.

Beweis:

Wir beschreiben nur die Beweisidee.

” ⇐ = “: Wir simulieren mittels des LBA nichtdeterministisch und in R¨ uckw¨ artsrichtung die m¨ oglichen Ableitungen der

kontextsensitiven Grammatik und pr¨ ufen, ob wir die Satzform S erreichen k¨ onnen. Da die Grammatik l¨ angenmonoton ist, nimmt der vom LBA ben¨ otigte Platz nie zu.

Info IV 5.2 Linear beschr¨ankte Automaten 166/217

c

Ernst W. Mayr

(4)

Beispiel 100

Die Sprache L = {a m b m c m | m ∈ N 0 } ist kontextsensitiv.

Info IV 5.2 Linear beschr¨ankte Automaten 167/217

c

Ernst W. Mayr

(5)

Satz 101

Das Wortproblem f¨ ur LBAs bzw. f¨ ur Chomsky-1-Grammatiken ist entscheidbar.

Beweis:

Siehe z.B. die Konstruktion zum vorhergehenden Satz bzw.

Ubungsaufgabe. ¨

Info IV 5.2 Linear beschr¨ankte Automaten 168/217

c

Ernst W. Mayr

(6)

Satz 102

Die Familie CSL der kontextsensitiven (bzw. Chomsky-1) Sprachen ist abgeschlossen unter den folgenden Operationen:

∩ , ∪ , · , , ¯

Beweis:

Der Beweis f¨ ur die ersten vier Operationen ergibt sich unmittelbar aus den Eigenschaften linear beschr¨ ankter Automaten, der

Abschluss unter Komplement wird sp¨ ater gezeigt (

” Induktives Z¨ ahlen“).

Info IV 5.2 Linear beschr¨ankte Automaten 169/217

c

Ernst W. Mayr

(7)

Satz 103

Folgende Probleme sind f¨ ur die Familie der Chomsky-1-Sprachen nicht entscheidbar:

1

Leerheit

2

Aquivalenz ¨

3

Durchschnitt

Beweis:

ohne Beweis.

Info IV 5.2 Linear beschr¨ankte Automaten 170/217

c

Ernst W. Mayr

(8)

5.3 Chomsky-0-Sprachen

Satz 104

Zu jeder (nichtdeterministischen) TM N gibt es eine deterministische TM (DTM) M mit

L(N ) = L(M) .

Beweis:

Die DTM erzeugt in BFS-Manier, f¨ ur k = 0, 1, . . ., alle

Konfigurationen, die die TM N in k Schritten erreichen kann. Sie h¨ alt gdw sich dabei eine akzeptierende Konfiguration ergibt.

Info IV 5.3 Chomsky-0-Sprachen 171/217

c

Ernst W. Mayr

(9)

Satz 105

Die von (nichtdeterministischen oder deterministischen) Turingmaschinen akzeptierten Sprachen sind genau die Chomsky-0-Sprachen.

Beweis:

Wir beschreiben nur die Beweisidee.

” = ⇒“: Die Grammatik erzeugt zun¨ achst alle akzeptierenden Konfigurationen (der Form αq f β mit q f ∈ F). Sie enth¨ alt weiterhin Regeln, die es gestatten, aus jeder Satzform, die eine Konfiguration darstellt, alle m¨ oglichen unmittelbaren Vorg¨ angerkonfigurationen abzuleiten. Die zur Anfangskonfiguration (, q 0 , w) geh¨ orige Satzform ist damit ableitbar gdw die TM das Wort w akzeptiert.

Die Produktionen ergeben sich kanonisch aus der ¨ Ubergangs- relation der TM. Sie sind i.a. nicht mehr l¨ angenmonoton!

Info IV 172/217

c

Ernst W. Mayr

(10)

Satz 105

Die von (nichtdeterministischen oder deterministischen) Turingmaschinen akzeptierten Sprachen sind genau die Chomsky-0-Sprachen.

Beweis:

Wir beschreiben nur die Beweisidee.

” ⇐ = “: Wir simulieren mit der TM alle Ableitungen der

Chomsky-0-Grammatik in BFS-Manier und akzeptieren, falls eine solche Ableitung das Eingabewort x ergibt.

Man beachte, dass die konstruierte TM nicht unbedingt immer h¨ alt!

Eine andere Idee ist, wie im LBA-Fall die Ableitungen r¨ uckw¨ arts zu simulieren.

Info IV 5.3 Chomsky-0-Sprachen 172/217

c

Ernst W. Mayr

(11)

6. ¨ Ubersicht Chomsky-Hierarchie 6.1 Die Chomsky-Hierarchie

Typ 3 regul¨ are Grammatik DFA

NFA

regul¨ arer Ausdruck DCFL LR(k)-Grammatik

deterministischer Kellerautomat Typ 2 kontextfreie Grammatik

(nichtdeterministischer) Kellerautomat Typ 1 kontextsensitive Grammatik

(nichtdet.) linear beschr¨ ankter Automat (LBA) Typ 0 Chomsky-Grammatik, Phrasenstrukturgrammatik

det./nichtdet. Turingmaschine

Info IV 6.1 Die Chomsky-Hierarchie 173/217

c

Ernst W. Mayr

(12)

6.2 Wortproblem

Typ 3, gegeben als DFA lineare Laufzeit DCFL, gegeben als DPDA lineare Laufzeit

Typ 2, CNF-Grammatik CYK-Algorithmus, Laufzeit O(n 3 )

Typ 1 exponentiell

Typ 0 —

Info IV 6.2 Wortproblem 174/217

c

Ernst W. Mayr

(13)

6.3 Abschlusseigenschaften

Schnitt Vereinigung Komplement Produkt Stern

Typ 3 ja ja ja ja ja

DCFL nein nein ja nein nein

Typ 2 nein ja nein ja ja

Typ 1 ja ja ja ja ja

Typ 0 ja ja nein ja ja

Info IV 6.3 Abschlusseigenschaften 175/217

c

Ernst W. Mayr

(14)

6.4 Entscheidbarkeit

Wortproblem Leerheit Aquivalenz ¨ Schnittproblem

Typ 3 ja ja ja ja

DCFL ja ja ja nein

Typ 2 ja ja nein nein

Typ 1 ja nein nein nein

Typ 0 nein nein nein nein

Info IV 6.4 Entscheidbarkeit 176/217

c

Ernst W. Mayr

(15)

Kapitel II Berechenbarkeit, Entscheidbarkeit

1. Der Begriff der Berechenbarkeit Unsere Vorstellung ist:

f : N k 0 → N 0 ist berechenbar, wenn es einen Algorithmus gibt, der f berechnet, und genauer, der bei Eingabe (n 1 , . . . , n k ) ∈ N k 0 nach endlich vielen Schritten mit dem Ergebnis f(n 1 , . . . , n k ) ∈ N 0 h¨ alt.

Was bedeutet

” Algorithmus“ an dieser Stelle?

AWK, B, C, Euler, Fortran, Id, JAVA, Lisp, Modula, Oberon, Pascal, Simula, . . .-Programme?

Gibt es einen Unterschied, wenn man sich auf eine bestimmte Programmiersprache beschr¨ ankt?

Info IV 1.0 Entscheidbarkeit 177/217

c

Ernst W. Mayr

(16)

Analog f¨ ur partielle Funktionen

f : N k 0 ⊇ D → N 0

bedeutet berechenbar Folgendes:

1

Algorithmus soll mit dem richtigen Ergebnis stoppen, wenn (n 1 , . . . , n k ) ∈ D

2

und nicht stoppen, wenn (n 1 , . . . , n k ) 6∈ D.

Info IV 1.0 Entscheidbarkeit 178/217

c

Ernst W. Mayr

(17)

Beispiel 106

Wir definieren folgende Funktionen:

f 1 (n) =

( 1 falls n als Ziffernfolge Anfangsst¨ uck von π ist 0 sonst

f 2 (n) =

( 1 falls n interpretiert als Ziffernfolge in π vorkommt 0 sonst

f 3 (n) =

 

 

1 falls mindestens n aufeinanderfolgende Ziffern in π gleich 1 sind

0 sonst

π = 3, 14159265358979323846264338327950288419716939937 . . . Einige Beispiele sind damit:

f 1 (314) = 1, f 1 (415) = 0, f 2 (415) = 1 .

Info IV 179/217

c

Ernst W. Mayr

(18)

Beispiel 106

f 1 (n) =

( 1 falls n als Ziffernfolge Anfangsst¨ uck von π ist 0 sonst

Wie man leicht einsieht, ist f 1 berechenbar, denn um festzustellen, ob eine Ziffernfolge ein Anfangsst¨ uck von π ist, muss π nur auf entsprechend viele Dezimalstellen berechnet werden.

Info IV 179/217

c

Ernst W. Mayr

(19)

Beispiel 106

f 2 (n) =

( 1 falls n interpretiert als Ziffernfolge in π vorkommt 0 sonst

F¨ ur f 2 wissen wir nicht, ob es berechenbar ist. Um festzustellen, dass die Ziffernfolge in π vorkommt, m¨ usste man π schrittweise immer genauer approximieren. Der Algorithmus w¨ urde stoppen, wenn die Ziffernfolge gefunden wird. Aber was ist, wenn die Ziffernfolge in π nicht vorkommt?

Vielleicht gibt es aber einen (noch zu findenden) mathematischen Satz, der genaue Aussagen ¨ uber die in π vorkommenden

Ziffernfolgen macht.

W¨ are π vollkommen zuf¨ allig, was es aber nicht ist, dann w¨ urde jedes n als Ziffernfolge irgendwann vorkommen.

Info IV 179/217

c

Ernst W. Mayr

(20)

Beispiel 106

f 3 (n) =

 

 

1 falls mindestens n aufeinanderfolgende Ziffern in π gleich 1 sind

0 sonst

f 3 ist berechenbar, denn f 3 ≡ f 4 , mit f 4 (n) =

( 1 n ≤ n 0

0 sonst

wobei n 0 die maximale Anzahl von aufeinanderfolgenden 1en in π ist. Hierbei ist es nicht von Bedeutung, wie die Zahl n 0 berechnet werden kann - wichtig ist nur, dass eine solche Zahl n 0 ∈ N existiert.

Info IV 1.0 Entscheidbarkeit 179/217

c

Ernst W. Mayr

(21)

Weitere Vorschl¨ age, den Begriff der Berechenbarkeit zu pr¨ azisieren und zu formalisieren:

1

Turing-Berechenbarkeit

2

Markov-Algorithmen

3

λ-Kalk¨ ul

4

µ-rekursive Funktionen

5

Registermaschinen

6

AWK, B, C, Euler, Fortran, Id, JAVA, Lisp, Modula, Oberon, Pascal, Simula, . . . -Programme

7

while-Programme

8

goto-Programme

9

DNA-Algorithmen

10

Quantenalgorithmen

11

u.v.a.m.

Info IV 1.0 Entscheidbarkeit 180/217

c

Ernst W. Mayr

(22)

Es wurde bewiesen: Alle diese Beschreibungsmethoden sind in ihrer M¨ achtigkeit ¨ aquivalent.

Church’sche These

Dieser formale Begriff der Berechenbarkeit stimmt mit dem intuitiven ¨ uberein.

Info IV 1.0 Entscheidbarkeit 181/217

c

Ernst W. Mayr

(23)

1.1 Turing-Berechenbarkeit

Definition 107

Eine (partielle) Funktion

f : N k 0 ⊇ D → N 0

heißt Turing-berechenbar, falls es eine deterministische

Turingmaschine gibt, die f¨ ur jede Eingabe (n 1 , . . . , n k ) ∈ D nach endlich vielen Schritten mit dem Bandinhalt

f (n 1 , . . . , n k ) ∈ N 0

h¨ alt. Falls (n 1 , . . . , n k ) 6∈ D, h¨ alt die Turingmaschine nicht!

Dabei nehmen wir an, dass Tupel wie (n 1 , . . . , n k ) geeignet codiert auf dem Band der Turingmaschine dargestellt werden.

Info IV 1.1 Turing-Berechenbarkeit 182/217

c

Ernst W. Mayr

(24)

Eine beliebte Modellvariante ist die k-Band-Turingmaschine, die statt einem Band k, k ≥ 1, Arbeitsb¨ ander zur Verf¨ ugung hat, deren Lese-/Schreibk¨ opfe sie unabh¨ angig voneinander bewegen kann.

Oft existiert auch ein spezielles Eingabeband, das nur gelesen, aber nicht geschrieben werden kann (read-only). Der Lesekopf kann jedoch normalerweise in beiden Richtungen bewegt werden.

Ebenso wird oft ein spezielles Ausgabeband verwendet, das nur geschrieben, aber nicht gelesen werden kann (write-only). Der Schreibkopf kann dabei nur nach rechts bewegt werden.

Info IV 1.1 Turing-Berechenbarkeit 183/217

c

Ernst W. Mayr

(25)

Beispiel 108 (k-Band-Turingmaschine)

40 KAPITEL 2. BERECHENBARKEIT UND ENTSCHEIDBARKEIT

f 3 : Hingegen ist f 3 berechenbar, denn f 3 ≡ f 4 , mit

f 4 (n) =

1 n ≤ n 0

0 sonst

wobei n 0 die maximale Anzahl von aufeinanderfolgenden 7ern in π ist (bzw. ∞ ). Hierbei ist es nicht von Bedeutung, wie die Zahl n 0 berechnet werden kann – wichtig ist nur, dass eine solche Zahl n 0 ≤ ∞ existieren muss.

Zurück zur Frage: Was heisst " berechenbar " ? Wir verstehen unter berechenbar:

Definition 2.1 Turing-Berechenbarkeit:

Es gibt eine Turingmaschine, die für alle Eingaben bin(n 1 )#bin(n 2 )# . . . #bin(n k ) nach endlich vielen Schritten mit bin(f (n 1 , . . . n k )) auf dem Band stoppt.

Hierbei steht bin(n) für die Binärdarstellung der Zahl n, das Zeichen # wird als Trennzei- chen für die Eingabe verwendet.

Churche These: Die Turing-berechenbaren Funktionen entsprechen genau den intuitiv berechenbaren Funktionen.

2.2 Turing Berechenbarkeit

Bemerkung: Es gibt viele verschiedene Definitionen von " Turing-Maschine " . Vom Standpunkt der Berechenbarkeit sind diese alle äquivalent, d.h. man kann sie gegensei- tig simulieren.

Beispiel 2.2

k-Band Turingmaschine

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. M . .

? 6

?

Wichtig: k Schreib-/Leseköpfe, die unabhängig voneinander bewegt werden können.

Satz 2.1 Jede k-Band Turingmaschine kann man durch eine 1-Band Turingmaschine simu- lieren.

Beweis: Beweisidee: Definiere als (geeignetes) Bandalphabet für 1-Band Turingmaschine (Γ × {− , ∗} ) k , wobei Γ das Bandalphabet der k-Band Turingmaschine ist:

x 1 x 2

x k . . . . .

.

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

Info IV 1.1 Turing-Berechenbarkeit 184/217

c

Ernst W. Mayr

(26)

Satz 109

Jede k-Band-Turingmaschine kann effektiv durch eine 1-Band-TM simuliert werden.

Beweis:

Wir simulieren die k B¨ ander auf k Spuren eines Bandes, wobei wir das Teilalphabet f¨ ur jede Spur auch noch so erweitern, dass die Kopfposition des simulierten Bandes mit gespeichert werden kann.

Info IV 1.1 Turing-Berechenbarkeit 185/217

c

Ernst W. Mayr

(27)

Definition 110

Eine Sprache A ⊆ Σ heißt rekursiv oder entscheidbar, falls es eine deterministische TM M gibt, die auf allen Eingaben ∈ Σ h¨ alt und A erkennt.

Definition 111

Eine Sprache A ⊆ Σ heißt rekursiv aufz¨ ahlbar (r.a.) oder semi-entscheidbar, falls es eine TM N gibt, f¨ ur die

L(N) = A , also, falls A Chomsky-0 ist.

Info IV 1.1 Turing-Berechenbarkeit 186/217

c

Ernst W. Mayr

(28)

Definition 112

Sei A ⊆ Σ . Die charakteristische Funktion χ A von A ist χ A (w) =

( 1 falls w ∈ A 0 sonst

Definition 113

Sei A ⊆ Σ . χ 0 A ist definiert durch χ 0 A (w) =

( 1 falls w ∈ A

undefiniert sonst

Info IV 1.1 Turing-Berechenbarkeit 187/217

c

Ernst W. Mayr

(29)

Satz 114

A ist rekursiv ⇔ χ A ist berechenbar.

Beweis:

Folgt aus der Definition von rekursiv: es gibt eine TM, die ja oder nein liefert. Wandle das Ergebnis in 1 oder 0.

Info IV 1.1 Turing-Berechenbarkeit 188/217

c

Ernst W. Mayr

(30)

Satz 115

A ist rekursiv aufz¨ ahlbar ⇔ χ 0 A ist berechenbar.

Beweis:

Folgt unmittelbar aus der Definition.

Satz 116

A ist rekursiv ⇔ χ 0 A und χ 0 A ¯ sind berechenbar (⇔ A und A ¯ sind r.a.)

Beweis:

Nur ⇐ ist nichttrivial. Wir lassen hier eine TM f¨ ur A und eine TM f¨ ur A ¯ Schritt f¨ ur Schritt parallel laufen.

Info IV 1.1 Turing-Berechenbarkeit 189/217

c

Ernst W. Mayr

Referenzen

ÄHNLICHE DOKUMENTE

Exercise 9 Regular expressions for regular languages (8 points) Give a (non-deterministic) finite automaton for each of the following languages over the alphabet Σ = {a, b, c},

Bitte werfen Sie Ihre Abgabe in den mit Automaten und formale Sprachen beschrifteten Briefkasten neben Raum lf , oder geben Sie sie online ab ¨ uber die moodle-Plattform. Wenn

Put your solutions in the letterbox labeled Automaten und formale Sprachen adja- cent to room lf , or hand them in through the online moodle -platform. If you hand in online,

1) Geben Sie f¨ ur jedes der W¨ orter a, c und abc jeweils ein weiteres Wort an, das zu dem jeweiligen Wort ¨ aquivalent ist. Geben Sie außerdem ein Wort an, dass zu keinem der..

Put your solutions in the letterbox labeled Automaten und formale Sprachen adjacent to room lf , or hand them in through the online moodle -platform. If you hand in online,

Bitte werfen Sie Ihre Abgabe in den mit Automaten und formale Sprachen beschrifteten Briefkasten neben Raum lf , oder geben Sie sie online ab ¨ uber die moodle-Plattform.. Wenn

Ein ableitbares Wort kann verschiedene Ableitungen haben, die nicht durch einen Strukturbaum dargestellt werden k¨onnen.. Punkt 2 kann Schwierigkeiten bereiten, wenn einem

Eine kontextfreie Grammatik ist genau dann eindeutig, wenn jedes durch die Grammatik erzeugte Wort genau eine Linksableitung (bzw...