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.

Slides:



Advertisements
Ähnliche Präsentationen
8. Termin Teil B: Wiederholung Begriffe Baum
Advertisements

Algorithmen und Datenstrukturen (EI)
Algorithmentheorie 08 – Dynamische Programmierung (1)
Vorlesung Compilertechnik Sommersemester 2008
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (26-Graphenalgorithmen: Wiederholung und Übung) Prof. Th. Ottmann.
Prof. Dr. W. Conen 15. November 2004
7. Natürliche Binärbäume
Suche in Texten (Stringsuche )
Institut für Informatik Abt. Intelligente Systeme
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
8. Formale Sprachen und Grammatiken
Finale Semantik und beobachtbares Verhalten
Imperative Programmierung
Grammatiken, Definitionen
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Grammatiken beschreiben Sprachen L µ *, indem.
Suche in Texten: Suffix-Bäume
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (05 – Reguläre Ausdrücke) Prof. Dr. Th. Ottmann.
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 (04 – Automaten mit ε-Transitionen) Prof. Dr. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Algorithmentheorie 12 – Spannende Bäume minimalen Gewichts
Algorithmen und Datenstrukturen
WS Prof. Dr. Th. Ottmann Algorithmentheorie 09 - Suche in Texten Suffix - Bäume.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (17 –Turingmaschinen) Prof. Dr. Th. Ottmann.
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
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Beispiele für Ausdrucksalgebren
High Performance = Innovative Computer Systems + Efficient Algorithms Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen.
Christian Schindelhauer
Christian Schindelhauer
Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/ Vorlesung Dominic Dumrauf.
Christian Schindelhauer
Christian Schindelhauer
Hauptseminar Automaten und Formale Sprachen
Formale Sprachen Grundbegriffe für formale Sprachen
Grenzen der Regularität
Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung 7 SS 2000 Punkt-in-Polygon-Verfahren I (Trapezkarte)
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Formale Sprachen Grammatiken und die Chomsky-Hierarchie
Formale Sprachen Reguläre Sprachen Rudolf FREUND, Marian KOGLER.
Städtisches Gymnasium Beverungen Friedel Berlage
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
PHP: Operatoren und Kontrollstrukturen
Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 3: Potenzreihen und kontextfreie Sprachen (Vgl. Buch von A. Salomaa)
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 3. Vorlesung
Arne Vater Wintersemester 2006/ 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.
Analyse der Laufzeit von Algorithmen
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
Kapitel 4:Die Chomsky Hierarchie
Wann ist eine Funktion (über den natürlichen Zahlen) berechenbar?
 Sortigkeit oder Arität
Gliederung der Vorlesung
Dr. Wolfram Amme, Semantik funktionaler Programme, Informatik II, FSU Jena, SS Semantik funktionaler Programme.
Gliederung 0. Motivation und Einordnung 1. Endliche Automaten
 Präsentation transkript:

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 zur Vorl. Autom. form. Spr. u. Berechenb. Weitere Unterlagen auf der Webseite dieser Vorlesung)

Äquivalente Konzepte zur Beschreibung regulärer Sprachen (N)DEA Wege in endlichen (Kanten- oder Knoten-bewerteten) Graphen Zweiweg-Automaten Lesen von Wörtern bei festen Speicherplatz Reguläre Ausdrücke Termdarstellung von Mengen von Wörtern mithilfe von Operatoren (+,, *) [nichtdet. Spezifikation von Mengen von Abläufen: Alternative, Nacheinander, Iteration/FOR-Schleife] Lineare Gleichungssysteme Verwendung obiger Operatoren Kongruenzrelationen auf *, endliche Monoide Chomsky-Grammatik vom Typ 3

Äquivalente Konzepte zur Beschreibung kontextfreier Sprachen (N)DKA Wege in endlich vielen endlichen Kanten-bewerteten Graphen, die sich gegenseitig aufrufen können (Unterprogrammtechnik) - Syntaxdiagramme Keller-Automaten Lesen von Wörtern bei Speicherplatz mit Kellereigenschaft Kontextfreie Ausdrücke Termdarstellung von Mengen von Wörtern mithilfe von Operatoren (+,, *, spezielle iterierte Substitution) [nichtdet. Spezifikation von Mengen von Abläufen: Alternative, Nacheinander, Iteration, rekursive Aufrufe] Algebraische Gleichungssysteme Verwendung von +,, * (Kongruenzrelationen auf Term-Algebren: Terme ~ Bäume ) Chomsky-Grammatik vom Typ 2

