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

Größe: px
Ab Seite anzeigen:

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

Transkript

1 Informales Beispiel Formale Grundlagen der Informatik 1 Kapitel 6 Eigenschaften kontextfreier Sprachen Frank Heitmann heitmann@informatik.uni-hamburg.de 22. April 2014 I L IL ID L a b c D Eine mögliche Ableitung eines Identifiers (Ziel: abc1): I ID ILD ILLD LLLD alld abld abl1 abc1 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 2/44 Grammatiken. Formale Definition Grammatiken. Anmerkungen Definition (Grammatik) Eine Grammatik ist ein Quadrupel G = (V N, V T, P, S) mit 1 Dem endlichen Alphabet von Nonterminalen V N. 2 Dem endlichen Alphabet von Terminalen V T mit V T V N =. Das Gesamtalphabet wird mit V := V T V N bezeichnet. 3 Der endlichen Menge von Produktionen (oder Regeln) P (V \ V T ) V. 4 Dem Startsymbol S V N. Bemerkung Eine Regel (u, v) P wird meist als u v notiert. Mehreren Reglen u v und u w werden als u v w abgekürzt. Auf der linken Seite einer Regel steht stets mindestens ein Nonterminal! P (V \ V T ) V Frank Heitmann heitmann@informatik.uni-hamburg.de 3/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 4/44

2 Ableitung Grammatiken. Beispiel Definition (Ableitung) Die einschrittige Ableitung eines Wortes v aus einem Wort u mittels einer Produktion einer Grammatik G wird notiert als u = G v. Dabei ist die Relation = G V V für alle u, v V definert durch: u = G v gdw. u 1, u 2 V (w l, w r ) P : u = u 1 w l u 2 und v = u 1 w r u 2 Ist der Kontext klar, wird das tief gestellte G weggelassen. Ferner bedienen wir uns wieder der reflexiven, transitiven Hülle mehrschrittige Ableitungen. = G für Vorgehen Eine Ableitung funktioniert also so: Das aktuelle Wort w betrachten Treten in w linke Seiten von Regeln auf? Falls ja, wähle eine dieser Regeln und ersetze die in w auftretende linke Seite der Regel durch die rechte Seite dieser Regel Beispiel Mit S ASB AB, AB c, AcB c gilt S ASB AABB AcB c Frank Heitmann heitmann@informatik.uni-hamburg.de 5/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 6/44 Generierte Sprache. Formale Definition Definition (Generierte Sprache) Sei G = (V N, V T, P, S) eine Grammatik. Die von G generierte oder erzeugte Sprache ist L(G) := {w V T S = G w} Definition (Kontextfreie Grammatik (CFG)) Eine kontextfreie Grammatik (CFG) ist ein Quadrupel G = (V N, V T, P, S) mit 1 Dem endlichen Alphabet von Nonterminalen V N. 2 Dem endlichen Alphabet von Terminalen V T mit V T V N =. Das Gesamtalphabet wird mit V := V T V N bezeichnet. 3 Der endlichen Menge von Produktionen (oder Regeln) P V N V. 4 Dem Startsymbol S V N. werden auch als Typ-2-Grammatiken bezeichnet. Frank Heitmann heitmann@informatik.uni-hamburg.de 7/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 8/44

3 Sprachfamilie CF Typ-3 Grammatiken Definition (Sprachfamilie CF) Ableitung und akzeptierte Sprache ist wie bei Grammatiken definiert. Die Familie der kontextfreien Sprachen ist dann jene Familie von Sprachen, für die es eine kontextfreie Grammatik, die sie generiert. Abgekürzt wird diese Sprachfamilie mit CF. Definition (Kontextfreie Grammatik (CFG)) Eine kontextfreie Grammatik G = (V N, V T, P, S) heißt linear, falls P V N (V T V N V T V T ) linkslinear, falls P V N (V N V T V T ) rechtslinear, falls P V N (V T V N V T ) Wir werden uns auf rechtslineare Grammatiken beschränken. Diese heißen auch Typ-3-Grammatiken oder reguläre Grammatiken. Typische Produktionen rechtslinearer Grammatiken: A bcx, A by, A a Frank Heitmann heitmann@informatik.uni-hamburg.de 9/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 10/44 Automat Grammatik Satz Eine Sprache R Σ ist regulär genau dann, wenn es eine rechtslineare Grammatik G gibt mit L(G) = R. Die Beweisidee: Wird ein Buchstabe im Automaten gelesen, wird eine Kante (z, a, z ) benutzt ( entlang gegangen ). Man kann dies durch eine Produktion [z] a[z ] in der Grammatik nachbauen (wobei [z] ein Nonterminal ist). Andersherum geht das auch! R G. Sei A 1 = (Z, Σ, K, z 0, Z end ) ein DFA mit L(A 1 ) = R. Wir definieren eine rechtslineare CFG G R := (V N, V T, P, S) durch: V N := {[z] z Z} V T := Σ S := [z 0 ] P := {[z] a[z ] (z, a, z ) K} {[z] a z Z end : (z, a, z ) K} {[z 0 ] λ z 0 Z end } Frank Heitmann heitmann@informatik.uni-hamburg.de 11/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 12/44

4 Automat Grammatik Grammatik Automat P := {[z] a[z ] (z, a, z ) K} {[z] a z Z end : (z, a, z ) K} {[z 0 ] λ z 0 Z end } Gibt es eine Erfolgsrechnung in A 1 und hat diese bspw. die Kanten (z 0, x 1, z 1 ), (z 1, x 2, z 2 ),..., (z n 1, x n, z n ) mit z n Z end, so kann man mit den Regeln [z 0 ] x 1 z 1, [z 1 ] x 2 z 2,..., [z n 1 ] x n dieses Wort auch in der Grammatik ableiten. Die Umkehrung (zu einer Ableitung gibt es auch eine Erfolgsrechnung) gilt auch, also insgesamt L(G R ) = L(A 1 ). G R. Sei G = (V N, V T, P, S) eine rechtslineare Grammatik. Wir definieren einen NFA A 2 := (Z, Σ, K, Z start, Z end ) mit Z := {z A A V N } {z λ } Σ := V T Z start := {z S } Z end := {z λ } K := {(z Q, u, z R ) Q, R V N, u VT, Q ur P} {(z Q, u, z λ ) Q V N, u VT, Q u P} Man kann wie eben wieder einen Zusammenhang zwischen Erfolgsrechnung und Ableitung herstellen. Frank Heitmann heitmann@informatik.uni-hamburg.de 13/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 14/44 Grammatik Automat Hinweis Satz Eine Sprache C Σ ist kontextfrei genau dann, wenn es einen PDA gibt, der C mit leerem Keller akzeptiert. K := {(z Q, u, z R ) Q, R V N, u VT, Q ur P} {(z Q, u, z λ ) Q V N, u VT, Q u P} Wer sich hier daran stört, dass mehr als ein Buchstabe an der Kante steht, der kann auch Zwischenzustände für die einzelnen Buchstaben des Wortes u einführen! Frank Heitmann heitmann@informatik.uni-hamburg.de 15/44 Umfangreicher als obiges, aber ähnliche Idee... Literaturhinweis Interessierte finden den Beweis in [HMU] oder im Skript. Bemerkung Da die Akzeptanzbedingungen mit leerem Keller und mit Endzustand äquivalent sind, gilt obige Aussage auch für PDAs, die mit Endzustand akzeptieren. Man beachte aber, dass das Modell in jedem Fall nichtdeterministisch ist! Frank Heitmann heitmann@informatik.uni-hamburg.de 16/44

