Beweis: Nach dem Pumping-Lemma für kontextfreie Sprachen ist

Ähnliche Dokumente
Theorie der Informatik

11.1 Kontextsensitive und allgemeine Grammatiken

2.4 Kontextsensitive und Typ 0-Sprachen

Deterministische und nichtdeterministische Turing-Maschinen, Typ1- und Typ0-Sprachen

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

8. Turingmaschinen und kontextsensitive Sprachen

Turingmaschinen Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: Komplexitätstheorie und effiziente Algorithmen

Deterministischer Kellerautomat (DPDA)

Theoretische Informatik 2

Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit. Zugangsnummer: 9201

Kontextfreie Sprachen

Kontextfreie Sprachen

Theoretische Informatik II

Typ-1-Sprachen. Satz 1 (Kuroda ( ) 1964)

Theoretische Informatik Mitschrift

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14

Rekursiv aufzählbare Sprachen

Berechenbarkeit. Script, Kapitel 2

4.2 Varianten der Turingmaschine. 4 Turingmaschinen

Formale Sprachen und Automaten

Die mathematische Seite

Einführung in die Theoretische Informatik

Turing-Maschinen. Definition 1. Eine deterministische Turing-Maschine (kurz DTM) ist ein 6- Dem endlichen Alphabet Σ von Eingabesymbolen.

Turing: prinzipielle Berechenbarkeit Abschnitt 4.2. Turingmaschinen: DTM Abschnitt 4.2. DTM: Akzeptieren und Entscheiden Abschnitt 4.

Reguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer,

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

Worterkennung in Texten speziell im Compilerbau 20. April Frank Heitmann 2/64

Formale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23

1.5 Turing-Berechenbarkeit

Theorie der Informatik

WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven

Grundlagen Theoretischer Informatik 2 WiSe 2011/12 in Trier. Henning Fernau Universität Trier

Theoretische Informatik Testvorbereitung Moritz Resl

Endliche Automaten. δ : Z Σ Z die Überführungsfunktion, z 0 Z der Startzustand und F Z die Menge der Endzustände (Finalzustände).

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

Turing Maschine. Thorsten Timmer. SS 2005 Proseminar Beschreibungskomplexität bei Prof. D. Wotschke. Turing Maschine SS 2005 p.

Formale Sprachen. Script, Kapitel 4. Grammatiken

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2011

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18

Vorlesung im Sommersemester Informatik IV. Probeklausurtermin: 21. Juni 2016

Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie

c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}}

Theoretische Grundlagen der Informatik

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Andererseits ist L kontextfrei, wie die einfache kontextfreie Grammatik G = ({a, b},{s}, S, P) mit den Regeln

FORMALE SYSTEME. 3. Vorlesung: Endliche Automaten. TU Dresden, 17. Oktober Markus Krötzsch

5.2 Endliche Automaten

Theoretische Informatik 1

2.2 Reguläre Sprachen Endliche Automaten

Proseminar Komplexitätstheorie P versus NP Wintersemester 2006/07. Nichtdeterministische Turingmaschinen und NP

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat

Grundlagen der Theoretischen Informatik

Das Postsche Korrespondenzproblem

Ausgewählte unentscheidbare Sprachen

Turingautomaten Jörg Roth Turingautomaten

Formalismen für REG. Formale Grundlagen der Informatik 1 Kapitel 7 Kontextfreie Sprachen. Das Pumping Lemma. Abschlusseigenschaften

Umformung NTM DTM. Charakterisierung rek. aufz. Spr. Chomsky-3-Grammatiken (T5.3) Chomsky-0-Grammatik Rek. Aufz.

Teil V. Weiterführende Themen, Teil 1: Kontextsensitive Sprachen und die Chomsky-Hierarchie

Einige Beispiele zur Turingmaschine

Theoretische Informatik. Grammatiken. Grammatiken. Grammatiken. Rainer Schrader. 9. Juli 2009

Automaten und formale Sprachen Klausurvorbereitung

Weitere universelle Berechnungsmodelle

