Teil 4: Grammatiken und Syntaxanalyse. (Kapitel T5-T7)
|
|
- Lena Ackermann
- vor 7 Jahren
- Abrufe
Transkript
1 Teil 4: Grammatiken und Syntaxanalyse (Kapitel T5-T7)
2 Grammatiken und die Chomsky- Hierarchie [T5.1] Ziel: Regelsysteme zur Erzeugung von Sprachen. Beispiel: arithmetische Ausdrücke können definiert werden durch a (Variable), a+a, a a sind arithmet. Ausdr. Wenn A und B arithm. Ausdr. sind, dann auch (A)+(B) und (A) (B). Grammatik: formalere Beschreibung solcher Regeln. 449
3 Bestandteile einer Grammatik T (oder Σ): endliche Menge von Terminalzeichen (das Alphabet der erzeugten Sprache) V : endliche Menge von Variablen (T V= ) S V : Startsymbol P : endliche Menge von Ableitungsregeln/ Produktionen Paare (l,r) mit l (V T ) +, r (V T )* (Schreibweise: l r) Variante: l V + 450
4 Beispiel: arithmetische Ausdrücke V={S} T={(,),a,+, } P = {S (S)+(S), S (S) (S), S a, S a+a, S a a} Herleitung eines Wortes: S (S)+(S) (S)+((S) (S)) (a a)+((s) (S)) (a a)+((a) (S)) (a a)+((a) (a +a)) 451
5 Notation w z z lässt sich durch Anwendung einer Ableitungsregel (l,r) aus w herleiten, d.h., es gibt in w ein Teilwort l, so dass nach Ersetzen von l durch r das Wort z entsteht. w z * w w 1 w 2 w 3 w n z, d.h., z kann aus w in endlich vielen Schritten hergeleitet werden. L(G): Die von der Grammatik G erzeugte Sprache, also die Menge der Wörter w T* mit S w. * 452
6 Notation Variablen: Großbuchstaben. Terminale: meistens Kleinbuchstaben a,b,c,... oder Ziffern, manchmal auch Sonderzeichen oder Klammern. Wörter aus (V T )*: Kleinbuchstaben u,v,... oder griechische Kleinbuchstaben. 453
7 Weiteres Beispiel L = { w w {a,b,c}* und w enthält gleich viele a s, b s und c s } Angabe einer Grammatik: V = {S,A,B,C,R}, T = {a,b,c}, P = {S R, S ε, R RABC, R ABC AB BA, BA AB, CA AC, AC CA, BC CB, CB BC, A a, B b, C c} 454
8 Eingeschränkte Grammatiken Definition T5.1.1: Chomsky-0-Grammatiken: Grammatiken ohne weitere Einschränkungen. Chomsky-1-Grammatiken: Produktionen der Form S ε oder u v mit u V +, v ((V T) {S})* und u v. monoton oder kontextsensitiv (Beispiel: siehe vorherige Folie) 455
9 Eingeschr. Grammatiken (Forts.) Chomsky-2-Grammatiken: Produktionen der Form A v mit A V, v (V T)*. kontextfrei Chomsky-3-Grammatiken: Produktionen der Form A ε oder A ab mit A,B V, a T. rechtslinear oder regulär 456
10 Sprachklassen L i : Menge der von Chomsky-i-Grammatiken erzeugbaren Sprachen, genauer L 0 : Chomsky-0-Sprachen (=rekursiv aufzählbare Sprachen) L 1 : kontextsensitive Sprachen L 2 : kontextfreie Sprachen L 3 : rechtslineare Sprachen (=reguläre Sprachen) 457
11 Chomsky-Hierarchie Folgerung aus der Definition: L 3 L 2 und L 1 L 0 Später: L 2 L 1 Alle Inklusionen sind echt. 458
12 Chomsky-0-Grammatiken (T5.2) Ziel: Chomsky-0-Sprachen = rek. aufz. Sprachen Grammatik: S * Wort Turing-Maschine: Wort akz. Konfig. D.h.: Die Rechnung einer Grammatik verläuft anders herum. 459
13 Rek. Aufz. Chomsky-0-Grammatik Satz T5.2.1: L rekursiv aufzählbar Es gibt Chomsky-0-Grammatik G mit L(G)=L. Beweis: Sei L rekursiv aufzählbar und M zugehörige deterministische Turingmaschine, d.h., x L M akzeptiert x, x L M läuft endlos. 460
14 Vereinfachungen von M M kann modifiziert werden, so dass gilt: Der Startzustand q 0 wird nur zu Beginn der Rechnung benutzt. Es gibt nur einen akzept. Zustand q*. Vor dem Akzeptieren löscht M das Band. Startkonfiguration: q 0 w 1 w n Akzep. Konfiguration: q* 461
15 Rückwärtsrechnung von G V = Q {S,L,R,X,Y} (Γ Σ), Startsymbol S T = Σ Regeln: Bandalphabet 1. Erzeugung der Endkonfiguration: S Lq*R, q* q*b, q* Bq* 2. Rückwärtsrechnung: Eingabealphabet δ(q,a)=(q,a,1): a q qa, δ(q,a)=(q,a, 1): q ba bqa f.a. b Γ δ(q,a)=(q,a,0): q a qa. 462
16 3. Schlussregeln für den Test, ob tatsächlich eine Startkonfiguration beschrieben wird, und zum Löschen der Randmarkierungen: Bq 0 q 0 Lq 0 q 0 q 0 a ax f.a. a Σ Xa ax f.a. a Σ XB Y YB Y YR ε XR ε q 0 B Y Zeichen links des hergel. Wortes löschen Zum rechten Ende des hergel. Wortes gehen Zeichen rechts des hergel. Wortes löschen Sonderfall leeres Wort 463
17 Korrektheit 1. L(M) L(G). Sei c 1,,c m eine akzeptierende Rechnung für w 1 w n von M. Dann gibt es in G die Herleitung S Lq*R * LB Bq*B BR = LB Bc m B BR LB Bc m 1 B BR LB Bc 1 B BR = LB Bq 0 w 1 w n B BR * w 1 w n. 464
18 Korrektheit 2. L(G) L(M). Sei S Lq*R * w 1 w n Herleitung in G. L,R, Zustandssymbol können nur mit den Schlussregeln entfernt werden LB Bq 0 w 1 w n B BR wurde erreicht. Die Herleitung Lq*R * LB Bq 0 w 1 w n B BR entspricht einer umgekehrten Rechnung von M. M akzeptiert w 1 w n. 465
19 Beispiel Rechnung von M auf ab : q 0 ab cq 1 b cdq 2 B cq 3 db q 4 cbb q*bbb Herleitung in G: S Lq*R Lq*BR Lq*BBR Lq*BBBR Lq 4 cbbr Lcq 3 dbr Lcdq 2 BR Lcq 1 bbr Lq 0 abbr q 0 abbr axbbr abxbr abyr ab 466
20 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 nichtdeterministisch gewählte Ableitungsregel aus Vergleiche hergeleitetes Wort mit Eingabe, akzeptiere bei Gleichheit. 467
21 Umformung NTM DTM Satz T5.2.3: Wenn L durch eine NTM M akzeptiert wird, ist L rekursiv aufzählbar. Beweis: Konstruktion einer DTM für L: For i:=0 to Sim. alle Rechenwege von M der Länge i. Falls akzeptierende Konfiguration erreicht wird, akzeptiere. 468
22 Charakterisierung rek. aufz. Spr. Folgerung T5.2.4: Die Menge der rekursiv aufzählbaren Sprachen ist gleich 1. der Menge der von DTMs akzeptierten Sprachen, 2. der Menge der von NTMs akzeptierten Sprachen, 3. der Menge der von Chomsky-0- Grammatiken erzeugten Sprachen. 469
23 Chomsky-3-Grammatiken (T5.3) Ziel: Äquivalenz von Chomsky-3-Grammatiken und DFAs. 470
24 DFA Chomsky-3-Grammatik Satz T5.3.1: Sei M ein DFA für L. Dann gibt es auch eine rechtslineare Grammatik G für L. Beweis: Idee: Rechnung von M mit einer Grammatik simulieren. V=Q, T =Σ, S=q 0, Ableitungsregeln: q aq, falls δ(q,a)=q, q ε, falls q F. 471
25 Korrektheit Rechnung des DFA auf einem Wort w 1 w n : Zustandsfolge q 0,q 1,,q n mit δ(q i,w i+1 )=q i+1 und q n F. Rechnung der erzeugten Grammatik: q 0 w 1 q 1 w 1 w 2 q 2 w 1 w n q n w 1 w n q aq, falls δ(q,a)=q, q ε, falls q F. 472
26 Chomsky-3-Grammatik NFA Satz T5.3.1: Sei G eine rechtslineare Grammatik für L. Dann gibt es auch einen NFA M für L. Beweis: Sei rechtslin. Grammatik für L gegeben. Konstruktion des NFAs: Q=V, q 0 =S, F = {A Regel A ε vorhanden} δ(a,a)={b Regel A ab vorhanden} 473
27 Korrektheit Ableitung von w 1 w n hat die Form S w 1 A 1 w 1 w 2 A 2 w 1 w n A n w 1 w n Mögliche Zustandsfolge des NFAs bei Eingabe w 1,,w n : S A 1 A 2 A n Q=V, q 0 =S, F = {A Regel A ε vorhanden} δ(a,a)={b Regel A ab vorhanden} 474
28 Charakterisierung d. reg. Sprachen Folgerung: Die Menge der regulären Sprachen ist gleich der Menge der von DFAs oder NFAs erkannten Sprachen, der Menge der Sprachen, die durch reguläre Ausdrücke beschrieben werden, der Menge der Sprachen, die durch Chomsky-3-Grammatiken beschrieben werden. 475
29 Beobachtung Grammatiken sind ein auf natürliche Weise nichtdeterministisches Konzept. Simulationen von Ableitungen einer Grammatik werden mit Hilfe von nichtdeterministischen Maschinen besonders einfach. 476
30 Kontextfreie Sprachen (Kap. T6) Überblick: Beispiele kontextfreier Sprachen Chomsky-Normalform Wortproblem für kontextfreie Sprachen Pumping-Lemma Mehrdeutigkeit Algorithmen Unentscheidbare Probleme Greibach-Normalform Maschinenmodell für kontextfreie Sprachen 477
31 Beispiel: L={0 n 1 n n 1} Haben gesehen: L nicht regulär (Folien 338 und 346) Kontextfreie Grammatik: V={S}, Σ={0,1}, P={S 01, S 0S1} L kontextfrei 478
32 Variante: L={0 i 1 j 1 i j} Kontextfreie Grammatik: V={S}, Σ={0,1}, P={S 01, S 0S1, S S1} L kontextfrei 479
33 Bsp: Sprache der Palindrome L={w {0,1}* w=w R } Haben gesehen: L nicht regulär (Folie 347) Kontextfreie Grammatik G: V={S}, Σ={0,1}, P={S ε, S 0, S 1, S 0S0, S 1S1} Korrektheit: G erzeugt nur Palindrome. L(G) L Alle Palindrome können durch G erzeugt werden. L L(G) 480
34 G erzeugt nur Palindrome. Behauptung: Alle von G erzeugten Wörter w sind Palindrome. Induktion über w : w =0 oder w =1: ε, 0, 1 sind Palindrome. w >1: Die erste angewandte Regel ist S 0S0 oder S 1S1, d.h., w beginnt und endet mit demselben Buchstaben. Nach I.V. ist das Wort dazwischen Palindrom w Palindrom. V={S}, Σ={0,1}, P={S ε, S 0, S 1, S 0S0, S 1S1} 481
35 Alle Palindrome w in G herleitbar. Induktion über w : w =0 oder w =1: ε, 0, 1 sind herleitbar. w >1: w Palindrom w beginnt und endet mit 0 (bzw. 1); dazwischen befindet sich ein Palindrom w, also w=0w 0 oder w=1w 1. Nach I.V. ist w aus S herleitbar. S 0S0 * 0w 0 = w bzw. S 1S1 * 1w 1 = w. V={S}, Σ={0,1}, P={S ε, S 0, S 1, S 0S0, S 1S1} 482
36 Klammersprache w=w 1...w n {(,)}* heißt korrekt geklammert, falls die Anzahl ( ist gleich der Anzahl ). in jedem Anfangsstück w 1,...,w i (i n) ist die Anzahl ( nicht kleiner als die Anzahl ). Definiere L={w {(,)}* w korrekt geklammert} Nicht regulär Folie 349f Kontextfreie Grammatik: S SS, S (S), S ε. 483
37 Bsp: L={w w 0 = w 1 } w 0 : Anzahl Nullen in w, w 1 : Anzahl Einsen in w. Übungsaufgabe: Zeige, dass L nicht regulär. Kontextfreie Grammatik G: V={S}, Σ={0,1} P={S ε, S 0S1S, S 1S0S} Korrektheit: G erzeugt nur Wörter aus L. G erzeugt alle Wörter aus L. L(G) L L L(G) 484
38 Beispiel Ableitung von S 1S0S 11S0S0S 1100S 11001S0S S 1 S 0 S Syntaxbaum 1 S 0 S 1 S 0 S ε ε ε ε P={S ε, S 0S1S, S 1S0S} 485
39 Korrektheit: L(G) L G erzeugt nur Wörter aus L : folgt, da bei jedem Ableitungsschritt gleichviele Nullen wie Einsen erzeugt werden. P={S ε, S 0S1S, S 1S0S} 486
40 Korrektheit: L L(G) Induktion über w w =0 w=ε L(G). w >0, o.b.d.a. beginne w mit 0. Sei i>0 kleinste Zahl m. w 1 w i 0 = w 1 w i 1. Dann gilt: w 1 =0, w i =1, w 2 w i 1 0 = w 2 w i 1 1 und w i+1 w n 0 = w i+1 w n 1. Also w 2 w i 1 L und w i+1 w n L und S 0S1S * 0w 2 w i 1 1w i+1 w n. I.V. 487
41 Syntaxbaum Graphische Darstellung der Ableitung eines Wortes Wurzel: markiert mit S. Blätter: markiert mit Terminalen/Buchstaben oder ε. Innere Knoten: markiert mit Variablen A Nachfolger entsprechen Anwendung einer Ableitungsregel A α 1 α r. 488
42 Anmerkungen Zu jeder Ableitung gibt es einen Syntaxbaum. Zu einem Syntaxbaum kann es mehrere (äquivalente) Ableitungen geben. Linksableitung: Ableitung, bei der die jeweils linkeste Variable ersetzt wird. Rechtsableitung: Ableitung, bei der die jeweils rechteste Variable ersetzt wird. 489
43 Eindeutigkeit und Mehrdeutigkeit Definition T6.1.5: Eine kontextfreie Grammatik G heißt eindeutig, wenn es für jedes Wort w L(G) nur einen Syntaxbaum gibt. Eine kontextfreie Sprache heißt eindeutig, wenn es für sie eine eindeutige kontextfreie Grammatik gibt, anderenfalls heißt sie inhärent mehrdeutig. 490
44 Beispiel: Klammersprache Die Grammatik S SS, S (S), S ε ist nicht eindeutig. Beispiel: ()()() Linksableitungen: S SS SSS (S)SS ()SS ()(S)S ()()S ()()(S) ()()() S SS (S)S ()S ()SS ()(S)S ()()S ()()(S) ()()() Eindeutige Grammatik: S (S)S, S ε 491
45 Weiteres Beispiel S ε, S 0S1S, S 1S0S ist mehrdeutig: das Wort hat die Linksableitungen S 0S1S 01S0S1S 011S0SS0S1S * und S 0S1S 01S 011S0S 0110S 01100S1S * Etwas schwieriger: Konstruktion einer eindeutigen Grammatik. 492
46 Beispiel Die Grammatik S 01, S 0S1 für L={0 n 1 n n 1} ist eindeutig. 493
47 Motivation Nahe liegende Vermutung: Syntaxanalyse für eindeutige Grammatiken einfacher. Verschiedene Ableitungsbäume haben bei Programmiersprachen häufig verschiedene Semantiken, Beispiel: dangling else. 494
48 Chomsky-Normalform Ziel: einfachere Algorithmen für kontextfreie Grammatiken. Definition T6.2.1: Eine kontextfreie Grammatik ist in Chomsky-Normalform, wenn alle Ableitungsregeln von der Form A BC oder A a (mit A,B,C V, a T) sind. 495
49 Chomsky-Normalform Besonderheit: ε kann nicht erzeugt werden. Im Folgenden Umformung G G Kontextfreie Kontextfreie Grammatik Grammatik in Chomsky-Normalform mit L(G ) = L(G) {ε} 496
50 Umformung Sei s(g) die Größe (Anzahl der Buchstaben in allen Produktionen) der kontextfreien Grammatik G. Satz T6.2.2: Eine kontextfreie Grammatik G kann in Zeit O(s(G) 2 ) in Chomsky- Normalform umgeformt werden. Beweis: Umformung in 4 Schritten 497
51 Schritt 1: Separation Ziel: Auf den rechten Seiten der Regeln entweder 1 Terminal oder nur Variablen. Dazu: erzeuge für jedes a T eine neue Variable Y a und die Regel Y a a, Ersetze auf jeder rechten Seite einer Regel a durch Y a. 498
52 Beispiel für Schritt 1 A AbcDeF (mit A,D,F V, b,c,e T) wird ersetzt durch A AY b Y c DY e F, Y b b, Y c c, Y e e 499
53 Schritt 2: Lange rechte Seiten A B 1 B m (mit m 3, A,B 1,,B m V) wird ersetzt durch A B 1 C 1 C 1 B 2 C 2 C i B i+1 C i+1 (für 1 i m 3) C m 2 B m 1 B m Dabei sind C 1,,C m 2 neue Variablen, die nur für die betrachtete Regel eingeführt werden. 500
54 Resultat der Schritte 1 und 2 Nur noch Regeln der Form: A ε (ε-regeln) A B (Kettenregeln) A BC (o.k.) A a (o.k.) Bisher: Grammatik hat sich nur um konstanten Faktor vergrößert. 501
55 Schritt 3: Beseitigung der ε-regeln 1. Teilschritt: Finde alle Var. A mit A ε. * Initialisierung: Variablen A mit Regel A ε in Mengen V und Q einfügen. Solange Q Variable B aus Q entnehmen. Auf allen rechten Seiten von allen Regeln B durch ε ersetzen. Falls neue Regel C ε entsteht (d.h. C V ): C in V und Q aufnehmen. Ausgabe: V 502
56 Korrektheit des 1. Teilschritts Behauptung: V enthält genau die Variablen A mit A * ε. offensichtlich. Induktion über die Länge l der kürzesten Ableitung A * ε. l=1: Es gibt die Regel A ε. Dann wird A in V eingefügt. l>1: Dann A BC * ε oder A B * ε. Dann haben B (und C) ε-ableitungen mit Länge <l und kommen in V. A wird in V aufgenommen. 503
57 Beseitigung der ε-regeln, 2. Teil Entferne alle ε-regeln. Für jede Regel A BC: Falls B V : erzeuge Regel A C, falls C V : erzeuge Regel A B. Resultat: Grammatik vergrößert sich nur um konstanten Faktor. 504
58 Schritt 4: Entf. der Kettenregeln 1. Teilschritt: Äquivalente Variablen entfernen. Erzeuge Graphen: Knoten: Variablen Kante A B, falls Kettenregel A B vorh. Suche mit DFS nach Kreisen A 1 A 2 A 3 A r A 1 Dann sind A 2,,A r zu A 1 äquivalent und können überall durch A 1 ersetzt werden. 505
59 Schritt 4: Entf. der Kettenregeln 2. Teilschritt: Kettenregeln beseitigen Ber. Graphen d. Kettenregeln, ist kreisfrei. Ber. topologische Ordnung A 1,,A r. For i:=r downto 1 do Seien A i α 1,,A i α s die Regeln mit linker Seite A i. Falls A j A i mit j<i vorhanden, lösche A j A i und erzeuge A j α 1,,A j α s. 506
60 Beispiel für den 2. Teilschritt Graph der Kettenregeln (auf A,B,C,D,E): 1 A 3 D a C B E b 2 RS Topologische Nummerierung berechnen Regeln für E: C b, C RS, B b, B RS Regeln für D: C a, (C b) 4 5 Regeln für C: A a, A b, A RS, B a, B b, B RS 507
61 Größenänderung im 4. Schritt Sei A 1,,A r die topol. Ordnung der Var. Im ungünstigen Fall: Alle A r -Regeln werden zu A 1 -,...,A r 1 - Regeln, alle A r 1 -Regeln werden zu A 1 -,...,A r 2 - Regeln, usw. Höchstens Quadrierung der Größe. 508
62 Folgerung Zu jeder kontextfreien Grammatik G gibt es eine äquivalente kontextsensitive Grammatik, also L 2 L 1. Chomsky-Hierarchie L 3 L 2 L 1 L 0 {0 n 1 n } Alle kontextsens. Sprachen sind rekursiv. {w w a = w b = w c } 509
Zusammenfassung. Endliche Sprachen. Fazit zu endlichen Automaten. Teil 4: Grammatiken und Syntaxanalyse
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 L. Zusammenfassung Beschreibungsformen für reguläre Sprachen:
MehrUmformung 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
MehrEndliche 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
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 L. 447 Zusammenfassung Beschreibungsformen für reguläre Sprachen:
MehrAbschluss gegen Substitution. Wiederholung. Beispiel. Abschluss gegen Substitution
Wiederholung Beschreibungsformen für reguläre Sprachen: DFAs NFAs Reguläre Ausdrücke:, {ε}, {a}, und deren Verknüpfung mit + (Vereinigung), (Konkatenation) und * (kleenescher Abschluss) Abschluss gegen
MehrKlammersprache Definiere
Klammersprache w=w 1...w n {(,)}* heißt korrekt geklammert, falls die Anzahl ( ist gleich der Anzahl ). in jedem Anfangsstück w 1,...,w i (i n) ist die Anzahl ( nicht kleiner als die Anzahl ). Definiere
MehrInformatik III - WS07/08
Informatik III - WS07/08 Kapitel 5 1 Informatik III - WS07/08 Prof. Dr. Dorothea Wagner dwagner@ira.uka.de Kapitel 5 : Grammatiken und die Chomsky-Hierarchie Informatik III - WS07/08 Kapitel 5 2 Definition
MehrRekursiv aufzählbare Sprachen
Kapitel 4 Rekursiv aufzählbare Sprachen 4.1 Grammatiken und die Chomsky-Hierarchie Durch Zulassung komplexer Ableitungsregeln können mit Grammatiken größere Klassen als die kontextfreien Sprachen beschrieben
MehrOgden s Lemma (T6.4.2)
Weiteres Beispiel L={a r b s c t d u r=0 s=t=u} Nahe liegende Vermutung: L nicht kontextfrei. Kann man mit dem Pumping-Lemma nicht zeigen. r=0: Pumpen erzeugt Wort aus L. r>0: Pumpen der a s erzeugt Wort
Mehrkontextfreie 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
MehrDas Halteproblem für Turingmaschinen
Das Halteproblem für Turingmaschinen Das Halteproblem für Turingmaschinen ist definiert als die Sprache H := { T w : T ist eine TM, die bei Eingabe w {0, 1} hält }. Behauptung: H {0, 1} ist nicht entscheidbar.
MehrAutomaten 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
MehrTheoretische Grundlagen der Informatik. Vorlesung am 8. Januar INSTITUT FÜR THEORETISCHE INFORMATIK
Theoretische Grundlagen der Informatik 0 08.01.2019 Torsten Ueckerdt - Theoretische Grundlagen der Informatik KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Letzte Vorlesung Eine
MehrKapitel: 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
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 13.01.2011 INSTITUT FÜR THEORETISCHE INFORMATIK 0 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrTheoretische 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
MehrTheoretische Grundlagen der Informatik. Vorlesung am 17. Januar INSTITUT FÜR THEORETISCHE INFORMATIK
Theoretische Grundlagen der Informatik 0 17.01.2019 Torsten Ueckerdt - Theoretische Grundlagen der Informatik KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Evaluation Ergebnisse
MehrWas bisher geschah Chomsky-Hierarchie für Sprachen: L 0 Menge aller durch (beliebige) Grammatiken beschriebenen Sprachen L 1 Menge aller monotonen
Was bisher geschah Chomsky-Hierarchie für Sprachen: L 0 Menge aller durch (beliebige) Grammatiken beschriebenen Sprachen L 1 Menge aller monotonen (Kontextsensitive) Sprachen L 2 Menge aller kontextfreien
MehrTheoretische 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
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 10.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik
MehrÜbungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 18/19
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 6 Vorlesung Theoretische Grundlagen der Informatik im WS 18/19 Ausgabe 8. Januar 2019 Abgabe 22. Januar 2019, 11:00 Uhr (im
MehrEin Fragment von Pascal
Ein Fragment von Pascal Wir beschreiben einen (allerdings sehr kleinen) Ausschnitt von Pascal durch eine kontextfreie Grammatik. Wir benutzen das Alphabet Σ = {a,..., z, ;, :=, begin, end, while, do} und
MehrOgden s Lemma: Der Beweis (1/5)
Ogden s Lemma: Der Beweis (1/5) Wir betrachten zuerst die Rahmenbedingungen : Laut dem auf der vorhergehenden Folie zitierten Satz gibt es zur kontextfreien Sprache L eine Grammatik G = (Σ, V, S, P) in
MehrTheoretische 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
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung 17.11.2006 schindel@informatik.uni-freiburg.de 1 Prinzip des Kellerautomats Push-Down-Automaton (PDA) Ein Kellerautomat vereinigt
MehrLemma Für jede monotone Grammatik G gibt es eine kontextsensitive
Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive Grammatik G mit L(G) = L(G ). Beweis im Beispiel (2.): G = (V,Σ, P, S) : P = {S asbc, S abc, CB BC, ab ab, bb bb, bc bc, cc cc}. (i) G
MehrKontextfreie Sprachen. Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester Kontextfreie Sprachen
Automaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2012 Dr. Sander Bruggink Übungsleitung: Jan Stückrath Wortproblem: der CYK-Algorithmus Pumping Lemma für kontextfreie Sprachen
MehrVorlesung Theoretische Informatik (Info III)
1 Vorlesung Theoretische Informatik (Info III) Prof. Dr. Dorothea Wagner Dipl.-Math. Martin Holzer 22. Januar 2008 Einleitung Motivation 2 Thema heute Kontextfreie Grammatiken: Lemma von Ogden Eigenschaften
MehrKellerautomaten u. kontextfr. Spr.
Kellerautomaten u. kontextfr. Spr. Ziel: Maschinenmodell für die kontextfreien Sprachen. Überblick Greibach-Normalform für kontextfreie Grammatiken Kellerautomaten Beziehung zwischen Kellerautomaten und
MehrFormale Sprachen. Script, Kapitel 4. Grammatiken
Formale Sprachen Grammatiken Script, Kapitel 4 erzeugen Sprachen eingeführt von Chomsky zur Beschreibung natürlicher Sprache bedeutend für die Syntaxdefinition und -analyse von Programmiersprachen Automaten
MehrBeispiel Produktautomat
Beispiel Produktautomat 0 1 p 0 p 1 p 2 q 0 q 1 445 Vereinfachte Konstruktion f. NFAs Seien M 1,M 2 NFAs f. die Sprachen L 1 und L 2. Konstruktion eines NFAs für L 1 L 2 : Erzeuge Kopien von M 1 und M
MehrÜbersicht. 3 3 Kontextfreie Sprachen
Formale Systeme, Automaten, Prozesse Übersicht 3 3.1 Kontextfreie Sprachen und Grammatiken 3.2 Ableitungsbäume 3.3 Die pre -Operation 3.4 Entscheidungsprobleme für CFGs 3.5 Normalformen für CFGs 3.6 Chomsky-Normalform
MehrSeien M 1,M 2 NFAs f. die Sprachen L 1 und L 2. Konstruktion eines NFAs für L 1 L 2 : Erzeuge Kopien von M 1 und M 2. p 1
Beispiel Produktautomat p Vereinfachte Konstruktion f. NFAs Seien M,M 2 NFAs f. die Sprachen L und L 2. Konstruktion eines NFAs für L L 2 : Erzeuge Kopien von M und M 2. p q q p 2 Erzeuge neuen Startzustand
MehrSuche nach einem solchen Kreis. Endlichkeitstest. Vereinigung und Durchschnitt. Abschlusseigenschaften
Endlichkeitstest Eingabe: DFA/NFA M. Frage: Ist die von M akzeptierte Sprache endlich? Nahe liegende Beobachtung: In einem DFA/NFA, der eine unendliche Sprache akzeptiert, muss es einen Kreis geben, der
MehrTheoretische Informatik II
Theoretische Informatik II Einheit 4.2 Modelle für Typ-0 & Typ-1 Sprachen 1. Nichtdeterministische Turingmaschinen 2. Äquivalenz zu Typ-0 Sprachen 3. Linear beschränkte Automaten und Typ-1 Sprachen Maschinenmodelle
MehrPotenzmengenkonstruktion. Vergleich DFAs NFAs. NFA DFA ohne überflüssige Zust. Ansatz nicht praktikabel
Vergleich DFAs NFAs Frage: Können NFAs nichtreguläre Sprachen erkennen? NEIN Potenzmengenkonstruktion Gegeben: NFA (Q,Σ,q 0,δ,F), konstruiere DFA: Q =P (Q), q 0 = {q 0 }, F ={q q F } Satz T4.4.5: Zu jedem
MehrGrundlagen 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
MehrTheoretische Informatik. Grammatiken. Grammatiken. Grammatiken. Rainer Schrader. 9. Juli 2009
Theoretische Informatik Rainer Schrader Institut für Informatik 9. Juli 2009 1 / 41 2 / 41 Gliederung die Chomsky-Hierarchie Typ 0- Typ 3- Typ 1- Die Programmierung eines Rechners in einer höheren Programmiersprache
MehrAlgorithmen 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
MehrMusterlösung Informatik-III-Nachklausur
Musterlösung Informatik-III-Nachklausur Aufgabe 1 (2+2+4+4 Punkte) (a) L = (0 1) 0(0 1) 11(0 1) 0(0 1) (b) Der Automat ist durch folgendes Übergangsdiagramm gegeben: 0, 1 0, 1 0, 1 0, 1 0 s q 1 1 0 0 q
MehrSei Σ 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
Mehr5.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Ü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
MehrGrammatiken. Einführung
Einführung Beispiel: Die arithmetischen Ausdrücke über der Variablen a und den Operationen + und können wie folgt definiert werden: a, a + a und a a sind arithmetische Ausdrücke Wenn A und B arithmetische
MehrVorlesung Automaten und Formale Sprachen Sommersemester Beispielsprachen. Sprachen
Vorlesung Automaten und Formale Sprachen Sommersemester 2018 Prof. Barbara König Übungsleitung: Christina Mika-Michalski Wörter Wort Sei Σ ein Alphabet, d.h., eine endliche Menge von Zeichen. Dann bezeichnet
MehrGrammatiken. Grammatiken sind regelbasierte Kalküle zur Konstruktion von Systemen und Sprachen Überprüfung von Systemen und Sprachen
Grammatiken Grammatiken sind regelbasierte Kalküle zur Konstruktion von Systemen und Sprachen Überprüfung von Systemen und Sprachen Grammatiken eignen sich besonders zur Modellierung beliebig tief geschachtelter,
MehrDisMod-Repetitorium Tag 4
DisMod-Repetitorium Tag 4 Endliche Automaten, Reguläre Sprachen und Kontextfreie Grammatiken 22. März 2018 1 Endliche Automaten Definition DFA Auswertungen Äquivalenzrelationen Verschmelzungsrelation und
MehrGrammatiken und die Chomsky-Hierarchie
Grammatiken und die Chomsky-Hierarchie Def.: Eine Grammatik G=(Σ,V,S,R) besteht aus endlichem Alphabet Σ endlicher Variablenmenge V mit V Σ= Startsymbol SєV endlicher Menge R с (V Σ) + x(v Σ)* von Ableitungsregeln
MehrDas 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
MehrFORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 19.
Wiederholung FORMALE SYSTEME 4. Vorlesung: Nichtdeterministische Endliche Automaten Markus Krötzsch Professur für Wissensbasierte Systeme Grammatiken können Sprachen beschreiben und sie grob in Typen unterteilen
MehrDefinition 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,
MehrI.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
MehrFORMALE 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
MehrKontextfreie Sprachen werden von PDAs akzeptiert
Kontextfreie Sprachen werden von PDAs akzeptiert Sei G = (Σ, V, S, P) eine kontextfreie Grammatik. Dann gibt es einen PDA A mit L(A) = L(G). Der PDA A arbeitet mit nur einem Zustand q 0, besitzt das Kelleralphabet
MehrGrundlagen 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,
MehrMehrdeutige Grammatiken
Mehrdeutige Grammatiken Wir haben gesehen, dass es auch mehr als eine Linksableitung, d.h. mehr als einen Syntaxbaum geben kann, um das selbe Terminalwort zu erzeugen. Eine Grammatik, die für mindestens
MehrKapitel 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
Mehr2.4 Kontextsensitive und Typ 0-Sprachen
Definition 2.43 Eine Typ 1 Grammatik ist in Kuroda Normalform, falls alle Regeln eine der folgenden 4 Formen haben: Dabei: A, B, C, D V und a Σ. Satz 2.44 A a, A B, A BC, AB CD. Für jede Typ 1 Grammatik
MehrDefinition 78 Ein NPDA = PDA (= Nichtdeterministischer Pushdown-Automat) besteht aus:
4.7 Kellerautomaten In der Literatur findet man häufig auch die Bezeichnungen Stack-Automat oder Pushdown-Automat. Kellerautomaten sind, wenn nichts anderes gesagt wird, nichtdeterministisch. Definition
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (IV) 15.06.2016 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie
MehrLö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,
MehrKontextfreie 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
MehrRegulä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Ü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
MehrSpracherkennung (Syntaxanalyse)
Kellerautomaten Kellerautomaten 8 Spracherkennung (Syntaxanalyse) Algorithmus gesucht, der für L T (möglichst schnell) entscheidet, ob w L (Lösung des Wortproblems) Grammatik Automat Aufwand rechtslinear
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 13. Vorlesung 07.12.2006 1 Überblick: Die Church- Turing-These Turing-Maschinen 1-Band Turing-Maschine Mehrband-Turing-Maschinen Nichtdeterministische
Mehr3. Vorlesung: Endliche Automaten Markus Kr otzsch Lehrstuhl Wissensbasierte Systeme
Wiederholung Mit Grammatiken können wir Sprachen beschreiben und sie grob in Typen unterteilen: FORMALE SYSTEME 3. Vorlesung: Endliche Automaten Markus Krötzsch Lehrstuhl Wissensbasierte Systeme Formale
MehrF2 Zusammenfassung Letzte Tips zur Klausur
F2 Zusammenfassung Letzte Tips zur Klausur Berndt Farwer FB Informatik, Uni HH F2-ommersemester 2001-(10.6.) p.1/15 Funktionen vs. Relationen Funktionen sind eindeutig, Relationen brauchen nicht eindeutig
Mehrq 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
MehrEinführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie
Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/2006 07.02.2006 28. und letzte Vorlesung 1 Die Chomsky-Klassifizierung Chomsky-Hierachien 3: Reguläre Grammatiken
MehrKontextfreie Sprachen
Kontextfreie Sprachen Bedeutung: Programmiersprachen (Compilerbau) Syntaxbäume Chomsky-Normalform effiziente Lösung des Wortproblems (CYK-Algorithmus) Grenzen kontextfreier Sprachen (Pumping Lemma) Charakterisierung
Mehr1 Σ 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
Mehr2. Ü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
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Übung am 4.2.2011 INSTITUT FÜR THEORETISCHE INFORMATIK 0 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrÜ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
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik Sommersemester 2015 23.04.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt 1. Terminologie 2. Endliche Automaten und reguläre Sprachen
MehrFormalismen 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) =
MehrNormalformen für kontextfreie Grammatiken. Noam CHOMSKY, Sheila GREIBACH. Bäume. Ableitungen in kontextfreien Grammatiken. Grammatik G = (N,T,P,S)
Noam CHOMSKY, Sheila GREIBACH Normalformen für kontextfreie Grammatiken Noam CHOMSKY (*1928 ) Sheila GREIBACH (*1939) Grammatik G = (N,T,P,S) GREIBACH Normalform: A aw, w N* Erweiterte GREIBACH Normalform:
MehrTheoretische Informatik 2
Theoretische Informatik 2 Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2009/10 Die Chomsky-Hierarchie Definition Sei G = (V, Σ, P, S) eine Grammatik. 1 G heißt vom Typ 3 oder
MehrInformatik III. Arne Vater Wintersemester 2006/ Vorlesung
Informatik III Arne Vater Wintersemester 2006/07 10. Vorlesung 24.11.2006 1 Turingmaschinen Informatik III 9. Vorlesung - 2 Turingmaschinen Eine (deterministische 1-Band) Turingmaschine (DTM) wird beschrieben
MehrNoam CHOMSKY, Sheila GREIBACH
Noam CHOMSKY, Sheila GREIBACH Noam CHOMSKY (*1928 ) Sheila GREIBACH (*1939) Normalformen für kontextfreie Grammatiken Grammatik G = (N,T,P,S) GREIBACH Normalform: A aw, w N* Erweiterte GREIBACH Normalform:
MehrGrundlagen 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:
Mehr2.1 Allgemeines. Was ist eine Sprache? Beispiele:
Was ist eine Sprache? Beispiele: (a) Deutsch, Japanisch, Latein, Esperanto,...: Natürliche Sprachen (b) Pascal, C, Java, Aussagenlogik,...: Formale Sprachen Wie beschreibt man eine Sprache? (i) Syntax
Mehr(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),
Mehr1 Σ 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
Mehr6 Kontextfreie Grammatiken
6 Kontextfreie Grammatiken Reguläre Grammatiken und damit auch reguläre Ausdrücke bzw. endliche Automaten haben bezüglich ihres Sprachumfangs Grenzen. Diese Grenzen resultieren aus den inschränkungen,
MehrMehrdeutige Grammatiken
Mehrdeutige Grammatiken Wir haben gesehen, dass es auch mehr als eine Linksableitung, d.h. mehr als einen Syntaxbaum geben kann, um das selbe Terminalwort zu erzeugen. Eine Grammatik, die für mindestens
MehrFormale 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,
MehrGrammatiken. 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 /
MehrAutomatentheorie 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
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 18.01.2011 INSTITUT FÜR THEORETISCHE INFORMATIK 0 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrÄquivalenzrelation R A zu DFA A. Rechtsinvarianz. Relation R L zur Sprache L
Rechtsinvarianz Definition T4.2.8: Eine Äquivalenzrelation R auf Σ* heißt rechtsinvariant, wenn x R y z Σ*: xz R yz. Index von R: Anzahl der Äquivalenzklassen von R. Notation: ind(r) Im Folgenden: 2 rechtsinvariante
MehrÜ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
MehrDeterministischer 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,δ,
Mehr8. Turingmaschinen und kontextsensitive Sprachen
8. Turingmaschinen und kontextsensitive Sprachen Turingmaschinen (TM) von A. Turing vorgeschlagen, um den Begriff der Berechenbarkeit formal zu präzisieren. Intuitiv: statt des Stacks bei Kellerautomaten
MehrLösungen zur 1. Klausur. Einführung in Berechenbarkeit, formale Sprachen und Komplexitätstheorie
Hochschuldozent Dr. Christian Schindelhauer Paderborn, den 21. 2. 2006 Lösungen zur 1. Klausur in Einführung in Berechenbarkeit, formale Sprachen und Komplexitätstheorie Name :................................
MehrEinfü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-
MehrWS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven
WS06/07 Referentin: Katharina Blinova Formale Sprachen Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven 1. Allgemeines 2. Formale Sprachen 3. Formale Grammatiken 4. Chomsky-Hierarchie 5.
Mehr