5 kontextfreier Sprachen Satz Die Familie CF ist abgeschlossen gegenüber, und. Seien für i {1, 2} kontextfreie Grammatiken G i = (V i,n, V i,t, P i, S i ) mit L(G i ) = L i. 1 Sei G 3 := (V 1,N V 2,N {S 3 }, V 1,T V 2,T, P 3, S 3 ) mit P 3 := P 1 P 2 {S 3 S 1 S 2 }, dann ist L 1 L 2 = L(G 3 ). 2 Sei G 4 := (V 1,N V 2,N {S 4 }, V 1,T V 2,T, P 4, S 4 ) mit P 4 := P 1 P 2 {S 4 S 1 S 2 }, dann ist L 1 L 2 = L(G 4 ). 3 Sei G 5 := (V 1,N {S 5 }, V 1,T, P 5, S 5 ) mit P 5 := P 1 {S 5 S 1 S 5 λ}, dann ist L 1 = L(G 5). Zur Nachbereitung Hier müsste nun noch L 1 L 2 = L(G 3 ), L 1 L 2 = L(G 4 ) und L 1 = L(G 5 ) gezeigt werden. Dies ist aber recht einfach. Mündlich... Frank Heitmann heitmann@informatik.uni-hamburg.de 17/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 18/44 kontextfreier Sprachen Satz Die Familie CF ist nicht abgeschlossen gegenüber, Komplementbildung und Mengendifferenz. Der Beweis gelingt stets durch Angabe eines Gegenbeispiels. Siehe Skript, Theorem Wir wollen nun eine Normalform für kontextfreie Grammtiken herstellen. Dies kann uns helfen. bei Beweisen und einigen Algorithmen Frank Heitmann heitmann@informatik.uni-hamburg.de 19/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 20/44

6 Definition Eine kontextfreie Grammatik G = (V N, V T, P, S) ist in Chomsky-Normalform (CNF) genau dann, wenn alle Produktionen von der Form A BC A a mit A, B, C V N und a V T sind. Satz Zu jeder CFG G kann eine äquivalente CFG G = (V N, V T, P, S ) konstruiert werden für die folgendes gilt: 1 Ist λ L(G), so ist G in CNF. 2 Ist λ L(G), so ist S λ die einzige λ-produktion in P und alle anderen Produktionen sind in Chomsky-Normalform. Außerdem kommt S auf keiner rechten Seite einer Regel aus P vor. Dies nennen wir dann erweiterte Chomsky-Normalform. Frank Heitmann heitmann@informatik.uni-hamburg.de 21/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 22/44 1. λ-frei machen Im Beweis werden in sechs Schritten zu G = (V N, V T, P, S) jeweils neue, äquivalente Grammatiken erzeugt: 1 λ-frei machen 2 Reduzieren (produktiv und erreichbar) 3 Kettenregeln entfernen 4 Ersetzen langer Terminalregeln 5 Verkürzen zu langer Regeln 6 Evtl. Hinzunahme einer λ-regel Bemerkung Nachfolgend geben wir die Konstruktion an. Die Beweise, dass die einzelnen Grammatiken äquivalent sind, überspringen wir (meist sind sie aber recht einfach). Frank Heitmann heitmann@informatik.uni-hamburg.de 23/44 1 Zu jedem A V N bestimmen wir, ob A = λ gilt: M 0 := {A V N A λ P} M i+1 := M i {A V N w M i : A w P} Es gibt ein k mit M k = M k+1. Wir setzen V λ := M k und hören auf. 2 Wir definieren eine Substitution σ : V 2 V durch σ(a) := {A}, falls A (V \ V λ ) σ(a) := {λ, A}, falls A V λ 3 G 1 := (V N, V T, P 1, S) entsteht durch P 1 := {A v v λ, v σ(w) für A w P} Es ist L(G 1 ) = L(G) \ {λ}. Frank Heitmann heitmann@informatik.uni-hamburg.de 24/44

7 1. λ-frei machen 1. λ-frei machen Z.B. ist bei C λ, B xc ACx, A B CC M 0 = {C} M 1 = {C, A} M 2 = M 1 Beispiel für die Anwendung der Substitution (hat nichts mit obigem zu tun!): Wendet man σ auf ein Wort u an, werden in u einige (inkl. alle oder keins) Symbole aus V λ gestrichen. Z.B. mit V λ = {A, C} σ(xabcy) = {xabcy, xbcy, xaby, xby} σ(xaca) = {xaca, xca, xaa, xac, xa, xc, x} Anmerkung Man kann diese Technik auch benutzen, um λ L(G) zu entscheiden oder um eine äquivalente Grammatik zu konstruieren, die nur eine λ-produktion hat: λ L(G) gilt, wenn S V λ ist. Ist λ L(G), so fügt man zu der eben konstruierten Grammatik G 1 ein neues Startsymbol S neu hinzu sowie die neuen Produktionen S neu λ sowie S neu w für jede Produktion S w P 1. Frank Heitmann heitmann@informatik.uni-hamburg.de 25/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 26/44 2. Reduzieren 2. Reduzieren Zuerst alle nicht produktiven Nonterminal entfernen. Produktiv ist ein Nonterminal dabei, wenn es zu einem Terminalwort abgeleitet werden kann. Wir berechnen ähnlich wie eben M 0 := V T M i+1 := M i {A V N w Mi : A w P 1 } Es gibt ein k mit M k+1 = M k dort hören wir auf und bestimmen G := (V N, V T, P, S ) = ((M k V N ) {S}, V T, P 1 (M k Mk ), S) Als nächstes werden die erreichbaren Nonterminale bestimmt. M 0 := {S } M i+1 := M i {B V N A M i u, v V : A ubv P } Wieder gibt es ein k mit M k+1 = M k. Wir setzen dann G 2 := (V N2, V T2, P 2, S), indem wir von G nur solche Produktionen übernehmen, deren rechte und linke Seiten nur Nonterminale aus M k (und Terminale) enthalten. V N kann dabei u.u. auch verkleinert werden. Frank Heitmann heitmann@informatik.uni-hamburg.de 27/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 28/44

