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

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

Ogden s Lemma: Der Beweis (1/5)

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

Informatik III - WS07/08

Übersicht. 3 3 Kontextfreie Sprachen

Kontextfreie Sprachen

Informatik III. Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung

Theorie der Informatik

Kontextfreie Sprachen

Grundlagen der Theoretischen Informatik

Kontextfreie Sprachen werden von PDAs akzeptiert

Informatik III. Arne Vater Wintersemester 2006/ Vorlesung

11.1 Kontextsensitive und allgemeine Grammatiken

Einführung in die Computerlinguistik

Ein Satz der deutschen Sprache besitzt ein Subjekt, ein Prädikat und ein Objekt (SPO).

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

Grundlagen der Theoretischen Informatik

Definition 98 Eine Turingmaschine heißt linear beschränkt (kurz: LBA), falls für alle q Q gilt:

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

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

Theoretische Grundlagen der Informatik

Spracherkennung (Syntaxanalyse)

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

10 Kellerautomaten. Kellerautomaten

Dank. Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Erzeugende Grammatiken akzeptierende Automaten.

Rekursiv aufzählbare Sprachen

Informatik III. Christian Schindelhauer Wintersemester 2006/07 7. Vorlesung

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

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

Typ-0-Sprachen und Turingmaschinen

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung

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

Grundlagen der Theoretischen Informatik

Automaten und formale Sprachen Klausurvorbereitung

Das Halteproblem für Turingmaschinen

8. Turingmaschinen und kontextsensitive Sprachen

ADS-EI 5.2 Struktur einer Turing-Maschine 120/451 ľernst W. Mayr

{a i b i i 0} FORMALE SYSTEME. Kellerautomaten. (Nicht)Abschlusseigenschaften für Typ 2. Ein Berechnungsmodell für Typ-2-Sprachen

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

Grundlagen der Theoretischen Informatik

Beweisidee: 1 Verwende den Keller zur Simulation der Grammatik. Leite ein Wort. 2 Problem: der Keller darf nicht beliebig verwendet werden, man kann

2.4 Kontextsensitive und Typ 0-Sprachen

Kontextsensitive und Typ 0 Sprachen Slide 2. Die Turingmaschine

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

a b b a a b b a Dank Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Chart-Parsing Chart-Parsing Vorlesung

Sprachen und Grammatiken

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

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

Theoretische Grundlagen der Informatik

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

Grundlagen der Theoretischen Informatik

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

Musterlösung Informatik-III-Nachklausur

Einführung in die Theoretische Informatik I/ Grundlagen der Theoretischen Informatik. SS 2007 Jun.-Prof. Dr. Bernhard Beckert Ulrich Koch

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

Definition 78 Ein NPDA = PDA (= Nichtdeterministischer Pushdown-Automat) besteht aus:

Automaten und formale Sprachen Notizen zu den Folien

Zusammenfassung. Endliche Sprachen. Fazit zu endlichen Automaten. Teil 4: Grammatiken und Syntaxanalyse

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012

Theoretische Grundlagen der Informatik. Vorlesung am 8. Januar INSTITUT FÜR THEORETISCHE INFORMATIK

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben

Proseminar TI: Kellerautomaten. 1 Motivation. 2 Einführung. Vortrag: Von Sebastian Oltmanns und Dorian Wachsmann. Dozent: Wolfgang Mulzer.

Informatik 3 Theoretische Informatik WS 2015/16

F2 Zusammenfassung Letzte Tips zur Klausur

Einführung in Berechenbarkeit, Komplexität und formale Sprachen

Übungsblatt 7. Vorlesung Theoretische Grundlagen der Informatik im WS 18/19

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012

Grundlagen der Theoretischen Informatik

Kapitel 3. Kontextfreie Sprachen. Induktive Charakterisierung der Sprache L der korrekten Klammerausdrücke: (w) L, falls w L vw L, falls v, w L

Deterministischer Kellerautomat (DPDA)

Theorie der Informatik

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

2. Klausur zur Vorlesung Informatik III Wintersemester 2004/2005

