CFGs und Kellerautomaten

Slides:



Advertisements
Ähnliche Präsentationen
Vorlesung Compilertechnik Sommersemester 2008
Advertisements

Vorlesung Compilertechnik Sommersemester 2008
Kontextfreie Grammatiken
Kellerautomaten und Turingmaschinen
Technische Universität Dortmund
Das LCA – Problem in Suffixbäumen
Gliederung 1. Grundlagen der Bottom-Up-Syntaxanalyse
7. Automaten Ein Automat ist ein Sechstupel A= (I, O, Q, , q0, F).
Suche in Texten (Stringsuche )
Institut für Informatik Abt. Intelligente Systeme
8. Formale Sprachen und Grammatiken
Imperative Programmierung
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Notationen A = ist eine endliche, nichtleere menge,
Grammatiken, Definitionen
Kapitel 4 Syntaktische Analyse: LR Parsing.
Sortierverfahren Richard Göbel.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (06 – Reduktion endlicher Automaten) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (12 – Kellerautomaten, PDA) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (03 – Nichtdeterminierte endliche Automaten) Prof. Dr. Th. Ottmann.
Basisinformationstechnologie I Dozent T.Schaßan Ableitungsbaum Referentin: Munkhnast Dembereldalai.
M a r c – o l i v e r p a h l Informatik II – Kapitel 18 Übersetzung Zusammenfassung des Kapitel 18 Küchlin, Weber, Vorversion Einführung in die Informatik,
Prof. Dr. rer.nat. Ralph Großmann Fakultät Informatik / Mathematik Sommersemester 2012 Internet-Technologien XML-basierte Techniken Teil Metasprache der.
Prolog Grundkurs WS 98/99 Christof Rumpf
Beispiele für Ausdrucksalgebren
High Performance = Innovative Computer Systems + Efficient Algorithms Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen.
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester.
Christian Schindelhauer
Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/ Vorlesung Dominic Dumrauf.
Christian Schindelhauer
Christian Schindelhauer
Christian Schindelhauer
Theoretische Informatik 2
Von der Sprache zum Programm
Grundkurs Theoretische Informatik, Folie 7.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 7 Gottfried Vossen Kurt-Ulrich Witt.
Grenzen der Regularität
Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung
Basisinformationstechnologie HK-Medien
Syntaxanalyse Bottom-Up und LR(0)
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Formale Sprachen Grammatiken und die Chomsky-Hierarchie
1936: On Computable Numbers, with an application to the
Formale Sprachen Reguläre Sprachen Rudolf FREUND, Marian KOGLER.
Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 1: Wiederholung (Vor allem Folien von Priv.-Doz. Dr. Kindler vom WS 2001/02.
Städtisches Gymnasium Beverungen Friedel Berlage
Institut für Softwarewissenschaft – Universität WienP.Brezany 1 Beispiele Beispiel 1 Konstruieren Sie für folgende Sprachen über = { a, b, c.
Beispiele: KFG 2.Teil Beispiel 1: Sei G eine Grammatik mit den folgenden Regeln: S  Ac | Bd A  aAb | ab B  aBbb | abb Definieren Sie.
Noam CHOMSKY, Sheila GREIBACH
Noam CHOMSKY, Sheila GREIBACH
Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 3: Potenzreihen und kontextfreie Sprachen (Vgl. Buch von A. Salomaa)
Automaten und Formale Sprachen VO UE 1
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Arne Vater Wintersemester 2006/07 28.
Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Christian Schindelhauer Wintersemester 2006/07 6. Vorlesung
Christian Schindelhauer Wintersemester 2006/07 2. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Informatik Formale Sprachen 1.2 Grammatiken formaler Sprachen
Agenda Motivation und Einordnung Syntaxgerichtete Übersetzung
Institut für Softwarewissenschaft – Universität WienP.Brezany 1 Beispiele (Frist: ) Beispiel 1: Sei  = {a, b} ein Alphabet und Q = {q 0, q 1 } eine.
7. Formale Sprachen und Grammatiken
Inhalt Einordnung und Funktion der lexikalische Analyse Grundlagen
Grundkurs Theoretische Informatik, Folie 5.1 © 2004 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 5 Gottfried Vossen Kurt-Ulrich Witt.
Grundkurs Theoretische Informatik, Folie 6.1 © 2004 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 6 Gottfried Vossen Kurt-Ulrich Witt.
 Am Ende der letzten Stunde hatten wir über die Grenzen unserer Automaten-Modell gesprochen. Dr. Lars Ettelt2  Tipp: Parkhaus.  Einfahrt erst wenn.
Lookup, accept reduce 1 LR(0) Parser Beispielblatt Grammatik 1. Beginne mit State J 0 und Trage das erste Item aus Produktion 0 ein. Der Punkt des Items.
Tabellengesteuerte Verfahren
Gliederung 0. Motivation und Einordnung 1. Endliche Automaten
Deterministische Kellerautomaten und das Wortproblem
 Präsentation transkript:

CFGs und Kellerautomaten Ralf Möller, TUHH CFGs und Kellerautomaten

DPDAs vs. CFGs Unser Gefühl sagt uns: Deterministische Kellerautomaten sind gut für Parsing-Aufgaben Doch reicht Ihre Ausdrucksstärke … … um alle CFGs zu repräsentieren? … für praktische Anwendungen?

Behauptung Es gibt kontextfreie Sprachen, die nicht deterministisch kontextfrei sind Beweis: Lemma: Für deterministisch-kontextfreie (dk) Sprachen L gilt: Das Komplement L ist auch dk Beweisidee: F und Q-F vertauschen wie bei DFAs Dann argumentieren wir: L = { ai bj ck| i≠j oder j≠k } ist kontextfrei, Wäre L dk, dann wäre auch L dk. Damit wäre L ja auch kontextfrei. L ist aber nicht kontextfrei, denn sonst wäre auch L ∩ {a}*{b}*{c}* = { an bn cn | n ≥ 0 } kontextfrei,was aber nicht der Fall ist.

Top-Down-Parsen bzgl. Grammatik G Lesen eines Wortes aus L(G) unter Herstellung einer Ableitung (insb. eines Ableitungsbaumes) z.B. durch Lesen des Eingabewortes von links nach rechts, unter Erzeugung einer Linksableitung (LL-Parsing) Ableitungsbaum wächst von der Wurzel zu den Blättern (Top-Down-Parsing) Zyklen möglich Bei nicht-eindeutiger Grammatik i.A. sehr aufwendig (Rücksetzen notwendig)

Praktische Einschränkung Anwendung der “richtigen” Produktion richtet sich nur nach dem aktuellen Eingabesymbol und dem obersten Kellersymbol: LL(1)-Parser  Einschränkung der Grammatiken auf sog. LL(1)-Grammatiken, eine echte Teilklasse der CFGs Verallgemeinerung: LL(k)-Grammatiken Parser darf k-nächste Zeichen der Eingabe lesen (Lookahead), um Entscheidung über den nächsten “Zug” zu treffen Ist das Lesen von k Zeichen eine Erweiterung der Kellerautomaten-Idee?

Bottom-Up-Parsing Eingabe von links nach rechts gelesen, aber Erzeugung einer Rechtsableitung Suche nach Vorkommen der rechten Seite von Produktionsregeln Keine Probleme mit Zyklen der Ableitungsbaum entsteht von den Blättern zur Wurzel hin wachsend (bottom-up) LR-Parsing kann als Spezialfall des CYK- Verfahrens angesehen werden

LR-Parser Simulation durch NPDA möglich Ist das Lesen von mehreren Symbolen vom Keller eine Erweiterung des Kellergedankens? Eindeutigmachung durch Vorausschau LR(k)-Parser: Nur k Eingabesymbole dürfen angesehen werden, um zwischen shift und reduce zu unterscheiden Näheres hierzu: Vorlesung Compilerbau

DPDA vs. DCFG: Charakterisierung L ist deterministisch kontextfrei genau dann wenn es eine LR(1)-Grammatik G mit L = L(G) gibt. Hier ohne Beweis

Acknowledgements Einige Teile dieser Präsentation sind aus dem Skript zu “Automaten und formale Sprachen” von Martin Dietzfelbinger, TU Ilmenau übernommen.