8 2. Reduzieren 3. Kettenregeln entfernen Anmerkung Mit dieser Technik kann zu jeder Grammatik G mit L(G) eine äquivalente reduzierte Grammatik G konstruiert werden. Alle Nonterminale sind dann produktiv und erreichbar, also umgangssprachlich nützlich. Beispiel: In den Präsenzaufgaben ;-) Im dritten Schritt ändert sich nur die Menge der Produktionen. Wir wollen keine (Ketten-)Regeln A B haben. Wir defineren A << B gdw. A B P 2 Mit << sei die reflexive, transitive Hülle von << bezeichnet. Es ist nun G 3 = (V N3, V T3, P 3, S 3 ) = (V N2, V T2, P 3, S) P 3 := {A w w V N3 B w P 2 A << B} Frank Heitmann heitmann@informatik.uni-hamburg.de 29/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 30/44 3. Kettenregeln entfernen 4. Ersetzen langer Terminalregeln Beispiel P 3 := {A w w V N3 B w P 2 A << B} Sei A B cb, B C d, C e, dann ist A << B, B << C, A << C und damit folgt als Produktionen in P 3 : A cb, B d, C e A d B e A e In der Chomsky-NF darf auf der rechten Seite stets nur genau ein Terminalzeichen stehen. Gibt es daher nun noch Produktionen, deren rechte Seite länger als 1 ist und Terminale enthalten. Dann erstezen wir auf diesen rechten Seiten jedes Terminal a durch ein Nonterminal a. Frank Heitmann heitmann@informatik.uni-hamburg.de 31/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 32/44

9 4. Ersetzen langer Terminalregeln 5. Verkürzen zu langer Regeln Beispiel Hat man bspw. Regeln A bc Bc c so entstehen daraus die Regeln A b c B c c Sind nun noch Regeln A w mit w > 2 vorhanden, so müssen wir diese auf die Länge 2 bringen. Wir machen das so: G 5 := (V N5, V T3, P 5, S) mit V N5 := { v u λ : A w P 4 : w = vu v 2} V N4 P 5 := {A v x A w P 4 : w 3 w = vx x V N4 } { v u y u, v (V N5 \ V N4 ) y V N4 v = uy} { v xy v (V N5 \ V N4 ) x, y V N4 v = xy} {A w A w P 4 w 2} Frank Heitmann heitmann@informatik.uni-hamburg.de 33/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 34/44 5. Verkürzen zu langer Regeln 6. λ-regel hinzunehmen Beispiel Sei z.b. A BCDE, dann werden die Produktionen A (BCD)E (BCD) (BC)D (BC) BC mit den neuen Nonterminalen (BCD) und (BC) hinzugefügt. Hinweis Um bei den letzten beiden Schritten nicht durcheinander zu kommen, lohnt es sich manchmal mit unterschiedlichen Klammertypen zu arbeiten. Galt im ersten Schritt S V λ, war also λ L(G), so fügen wir zu der zuletzt konstruierten Grammatik noch ein neues Startsymbol S neu hinzu sowie die neuen Produktionen S neu λ sowie S neu w für jede Produktion S w P 5. Die so erhaltene Grammatik G 6 erfüllt die im Satz aufgestellten Bedingungen. Frank Heitmann heitmann@informatik.uni-hamburg.de 35/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 36/44

10 Pumping Lemma kontextfreier Sprachen kann benutzt werden, um das Pumping Lemma kontextfreier Sprachen zu zeigen. Dies kann dann wieder benutzt werden, um die Grenzen kontextfreier Sprachen nachzuweisen, d.h. um für Sprachen zu zeigen, dass sie nicht kontextfrei sind. Lemma (Pumping Lemma II) Sei L CF eine kontextfreie Sprache. Dann gibt es ein n N, so dass jedes Wort z L mit z n in die Form z = uvwxy zerlegt werden kann, wobei 1 vwx n 2 vx 1 3 uv i wx i y L für jedes i N (inkl. der 0) Frank Heitmann heitmann@informatik.uni-hamburg.de 37/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 38/44 Pumping Lemma - Beweis Pumping Lemma - Beispiel Beweis Wie beim vorherigen Pumping Lemma ist auch dieser Beweis ein kombinatorisches Argument. Hier geht die Argumentation über eine Grammatik in Chomsky-Normalform. Man setzt dann k := V N und n := 2 k. Da jeder Knoten im Ableitungsbaum einen oder zwei Nachfolger hat (Chomsky-Normalform!), kann man dann zeigen, dass ein Nonterminal doppelt auftreten muss. Dies kann dann benutzt werden, um die Bedingungen zu zeigen. Interessierte finden den vollständigen Beweis im Skript. Behauptung L := {a n b n c n n N} ist nicht kontextfrei. Angenommen L wäre kontextfrei. Dann gilt das Pumping Lemma für kontextfreie Sprachen. Sei k die Zahl aus dem Pumping Lemma. Wir betrachten das Wort z = a k b k c k. Es gilt z L und z k. Sei nun z = uvwxy eine Zerlegung von z mit vwx k und vx 1. Es gilt nun 1 vx {a} + oder 2 vx {b} + oder 3 vx {c} + oder 4 vx {a} + {b} + oder 5 vx {b} + {c} + Frank Heitmann heitmann@informatik.uni-hamburg.de 39/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 40/44

11 Pumping Lemma - Beispiel Pumping Lemma - Anmerkung Behauptung L := {a n b n c n n N} ist nicht kontextfrei. Für die ersten drei Fälle führt uv 2 wx 2 y zum Widerspruch, da dann a n+j b n c n (bzw. a n b n+j c n usw.) nicht mehr in L ist. Für die letzten beiden Fälle gibt es noch zwei weitere Fallunterscheidungen: Enthält v oder x sowohl a als auch b (bzw. b als auch c), dann ist uv 2 wx 2 y nicht mehr in {a} {b} {c} und damit nicht in L. Ist bspw. v {a} + und x {b} +, so ist uv 2 wx 2 y dennoch ein Widerspruch, da die Anzahl der c nicht mit den a und bs übereinstimmt. Hinweis Anders als beim ersten Pumping Lemma gilt hier: das vwx wandert über das Wort es sind daher oft mehrere Fallunterscheidungen nötig oft so etwas wie in einem Block zu sein bzw. an der Grenze zweier Blöcke zu sein. Viele Fälle kann man aber analog behandeln! Und wie beim ersten Pumping Lemma gilt: Man darf auch das Wort uv 0 wx 0 y betrachten! Frank Heitmann heitmann@informatik.uni-hamburg.de 41/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 42/44 Ausblick Zusammenfassung Wir haben heute gesehen, dass Die Chomsky-NF ist beim Beweis des Pumping Lemmas hilfreich. Sie ist auch beim Algorithmus zur Lösung des Wortproblems für kontextfreie Sprachen wichtig. Darauf kommen wir später zu sprechen. Typ-3 Grammatiken und DFAs äquivalent sind Typ-2 Grammatiken und PDAs äquivalent sind Wir haben weiterhin von CF betrachtet hergestellt Inkl. dem Test ob λ L(G) gilt (Schritt 1) Inkl. dem Reduzieren von Grammatiken (Schritt 2) kennengelernt und damit gesehen, dass es Sprachen gibt, die nicht in CF sind Frank Heitmann heitmann@informatik.uni-hamburg.de 43/44 Frank Heitmann heitmann@informatik.uni-hamburg.de 44/44

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