mehreren Präzisierungen des intuitiven Begriffs des Verfahren sein muss, so legt sich nahe, dass er Der Begriff der TURING-Maschine ist eine unter

Informales Beispiel. Formale Grundlagen der Informatik 1 Kapitel 6 Eigenschaften kontextfreier Sprachen. Grammatiken. Anmerkungen

Zusammenfassung Grundzüge der Informatik 4

Abschluss gegen Substitution. Wiederholung. Beispiel. Abschluss gegen Substitution

Klassische Informationstheorie: Berechenbarkeit und Komplexität

Fragen 1. Muss eine DTM ein Wort zu Ende gelesen haben, um es zu akzeptieren? a) Ja! b) Nein!

Sprachen und Automaten. Tino Hempel

a n b n c n ist kontextsensitiv kontextfreie Sprachen (Typ 2) Abschnitt 3.3 kontextfreie Sprachen: Abschlusseigenschaften Chomsky NF und binäre Bäume

q 0 q gdw. nicht (q A) (q A) q i+1 q gdw. q i q oder ( a Σ) δ(q, a) i δ(q, a) L = {a n b n : n N} für a, b Σ, a b

Lösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004

Vorlesung Theoretische Informatik

Aufgabentypen: Spickerblatt: kontextfrei (Typ 2): zusätzlich: u ist eine!"# v 1

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung

Automatentheorie und formale Sprachen

Theoretische Grundlagen der Informatik

Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit. Zugangsnummer: 3288

Zeitkomplexität (1) Proseminar Theoretische Informatik. Proseminar Theoretische Informatik: Lisa Dohrmann 1

Chomsky-Grammatiken 16. Chomsky-Grammatiken

Formale Sprachen und endliche Automaten

Kontextfreie Grammatiken

Turing-Maschine. Berechenbarkeit und Komplexität Turing-Maschinen. Turing-Maschine. Beispiel

2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:

Technische Universität München Sommer 2016 Prof. J. Esparza / Dr. M. Luttenberger, S. Sickert 27. Juni HA-Lösung. TA-Lösung

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:

Musterlösung Informatik-III-Klausur

Falls H die Eingabe verwirft, so wissen wir, dass M bei Eingabe w nicht hält. M hält im verwerfenden Haltezustand. Beweis:

Endliche Sprachen. Folgerung: Alle endlichen Sprachen sind regulär. Beweis: Sei L={w 1,,w n } Σ*. Dann ist w 1 +L+w n ein regulärer Ausdruck für

Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive

Das Rechenmodell namens. Turing-Maschine. Hans U. Simon (RUB) Homepage:

Sprachen/Grammatiken eine Wiederholung

Kontextsensitive und Typ 0 Sprachen

Grundlagen der Theoretischen Informatik

Grammatiken. Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V. Startsymbol S V. Kurzschreibweise G = (V, Σ, P, S)

FORMALE SYSTEME. 10. Vorlesung: Grenzen regulärer Sprachen / Probleme für Automaten. TU Dresden, 14. November 2016.

Grundlagen der Theoretischen Informatik

