Teil 4: Grammatiken und Syntaxanalyse. (Kapitel T5-T7)

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Teil 4: Grammatiken und Syntaxanalyse. (Kapitel T5-T7)"

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

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

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

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

Abschluss gegen Substitution. Wiederholung. Beispiel. Abschluss gegen Substitution

Abschluss 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

Mehr

Rekursiv aufzählbare Sprachen

Rekursiv 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

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

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

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

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

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

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

Mehr

Grammatiken. Einführung

Grammatiken. 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

Mehr

Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive

Lemma 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

Mehr

Formale Sprachen. Script, Kapitel 4. Grammatiken

Formale 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

Mehr

Grammatiken und die Chomsky-Hierarchie

Grammatiken 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

Mehr

Theoretische Informatik II

Theoretische 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

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

Suche nach einem solchen Kreis. Endlichkeitstest. Vereinigung und Durchschnitt. Abschlusseigenschaften

Suche 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

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

Ü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

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

Theoretische 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

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

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

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

Grammatiken. 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 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,

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

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

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

2.4 Kontextsensitive und Typ 0-Sprachen

2.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

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

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

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.02.2006 28. und letzte Vorlesung 1 Die Chomsky-Klassifizierung Chomsky-Hierachien 3: Reguläre Grammatiken

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

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

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 Bedeutung: Programmiersprachen (Compilerbau) Syntaxbäume Chomsky-Normalform effiziente Lösung des Wortproblems (CYK-Algorithmus) Grenzen kontextfreier Sprachen (Pumping Lemma) Charakterisierung

Mehr

2.1 Allgemeines. Was ist eine Sprache? Beispiele:

2.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

Ü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

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

Grundlagen der Theoretischen Informatik

Grundlagen 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

Mehr

Normalformen für kontextfreie Grammatiken. Noam CHOMSKY, Sheila GREIBACH. Bäume. Ableitungen in kontextfreien Grammatiken. Grammatik G = (N,T,P,S)

Normalformen 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:

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

Theoretische Informatik 2

Theoretische 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

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