Formalismen für REG. Formale Grundlagen der Informatik 1 Kapitel 7 Kontextfreie Sprachen. Das Pumping Lemma. Abschlusseigenschaften Formalismen für RE Formale rundlagen der Informatik 1 Kapitel 7 Kontextfreie Sprachen Frank Heitmann heitmann@informatik.uni-hamburg.de Satz Zu jeder regulären Sprache L gibt es einen DFA A mit L(A) =

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel.

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel. Kontextfreie Kontextfreie Motivation Formale rundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen Bisher hatten wir Automaten, die Wörter akzeptieren Frank Heitmann heitmann@informatik.uni-hamburg.de

Mehr

Kontextfreie Grammatiken

Kontextfreie Grammatiken Kontextfreie Grammatiken Bisher haben wir verschiedene Automatenmodelle kennengelernt. Diesen Automaten können Wörter vorgelegt werden, die von den Automaten gelesen und dann akzeptiert oder abgelehnt

Mehr

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

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat Formale Grundlagen der Informatik 1 Kapitel 5 Über reguläre Sprachen hinaus und (Teil 2) Frank Heitmann heitmann@informatik.uni-hamburg.de 21. April 2015 Der Kellerautomat - Formal Definition (Kellerautomat

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (III) 17.06.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie

Mehr

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

Worterkennung in Texten speziell im Compilerbau 20. April Frank Heitmann 2/64 Grenzen regulärer Sprachen? Formale Grundlagen der Informatik 1 Kapitel 4 Über reguläre Sprachen hinaus und Pumping Lemma Frank Heitmann heitmann@informatik.uni-hamburg.de Wir haben mittlerweile einiges

Mehr

Worterkennung in Texten speziell im Compilerbau 14. April Frank Heitmann 2/65

Worterkennung in Texten speziell im Compilerbau 14. April Frank Heitmann 2/65 Grenzen regulärer Sprachen? Formale Grundlagen der Informatik 1 Kapitel 4 Über reguläre Sprachen hinaus und Frank Heitmann heitmann@informatik.uni-hamburg.de Wir haben mittlerweile einiges kennengelernt,

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 17. Januar 2012 INSTITUT FÜR THEORETISCHE 0 KIT 18.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der

Mehr

Einführung in die theoretische Informatik Sommersemester 2017 Übungsblatt Lösungsskizze 7

Einführung in die theoretische Informatik Sommersemester 2017 Übungsblatt Lösungsskizze 7 Prof. J. Esparza Technische Universität München S. Sickert, J. Krämer KEINE ABGABE Einführung in die theoretische Informatik Sommersemester 2017 Übungsblatt 7 Übungsblatt Wir unterscheiden zwischen Übungs-

Mehr

Die mathematische Seite

Die mathematische Seite Kellerautomaten In der ersten Vorlesung haben wir den endlichen Automaten kennengelernt. Mit diesem werden wir uns in der zweiten Vorlesung noch etwas eingängiger beschäftigen und bspw. Ansätze zur Konstruktion

Mehr

1 Eine Menge M Σ heißt (rekursiv) aufzählbar genau. 2 Die Familie aller aufzählbaren Mengen wird mit RE

1 Eine Menge M Σ heißt (rekursiv) aufzählbar genau. 2 Die Familie aller aufzählbaren Mengen wird mit RE Aufzählbarkeit Formale Grundlagen der Informatik 1 Kapitel 9 Entscheidbarkeit und Aufzählbarkeit Frank Heitmann heitmann@informatik.uni-hamburg.de 5. Mai 2014 Definition 1 Eine Menge M Σ heißt (rekursiv)

Mehr

Tutoraufgabe 1 (ɛ-produktionen):

Tutoraufgabe 1 (ɛ-produktionen): Prof aa Dr J Giesl Formale Systeme, Automaten, Prozesse SS 2010 M Brockschmidt, F Emmes, C Fuhs, C Otto, T Ströder Hinweise: Die Hausaufgaben sollen in Gruppen von je 2 Studierenden aus dem gleichen Tutorium

Mehr

Übungsblatt 7. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17

Übungsblatt 7. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17 Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 7 Vorlesung Theoretische Grundlagen der Informatik im W 16/17 Ausgabe 17. Januar 2017 Abgabe 31. Januar 2017, 11:00 Uhr (im

Mehr

Formale Sprachen. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marian KOGLER

Formale Sprachen. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marian KOGLER Formale Sprachen Grammatiken und die Chomsky-Hierarchie Rudolf FREUND, Marian KOGLER Grammatiken Das fundamentale Modell zur Beschreibung von formalen Sprachen durch Erzeugungsmechanismen sind Grammatiken.

Mehr

A : z z A : z z : ( z, x, z ) δ

A : z z A : z z : ( z, x, z ) δ Informatik IV, SoS2003 1 Definition 1.1 Ein Quintupel A =(X,Z,z 0,δ,Z f )heißt nichtdeterministischer endlicher Automat (NEA): 1. X, Z sind endliche nichtleere Mengen. 2. z 0 Z 4. δ Z X Z Informatik IV,

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik 1 Grundlagen der Theoretischen Informatik Till Mossakowski Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Wintersemester 2014/15 2 Kontextfreie Grammatiken Definition: Eine Grammatik G

Mehr

Übungen zur Vorlesung Einführung in die Theoretische Informatik, Blatt 12 LÖSUNGEN

Übungen zur Vorlesung Einführung in die Theoretische Informatik, Blatt 12 LÖSUNGEN Universität Heidelberg / Institut für Informatik 7. Juli 24 Prof. Dr. Klaus Ambos-Spies Nadine Losert Übungen zur Vorlesung Einführung in die Theoretische Informatik, Blatt 2 LÖSUNGEN Aufgabe Verwenden

Mehr

Formale Sprachen. Grammatiken. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marion OSWALD. Grammatiken: Ableitung

Formale Sprachen. Grammatiken. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marion OSWALD. Grammatiken: Ableitung Formale Sprachen rammatiken und die Chomsky-Hierarchie Rudolf FREUND, Marion OSWALD rammatiken Das fundamentale Modell zur Beschreibung von formalen Sprachen durch Erzeugungsmechanismen sind rammatiken.

Mehr

Automatentheorie und formale Sprachen

Automatentheorie und formale Sprachen Automatentheorie und formale Sprachen VL 8 Chomsky-Grammatiken Kathrin Hoffmann 23. Mai 2012 Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 23.5. 2012 250 Wortproblem Wortproblem ist das

Mehr

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

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18 Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 6 Vorlesung Theoretische Grundlagen der Informatik im WS 17/18 Ausgabe 10. Januar 2018 Abgabe 23. Januar 2018, 11:00 Uhr (im

Mehr

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

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14 Kapitel: Die Chomsky Hierarchie Die Chomsky Hierarchie 1 / 14 Allgemeine Grammatiken Definition Eine Grammatik G = (Σ, V, S, P) besteht aus: einem endlichen Alphabet Σ, einer endlichen Menge V von Variablen

Mehr

Das Pumping Lemma der regulären Sprachen

Das Pumping Lemma der regulären Sprachen Das Pumping Lemma der regulären Sprachen Frank Heitmann heitmann@informatik.uni-hamburg.de 1 Das Pumping Lemma Das Pumping Lemma der regulären Sprachen macht eine Aussage der Art wenn eine Sprache L regulär

Mehr

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

Grammatiken. Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V. Startsymbol S V. Kurzschreibweise G = (V, Σ, P, S) Grammatiken Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V Startsymbol S V Produktionen P ( (V Σ) \ Σ ) (V Σ) Kurzschreibweise G = (V, Σ, P, S) Schreibweise für Produktion (α, β) P: α β 67 /

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (II) 11.06.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie

Mehr

Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung

Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung Frank Heitmann heitmann@informatik.uni-hamburg.de 13. Mai 2014 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/17 Überblick Wir hatten

Mehr

Übung zur Vorlesung Grundlagen der theoretischen Informatik. Aufgabenblatt 7 Lösungen. Wiederholung: Pumping-Lemma für kontextfreie Sprachen

Übung zur Vorlesung Grundlagen der theoretischen Informatik. Aufgabenblatt 7 Lösungen. Wiederholung: Pumping-Lemma für kontextfreie Sprachen Prof. Dr. Viorica Sofronie-Stokkermans Universität Koblenz-Landau Fachbereich 4: Informatik Dennis Peuter 01. Juni 2017 Übung zur Vorlesung Grundlagen der theoretischen Informatik Aufgabenblatt 7 Lösungen

Mehr

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

Umformung NTM DTM. Charakterisierung rek. aufz. Spr. Chomsky-3-Grammatiken (T5.3) Chomsky-0-Grammatik Rek. Aufz. Chomsky-0-Grammatik Rek. Aufz. Satz T5.2.2: Wenn L durch eine Chomsky-0- Grammatik G beschrieben wird, gibt es eine NTM M, die L akzeptiert. Beweis: Algo von M: Schreibe S auf freie Spur. Iteriere: Führe

Mehr

Chomsky-Grammatiken 16. Chomsky-Grammatiken

Chomsky-Grammatiken 16. Chomsky-Grammatiken Chomsky-Grammatiken 16 Chomsky-Grammatiken Ursprünglich von Chomsky in den 1950er Jahren eingeführt zur Beschreibung natürlicher Sprachen. Enge Verwandschaft zu Automaten Grundlage wichtiger Softwarekomponenten

Mehr

Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann.

Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann. Der Satz von Kleene Wir haben somit Folgendes bewiesen: Der Satz von Kleene Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden

Mehr

Theoretische Informatik Mitschrift

Theoretische Informatik Mitschrift Theoretische Informatik Mitschrift 2. Grammatiken und die Chomsky-Hierarchie Beispiel: Syntaxdefinition in BNF :=

Mehr

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

Lösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004 Lösung zur Klausur Grundlagen der Theoretischen Informatik im WiSe 2003/2004 1. Geben Sie einen deterministischen endlichen Automaten an, der die Sprache aller Wörter über dem Alphabet {0, 1} akzeptiert,

Mehr

3 kontextfreie Sprachen

3 kontextfreie Sprachen Hans U. Simon Bochum, den 7.10.2008 Annette Ilgen Beispiele zur Vorlesung Theoretische Informatik WS 08/09 Vorbemerkung: Hier findet sich eine Sammlung von Beispielen und Motivationen zur Vorlesung Theoretische

Mehr

5.2 Endliche Automaten

5.2 Endliche Automaten 114 5.2 Endliche Automaten Endliche Automaten sind Turingmaschinen, die nur endlichen Speicher besitzen. Wie wir bereits im Zusammenhang mit Turingmaschinen gesehen haben, kann endlicher Speicher durch

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 15.01.2015 INSTITUT FÜR THEORETISCHE 0 KIT 15.01.2015 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 18. Januar 2018 INSTITUT FÜR THEORETISCHE 0 18.01.2018 Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE KIT Die Forschungsuniversität

Mehr

Zentralübung zur Vorlesung Theoretische Informatik

Zentralübung zur Vorlesung Theoretische Informatik SS 2015 Zentralübung zur Vorlesung Theoretische Informatik Dr. Werner Meixner Fakultät für Informatik TU München http://www14.in.tum.de/lehre/2015ss/theo/uebung/ 7. Mai 2015 ZÜ THEO ZÜ IV Übersicht: 1.

Mehr

Formale Grundlagen der Informatik

Formale Grundlagen der Informatik Formale Grundlagen der Informatik / 2015 1 Reguläre Ausdrücke Kommen in der Praxis immer dann vor, wenn standardisierte Eingaben erforderlich sind: Telefonnummern: +Land (0) Ort Anschluß Dateinamen: (A-Z,

Mehr

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

Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/2006 07.11.2005 5. Vorlesung 1 Überblick: Kontextfreie Sprachen Formale Grammatik Einführung, Beispiele Formale

Mehr

Motivation natürliche Sprachen

Motivation natürliche Sprachen Motivation natürliche Sprachen (Satz) (Substantivphrase)(Verbphrase) (Satz) (Substantivphrase)(Verbphrase)(Objektphrase) (Substantivphrase) (Artikel)(Substantiv) (Verbphrase) (Verb)(Adverb) (Substantiv)

Mehr

Pumping-Lemma. Beispiel. Betrachte die kontextsensitive Grammatik G mit den Produktionen. S asbc abc CB HB HB HC HC BC ab ab bb bb bc bc cc cc.

Pumping-Lemma. Beispiel. Betrachte die kontextsensitive Grammatik G mit den Produktionen. S asbc abc CB HB HB HC HC BC ab ab bb bb bc bc cc cc. Pumping-Lemma Beispiel Betrachte die kontextsensitive Grammatik G mit den Produktionen S asbc abc CB HB HB HC HC BC ab ab bb bb bc bc cc cc. Sie erzeugt z.b. das Wort aabbcc: S asbc aabcbc aabhbc aabhcc

Mehr

2. Übungsblatt 6.0 VU Theoretische Informatik und Logik

2. Übungsblatt 6.0 VU Theoretische Informatik und Logik 2. Übungsblatt 6.0 VU Theoretische Informatik und Logik 25. September 2013 Aufgabe 1 Geben Sie jeweils eine kontextfreie Grammatik an, welche die folgenden Sprachen erzeugt, sowie einen Ableitungsbaum

Mehr

1. Klausur zur Vorlesung Informatik III Wintersemester 2003/2004. Mit Lösung!

1. Klausur zur Vorlesung Informatik III Wintersemester 2003/2004. Mit Lösung! Universität Karlsruhe Theoretische Informatik Fakultät für Informatik WS 23/4 ILKD Prof. Dr. D. Wagner 2. Februar 24. Klausur zur Vorlesung Informatik III Wintersemester 23/24 Mit Lösung! Beachten Sie:

Mehr

2.3 Abschlusseigenschaften

2.3 Abschlusseigenschaften 2.3 Abschlusseigenschaften 2.3 Abschlusseigenschaften In diesem Abschnitt wollen wir uns mit Abschlusseigenschaften der regulären Sprachen, d.h. mit der Frage, ob, gegeben eine Operation und zwei reguläre

Mehr

I.5. Kontextfreie Sprachen

I.5. Kontextfreie Sprachen I.5. Kontextfreie prachen Zieht man in Betracht, dass BNF-yteme gerade so beschaffen sind, dass auf der linken eite immer genau ein Nichtterminal steht, so sind das also gerade die Ableitungsregeln einer

Mehr

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

Informatik III. Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung Informatik III Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung 09.11.2006 schindel@informatik.uni-freiburg.de 1 Äquivalenzklassen Definition und Beispiel Definition Für eine Sprache L Σ* bezeichnen

Mehr

Kontextfreie Sprachen

Kontextfreie Sprachen Kontextfreie Sprachen Bedeutung: Programmiersprachen (Compilerbau) Syntaxbäume Chomsky-Normalform effiziente Lösung des Wortproblems (CYK-Algorithmus) Grenzen kontextfreier Sprachen (Pumping Lemma) Charakterisierung

Mehr

Übungsaufgaben zu Formalen Sprachen und Automaten

Übungsaufgaben zu Formalen Sprachen und Automaten Universität Freiburg PD Dr. A. Jakoby Sommer 27 Übungen zum Repetitorium Informatik III Übungsaufgaben zu Formalen Sprachen und Automaten. Untersuchen Sie das folgende Spiel: A B x x 2 x 3 C D Eine Murmel

Mehr

Automaten und formale Sprachen Klausurvorbereitung

Automaten und formale Sprachen Klausurvorbereitung Automaten und formale Sprachen Klausurvorbereitung Rami Swailem Mathematik Naturwissenschaften und Informatik FH-Gießen-Friedberg Inhaltsverzeichnis 1 Definitionen 2 2 Altklausur Jäger 2006 8 1 1 Definitionen

Mehr

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

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Institut für Informatik Sommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:

Mehr

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

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 Kap. 2: Endliche Automaten Myhill Nerode 2.4 Minimalautomat für reguläre Sprache Abschnitt 2.4.3 L Σ regulär der Äuivalenzklassen-Automat zu L ist ein DFA mit minimaler Zustandszahl (= index( L )) unter

Mehr

Kontextfreie Sprachen

Kontextfreie Sprachen Kontextfreie Sprachen besitzen große Bedeutung im Compilerbau Chomsky-Normalform effiziente Lösung des Wortproblems (CYK-Algorithmus) Grenzen kontextfreier Sprachen (Pumping Lemma) Charakterisierung durch

Mehr

4.2 Die Chomsky Normalform

4.2 Die Chomsky Normalform 4.2 Die Chomsky Normalform Für algorithmische Problemstellungen (z.b. das Wortproblem) aber auch für den Nachweis von Eigenschaften kontextfreier Sprachen ist es angenehm, von CFG in Normalformen auszugehen.

Mehr

Deterministischer Kellerautomat (DPDA)

Deterministischer Kellerautomat (DPDA) Deterministische Kellerautomaten Deterministischer Kellerautomat (DPDA) Definition Ein Septupel M = (Σ,Γ, Z,δ, z 0,#, F) heißt deterministischer Kellerautomat (kurz DPDA), falls gilt: 1 M = (Σ,Γ, Z,δ,

Mehr

Grundbegriffe. Grammatiken

Grundbegriffe. Grammatiken Grammatiken Grammatiken in der Informatik sind ähnlich wie Grammatiken für natürliche Sprachen ein Mittel, um alle syntaktisch korrekten Sätze (hier: Wörter) einer Sprache zu erzeugen. Beispiel: Eine vereinfachte

Mehr

Beschreibungskomplexität von Grammatiken Definitionen

Beschreibungskomplexität von Grammatiken Definitionen Beschreibungskomplexität von Grammatiken Definitionen Für eine Grammatik G = (N, T, P, S) führen wir die folgenden drei Komplexitätsmaße ein: Var(G) = #(N), Prod(G) = #(P ), Symb(G) = ( α + β + 1). α β

Mehr

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Algorithmen mit konstantem Platzbedarf: Die Klasse REG Algorithmen mit konstantem Platzbedarf: Die Klasse REG Sommerakademie Rot an der Rot AG 1 Wieviel Platz brauchen Algorithmen wirklich? Daniel Alm Institut für Numerische Simulation Universität Bonn August

Mehr

Definition 4 (Operationen auf Sprachen) Beispiel 5. Seien A, B Σ zwei (formale) Sprachen. Konkatenation: AB = {uv ; u A, v B} A + = n 1 An

Definition 4 (Operationen auf Sprachen) Beispiel 5. Seien A, B Σ zwei (formale) Sprachen. Konkatenation: AB = {uv ; u A, v B} A + = n 1 An Definition 4 (Operationen auf Sprachen) Seien A, B Σ zwei (formale) Sprachen. Konkatenation: AB = {uv ; u A, v B} A 0 = {ɛ}, A n+1 = AA n A = n 0 An A + = n 1 An Beispiel 5 {ab, b}{a, bb} = {aba, abbb,

Mehr

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

Reguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer, Reguläre Sprachen Reguläre Sprachen (Typ-3-Sprachen) haben große Bedeutung in Textverarbeitung und Programmierung (z.b. lexikalische Analyse) besitzen für viele Entscheidungsprobleme effiziente Algorithmen

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (IV) 31.05.2017 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie

Mehr

Das Pumping-Lemma Formulierung

Das Pumping-Lemma Formulierung Das Pumping-Lemma Formulierung Sei L reguläre Sprache. Dann gibt es ein n N mit: jedes Wort w L mit w n kann zerlegt werden in w = xyz, so dass gilt: 1. xy n 2. y 1 3. für alle k 0 ist xy k z L. 59 / 162

Mehr

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

Formale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23 1/23 Formale Methoden 1 Gerhard Jäger Gerhard.Jaeger@uni-bielefeld.de Uni Bielefeld, WS 2007/2008 9. Januar 2008 2/23 Automaten (informell) gedachte Maschine/abstraktes Modell einer Maschine verhält sich

Mehr

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

Hochschule Bonn-Rhein-Sieg University of Applied Sciences Grantham-Allee Sankt Augustin Hochschule Bonn-Rhein-Sieg Uniersity of Applied Sciences Grantham-Allee 20 53757 Sankt Augustin Director b-it Applied Science Institute Fachbereich Informatik Prof. Dr. Kurt-Ulrich Witt Mathematische und

Mehr

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

FORMALE SYSTEME. 3. Vorlesung: Endliche Automaten. TU Dresden, 17. Oktober Markus Krötzsch FORMALE SYSTEME 3. Vorlesung: Endliche Automaten Markus Krötzsch TU Dresden, 17. Oktober 2016 Rückblick Markus Krötzsch, 17. Oktober 2016 Formale Systeme Folie 2 von 31 Wiederholung Mit Grammatiken können

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (I) 3.06.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Organisatorisches 1. Teilklausur: Mittwoch,

Mehr

Theoretische Informatik Kap 1: Formale Sprachen/Automatentheorie

Theoretische Informatik Kap 1: Formale Sprachen/Automatentheorie Gliederung der Vorlesung. Grundbegriffe. Formale Sprachen/Automatentheorie.. Grammatiken.2..3. Kontext-freie Sprachen 2. Berechnungstheorie 2.. Berechenbarkeitsmodelle 2.2. Die Churchsche These 2.3. Unentscheidbarkeit

Mehr

Grundlagen der Informatik II

Grundlagen der Informatik II Grundlagen der Informatik II Tutorium 2 Professor Dr. Hartmut Schmeck Miniaufgabe * bevor es losgeht * Finden Sie die drei Fehler in der Automaten- Definition. δ: A = E, S, δ, γ, s 0, F, E = 0,1, S = s

Mehr

Theoretische Informatik I

Theoretische Informatik I Theoretische Informatik I Rückblick Theoretische Informatik I 1. Mathematische Methoden 2. Reguläre Sprachen 3. Kontextfreie Sprachen Themen der Theoretischen Informatik I & II Mathematische Methodik in

Mehr

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}}

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}} 2 Endliche Automaten Fragen 1. Was ergibt sich bei {a, bc} {de, fg}? a) {abc, defg} b) {abcde, abcfg} c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} 2. Was ergibt sich bei {abc, a} {bc, λ}?