kontextfreie Sprachen: Normalformen

1 Endliche Automaten. 1.1 Endliche Automaten mit Ausgabe. X nichtleere endliche Menge von Symbolen (Eingabealphabet)

5.7 Kontextfreie Grammatiken und Kellerautomaten

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

2. Teilklausur zur Vorlesung Grundlagen der Theoretischen Informatik

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

Grundlagen der Theoretischen Informatik

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

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

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

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

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

Kapitel 3: Kontextfreie Sprachen. Kontextfreie Sprachen 1 / 99

Kontextfreie Sprachen. Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester Kontextfreie Sprachen

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

2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2017/2018

Hochschule Bonn-Rhein-Sieg University of Applied Sciences Grantham-Allee Sankt Augustin

(z', B 1...B k ) δ(z,a,a):

Einfache Turing Maschine. Formale Spezifikation einer einfachen Turing Maschine. M = (Σ,Γ,#,Q,s,F, ) Σ

Unentscheidbarkeit von Problemen mittels Turingmaschinen

Formale Sprachen und Automaten

Theoretische Informatik 1

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

Transkript:

Kap 3: Grammatiken Chomsky-Hierarchie 32 Kap 3: Grammatiken Kontextfreie 33 a n b n c n ist kontextsensiti Beispiel 3111 modifizieren: Σ = {a, b, c G = (Σ, V, P, X ) V = {X, Y, Z P : X ε X axyz ZY YZ ay ab by bb bz bc cz cc a n b n c n kontextsensiti G = (Σ, V, P, S) V = {S, X, Y, Z P : S X ε X axyz ayz ZY YZ ay ab by bb bz bc cz cc kontextfreie Sprachen (Typ 2) Abschnitt 33 wichtige nächste Stufe nach regulär zulässige Produktionen bei Typ 2, ε L: Verschärfung: Chomsky-Normalform: Satz: jede Typ 2 Grammatik ohne ε-produktionen ist äquialent zu Chomsky NF Grammatik X, ε X YZ und X a Beweisidee zur Transformation in Chomsky NF (Satz 332): ersetze a auf rechten Seiten durch neues Z a neue Produktionen Z a a eliminiere X Y Produktionen (durch shortcuts) eliminiere X Y 1 Y k Produktionen für k > 2 erzeugen beide die Sprache L = {a n b n c n : n N G ist kontextsensiti (nur harmlose ε-produktion!) FGdI I Sommer 2011 MOtto und MZiegler 97/139 FGdI I Sommer 2011 MOtto und MZiegler 98/139 Kap 3: Grammatiken Kontextfreie 33 Chomsky NF und binäre Bäume Ableitungsschritt X YZ binäre Verzweigung X a keine Verzweigung Y X Y Z a Z a a Lemma 333 Ableitungsbaum mit inneren Knoten für X in X YZ Anwendungen in Chomsky NF Grammatik G: w L(G) hat Ableitung der Länge 2 w 1 Beweise indukti über Länge l der Ableitung on w (V Σ) + w V + 2 w Σ = l + 1 FGdI I Sommer 2011 MOtto und MZiegler 99/139 Kap 3: Grammatiken Kontextfreie 33 kontextfreie Sprachen: Abschlusseigenschaften Abschluss unter Vereinigung, Konkatenation, Stern Zu gegebenen Typ 2 Grammatiken für L 1, L 2, L finde explizit Typ 2 Grammatiken für L 1 L 2, für L 1 L 2, bzw für L (Satz 337) zb: seien G (i) = (Σ, V (i), P (i), S (i) ) kontextfrei, V (1) V (2) = G = (Σ, V, P, S) mit L(G) = L(G (1) ) L(G (2) ): V := V (1) V (2) {S S neu P := {S S (1) S (2) P (1) P (2) Bsp: L 1 = {a n b n : n N {c, L 2 = {a {b m c m : m N kontextfrei, nicht jedoch L 1 L 2 = {a n b n c n : n N (später) Kein Abschluss unter Durchschnitt/Komplement: L 1 L 2 = L 1 L 2 FGdI I Sommer 2011 MOtto und MZiegler 100/139

Kap 3: Grammatiken Kontextfreie 33 noch ein Pumping Lemma Abschnitt 333 L Σ kontextfrei existiert n N sodass sich jedes x L mit x n zerlegen lässt in x = yuwz, uw ε, uw n, und für alle m N y u m w m z = y u {{ u w {{ w z L X m mal m mal Beweis (Satz 338): L = L(G), G in Chomsky NF, n := 2 V Für x L(G), x n, hat jeder Ableitungsbaum zwei geschachtelte X Vorkommen desselben X Finde uw wie in Skizze Beispiel: {a n b n c n : n N nicht kontextfrei {{ w {{ {{ u {{ FGdI I Sommer 2011 MOtto und MZiegler 101/139 Kap 3: Grammatiken CYK 334 Erinnerung: Wortprobleme als Entscheidungsprobleme Wortproblem zu L Σ : Lösung durch Algorithmus A mit w A Eingabe: w Σ Entscheide, ob w L { ja falls w L akzeptieren nein falls w L erwerfen definite Entscheidung im Gegensatz zu: Akzeptieren wie bei NFA Erzeugen/Ableiten wie in Grammatik FGdI I Sommer 2011 MOtto und MZiegler 102/139 Kap 3: Grammatiken CYK 334 CYK Algorithmus Abschnitt 334 effizienter Algorithmus für das kontextfreie Wortproblem für G in Chomsky NF (Produktionen X a und X YZ) berechne zu w = a 1 a n systematisch für alle Teilwörter w i,j = a i a j (1 i j n) V (i, j) := {X V : X G w dynamisches i,j Programmieren rekursie Auswertung für i < j: (mit wachsender Länge j i + 1) Kap 3: Grammatiken CYK 334 das Wichtigste aus Kapitel 3 Grammatiken und Erzeugungsprozesse Nieaus der Chomsky-Hierarchie Normalform und Pumping Lemma für kontextfreie Sprachen gdw X G w i,j für ein k mit i k < j und ein X YZ ist Y G w i,k und Z G w k+1,j Cocke, Younger, Kasami CYK Algorithmus: Wortproblem in w 3 Schritten entscheidbar FGdI I Sommer 2011 MOtto und MZiegler 103/139 FGdI I Sommer 2011 MOtto und MZiegler 104/139

Kap 4: Berechnungsmodelle Kapitel 4: Berechnungsmodelle: Turingmaschinen (DTM/NTM) Kellerautomaten (PDA) Endliche Automaten (DFA/NFA) Berechnungsmodelle prinzipielle Fragen: Was lässt sich berechnen? (zb Wortprobleme) qualitati-quantitatie Fragen: Wie schwer ist ein algorithmisches Problem? Komplexitätshierarchien? (zb in Chomsky-Hierarchie) Algorithmus = (Berechnungs-)Verfahren nach Al Chwarismi (Bagdad, um 800), latinisiert zu Algoritmi FGdI I Sommer 2011 MOtto und MZiegler 106/139 Kellerautomaten (PDA) Abschnitt 41 PDA = NFA + Kellerspeicher (stack, push-down storage) Konfiguration jeweils bestimmt durch Zustand Position in der Eingabe Kellerinhalt erlaubte (nichtdeterministische) Übergänge abhängig on Zustand oberstem Kellersymbol nächstem Eingabesymbol Übergang resultiert in Zustandswechsel (optional) Vorrücken in Eingabe pop und push im Keller: Entfernen des obersten Kellersymbols (pop) Einschreiben eines Wortes in Keller (push) FGdI I Sommer 2011 MOtto und MZiegler 107/139 PDA P = ( Σ, Q, q 0,, A, Γ, # ) : Σ Eingabealphabet Q Zustandsmenge Γ Kelleralphabet q 0 Q Anfangszustand # Γ Anfangs-Kellersymbol A Q akzeptierende Zustände endliche Übergangsrelation: Konfigurationen: C = (q,, α) Q Σ Γ : q Q aktueller Zustand, Σ Restabschnitt des Eingabewortes, α Γ aktueller Kellerinhalt Q Γ (Σ {ε) Γ Q Startkonfiguration auf Eingabe w: C 0 [w] = (q 0, w, #) Nachfolgekonfigurationen zu C = (q,, α), α = γ α rest, γ Γ oberstes Kellersymbol, Keller nicht leer: C = (q,, α = x ) mit α für ein (q, γ, x, β, q = β α ) rest FGdI I Sommer 2011 MOtto und MZiegler 108/139

PDA Berechnungen Startkonfiguration auf w = a 1 a n C 0 [w] a 1 a 2 q 0 typische Konfiguration C auf w = a 1 a n {{ γ a 1 a 2 b a C n α rest q FGdI I Sommer 2011 MOtto und MZiegler 109/139 a n # PDA Berechnungen {{ γ a 1 a 2 b a C n α rest q Nachfolgekonfiguration on C zu (q, γ, b, β, q ) { { C a 1 a 2 b a n q Nachfolgekonfiguration on C zu (q, γ, ε, β, q ) { { C a 1 a 2 b a n q β α rest β α rest FGdI I Sommer 2011 MOtto und MZiegler 110/139 PDA Berechnungen (terminierende) Berechnung on P auf Eingabe w Σ : Konfigurationsfolge C 0 C f, wobei C 0 = C 0 [w] = (q 0, w, #), C i+1 eine Nachfolgekonfiguration on C i, 0 i < f, C f Endkonfiguration ohne anwendbare Transition Notation: C 0 [w] P C f akzeptierende Berechnung: C f = (q, ε, ε) mit q A on P akzeptierte Sprache: L(P) = { w Σ P : C 0 [w] (q, ε, ε) für ein q A Beispiel: PDA für Klammersprache P = ( {(, ), Q, q 0,, {q 0, Γ, # ), Q = A = {q, ein Zustand q = q 0 Γ = {, # Transitionen: (q, #, (, #, q) erarbeitet ( und addiert im Keller (q,, (,, q) erarbeitet ( und addiert im Keller (q,, ), ε, q) erarbeitet ) und löscht ein im Keller (q, #, ε, ε, q) ε-transition, die # löscht Idee: Kellerspeicher als Zähler für u ( u ) FGdI I Sommer 2011 MOtto und MZiegler 111/139 FGdI I Sommer 2011 MOtto und MZiegler 112/139

Satz: kontextfrei = PDA-erkennbar Satz 415 Kap 4: Berechnungsmodelle Turingmaschinen 42 Turing: prinzipielle Berechenbarkeit Abschnitt 42 Für L Σ sind äquialent: (i) L kontextfrei (ii) L = L(P) für einen PDA P Beweis (i) (ii): aus L = L(G), G = (Σ, V, P, S) kontextfrei, gewinne PDA P = (Σ, Q, q 0,, A, Γ, #) Q = A = {q, q 0 = q Γ = V Σ, # = S Transitionen: (q, X, ε, α, q) für Produktionen X α on G (q, a, a, ε, q) für jedes a Σ (ii) (i): aus L = L(P), P = (Σ, Q, q 0,, Γ, #), gewinne kontextfreies G = (Σ, V, P, S) Idee: Ableitungsschritte on G Berechnungsschritte on P Alan M Turing (1912 1954) Pionier der modernen Theorie der Berechenbarkeit prinzipielle Grenzen und Möglichkeiten 1936 publiziert: On Computable Numbers mit mathematischer Abstraktion seiner Zuarbeiter (sog computer ) Heutzutage Turingmaschine allgemein akzeptiert als Modell für Digitalrechner (PCs) FGdI I Sommer 2011 MOtto und MZiegler 113/139 FGdI I Sommer 2011 MOtto und MZiegler 114/139 Kap 4: Berechnungsmodelle Turingmaschinen 42 Turingmaschinen: DTM Abschnitt 42 DTM = DFA + unbeschränkter Lese/Schreibzugriff Eingabe-/Arbeitsspeicher: unbeschränkte Folge on Zellen als Band mit Lese/Schreibkopf Konfiguration bestimmt durch Zustand (q Q) Position auf dem Band Bandbeschriftung Übergang in Nachfolgekonfiguration abhängig on Zustand aktuell gelesenem Bandsymbol Übergang resultiert in Zustandswechsel Schreiben Kopfbewegung (<,, >) FGdI I Sommer 2011 MOtto und MZiegler 115/139 Kap 4: Berechnungsmodelle Turingmaschinen 42 DTM M = ( Σ, Q, q 0, δ, q +, q ) Q Zustandsmenge q 0 Q Anfangszustand q + /q Q akzeptierender/erwerfender Endzustand, q q + δ Übergangsfunktion δ : Q (Σ { ) (Σ { ) {<,, > Q Konfigurationen: C = (α, q, x, β) (Σ { ) Q (Σ { ) (Σ { ) α: Bandinhalt links om Kopf x: Bandinhalt in Kopfposition β: Bandinhalt rechts om Kopf q: aktueller Zustand Startkonfiguration auf Eingabe w: C 0 [w] := (ε, q 0,, w) Nachfolgekonfiguration: C C gemäß δ Endkonfigurationen: q {q +, q, akzeptierend/erwerfend FGdI I Sommer 2011 MOtto und MZiegler 116/139

Kap 4: Berechnungsmodelle Aufzählkbarkeit/Entscheidbarkeit 43 DTM: Akzeptieren und Entscheiden Abschnitt 43 on DTM M akzeptierte Sprache L(M) = {w Σ : M akzeptiert w = {w Σ : w M q + Entscheidung (des Wortproblems) on L M entscheidet L falls für alle w Σ : { w M q + für w L q für w L L entscheidbar (rekursi): L on einer DTM entschieden L semi-entscheidbar (rekursi aufzählbar): L on einer DTM akzeptiert definit! Kap 4: Berechnungsmodelle Aufzählkbarkeit/Entscheidbarkeit 43 Beispiel: DTM für Palindrom δ 0 1 q 0 (, >, q? ) q? (,, q + ) (, >, q 0 ) (, >, q 1 ) q 0 (, <, q 0 ) (0, >, q 0 ) (1, >, q 0 ) q 1 (, <, q 1 ) (0, >, q 1 ) (1, >, q 1 ) q 0 (,, q + ) (, <, q ) (,, q ) q 1 (,, q + ) (,, q ) (, <, q ) q (, >, q? ) (0, <, q ) (1, <, q ) intendierte Rolle der Zustände: q 0 : Startzustand q? : Anfang abfragen q 0 : zum Ende, merke 0 q 0 : ergleiche Ende mit 0 q 1 : zum Ende, merke 1 q 1 : ergleiche Ende mit 1 q : zum Anfang q + /q : akzeptiere/erwerfe FGdI I Sommer 2011 MOtto und MZiegler 117/139 FGdI I Sommer 2011 MOtto und MZiegler 118/139 Kap 4: Berechnungsmodelle Aufzählkbarkeit/Entscheidbarkeit 43 Church-Turing These Kap 4: Berechnungsmodelle Aufzählkbarkeit/Entscheidbarkeit 43 einige Väter der Berechenbarkeitstheorie algorithmische Entscheidbarkeit = Turing-Entscheidbarkeit algorithmische Erzeugbarkeit = Turing-Aufzählbarkeit Berechenbarkeit = Turing-Berechenbarkeit Belege: Erfahrung: alle akzeptierten Algorithmen lassen sich im Prinzip mit DTM simulieren Robustheit des TM Modells bewiesene Äquialenz mit ganz unterschiedlichen alternatien Charakterisierungen wichtig: idealisiertes Konzept on prinzipieller Machbarkeit im Ggs zu praktischer Machbarkeit Church (1903 1995) Turing (1912 1954) Gödel (1906 1978) Kleene (1909 1994) FGdI I Sommer 2011 MOtto und MZiegler 119/139 FGdI I Sommer 2011 MOtto und MZiegler 120/139