Beispiel: NTM. M = ({q 0,q 1,q 2 }, {0, 1}, {0, 1, #},δ, q 0, #, {q 2 }) q 2

Was bisher geschah Alphabet, Wort, Sprache

Transkript:

CF versus CS Theorem CF ist echt in CS enthalten. Beweis: Nach dem Pumping-Lemma für kontextfreie Sprachen ist L = {a m b m c m m 1} nicht kontextfrei. Andererseits ist L kontextsensitiv, wie die Grammatik aus einem früheren Beispiel zeigt. Somit ist L CS CF, also CF CS. Ziel: Automatenmodelle für CS und für L 0. J. Rothe (HHU Düsseldorf) Informatik IV 1 / 36

Turingmaschinen Turingmaschinen Ein grundlegendes, einfaches, abstraktes Algorithmenmodell ist die Turingmaschine, die 1936 von Alan Turing (1912 bis 1954) in seiner bahnbrechenden Arbeit On computable numbers, with an application to the Entscheidungsproblem eingeführt wurde. Wir betrachten wieder zwei Berechnungsparadigma: Determinismus und Nichtdeterminismus. Es ist zweckmäßig, zuerst das allgemeinere Modell der nichtdeterministischen Turingmaschine zu beschreiben. Deterministische Turingmaschinen ergeben sich dann sofort als ein Spezialfall. PDAs und somit auch NFAs und DFAs sind spezielle TMs. J. Rothe (HHU Düsseldorf) Informatik IV 2 / 36

Turingmaschinen Turingmaschinen: Modell und Arbeitsweise finite control Eingabeand Kopf I N P U T Arbeitsband Kopf P S S T! H I E R W I R D G E A R B E I T E T Abbildung: Eine Turingmaschine Eine Turingmaschine ist ausgestattet mit: k beidseitig unendlichen Arbeitsbändern, die in Felder unterteilt sind, in denen Buchstaben oder das -Symbol stehen können. Das -Symbol signalisiert ein leeres Feld. J. Rothe (HHU Düsseldorf) Informatik IV 3 / 36

Turingmaschinen Turingmaschinen: Modell und Arbeitsweise Auf den Arbeitsbändern findet die eigentliche Rechnung statt. Zu Beginn einer Rechnung: steht das Eingabewort auf dem Eingabeband, und alle anderen Felder enthalten das -Zeichen. Am Ende der Rechnung erscheint das Ergebnis der Rechnung auf dem Ausgabeband. Auf jedes Band kann je ein Schreib-Lese-Kopf zugreifen. Dieser kann in einem Takt der Maschine den aktuell gelesenen Buchstaben überschreiben und dann eine Bewegung um ein Feld nach rechts oder links ausführen oder aber auf dem aktuellen Feld stehenbleiben. Gleichzeitig kann sich der aktuelle Zustand der Maschine ändern, den sie sich in ihrem inneren Gedächtnis ( finite control ) merkt. J. Rothe (HHU Düsseldorf) Informatik IV 4 / 36

Turingmaschinen Nichtdeterministische Turingmaschine: Syntax Definition Eine (nichtdeterministische) Turingmaschine mit k Bändern (kurz k-band-tm) ist ein 7-Tupel M = (Σ,Γ, Z,δ, z 0,, F), wobei Σ das Eingabe-Alphabet ist, Γ das Arbeitsalphabet mit Σ Γ, Z eine endliche Menge von Zuständen mit Z Γ =, δ : Z Γ k P(Z Γ k {L, R, N} k ) die Überführungsfunktion, z 0 Z der Startzustand, Γ Σ das Blank -Symbol (oder Leerzeichen) und F Z die Menge der Endzustände. J. Rothe (HHU Düsseldorf) Informatik IV 5 / 36

Turingmaschinen Deterministische Turingmaschine: Syntax Definition Der Spezialfall der deterministischen Turingmaschine mit k Bändern ergibt sich, wenn die Überführungsfunktion δ von Z Γ k nach Z Γ k {L, R, N} k abbildet. Bemerkung: Für k = 1 ergibt sich die 1-Band-Turingmaschine (1-Band-TM). Jede k-band-tm kann durch eine 1-Band-Turingmaschine simuliert werden, wobei sich die Rechenzeit höchstens quadriert. Spielt die Effizienz eine Rolle, kann es dennoch sinnvoll sein, mehrere Bänder zu haben. Wir beschränken uns im Folgenden auf 1-Band-Turingmaschinen. J. Rothe (HHU Düsseldorf) Informatik IV 6 / 36

Turingmaschinen Turingmaschine: Arbeitsweise Statt (z, b, x) δ(z, a) mit z, z Z, x {L, R, N}, a, b Γ schreiben wir kurz: (z, a) (z, b, x), oder (wenn es keine Verwechslungen geben kann): za z bx. Dieser Turingbefehl bedeutet: Ist im Zustand z der Kopf auf einem Feld mit aktueller Inschrift a, so wird: a durch b überschrieben, der neue Zustand z angenommen und eine Kopfbewegung gemäß x {L, R, N} ausgeführt (d.h., ein Feld nach Links, ein Feld nach Rechts oder Neutral, also Stehenbleiben). J. Rothe (HHU Düsseldorf) Informatik IV 7 / 36

Turingmaschinen Turingmaschine: Semantik Turingmaschinen kann man sowohl als Akzeptoren auffassen, die Sprachen (also Wortmengen) akzeptieren, als auch zur Berechnung von Funktionen benutzen. In diesem Abschnitt betrachten wir Turingmaschinen als Akzeptoren; die Funktionsberechnung einer Turingmaschine wird später definiert. J. Rothe (HHU Düsseldorf) Informatik IV 8 / 36

Turingmaschinen Turingmaschine: Semantik Definition Eine Konfiguration einer TM M = (Σ,Γ, Z,δ, z 0,, F) ist ein Wort Dabei bedeutet k = αzβ, dass k Γ ZΓ. αβ die aktuelle Bandinschrift ist (also das Wort auf dem bereits vom Kopf besuchten Teil des Bandes), der Kopf auf dem ersten Symbol von β steht und z der aktuelle Zustand von M ist. Auf der MengeK M = Γ ZΓ aller Konfigurationen von M definieren wir eine binäre Relation M wie folgt. Intuitiv gilt k M k für k, k K M genau dann, wenn k aus k durch eine Anwendung von δ hervorgeht. J. Rothe (HHU Düsseldorf) Informatik IV 9 / 36

Turingmaschinen Turingmaschine: Semantik Formal: Für alle α = a 1 a 2 a m und β = b 1 b 2 b n in Γ (m 0, n 1) und für alle z Z sei a 1 a 2 a m z cb 2 b n falls (z, b 1 ) (z, c, N), m 0, n 1 αzβ M a 1 a 2 a m cz b 2 b n falls (z, b 1 ) (z, c, R), m 0, n 2 a 1 a 2 a m 1 z a m cb 2 b n falls (z, b 1 ) (z, c, L), m 1, n 1. Sonderfälle: 1 n = 1 und (z, b 1 ) (z, c, R) (d.h., M läuft nach rechts, trifft auf ): a 1 a 2 a m zb 1 M a 1 a 2 a m cz. 2 m = 0 und (z, b 1 ) (z, c, L) (d.h., M läuft nach links, trifft auf ): zb 1 b 2 b n M z cb 2 b n. J. Rothe (HHU Düsseldorf) Informatik IV 10 / 36

Turingmaschinen Turingmaschine: Semantik Die Startkonfiguration von M bei Eingabe x ist stets z 0 x. Die Endkonfigurationen von M bei Eingabe x haben die Form αzβ mit z F und α,β Γ. M hält an, falls eine Endkonfiguration erreicht wird, oder falls kein Turingbefehl mehr auf die aktuelle Konfiguration von M anwendbar ist. Sei M die reflexive, transitive Hülle von M. Die von der TM M akzeptierte Sprache ist definiert durch L(M) = {x Σ z 0 x M αzβ mit z F und α,β Γ }. J. Rothe (HHU Düsseldorf) Informatik IV 11 / 36

Turingmaschinen Turingmaschine Bemerkung: Da im Falle einer nichtdeterministischen TM jede Konfiguration mehrere Folgekonfigurationen haben kann, ergibt sich ein Berechnungsbaum, dessen Wurzel die Startkonfiguration und dessen Blätter die Endkonfigurationen sind. Die Knoten des Berechnungsbaums von M(x) sind die Konfigurationen von M bei Eingabe x. Für zwei Konfigurationen k und k aus K M gibt es genau dann eine gerichtete Kante von k nach k, wenn gilt: k M k. J. Rothe (HHU Düsseldorf) Informatik IV 12 / 36

Turingmaschinen Turingmaschine Ein Pfad im Berechnungsbaum von M(x) ist eine Folge k 0 M k 1 M M k t M von Konfigurationen, also eine Rechnung von M(x). Der Berechnungsbaum einer nichtdeterministischen TM (NTM) kann unendliche Pfade haben. Im Falle einer deterministischen TM (DTM) wird jede Konfiguration außer der Startkonfiguration eindeutig (deterministisch) durch ihre Vorgängerkonfiguration bestimmt. Der Berechnungsbaum einer DTM entartet zu einer linearen Kette von der Startkonfiguration zu einer Endkonfiguration, falls die Maschine bei dieser Eingabe hält; andernfalls geht die Kette ins Unendliche. J. Rothe (HHU Düsseldorf) Informatik IV 13 / 36

Turingmaschinen Turingmaschine: Beispiel Beispiel: Betrachte die Sprache L = {a n b n c n n 1}. Eine Turingmaschine, die L akzeptiert, ist definiert durch M = ({a, b, c},{a, b, c,$, },{z 0, z 1,...,z 6 },δ, z 0,,{z 6 }) (z 0, a) (z 1,$, R) (z 2,$) (z 2,$, R) (z 5, c) (z 5, c, L) (z 1, a) (z 1, a, R) (z 3, c) (z 3, c, R) (z 5,$) (z 5,$, L) (z 1, b) (z 2,$, R) (z 3, ) (z 4,, L) (z 5, b) (z 5, b, L) (z 1,$) (z 1,$, R) (z 4,$) (z 4,$, L) (z 5, a) (z 5, a, L) (z 2, b) (z 2, b, R) (z 4, ) (z 6,, R) (z 5, ) (z 0,, R) (z 2, c) (z 3,$, R) (z 4, c) (z 5, c, L) (z 0,$) (z 0,$, R) Tabelle: Liste δ der Turingbefehle von M für die Sprache L = {a n b n c n n 1} J. Rothe (HHU Düsseldorf) Informatik IV 14 / 36

Turingmaschinen Turingmaschine: Beispiel Die folgende Tabelle gibt die Bedeutung der einzelnen Zustände von M sowie die mit den einzelnen Zuständen verbundene Absicht an: Z Bedeutung Absicht z 0 Anfangszustand neuer Zyklus z 1 ein a gemerkt nächstes b suchen z 2 je ein a, b gemerkt nächstes c suchen z 3 je ein a, b, c getilgt rechten Rand suchen z 4 rechter Rand erreicht Zurücklaufen und Test, ob alle a, b, c getilgt z 5 Test nicht erfolgreich Zurücklaufen zum linken Rand und neuer Zyklus z 6 Test erfolgreich Akzeptieren Tabelle: Interpretation der Zustände von M J. Rothe (HHU Düsseldorf) Informatik IV 15 / 36

Turingmaschinen Turingmaschine: Beispiel Die (deterministische) Konfigurationenfolge von M bei Eingabe von aabbcc ist: z 0 aabbcc M $z 1 abbcc M $az 1 bbcc M $a$z 2 bcc M $a$bz 2 cc $a$b$z 3 c M $a$b$cz 3 M $a$b$z 4 c M $a$bz 5 $c M $z 5 a$b$c M z 5 $a$b$c M z 5 $a$b$c M z 0 $a$b$c M $z 0 a$b$c $$z 1 $b$c M $$$z 1 b$c M $$$$z 2 $c M $$$$$z 2 c M $$$$$$z 3 $$$$$z 4 $ M M z 4 $$$$$$ M z 4 $$$$$$ M z 6 $$$$$$ (Akzeptieren) J. Rothe (HHU Düsseldorf) Informatik IV 16 / 36

Linear beschränkte Automaten Linear beschränkte Automaten Linear beschränkte Automaten sind spezielle Turingmaschinen, die nie den Bereich des Bandes verlassen, auf dem die Eingabe steht. Dazu ist es zweckmäßig, den rechten Rand der Eingabe wie folgt zu markieren (auf dem linken Rand steht der Kopf zu Beginn der Berechnung sowieso und kann diesen im ersten Takt markieren): 1 Verdoppele das Eingabe-Alphabet Σ zu Σ = Σ {â a Σ}. 2 Repräsentiere die Eingabe a 1 a 2 a n Σ + durch das Wort über Σ. a 1 a 2 a n 1 â n J. Rothe (HHU Düsseldorf) Informatik IV 17 / 36

Linear beschränkte Automaten Linear beschränkte Automaten Definition Eine nichtdeterministische TM M heißt linear beschränkter Automat (kurz LBA), falls für alle Konfigurationen αzβ und für alle Wörter x = a 1 a 2 a n 1 a n Σ + mit z 0 a 1 a 2 a n 1 â n M αzβ gilt: αβ = n, und für x = λ mit z 0 M αzβ gilt: αβ =. Die vom LBA M akzeptierte Sprache ist definiert durch L(M) = a 1a 2 a n 1 a n Σ z 0 a 1 a 2 a n 1 â n M αzβ mit z F und α,β Γ. J. Rothe (HHU Düsseldorf) Informatik IV 18 / 36

Linear beschränkte Automaten LBA versus Typ-1-Grammatik Theorem L CS L = L(M) für einen LBA M. Beweis: ( ) Es sei L eine kontextsensitive Sprache und G = (Σ, N, S, P) eine Typ-1-Grammatik mit L(G) = L. Wir beschreiben den gesuchten LBA M für L informal wie folgt. J. Rothe (HHU Düsseldorf) Informatik IV 19 / 36

Linear beschränkte Automaten LBA versus Typ-1-Grammatik 1 Eingabe x = a 1 a 2 a n. 2 Wähle nichtdeterministisch eine Regel u v aus P und suche eine beliebiges Vorkommen von v in der aktuellen Bandinschrift von M. 3 Ersetze v durch u. Ist dabei u < v, so verschiebe entsprechend alle Symbole rechts der Lücke, um diese zu schließen. 4 Ist die aktuelle Bandinschrift nur noch das Startsymbol S, so halte im Endzustand und akzeptiere; andernfalls gehe zu (2) und wiederhole. J. Rothe (HHU Düsseldorf) Informatik IV 20 / 36

Linear beschränkte Automaten LBA versus Typ-1-Grammatik Die so konstruierte Turingmaschine M ist ein LBA, weil alle Regeln in P nichtverkürzend sind. Es gilt: x L(G) es gibt eine Ableitung S G x es gibt eine Rechnung von M, die diese Ableitung in umgekehrter Reihenfolge simuliert x L(M). J. Rothe (HHU Düsseldorf) Informatik IV 21 / 36

Linear beschränkte Automaten LBA versus Typ-1-Grammatik ( ) Sei M = (Σ,Γ, Z,δ, z 0,, F) ein LBA mit L(M) = L. Ist x die Eingabe und ist k K M = Γ ZΓ eine Konfiguration mit z 0 x M k, so müssen wir sichern, dass gilt: k x. Um Konfigurationen durch Wörter der Länge x darzustellen, verwenden wir für die zu konstruierende Typ-1-Grammatik G das Alphabet = Γ (Z Γ). J. Rothe (HHU Düsseldorf) Informatik IV 22 / 36

Linear beschränkte Automaten LBA versus Typ-1-Grammatik Beispielsweise hat die Konfiguration k = azbcd mit z Z und a, b, c, d Γ über dem Alphabet die Darstellung k = a(z, b)cd und somit die Länge 4 = abcd. a b c d Zustand z Abbildung: Darstellung von Konfigurationen durch Wörter. J. Rothe (HHU Düsseldorf) Informatik IV 23 / 36

Linear beschränkte Automaten LBA versus Typ-1-Grammatik Einen δ-übergang von M wie etwa (z, a) (z, b, L) kann man durch nichtverkürzende Regeln der Form für alle c Γ beschreiben. c(z, a) (z, c)b Die Menge aller solcher Regeln der Grammatik heiße P. Es gilt für alle k 1, k 2 K M : k 1 M k 2 k 1 G k 2 wobei k i, i {1, 2}, die obige Darstellung der Konfiguration k i bezeichnet und G die Grammatik mit Regelmenge P ist. J. Rothe (HHU Düsseldorf) Informatik IV 24 / 36

Linear beschränkte Automaten LBA versus Typ-1-Grammatik N Definiere G = (Σ, N, S, P) so = {S, A} ( Σ); P = {S A(â, a) a Σ} (1) {A A(a, a) a Σ} (2) {A ((z 0, a), a) a Σ} (3) (α 1, a)(α 2, b) (β 1, a)(β 2, b) α 1α 2 β 1 β 2 P für a, b Σ (4) {((z, a), b) b z F, a Γ, b Σ} (5) {(a, b) b a Γ, b Σ}. (6) Offenbar ist G eine Typ-1-Grammatik. J. Rothe (HHU Düsseldorf) Informatik IV 25 / 36

Linear beschränkte Automaten LBA versus Typ-1-Grammatik Die Idee hinter dieser Konstruktion von G ist die folgende: Die Regeln (1), (2) und (3) ermöglichen Ableitungen der Form Dabei ist S G ((z 0, a 1 ), a 1 )(a 2, a 2 ) (a n 1, a n 1 )(â n, a n ). ((z 0, a 1 ), a 1 )(a 2, a 2 )...(a n 1, a n 1 )(â n, a n ) ein Wort mit n Buchstaben über dem Alphabet Σ N. Jeder Buchstabe ist ein Paar. Dabei stellen die ersten Komponenten die Startkonfiguration dar: z 0 a 1 a 2 a n 1 â n = (z 0, a 1 )a 2 a n 1 â n und die zweiten Komponenten das Eingabewort x = a 1 a 2 a n 1 a n. J. Rothe (HHU Düsseldorf) Informatik IV 26 / 36

Linear beschränkte Automaten LBA versus Typ-1-Grammatik Mit den Regeln der Form (4) simuliert G dann die Rechnung von M bei Eingabe x = a 1 a 2 a n 1 a n, wobei die Regeln aus P auf die ersten Komponenten der Paare angewandt werden und die zweiten Komponenten unverändert bleiben. Die Simulation der Rechnung von M(x) ist beendet, sobald eine Endkonfiguration erreicht ist. Regeln der Form (5) und (6) löschen schließlich die ersten Komponenten der Paare weg. Übrig bleiben die zweiten Komponenten, also das akzeptierte Eingabewort x. Wird nie eine Endkonfiguration von M(x) erreicht, so kommen die Löschregeln (5) der Grammatik G nie zur Anwendung. J. Rothe (HHU Düsseldorf) Informatik IV 27 / 36

Linear beschränkte Automaten LBA versus Typ-1-Grammatik Zusammengefasst folgt aus der obigen Idee formal die Äquivalenzenkette: x L(M) S G ((z 0, a 1 ), a 1 )(a 2, a 2 ) (a n 1, a n 1 )(â n, a n ) mit (1), (2) und (3) G (γ 1, a 1 )...(γ k 1, a k 1 )((z,γ k ), a k )(γ k+1, a k+1 ) (γ n, a n ) G a 1a 2 a n = x x L(G), mit (4), wobei z F, γ i Γ, a i Σ mit (5) und (6) womit der Satz bewiesen ist. J. Rothe (HHU Düsseldorf) Informatik IV 28 / 36

Linear beschränkte Automaten TM versus Typ-0-Grammatik Theorem L L 0 L = L(M) für eine Turingmaschine M. Beweis: ( ) Wie im ersten Teil des Beweises des Satzes oben. Da G nun nicht nur nichtverkürzende Regeln enthält, erhält man i. A. keinen LBA, sondern eine TM. J. Rothe (HHU Düsseldorf) Informatik IV 29 / 36

Linear beschränkte Automaten TM versus Typ-0-Grammatik ( ) Man kann die gleiche Konstruktion wie im zweiten Teil des Beweises des Satzes oben verwenden. Da eine TM keine lineare Beschränkung auf dem Band hat, können in Regeln vom Typ (4) Konfigurationen k mit k > x aufgebaut werden. Solche Konfigurationen entsprechen Wörtern in G, die Nichtterminale der Form (α, a) mit a = λ enthalten. Um solche Nichtterminale wieder zu löschen, müssen diese durch λ ersetzt werden, d.h., es werden verkürzende Regeln benötigt. Somit erhalten wir i. A. keine kontextsensitive, sondern eine Grammatik vom Typ 0. J. Rothe (HHU Düsseldorf) Informatik IV 30 / 36

Linear beschränkte Automaten TM versus Typ-0-Grammatik Bemerkung: Im Satz oben ist es dabei gleichgültig, ob die TM M deterministisch oder nichtdeterministisch ist. Da man jede nichtdeterministische TM durch deterministische TMs simulieren kann, folgt L 0 = {L(M) M ist eine deterministische TM} = {L(M) M ist eine nichtdeterministische TM}. Im Gegensatz dazu ist es im Satz über LBA versus CS wesentlich, dass der LBA M eine nichtdeterministische TM ist. J. Rothe (HHU Düsseldorf) Informatik IV 31 / 36

Linear beschränkte Automaten Erstes und zweites LBA-Problem Bemerkung: Bis heute offen ist das Erste LBA-Problem: Sind deterministische und nichtdeterministische LBAs äquivalent? Hingegen ist das ebenfalls 1964 von Kuroda gestellte Zweite LBA-Problem: Ist die Klasse der durch nichtdeterministische LBAs akzeptierbaren Sprachen komplementabgeschlossen? inzwischen gelöst worden, und zwar unabhängig und etwa zeitgleich 1988 von Neil Immerman und Robert Szelepcsényi. J. Rothe (HHU Düsseldorf) Informatik IV 32 / 36

Zusammenfassung Charakterisierungen durch Automaten reguläre Grammatik Typ 3 deterministischer endlicher Automat (DFA) nichtdeterministischer endlicher Automat (NFA) regulärer Ausdruck deterministisch LR(1)-Grammatik kontextfrei deterministischer Kellerautomat (DPDA) Typ 2 kontextfreie Grammatik Kellerautomat (PDA) Typ 1 kontextsensitive Grammatik linear beschränkter Automat (LBA) Typ 0 Typ-0-Grammatik Turingmaschine (NTM bzw. DTM) J. Rothe (HHU Düsseldorf) Informatik IV 33 / 36

Zusammenfassung Determinismus vs. Nichtdeterminismus Deterministischer Nichtdeterministischer äquivalent? Automat Automat DFA NFA ja DPDA PDA nein DLBA LBA? DTM NTM ja J. Rothe (HHU Düsseldorf) Informatik IV 34 / 36

Zusammenfassung Abschlusseigenschaften Typ 3 det. kf. Typ 2 Typ 1 Typ 0 Schnitt ja nein nein ja ja Vereinigung ja nein ja ja ja Komplement ja ja nein ja nein Konkatenation ja nein ja ja ja Iteration ja nein ja ja ja Spiegelung ja nein ja ja ja J. Rothe (HHU Düsseldorf) Informatik IV 35 / 36

Zusammenfassung Komplexität des Wortproblems Definition (Wortproblem) Für i {0, 1, 2, 3} definieren wir das Wortproblem für Typ-i-Grammatiken wie folgt: Wort i = {(G, x) G ist Typ-i-Grammatik und x L(G)} Typ 3 (DFA gegeben) det. kf. Typ 2 (CNF gegeben) Typ 1 Typ 0 lineare Komplexität lineare Komplexität Komplexität O(n 3 ) (CYK-Algorithmus) exponentielle Komplexität unentscheidbar (d.h. algorithmisch nicht lösbar) J. Rothe (HHU Düsseldorf) Informatik IV 36 / 36