Mehr

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

Beweis: Nach dem Pumping-Lemma für kontextfreie Sprachen ist 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

Mehr

Das Postsche Korrespondenzproblem

Das Postsche Korrespondenzproblem Das Postsche Korrespondenzproblem Eine Instanz des PKP ist eine Liste von Paaren aus Σ Σ : (v 1, w 1 ),..., (v n, w n ) Eine Lösung ist eine Folge i 1,..., i k von Indizes 1 i j n mit v i1... v ik = w

Mehr

Zusammenfassung. Beispiel. 1 Wir betrachten die folgende Signatur F = {,, +, 0, 1} sodass. 3 Wir betrachten die Identitäten E. 4 Dann gilt E 1 + x = 1

Zusammenfassung. Beispiel. 1 Wir betrachten die folgende Signatur F = {,, +, 0, 1} sodass. 3 Wir betrachten die Identitäten E. 4 Dann gilt E 1 + x = 1 Zusammenfassung Zusammenfassung der letzten LVA Einführung in die Theoretische Informatik Christina Kohl Alexander Maringele eorg Moser Michael Schaper Institut für Informatik @ UIBK Wintersemester 2016

Mehr

Automaten und Formale Sprachen SoSe 2007 in Trier. Henning Fernau Universität Trier

Automaten und Formale Sprachen SoSe 2007 in Trier. Henning Fernau Universität Trier Automaten und Formale Sprachen SoSe 2007 in Trier Henning Fernau Universität Trier fernau@informatik.uni-trier.de 1 Automaten und Formale Sprachen Gesamtübersicht Organisatorisches Einführung Endliche