(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

Mehrdeutige Grammatiken

Mehrdeutige 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

Mehr

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

WS06/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 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

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

6 Kontextfreie Grammatiken

6 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,

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

8. Turingmaschinen und kontextsensitive Sprachen

8. 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

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

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

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

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

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

H MPKP. Beispiel für eine Rechnung. Reduktion H MPKP. Überführungsregeln

H MPKP. Beispiel für eine Rechnung. Reduktion H MPKP. Überführungsregeln H MPKP Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen. Beispiel für eine Rechnung ##q ab##xq b##xyq 2 ##xyzq 3 ##xyq 4

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

Lösungen zur 1. Klausur. Einführung in Berechenbarkeit, formale Sprachen und Komplexitätstheorie

Lö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 :................................

Mehr

Theoretische Informatik Mitschrift

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

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

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

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

Falls H die Eingabe verwirft, so wissen wir, dass M bei Eingabe w nicht hält. M hält im verwerfenden Haltezustand. Beweis: 1 Unentscheidbarkeit 2 Grundlagen der Theoretischen Informatik Till Mossakowski Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Wintersemester 2014/15 #include char *s="include

Mehr

Teil V. Weiterführende Themen, Teil 1: Kontextsensitive Sprachen und die Chomsky-Hierarchie

Teil V. Weiterführende Themen, Teil 1: Kontextsensitive Sprachen und die Chomsky-Hierarchie Teil V Weiterführende Themen, Teil 1: Kontextsensitive Sprachen und die Chomsky-Hierarchie Zwei Sorten von Grammatiken Kontextsensitive Grammatik (CSG) (Σ, V, P, S), Regeln der Form αaβ αγβ α, β (Σ V ),

Mehr

Tutorium 23 Grundbegriffe der Informatik (10. Sitzung)

Tutorium 23 Grundbegriffe der Informatik (10. Sitzung) Tutorium 23 Grundbegriffe der Informatik (10. Sitzung) Tutor: Felix Stahlberg SOFTWARE DESIGN AND QUALITY GROUP Source: pixelio.de KIT The cooperation of Forschungszentrum Karlsruhe GmbH and Universität

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 12.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

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

Aufgabentypen: Spickerblatt: kontextfrei (Typ 2): zusätzlich: u ist eine!# v 1 Info4 Stoff Aufgabentypen: Grammatik CH einordnen NFA DFA Grammatik Chomsky-NF CYK-Algorithmus: Tabelle / Ableitungsbäume Grammatik streng kf. Grammatik Grammatik Pumping Lemma Beweis, dass Gr. nicht reg,

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

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

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 11. Kontextsensitive und Typ-0-Sprachen Malte Helmert Gabriele Röger Universität Basel 7. April 2014 Kontextsensitive und allgemeine Grammatiken Wiederholung: (kontextsensitive)

Mehr

Algorithmen und Datenstrukturen I - Exkurs Formale Sprachen -

Algorithmen und Datenstrukturen I - Exkurs Formale Sprachen - Algorithmen und Datenstrukturen I - Exkurs Formale Sprachen - Thies Pfeiffer Technische Fakultät tpfeiffe@techfak.uni-bielefeld.de Vorlesung, Universität Bielefeld, Winter 2012/2013 1 / 1 Exkurs: Formale

Mehr

Grundlagen der Theoretischen Informatik

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

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

Nachklausur zur Vorlesung Informatik 3 mit einigen Anmerkungen zu Lösungen

Nachklausur zur Vorlesung Informatik 3 mit einigen Anmerkungen zu Lösungen Nachklausur zur Vorlesung Informatik 3 mit einigen Anmerkungen zu Lösungen Aufgabe 1 2 3 4 5 6 7 max. Punkte 6 6 7 7 8 8 12 err. Punkte Gesamtpunktzahl: Note: 1 Aufgabe 1 (3+1+1+1 = 6 Punkte) Es seien

Mehr

1 Automatentheorie und Formale Sprachen

1 Automatentheorie und Formale Sprachen Sanders: TGI October 29, 2015 1 1 Automatentheorie und Formale Sprachen 1.1 Allgemeines Sanders: TGI October 29, 2015 2 Beispiel: Arithmetische Ausdrücke:EXPR Σ={1,a,+,,,(,)} a ist Platzhalter für Konstanten

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

5.7 Kontextfreie Grammatiken und Kellerautomaten

5.7 Kontextfreie Grammatiken und Kellerautomaten 130 5.7 Kontextfreie Grammatiken und Kellerautomaten Im letzten Abschnitt haben wir gesehen, dass wir reguläre Sprachen auch mit Hilfe von endlichen Automaten charakterisieren können. Jetzt wollen wir

Mehr

11.1 Kontextsensitive und allgemeine Grammatiken

11.1 Kontextsensitive und allgemeine Grammatiken Theorie der Informatik 7. April 2014 11. Kontextsensitive und Typ-0-Sprachen Theorie der Informatik 11. Kontextsensitive und Typ-0-Sprachen 11.1 Kontextsensitive und allgemeine Grammatiken Malte Helmert

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

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

Typ-1-Sprachen. Satz 1 (Kuroda ( ) 1964) Typ-1-Sprachen Satz 1 (Kuroda (1934-2009) 1964) Eine Sprache L hat Typ 1 (= ist kontextsensitiv) genau dann, wenn sie von einem nichtdeterministischen LBA erkannt wird. Beweis: Sei zunächst L Typ-1-Sprache.

Mehr

Alphabet, formale Sprache

Alphabet, formale Sprache n Alphabet Alphabet, formale Sprache l nichtleere endliche Menge von Zeichen ( Buchstaben, Symbole) n Wort über einem Alphabet l endliche Folge von Buchstaben, die auch leer sein kann ( ε leere Wort) l

Mehr

16. Die Chomsky-Hierarchie

16. Die Chomsky-Hierarchie 16. Die Chomsky-Hierarchie Die Chomsky-Sprachen sind gerade die rekursiv aufzählbaren Sprachen: CH = RA Da es nicht rekursive (d.h. unentscheidbare) r.a. Sprachen gibt, ist das Wortproblem für Chomsky-Grammatiken,

Mehr

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

Turingmaschinen Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: Komplexitätstheorie und effiziente Algorithmen Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: und effiziente Algorithmen Wintersemester 2011/12 Schematische Darstellung einer Turing-Maschine: Kopf kann sich nach links und

Mehr

Satz (Abschluß unter der Stern-Operation)

Satz (Abschluß unter der Stern-Operation) Satz (Abschluß unter der Stern-Operation) Wenn L eine reguläre Sprache ist, dann ist auch L regulär. Beweis: Es gibt einen NFA M = (Z, Σ, S, δ, S, E) mit L(M) = L. Wir bauen aus diesem NFA nun wie folgt

Mehr

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

Turing: prinzipielle Berechenbarkeit Abschnitt 4.2. Turingmaschinen: DTM Abschnitt 4.2. DTM: Akzeptieren und Entscheiden Abschnitt 4. Kap. 4: Berechnungsmodelle Turingmaschinen 4.2 Turing: prinzipielle Berechenbarkeit Abschnitt 4.2 Kap. 4: Berechnungsmodelle Turingmaschinen 4.2 Turingmaschinen: DTM Abschnitt 4.2 DTM = DFA + unbeschränkter

Mehr

1.5 Turing-Berechenbarkeit

1.5 Turing-Berechenbarkeit A.M. Turing (1937): Maschinenmodell zur exakten Beschreibung des Begriffs effektiv berechenbar Stift Mensch a c b b Rechenblatt a b b c Lese-/Schreibkopf endliche Kontrolle Turingmaschine Eine Turingmaschine

Mehr

Speicherplatz-Komplexität 1 / 30

Speicherplatz-Komplexität 1 / 30 Speicherplatz-Komplexität 1 / 30 Speicherplatz-Komplexität Warum sollte uns die Ressource Speicherplatz interessieren? Um die Komplexität der Berechnung von Gewinnstrategien für viele nicht-triviale 2-Personen

Mehr

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

Ein Satz der deutschen Sprache besitzt ein Subjekt, ein Prädikat und ein Objekt (SPO). 1 Grammatiken Autor: Tilman Blumenbach Letzte Änderung: 28. Juni 2012 18:15 Ziel von Grammatiken Wollen die Struktur von Sprachen modellieren und charakterisieren. Beispiel Ein Satz der deutschen Sprache

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

Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (ii) ε ist ein regulärer Ausdruck über Σ.

Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (ii) ε ist ein regulärer Ausdruck über Σ. Reguläre Ausdrücke Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (i) ist ein regulärer Ausdruck über Σ. (ii) ε ist ein regulärer Ausdruck über Σ. (iii) Für jedes a Σ ist a ein regulärer

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

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

Grundbegriffe der Informatik Tutorium 33

Grundbegriffe der Informatik Tutorium 33 Tutorium 33 02.02.2017 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Gliederung 1 2 3 Ein ist ein Tupel A = (Z, z 0, X, f, Y, h)

Mehr

Ist eine algorithmische Problemstellung lösbar und wenn ja, mit welchen Mitteln? was ist eine algorithmische Problemstellung?

Ist eine algorithmische Problemstellung lösbar und wenn ja, mit welchen Mitteln? was ist eine algorithmische Problemstellung? Überblick 1. reguläre Sprachen endliche Automaten (deterministisch vs. nichtdeterministisch) Nichtregularität 2. Berechenbarkeit Registermaschinen/Turingmaschinen Churchsche These Unentscheidbarkeit 3.

Mehr

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

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie 1 Einführung 2 Typ-0- und Typ-1-Sprachen 3 Berechnungsmodelle 4 Unentscheidbarkeit 5 Unentscheidbare Probleme 6 Komplexitätstheorie WS 11/12 155 Überblick Zunächst einmal definieren wir formal den Begriff

Mehr

Grundlagen der Theoretischen Informatik

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

Mehr

Kontextfreie (Typ-2) Sprachen

Kontextfreie (Typ-2) Sprachen Kontextfreie (Typ-2) prachen Bsp.: L 1 = { n 1 n n>} с {,1}* 1 1 L 2 = {w wє{,1}* und w=w rev } с {,1}* 11 1 ε L 3 = {w w hat genausoviele Nullen wie Einsen} с {,1}* B 1 ε 1 B 1 1 BB 1 11 11 11 11B 111

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Übung am 02.02.2012 INSTITUT FÜR THEORETISCHE 0 KIT 06.02.2012 Universität des Andrea Landes Schumm Baden-Württemberg - Theoretische und Grundlagen der Informatik

Mehr

Theoretische Informatik Mitschrift

Theoretische Informatik Mitschrift Theoretische Informatik Mitschrift 7. Turingmaschinen Automatenmodell für Typ-0-Sprachen Einschränkung liefert Automatenmodell für Typ-1-Sprachen Alan Turing 1936, ursprüngliches Ziel: Formalisierung des

Mehr