Definitionsmethoden für formale Sprachen - Beispiel Dyck-Sprache D 1 über einem Klammerpaar {a, b} (A) Beschreibende Definitionen: (1)D 1 := { w {a, b}* | In jedem Präfix von w kommen mindestens so viele as vor wie bs, und in jedem Suffix von w kommen mindestens so viele bs vor wie as } (2) D 1 := { w {a, b}* | In jedem Präfix von w kommen mindestens so viele as vor wie bs, und in w selbst sind diese Anzahlen gleich } [ Das entspricht der saloppen Beschreibung von D 1 als Menge aller wohlgeformten Klammerausdrücke. ] Äquivalenz der beiden Def., Beweisskizze: - Aus Def. (1) folgt Def. (2), weil w sowohl Präfix als auch Suffix von w ist. - Aus Def. (2) folgt für jedes Suffix v von w, dass ein Präfix u von w existiert mit w = uv, so dass v nicht mehr as als bs enthalten kann, weil sonst w mehr as als bs enthielte.

(B) Induktive Definitionen (1) D 1 sei die kleinste Teilmenge von {a, b}* mit (i) D 1 (ii) Wenn u und v in D 1 liegen, so sollen auch uv und aub in D 1 liegen. (2) D 1 sei die kleinste Teilmenge von {a, b}* mit (i) D 1 (ii) Für jedes w D 1 und jede Zerlegung w = uv gilt uabv D 1 Äquivalenzbeweis: Erfüllt eine Sprache (B) (i) mit i = 1 oder i = 2, so ist sie Teil einer nach (A) definierten Sprache. Erfülle w die Def. (A) (2). Sei u das kürzeste Präfix von w mit u D 1 und w = uv. Dann liegt auch v in D 1. Ist u = w, so gilt w = awb mit w D 1. Erfülle w die Def. (A) (1). Für jede Zerlegung w = uv gilt dann: Das Wort uabv Erfüllt die Def. (A) (1).

(C) Rekursive Definition - durch Kürzungsregeln D 1 := { w | p(w) = true }, wobei p folgendes Prädikat ist: p(w) := if w = then true else ( u,v: w = uabv) p(uv) fi. Bemerkung: Diese Def. Ist spiegelbildlich zu Def. (B) (2) - sie ist abbauend, die andere war aufbauend. Nach dieser Def. gehört ein Wort zu D 1, wenn man es zu reduzieren kann, indem man sukzessive ab durch ersetzt. (D) Definition durch einen Erzeugungsmechanismus (1) D 1 = L(G), wobei G eine kontextfreie Grammatik ist - mit den Produktionen S SS | aSb | (2) D 1 = L(G), wobei G eine kontextfreie Grammatik ist - mit den Produktionen S aSbS | Äquivalenz: (1) entspricht sehr genau (B) (1). Alles, was mit (2) erzeugbar ist, ist es auch mit (1). (Ersetze das erste S in SS durch aSb). Aus SS erhält man mit (2) nur dann ein Terminalwort, wenn man das erste S durch aSb oder ersetzt.

(E) Definition durch Erkennungs-/Akzeptierungsverfahren (1)D 1 besteht aus allen Wörtern w {a, b}*, die wie folgt akzeptiert werden: Sei k eine integer-Variable mit Startwert 0; w werde zeichenweise von links nach rechts gelesen: while w noch nicht ganz gelesen do lese nächstes Zeichen z; if z=a then k := k + 1 else if k 0 then k:= k - 1 else w wird nicht akzeptiert fi fi od; if k=0 then w wird akzeptiert else w wird nicht akzeptiert fi Das Verfahren entspricht genau Def. (A) (2). (2) D 1 besteht aus allen Wörtern w {a, b}*, die wie folgt akzeptiert werden: while w do Suche in w das am weitesten links stehende b und streiche es sowie das links daneben stehende a - findet man kein b oder steht kein a links von dem b, so wird w nicht akzeptiert od; w wird akzeptiert. Das Verfahren entspricht ziemlich genau der Arbeitsweise des üblicherweise zur Akzeptierung von D 1 verwendeten Kellerautomaten.