Mehr

Einführung in die Computerlinguistik Formale Grammatiken rechtslineare und kontextfreie Grammatiken Kellerautomaten

Einführung in die Computerlinguistik Formale Grammatiken rechtslineare und kontextfreie Grammatiken Kellerautomaten Einführung in die Computerlinguistik Formale Grammatiken rechtslineare und kontextfreie Grammatiken Kellerautomaten Dozentin: Wiebke Petersen 13. Foliensatz Wiebke Petersen Einführung CL 1 Formale Grammatik

Mehr

Übungsblatt Nr. 3. Lösungsvorschlag

Übungsblatt Nr. 3. Lösungsvorschlag Institut für Kryptographie und Sicherheit Prof. Dr. Jörn Müller-Quade Dirk Achenbach Tobias Nilges Vorlesung Theoretische Grundlagen der Informatik Übungsblatt Nr. 3 Aufgabe 1: Karlsruhe ist nicht genug

Mehr

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

Informatik III. Christian Schindelhauer Wintersemester 2006/07 6. Vorlesung Informatik III Christian Schindelhauer Wintersemester 2006/07 6. Vorlesung 10.11.2006 schindel@informatik.uni-freiburg.de 1 Kapitel IV Kontextfreie Sprachen Kontextfreie Grammatik Informatik III 6. Vorlesung

Mehr

Algorithmen und Datenstrukturen (EI)

Algorithmen und Datenstrukturen (EI) Algorithmen und Datenstrukturen (EI) ADS Zentralübung Stefan Schmid 4. Februar 2009 Einturnen... Ein heutiger Computer aus dem Saturn ist im Prinzip eine Turing Maschine? Nein. Zum Beispiel Sprache L =

Mehr

Theoretische Informatik Mitschrift

Theoretische Informatik Mitschrift 5 Eigenschaften regulärer Sprachen 51: Die Nerode-Relation Theoretische Informatik Mitschrift Definition 51: Sei L * L * * mit L :={u, v * * w *:uw L v w L }heißt Nerode-Relation von L Sei ={0,1}, L= *{00}

Mehr

Pumping-Lemma 2 Pumping-Lemma Sei L eine von einem endlichen Automaten erkannte Sprache. Dann existiert eine natürliche Zahl p N derart, dass jedes Wo

Pumping-Lemma 2 Pumping-Lemma Sei L eine von einem endlichen Automaten erkannte Sprache. Dann existiert eine natürliche Zahl p N derart, dass jedes Wo 1 Endliche Automaten Modellierungskonzept mit vielen brauchbaren Eigenschaften schnelle Spracherkennung graphisch-visuelle Beschreibung automatische Korrektheitsbeweise gute Kompositionalitätseigenschaften

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Woche 7 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung Zusammenfassung der letzten LV 1 Wir betrachten die folgende Signatur

Mehr

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

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung Theoretische Informatik Rainer Schrader Zentrum für Angewandte Informatik Köln 14. Juli 2009 1 / 40 2 / 40 Beispiele: Aus den bisher gemachten Überlegungen ergibt sich: aus der Chomsky-Hierarchie bleiben

Mehr

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

Formale Methoden 1. Gerhard Jäger 23. Januar Uni Bielefeld, WS 2007/2008 1/18 1/18 Formale Methoden 1 Gerhard Jäger Gerhard.Jaeger@uni-bielefeld.de Uni Bielefeld, WS 2007/2008 23. Januar 2008 2/18 Das Pumping-Lemma Sein L eine unendliche reguläre Sprache über ein endliches Alphabet

Mehr

Automaten und Formale Sprachen SoSe 2007 in Trier. Henning Fernau Universität Trier

Automaten und Formale Sprachen SoSe 2007 in Trier. Henning Fernau Universität Trier Automaten und Formale Sprachen SoSe 2007 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Automaten und Formale Sprachen Gesamtübersicht Organisatorisches Einführung Endliche Automaten und

Mehr

Grundlagen der Informatik II

Grundlagen der Informatik II Grundlagen der Informatik II Tutorium 1 Professor Dr. Hartmut Schmeck KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu elearning Konzept 2 Grundlagen der Informatik II Tutorium 1

Mehr

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

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln, Theorie der Informatik 9. März 24 7. Reguläre Sprachen I Theorie der Informatik 7. Reguläre Sprachen I Malte Helmert Gabriele Röger Universität Basel 9. März 24 7. Reguläre Grammatiken 7.2 DFAs 7.3 NFAs

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Sommersemester 2015 29.04.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt 1. Motivation 2. Terminologie 3. Endliche Automaten und reguläre

Mehr

Wortproblem für kontextfreie Grammatiken

Wortproblem für kontextfreie Grammatiken Wortproblem für kontextfreie Grammatiken G kontextfreie Grammatik. w Σ w L(G)? Wortproblem ist primitiv rekursiv entscheidbar. (schlechte obere Schranke!) Kellerautomat der L(G) akzeptiert Ist dieser effizient?

Mehr

Kurz-Skript zur Theoretischen Informatik I

Kurz-Skript zur Theoretischen Informatik I Kurz-Skript zur Theoretischen Informatik I Inhaltsverzeichnis 1 Grundlagen 2 2 Reguläre Ausdrücke 4 3 Endliche Automaten 5 3.1 Vollständige endliche Automaten................................... 6 3.2 ε

Mehr

Typ-3-Sprachen. Das Pumping-Lemma

Typ-3-Sprachen. Das Pumping-Lemma Das Pumping-Lemma Typ-3-Sprachen Um zu zeigen, daß eine Sprache L regulär ist, kannman einen NFA M angeben mit L(M) = L, oder eine rechtslineare Grammatik G angeben mit L(G) =L, oder einen regulären Ausdruck

Mehr

Kapitel IV Formale Sprachen und Grammatiken

Kapitel IV Formale Sprachen und Grammatiken Kapitel IV Formale Sprachen und Grammatiken 1. Begriffe und Notationen Sei Σ ein (endliches) Alphabet. Dann Definition 42 1 ist Σ das Monoid über Σ, d.h. die Menge aller endlichen Wörter über Σ; 2 ist

Mehr

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 8. Reguläre Sprachen II Malte Helmert Gabriele Röger Universität Basel 24. März 24 Pumping Lemma Pumping Lemma: Motivation Man kann zeigen, dass eine Sprache regulär ist, indem man

Mehr

Informatik IC2. Balazs Simon

Informatik IC2. Balazs Simon Informatik IC2 Balazs Simon Inhaltsverzeichnis 1 Contextfreie Sprachen 3 1.1 Ableitungsbaum..................................... 3 1.2 Schönheit........................................ 4 1.3 Normalformen......................................

Mehr

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

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln, Theorie der Informatik 8. März 25 8. Reguläre Sprachen I Theorie der Informatik 8. Reguläre Sprachen I 8. Reguläre Grammatiken Malte Helmert Gabriele Röger 8.2 DFAs Universität Basel 8. März 25 8.3 NFAs

Mehr

Die Nerode-Relation und der Index einer Sprache L

Die Nerode-Relation und der Index einer Sprache L Die Nerode-Relation und der Index einer Sprache L Eine zweite zentrale Idee: Sei A ein vollständiger DFA für die Sprache L. Repäsentiere einen beliebigen Zustand p von A durch die Worte in Σ, die zu p

Mehr

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

Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit.  Zugangsnummer: 9201 Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit Wiederholung Kapitel 3 und 4 http://pingo.upb.de Zugangsnummer: 9201 Dozent: Jun.-Prof. Dr.

Mehr

Endliche Automaten, reguläre Ausdrücke, rechtslineare Grammatiken

Endliche Automaten, reguläre Ausdrücke, rechtslineare Grammatiken 1 / 15 Endliche Automaten, reguläre Ausdrücke, rechtslineare Grammatiken Prof. Dr. Hans Kleine Büning FG Wissensbasierte Systeme WS 08/09 2 / 15 Deterministischer endlicher Automat (DEA) Definition 1:

Mehr

Vorlesung Theoretische Informatik

Vorlesung Theoretische Informatik Vorlesung Theoretische Informatik Automaten und Formale Sprachen Hochschule Reutlingen Fakultät für Informatik Masterstudiengang Wirtschaftsinformatik überarbeitet von F. Laux (Stand: 09.06.2010) Sommersemester

Mehr

Musterlösung Informatik-III-Klausur

Musterlösung Informatik-III-Klausur Musterlösung Informatik-III-Klausur Aufgabe 1 (1+4+3+4 Punkte) (a) 01010 wird nicht akzeptiert: s q 0 q 1 q 2 f q 2 10101 wird akzeptiert: s q 2 q 2 f q 2 f (b) ε: {s, q 0, q 1, q 2 }, {f} 0: {s, q 0,

Mehr

(Prüfungs-)Aufgaben zu formale Sprachen

(Prüfungs-)Aufgaben zu formale Sprachen (Prüfungs-)Aufgaben zu formale Sprachen (siehe auch bei den Aufgaben zu endlichen Automaten) 1) Eine Grammatik G sei gegeben durch: N = {S, A}, T = {a, b, c, d}, P = { (S, Sa), (S, ba), (A, ba), (A, c),

Mehr

Kontextfreie Sprachen Kontextfreie Sprachen und Grammatiken. Satzformen sind die Wörter aus (N T ). Notation: Wir verwenden oft

Kontextfreie Sprachen Kontextfreie Sprachen und Grammatiken. Satzformen sind die Wörter aus (N T ). Notation: Wir verwenden oft und Grammatiken (Folie 119, eite 202 im kript) atzformen sind die Wörter aus (N T ). Notation: Wir verwenden oft a, b, c,... für Terminalsymbole A, B, C,... für Nonterminale u, v, w,... für Terminalwörter

Mehr