WS07/08 Automaten und Formale Sprachen 8. Vorlesung

Größe: px
Ab Seite anzeigen:

Download "WS07/08 Automaten und Formale Sprachen 8. Vorlesung"

Transkript

1 WS07/08 Automaten und Formale Sprachen 8. Vorlesung PD Dr. Niggl (für M.Dietzfelbinger) 4. Dezember 2007 Stichworte (Letzte Vorl.) Konstruktion des Minimalautomaten: 3 Teile Entferne unerreichbare Zustände Finde Paare (nicht) äquivalenter Zustände (via Markierungsalgorithmus) Bilde Äquivalenzklassenautomaten Grammatiken erzeugen/spezifizieren Sprachen Allgemeine Grammatiken: Chomsky-0 oder Typ-0 FGKTuEA, TUIlmenau Automaten undformalesprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ Erinnerung: 3.1 Grammatiken Eine Grammatik G besteht aus: V : Σ: S: P: Alphabet, Menge der Variablen Alphabet, Menge der Terminalzeichen Startsymbol S V (auch: Startvariable ) endliche Menge von Produktionen (auch: Ableitungsregeln ) l r (formal: Paar (l,r)) wobei l (V Σ) + und r (V Σ). Beispiel (ausführlich besprochen): V ={S,/c,$,A, B,C}, Σ={a}, Startsymbol S und P besteht aus den folgenden Produktionen: (1) S /caa$ (2) Aaa aaaa (3) Aa$ aab$ (4) ab Ba (5) /cb /ca (6) Aa$ aac (7) ac Ca (8) /cc ε FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/

2 Grammatik bestimmt einen Kalkül zur Erzeugung von Wörten über Σ. Sei G =(V,Σ,S,P) Grammatik. 1. Wir schreiben ulv urv, falls u, v (V Σ) und l r eine Produktion in P ist. lies: urv ist in einem (1) Schritt aus ulv ableitbar. Beispiele: /caab$ (4) /caa$ (3) /caaa$ (2) /caba$ /caab$ /caaaa$. Grammatik bestimmt einen Kalkül Wir schreiben α α, falls Wörter α 0 =α,α 1,..., α t =α existieren, so dass gilt: α 0 α 1, α 1 α 2,..., α t 1 α t lies: α ist aus α (in endlich vielen Schritten) ableitbar. Bem.: Beispiel: ist der reflexive und transitive Abschluß von. /caa$ (6) /caac (7) /caca (7) /ccaa Also gilt: /caa$ /ccaa FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ Sinnvolle Zwischenschritte und Resultate 3. Ein Wort α (V Σ) heißt Satzform von G, falls S α. Eine Folge S =α 0 α 1 α t =α heißt Ableitung (auch: Herleitung) von α. Beispiel: S (1) /caa$ (6) /caac (7) /caca (7) /ccaa 4. L(G) := {w Σ S w} heißt die von G erzeugte Sprache. Chomsky-0-Grammatiken sind Grammatiken, wie sie hier beschrieben wurden. Def.: L 0 bezeichne die Klasse aller Sprachen L(G), wobei G eine (Chomsky-0-)Grammatik ist. In Berechenbarkeit und Komplexitätstheorie : L L 0 L ist durch einen beliebigen Aufzählungsoder Erzeugungskalkül beschreibbar ( rekursiv aufzählbar ). Im Beispiel: L(G) = {a 2i i 1}. FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/

3 Chomsky-1-Grammatiken... oder kontextsensitive Grammatiken Def.: Eine Produktion l r heißtkontextsensitiv, falls l = α A γ und r = α β γ mit β 1, wobei A V, α, β, γ (V Σ). Man darf Variable A im Kontext α..γ durch β ε ersetzen. Entscheidend: l r ist nicht-verkürzend, d.h. r l. Zulässig: Kontext ist leer, d.h α, γ=ε. Beispiele: /cb /ca, aaa$ aaba$ Nicht kontextsensitiv: Aa$ aab$, /cc ε Chomsky-1-Grammatiken Def.: Eine Grammatik G=(V,Σ,S,P) heißt kontextsensitiv oder vom Typ 1, wenn entweder alle Produktionen von G kontextsensitiv sind oder alle Produktionen von G kontextsensitiv sind, außer S ε, undindiesem FallS nieinder rechten Seiteeiner Produktion vorkommt. Kontextsensitive Grammatiken heißen auch Chomsky-1-Grammatiken. FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ Chomsky-1-Sprachen Def.: Eine Sprache L heißt kontextsensitiv oder vom Typ 1, falls L = L(G) für eine kontextsensitive Grammatik G gilt. Bezeichne L 1 die Klasse aller Typ-1-Sprachen. Klar: L 1 L 0 Beobachtung: Kontextsensitive Grammatiken sind technisch nicht leicht zu handhaben. Technisches Hilfsmittel: Monotone Grammatiken (Wortlängen-)Monotone Grammatiken Def.: Eine Produktion l r heißt (wortlängen-) monoton (auch: nicht-verkürzend), falls r l gilt. Def.: Eine GrammatikG =(V,Σ,S,P) heißtmonoton, wenn entweder alle Produktionen von G monoton sind oder alle Produktionen von G monoton sind, außer S ε, und in diesem Fall S nie in der rechten Seite einer Produktion vorkommt. Klar: Jede kontextsensitive Produktion ist monoton. Also: G kontextsensitiv = G monoton FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/

4 Beispiel: G = (V,Σ,S,P) mit V = {S, A,C}, Σ = {a,b,c} und Produktionen: (1) S ε (2) S abc (3) S aabc (4) A aacb (5) A acb (6) Cb bc (7) Cc cc Alle Produktionen sind monoton, außer S ε, aber S kommt in keiner rechten Seite einer Produktion vor. Also: G ist eine monotone Grammatik. S ε S abc Beispiel-Ableitungen: S aabc aacbbc aabcbc aabbcc aabbcc S aabc aaacbbc aaabcbc aaabbcc aaabbcc aaacbbbcc aaabcbbcc aaabbcbcc aaabbbccc aaabbbccc Man kann beweisen (Übung!): L(G)={a n b n c n n N} Frage: Ist diese Sprache kontextsensitiv? FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ Monotone Grammatiken Die Produktion Cb bc ist monoton, aber nicht kontextsensitiv. Behauptung: G monoton = MankannG ineine kontextsensitive Grammatik G mit L(G)=L(G ) umbauen. Idee: Baue jede monotone Produktion einzeln (2 Schritte) in eine Folge von kontextsensitiven Produktionen um. Fazit: Monotone Grammatiken erzeugen genau die Sprachen in L 1. Also: {a n b n c n n N} ist eine kontextsensitive Sprache. Schritt 1: Separierung Für jedes a Σ wähle eine neue Variable, etwa D a. Ersetze in P jedes Vorkommen von a durch D a, und füge die Produktionen D a a hinzu, für jedes a Σ. Effekt: Nur Produktionen der Form A a können Terminalzeichen erzeugen, und eventuell S ε. Beispiel: V = {S, A,C,D a,d b,d c } mit Produktionen: S ε CD b D b C S D a D b D c CD c D c D c S D a AD b D c D a a A D a ACD b D b b A D a CD b D c c FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/

5 Schritt 2: Einzelschritte Beispiel (Verallgemeinerung offensichtlich): Betrachte nun eine Produktion ( ) X 1 X 2 X 3 Y 1 Y 2 Y 3 Y 4 Y 5 (nur Variable) (Allgemein: X 1...X s Y 1...Y t mit 2 s t, nur Variable) Klar: ( ) ist monoton, aber i.a. nicht kontextsensitiv. Wähle daher neue Variable Z 1,Z 2,Z 3 (kommen sonst nirgends vor) und ersetze ( ) durch folgende neue Produktionen: Schritt 2: Einzelschritte X 1 X 2 X 3 Z 1 X 2 X 3 Z 1 X 2 X 3 Z 1 Z 2 X 3 Z 1 Z 2 X 3 Z 1 Z 2 Z 3 Z 1 Z 2 Z 3 Y 1 Z 2 Z 3 Y 1 Z 2 Z 3 Y 1 Y 2 Z 3 Y 1 Y 2 Z 3 Y 1 Y 2 Y 3 Y 4 Y 5 Übung: Man baue die Grammatik für L={a n b n c n n N} in eine äquivalente kontextsensitive Grammatik um. Also: L ist eine kontextsensitive Sprache. FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ Kontextfreie Grammatiken... oder Typ-2-Grammatiken Def.: Eine Produktion l r heißtkontextfrei, falls l=a V, r (V Σ). Kontextfreie Produktion: A β, A V, β (V Σ) Man darf die Variable A durch das Wort β ersetzen (egal wo A steht). Bem.: β darf auch ε sein. Kontextfreie Grammatiken und Sprachen Def.: Eine Grammatik G=(V,Σ,S,P) heißt kontextfrei (auch: vom Typ 2), wenn alle Produktionen von G kontextfrei sind. Def.: Eine Sprache L heißt kontextfrei (vom Typ 2), falls L = L(G) für eine kontextfreie Grammatik G gilt. Bezeichne L 2 die Klasse aller kontextfreien Sprachen. Werden sehen (nicht offensichtlich): L 2 L 1 FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/

6 Beispiel (schon gesehen): G =(V,Σ,S,P) mit V ={ expr, term, factor }, Σ={+,-,*,/,(,),num}, S = expr und folgenden Produktionen: factor num factor ( expr ) term term * factor term term / factor term factor expr expr + term expr expr - term expr term Neues Beispiel: G=(V,Σ,S,P) mit V ={S}, Σ={0,1} und folgenden Produktionen: (1) S ε (2) S 0S1 Kurz: S ε 0S1 Beispiel für Ableitung: S 0S1 00S11 000S S Leicht zu sehen: L(G) = {0 n 1 n n 0}!! Wissen schon: L(G) ist nicht regulär! FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ Rechtslineare Grammatiken, Typ-3-Sprachen Def.: Eine Produktion l r heißt rechtslinear, falls gilt: l=a V und (r=ab mit a Σ, B V oder r=ε). Klar: Jede rechtslineare Produktion ist kontextfrei. Def.: Eine Grammatik G=(V,Σ,S,P) heißt rechtslinear (auch: vom Typ 3), falls alle Produktionen von G rechtslinear sind. Def.: Eine Sprache L heißt vom Typ 3, falls L=L(G) für eine rechtslineare Grammatik G gilt. Bezeichne L 3 die Klasse aller Typ-3-Sprachen. Die Chomsky-Hierarchie Klar: L 3 L 2 und Inklusion ist echt ( ) Werden sehen: L 3 = Klasse der regulären Sprachen Damit: L 3 L 2 L 1 L 0 In Worten: regulär kontextfrei kontextsensitiv rekursiv aufzählbar Werden sehen: Alle Inklusionen sind echt ( ) Weiteres Ziel: Charakterisierung von L 2 FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/

7 Rechtslineare Grammatiken und NFAs 1 Rechtslineare Grammatiken erfüllen folgende einfach einzusehende wie grundlegende Eigenschaften. Bem.: Füreine rechtslineare GrammatikG =(V,Σ,S,P) gilt: (1) Ohne ε-produktionen gilt L(G)=. (2) ε L(G) S ε ist eine Produktion von G. (3) Jede Ableitung eines w=a 1...a n Σ + hat die Gestalt S a 1 X 1 a 1 a 2 X 2... a 1...a n X n w mit Produktionen S a 1 X 1, X n ε und X i a i+1 X i+1 für i=1,...,n 1. Rechtslineare Grammatiken und NFAs 2 Satz (Rechtslineare Grammatik in NFA). Sei G = (V,Σ,S,P) eine rechtslineare Grammatik. Dann ist M :=(V,Σ,S,F,δ) ein NFA mit L M =L(G), wobei δ(a,a) := {B A ab ist eine Produktion von G} F := {A A ε ist eine Produktion von G}. Beweis. ε L M S F S ε ist in P Bem. ε L(G). Für ein beliebiges w=a 1...a l Σ + gilt: w L M Def. Weg Start a 1 a 2 a l S X 1... X l Def. Abl. S a 1 X 1 a 1 a 2 X 2... wx l w Bem. w L(G) FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ Rechtslineare Grammatiken und NFAs 3 Beispiel: NFA M Start Überlege: L M = L(ε ) S 1 2 Rechtslineare Grammatik G = ({S, B, C,D}, {1,2},S,P), wo P enthält: S 1B, S 2C, S ε, B 1B, B 2D, B ε, C 2D, D 2D, D ε. B C D 2 Rechtslineare Grammatiken und NFAs 4 Satz (NFA in rechtslineare Grammatik). Sei M =(Q,Σ,q 0,F, δ) ein NFA. Dann ist G:=(Q,Σ,q 0,P) eine rechtslineare Grammatik mit L(G)=L M, wobei P := {q aq q δ(q, a)} {q ε q F }. Beweis. ε L M q 0 F q 0 ε ist in P Bem. ε L(G). Für ein beliebiges w = a 1...a l Σ + gilt: w L(G) Bem. Abl. q 0 a 1 q 1 a 1 a 2 q 2... wq l w mit q i+1 δ(q i,a i+1 ) für i < l und q l F Def. Weg Start q0 a 1 q 1 a 2 a l... q l w L M FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/

8 Verallgemeinert rechtslineare Produktionen: A ab, a Σ,B V A ε, a Σ,B V A a, a Σ A abc, a,b, c Σ A abcb, a, b,c Σ,B V A B, B V Allgemein: A a 1...a s B, a 1,...,a s Σ, s 0, B V A a 1...a s, a 1,...,a s Σ, s 0 Verallgemeinert rechtslineare Produktionen Behauptung: Sei G=(V,Σ,S,P) eine Grammatik, in der alle Produktionen verallgemeinert rechtslinear sind. Dann kann G in einen äquivalenten ε-nfa M 1 und dann in einen äquivalenten NFA M 2 und dann in eine äquivalente pur rechtslineare Grammatik G umgebaut werden. Fazit: G verallgemeinert rechtslinear = L(G) regulär FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ Beweisskizze (Details zum Nachlesen). Jede Variable ist ein Zustand (es kommen noch weitere hinzu), wobei q 0 = S. WennA ab Produktion, läufteine a-kante vonanachb. Wenn A ε Produktion, ist A akzeptierend. Wenn A B Produktion, läuft eine ε-kante von A nach B. Wenn A a 1 a s Produktion, s 1, wähle s neue Zustände C 1,...,C s, die mit a 1 -, a 2 -,..., a s -Kanten einen von A ausgehenden Weg bilden. Der letzte Zustand C s ist akzeptierend. Wenn A a 1 a s B Produktion, s 2, wähle s 1 neue Zustände D 1,...,D s 1, mit denen ein neuer Weg von A nach B mit Beschriftung a 1,...,a s gebildet wird. Linkslineare Grammatiken Def.: Eine Produktion l r heißt linkslinear, falls gilt: l=a V und (r=ba mit B V,a Σ oder r=ε) Linkslineare Produktionen: A Ba, A,B V, a Σ und A ε Klar: Jede linkslineare Produktion ist kontextfrei. Eine Grammatik G heißt linkslinear, falls alle ihre Produktionen linkslinear sind. FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/

9 Linkslineare/rechtslineare Grammatiken 1 Satz. Sei G=(V,...) eine linkslineare Grammatik. Dann kann man G in eine äquivalente rechtslineare Grammatik G =(V,...) umbauen. (Also: L(G) regulär.) Dabei gilt: V V + 1 Beweis. Schritt 1: Aus G: rechtslineare Grammatik G mit L(G )=L(G) R. Beispiel: G = (V,Σ,S,P) mit V = {S, A,B}, Σ = {0,1} und P = {S A0, A A0, A B1, B ε}. G = (V,Σ,S,P ), P = {S 0A, A 0A, A 1B, B ε}. Linkslineare/rechtslineare Grammatiken 2 Schritt 2: Aus G gewinne NFA M mit L M =L(G )=L(G) R. Schritt 3: Aus NFA M gewinne ε-nfa M mit L M =L R M =L(G). Schritt 4: Aus M gewinne NFA M mit L M =L M =L(G). Schritt 5: Aus M gewinne rechtslineare Grammatik G mit L(G )=L M =L(G). FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ Linkslineare/rechtslineare Grammatiken 3 Warnung: Mischen von rechts- und linkslinearen Produktionen in einer Grammatik führt i.a. über die regulären Sprachen hinaus: Beispiel: G = (V,Σ,S,P) mit V = {S, B}, Σ = {a,b} und Produktionen liefert: S ab, S ε, B Sb L(G) = {a n b n n 0} L 3 Fazit 4 Grammatiktypen: Typ 0, Typ 1, Typ 2, Typ 3... oder: Typ 0, kontextsensitiv, kontextfrei, rechtslinear 4 Sprachklassen Chomsky-Hierarchie: L 3 L 2 L 1 L 0 L 3 entpricht regulären Sprachen L 2 : kontextfreie Sprachen: Thema des Restes der Vorlesung FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/

10 Kap. 4 Kontextfreie Grammatiken/Sprachen 4.1 Beispiele und Ableitungen Verwenden: kfg (engl.: cfg) für kontextfreie Grammatik kfs (engl.: cfl) für kontextfreie Sprache Grammatik für die Klammersprache: G=(V,Σ,S,P) mit V = {S}, Σ = {0,1} und folgenden Produktionen: (1) S ε (2) S SS Auch: S ε SS 0S1 (3) S 0S1 Beispielableitung: S SS SSS 0S1SS 01SS 01S0S1 01S00S S Σ Beispiele und Ableitungen 2 Grammatik für {0 n 1 n n 0}: G = (V,Σ,S,P) mit V = {S}, Σ = {0,1} P enthält die folgenden Produktionen: (1) S ε (2) S 0S1 Beispielableitung: Auch: S ε 0S1 S 0S1 00S11 000S S FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ Beispiele und Ableitungen 3 Grammatik für arithmetische Ausdrücke: G = ({ expr, term, factor }, {+,-,*,/,(,),num}, expr,p) mit Produktionen: factor num ( expr ) term term * factor term / factor factor expr expr + term expr - term term Beispiele und Ableitungen 4 Produktionen kontextfreier Grammatiken haben das Format A X 1 X r wobei A V und r 0, X 1,...,X r V Σ. Ein Ableitungsschritt: Wenn α=y 1 Y s A Z 1 Z t und A X 1 X r Produktion in P ist, dann ist α α =Y 1 Y s X 1 X r Z 1 Z t ein Schritt in G (Ersetzen einer Variablen!) Bem.: α (V Σ) ist Satzform in G Folge S = α 0 α 1 α t = α, mit t 0. FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/

11 Induktive Definition für Satzformen Für jede kontextfreie Grammatik G = (V,Σ,S,P) gilt: (i) S ist Satzform in G; (ii) wenn α = Y 1 Y s A Z 1 Z t Satzform in G ist und A X 1 X r eine Produktion in P, dann ist auch α = Y 1 Y s X 1 X r Z 1 Z t eine Satzform in G. (iii) Nichts sonst ist Satzform in G. Beweis: (Leichte) Übung. Also können wir Induktion über den Aufbau von Satzformen benutzen. Also: L(G) = {w Σ w ist Satzform von G} w ist in L(G) w Σ und Ableitung S =α 0 α 1 α t =w. Achtung: Wenn die Grammatik G mehr als eine Variable benutzt, dann besitzt die Menge L(G) normalerweise keine induktive Definition (im Sinne der Vorlesung). Typischer Ansatz, um eine Behauptung für alle w L(G) zu beweisen: Induktion über die Länge der Ableitung von w. FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ Beispiel: G = ({S}, {0,1},S,P) mit Produktionen: S 0S0 1S1 0 1 ε Behauptung: L(G) = {w {0,1} w=w R } Sprache der Spiegelwörter ( Palindrome ) über {0,1}. Palindrome bzgl. anderem Alphabet: ara elle hannah reliefpfeiler sinnlosolnnis ε Behauptung: L(G) = {w {0,1} w=w R } Beweis. Durch Induktion über den Aufbau der Satzformenα vong zeigenwirfolgende Invariante (Tafelmitschrift): (I) α=wsw R für ein w Σ oder (II) α=w Σ mit w=w R. Durch Wertverlaufsinduktion über die Wortlänge w zeigen wir (Tafelmitschrift): (+) Ist w=w R, so ist w L(G), für alle w Σ. FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/

12 Nächstes Ziel: G = ({S}, {0,1},S,P) mit Produktionen S ε SS 0S1 erzeugt die Menge kka der korrekten Klammerausdrücke. Früher definiert: (i) ε ist kka. Früher gezeigt: w ist kka genau, dann wenn gilt: ( ) w 0 = w 1 und für jedes Präfix u von w gilt u 0 u 1. In Worten: Beim Lesen von w von links nach rechts passiert es nie, dass man mehr Einsen als Nullen gesehen hat. (ii) Wenn w kka und w kka, dann ist auch 0w 1w kka. (iii) Nichts sonst. FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ Proposition: Für G = ({S}, {0,1},S,P) mit Produktionen gilt: S ε SS 0S1 kka = L(G) Beweis. Induktion über den Aufbau von kka (ev. Tafel). Beispiel: Finde Ableitung für Durch Induktion über die Länge der Ableitung von w zeige: Jede Satzform erfüllt (eine Verallgemeinerung von) ( ). Fazit Die Sprache {0 n 1 n n 0} ist kontextfrei, aber nicht regulär. Induktive Definition für Satzformen ergibt Beweisschema. Grammatik für die Klammersprache. Bis nächste Woche: Folien aus Netz besorgen, durcharbeiten. Skript Teil 2 besorgen, Seiten durcharbeiten. Definitionen lernen, Beispiele ansehen, Fragen vorbereiten. FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/ FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/

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

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

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

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

Theoretische Informatik Mitschrift

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

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

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

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

Theoretische Grundlagen des Software Engineering

Theoretische Grundlagen des Software Engineering Theoretische Grundlagen des Software Engineering 5: Reguläre Ausdrücke und Grammatiken schulz@eprover.org Software Systems Engineering Reguläre Sprachen Bisher: Charakterisierung von Sprachen über Automaten

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

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

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

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

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

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

(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

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

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

Teil 4: Grammatiken und Syntaxanalyse. (Kapitel T5-T7) Teil 4: Grammatiken und Syntaxanalyse (Kapitel T5-T7) Grammatiken und die Chomsky- Hierarchie [T5.1] Ziel: Regelsysteme zur Erzeugung von Sprachen. Beispiel: arithmetische Ausdrücke können definiert werden

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

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 Informatik I (Grundzüge der Informatik I)

Theoretische Informatik I (Grundzüge der Informatik I) Theoretische Informatik I (Grundzüge der Informatik I) Literatur: Buch zur Vorlesung: Uwe Schöning, Theoretische Informatik - kurzgefasst. Spektrum Akademischer Verlag, Heidelberg/Berlin, 4. Auflage, 2001.

Mehr

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2011 17. DIE CHOMSKY-HIERARCHIE Theoretische Informatik (SoSe 2011) 17. Die Chomsky-Hierarchie 1 / 15 Einleitung Die

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

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

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

Zusammenfassung. 1 Wir betrachten die folgende Signatur F = {+,,, 0, 1} sodass. 3 Wir betrachten die Gleichungen E. 4 Dann gilt E 1 + x 1 Zusammenfassung Zusammenfassung der letzten LV Einführung in die Theoretische Informatik Woche 7 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 1 Wir betrachten die folgende Signatur

Mehr

Berechenbarkeit und Komplexität

Berechenbarkeit und Komplexität Berechenbarkeit und Komplexität Prof. Dr. Dietrich Kuske FG Theoretische Informatik, TU Ilmenau Wintersemester 2010/11 1 Organisatorisches zur Vorlesung Informationen, aktuelle Version der Folien und Übungsblätter

Mehr

Theoretische Informatik für Wirtschaftsinformatik und Lehramt

Theoretische Informatik für Wirtschaftsinformatik und Lehramt Theoretische Informatik für Wirtschaftsinformatik und Lehramt Reguläre Sprachen Priv.-Doz. Dr. Stefan Milius stefan.milius@fau.de Theoretische Informatik Friedrich-Alexander Universität Erlangen-Nürnberg

Mehr

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 Einführung Beispiel: Aussagenlogische Formeln Aus dem Logikteil: Definition (Syntax

Mehr

Theoretische Informatik I

Theoretische Informatik I Theoretische Informatik I Einheit 2.4 Grammatiken 1. Arbeitsweise 2. Klassifizierung 3. Beziehung zu Automaten Beschreibungsformen für Sprachen Mathematische Mengennotation Prädikate beschreiben Eigenschaften

Mehr

Was bisher geschah: Formale Sprachen

Was bisher geschah: Formale Sprachen Was bisher geschah: Formale Sprachen Alphabet, Wort, Sprache Operationen und Relationen auf Wörtern und Sprachen Darstellung unendlicher Sprachen durch reguläre Ausdrücke (Syntax, Semantik, Äquivalenz)

Mehr

Die Chomsky Hierarchie

Die Chomsky Hierarchie Die Chomsky Hierarchie Slide 1 Die Chomsky Hierarchie Hans U. Simon (RUB) mit Modifikationen von Maike Buchin (RUB) Lehrstuhl Mathematik und Informatik Homepage: http://www.ruhr-uni-bochum.de/lmi Die Chomsky

Mehr

Grammatik Prüfung möglich, ob eine Zeichenfolge zur Sprache gehört oder nicht

Grammatik Prüfung möglich, ob eine Zeichenfolge zur Sprache gehört oder nicht Zusammenhang: Formale Sprache Grammatik Formale Sprache kann durch Grammatik beschrieben werden. Zur Sprache L = L(G) gehören nur diejenigen Kombinationen der Zeichen des Eingabealphabets, die durch die

Mehr

Formale Sprachen. Formale Grundlagen (WIN) 2008S, F. Binder. Vorlesung im 2008S

Formale Sprachen. Formale Grundlagen (WIN) 2008S, F. Binder. Vorlesung im 2008S Formale Grundlagen (WIN) Franz Binder Institut für Algebra Johannes Kepler Universität Linz Vorlesung im 2008S http://www.algebra.uni-linz.ac.at/students/win/fg Inhalt Das Alphabet Σ sei eine endliche

Mehr

FORMALE SYSTEME. Sprachen beschreiben. Wiederholung. Wie kann man Sprachen beschreiben? 2. Vorlesung: Grammatiken und die Chomsky-Hierarchie

FORMALE SYSTEME. Sprachen beschreiben. Wiederholung. Wie kann man Sprachen beschreiben? 2. Vorlesung: Grammatiken und die Chomsky-Hierarchie Wiederholung FORMALE SYSTEME 2. Vorlesung: Grammatiken und die Chomsky-Hierarchie Markus Krötzsch Formale Sprachen sind in Praxis und Theorie sehr wichtig Ein Alphabet ist eine nichtleere, endliche Menge

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

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

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

Kapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie

Kapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie Gliederung 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 2.1. 2.2. Reguläre Sprachen 2.3. Kontextfreie Sprachen 2/1, Folie 1 2015 Prof. Steffen

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

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

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik echnische Universität München Fakultät für Informatik Prof. obias Nipkow, Ph.D. ascha öhme, Lars Noschinski ommersemester 2011 Lösungsblatt 5 6. Juni 2011 Einführung in die heoretische Informatik Hinweis:

Mehr

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

Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit Sommersemester 2011 Dozent: Prof. Dr. J. Rothe, Prof. Dr. M. Leuschel J. Rothe (HHU Düsseldorf)

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

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

liefern eine nicht maschinenbasierte Charakterisierung der regulären

liefern eine nicht maschinenbasierte Charakterisierung der regulären Reguläre Ausdrücke 1 Ziel: L=L M für NFA M L=L(r) für einen regulären Ausdruck r Reguläre Ausdrücke über einem Alphabet Σ Slide 1 liefern eine nicht maschinenbasierte Charakterisierung der regulären Sprachen

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

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

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

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

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik Grundlagen der Informatik II Teil I: Formale Modelle der Informatik 1 Einführung GdInfoII 1-2 Ziele/Fragestellungen der Theoretischen Informatik 1. Einführung abstrakter Modelle für informationsverarbeitende

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Dr. Werner Meixner, Dr. Alexander Krauss Sommersemester 2010 Lösungsblatt 7 15. Juni 2010 Einführung in die Theoretische

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

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

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

Definition Formale Sprache Eine formale Sprache ist eine (Teil-)Menge A Σ* von Worten über einem Alphabet Σ.

Definition Formale Sprache Eine formale Sprache ist eine (Teil-)Menge A Σ* von Worten über einem Alphabet Σ. Reguläre Sprachen Sprache was ist das? Definition 7.1.1 Formale Sprache Eine formale Sprache ist eine (Teil-)Menge A Σ* von Worten über einem Alphabet Σ. Wir beschäftigen uns in diesem Teil mit den regulären

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

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

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Tutorium 4 26..25 INSTITUT FÜR THEORETISCHE INFORMATIK KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

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

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

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

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

Automatentheorie und formale Sprachen rechtslineare Grammatiken

Automatentheorie und formale Sprachen rechtslineare Grammatiken Automatentheorie und formale Sprachen rechtslineare Grammatiken Dozentin: Wiebke Petersen 17.6.2009 Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 1 Pumping lemma for regular languages

Mehr

Technische Universität München Sommer 2016 Prof. J. Esparza / Dr. M. Luttenberger, S. Sickert 2. Mai HA-Lösung. TA-Lösung

Technische Universität München Sommer 2016 Prof. J. Esparza / Dr. M. Luttenberger, S. Sickert 2. Mai HA-Lösung. TA-Lösung Technische Universität München Sommer 2016 Prof. J. Esparza / Dr. M. Luttenberger, S. Sickert 2. Mai 2016 HA-Lösung TA-Lösung Einführung in die theoretische Informatik Aufgabenblatt 2 Beachten Sie: Soweit

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

äußere Klammern können entfallen, ebenso solche, die wegen Assoziativität von + und Konkatenation nicht notwendig sind:

äußere Klammern können entfallen, ebenso solche, die wegen Assoziativität von + und Konkatenation nicht notwendig sind: 3. Reguläre Sprachen Bisher wurden Automaten behandelt und Äquivalenzen zwischen den verschiedenen Automaten gezeigt. DEAs erkennen formale Sprachen. Gibt es formale Sprachen, die nicht erkannt werden?

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Tutorium 27 29..24 FAKULTÄT FÜR INFORMATIK KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Definition

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

VU Software Paradigmen / SS 2014

VU Software Paradigmen / SS 2014 VU Software Paradigmen 716.060 / SS 2014 Thorsten Ruprechter ruprechter@tugraz.at Institute for Software Technology 1 Organisatorisches Ausgabe: 25.03. (heute) Fragestunde: 22.04. Abgabe: 29.04 (ausgedruckt)

Mehr

Sprachen und Automaten. Tino Hempel

Sprachen und Automaten. Tino Hempel Sprachen und Automaten 11 Tino Hempel Bisherige Automaten Automat mit Ausgabe/Mealy-Automat Akzeptor, Sprache eines Akzeptors Grenze: L = {a n b n } Kellerautomat erkennt L = {a n b n } Grenze:? T. Hempel

Mehr

Grundlagen der Informatik II

Grundlagen der Informatik II Grundlagen der Informatik II Dr.-Ing. Sven Hellbach S. Hellbach Grundlagen der Informatik II Abbildungen entnommen aus: Dirk W. Hoffmann: Theoretische Informatik; Hanser Verlag 2011, ISBN: 978-3-446-42854-6

Mehr

Kapitel 3: Reguläre Grammatiken und Endliche. Automaten

Kapitel 3: Reguläre Grammatiken und Endliche. Automaten Kapitel 3: Reguläre Grammatiken und Endliche Automaten Prof.-Dr. Peter Brezany Institut für Softwarewissenschaft Universität Wien, Liechtensteinstraße 22 090 Wien Tel. : 0/4277 38825 E-mail : brezany@par.univie.ac.at

Mehr

Automaten und formale Sprachen. Lösungen zu den Übungsblättern

Automaten und formale Sprachen. Lösungen zu den Übungsblättern Automaten und formale Sprachen zu den Übungsblättern Übungsblatt Aufgabe. (Sipser, exercise.3) M = ({q, q2, q3, q4, q5}, {u, d}, δ, q3, {q3}) δ: u d q q q 2 q 2 q q 3 q 3 q 2 q 4 q 4 q 3 q 5 q 5 q 4 q

Mehr

Informatik I WS 07/08 Tutorium 24

Informatik I WS 07/08 Tutorium 24 Info I Tutorium 24 Informatik I WS 07/08 Tutorium 24 20.12.07 Bastian Molkenthin E-Mail: infotut@sunshine2k.de Web: http://infotut.sunshine2k.de Rückblick Semi-Thue-Systeme Ein Semi-Thue-System besteht

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Technische Universität München akultät für Informatik Prof. Tobias Nipkow, Ph.D. Dr. Werner Meixner, Dr. Alexander Krauss Sommersemester 2010 Lösungsblatt 6 11. Juni 2010 Einführung in die Theoretische

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

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2011/12 Deterministische Kellerautomaten Von besonderem Interesse sind kontextfreie Sprachen,

Mehr

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

Formale Methoden 1. Gerhard Jäger 16. Januar Uni Bielefeld, WS 2007/2008 1/19 1/19 Formale Methoden 1 Gerhard Jäger Gerhard.Jaeger@uni-bielefeld.de Uni Bielefeld, WS 2007/2008 16. Januar 2008 2/19 Reguläre Ausdrücke vierte Art (neben Typ-3-Grammatiken, deterministischen und nicht-deterministischen

Mehr

7. Formale Sprachen und Grammatiken

7. Formale Sprachen und Grammatiken 7. Formale Sprachen und Grammatiken Computer verwenden zur Verarbeitung von Daten und Informationen künstliche, formale Sprachen (Maschinenspr., Assemblerspachen, Programmierspr., Datenbankspr., Wissensrepräsentationsspr.,...)

Mehr

Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen 19

Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen 19 Inhalt 1 inführung 2 Automatentheorie und ormale prachen Grammatiken Reguläre prachen und endliche Automaten Kontextfreie prachen und Kellerautomaten Kontextsensitive und yp 0-prachen 3 Berechenbarkeitstheorie

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

Theoretische Informatik Testvorbereitung Moritz Resl

Theoretische Informatik Testvorbereitung Moritz Resl Theoretische Informatik Testvorbereitung Moritz Resl Bestandteile einer Programmiersprache: a) Syntax (Form): durch kontextfreie Grammatik beschrieben b) Semantik (Bedeutung) 1.) Kontextfreie Sprachen

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Dr. Werner Meixner, Dr. Alexander Krauss Sommersemester 2 Lösungsblatt 3. April 2 Einführung in die Theoretische Informatik

Mehr

ist ein regulärer Ausdruck.

ist ein regulärer Ausdruck. Dr. Sebastian Bab WiSe 12/13 Theoretische Grlagen der Informatik für TI Termin: VL 11 vom 22.11.2012 Reguläre Ausdrücke Reguläre Ausdrücke sind eine lesbarere Notation für Sprachen Denition 1 (Regulärer

Mehr

2.11 Kontextfreie Grammatiken und Parsebäume

2.11 Kontextfreie Grammatiken und Parsebäume 2.11 Kontextfreie Grammatiken und Parsebäume Beispiel: Beispiel (Teil 3): Beweis für L(G) L: Alle Strings aus L der Länge 0 und 2 sind auch in L(G). Als Induktionsannahme gehen wir davon aus, dass alle

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

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

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

MAA = MAB + B AA = B CA + CAA BA A Nun sehen wir mit Proposition 10.7 aus dem Skript, dass A M AB gelten muss.

MAA = MAB + B AA = B CA + CAA BA A Nun sehen wir mit Proposition 10.7 aus dem Skript, dass A M AB gelten muss. 1. Konvexität in der absoluten Ebene In einem Dreieck in der Euklidischen Ebene hat die Strecke zwischen zwei Seitenmittelpunkten die halbe Länge der dritten Seite. In der absoluten Ebene hat man eine

Mehr

Mathematische Grundlagen der Computerlinguistik formale Sprachen

Mathematische Grundlagen der Computerlinguistik formale Sprachen Mathematische Grundlagen der Computerlinguistik formale Sprachen Dozentin: Wiebke Petersen 3. Foliensatz Wiebke Petersen math. Grundlagen 49 Alphabete und Wörter Denition ˆ Alphabet Σ: endliche Menge von

Mehr

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III Name Vorname Matrikelnummer Universität Karlsruhe Institut für Theoretische Informatik o. Prof. Dr. P. Sanders 26. Feb. 2007 Klausur: Informatik III Aufgabe 1. Multiple Choice 10 Punkte Aufgabe 2. Teilmengenkonstruktion

Mehr

Theoretische Informatik. Alphabete, Worte, Sprachen

Theoretische Informatik. Alphabete, Worte, Sprachen Theoretische Informatik Alphabete, Worte, Sprachen Alphabete, Worte, Sprachen 1. Alphabete und Worte Definitionen, Beispiele Operationen mit Worten Induktionsbeweise 2. Sprachen Definition und Beispiele

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

Dank. 1 Ableitungsbäume. 2 Umformung von Grammatiken. 3 Normalformen. 4 Pumping-Lemma für kontextfreie Sprachen. 5 Pushdown-Automaten (PDAs)

Dank. 1 Ableitungsbäume. 2 Umformung von Grammatiken. 3 Normalformen. 4 Pumping-Lemma für kontextfreie Sprachen. 5 Pushdown-Automaten (PDAs) ank Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert iese Vorlesungsmaterialien basieren ganz wesentlich auf den Folien zu den Vorlesungen

Mehr

Formale Sprachen und deren Grammatiken. Zusammenhang mit der Automatentheorie.

Formale Sprachen und deren Grammatiken. Zusammenhang mit der Automatentheorie. Formale Sprachen Formale Sprachen und deren Grammatiken. Zusammenhang mit der Automatentheorie. Inhaltsübersicht und Literatur Formale Sprachen: Definition und Darstellungen Grammatiken für formale Sprachen

Mehr

Programmiersprachen und Übersetzer

Programmiersprachen und Übersetzer Programmiersprachen und Übersetzer Sommersemester 2010 19. April 2010 Theoretische Grundlagen Problem Wie kann man eine unendliche Menge von (syntaktisch) korrekten Programmen definieren? Lösung Wie auch

Mehr

Fachseminar Compilerbau

Fachseminar Compilerbau Fachseminar Compilerbau WS 08/09 Matthias Schiller Syntaktische Analyse 1. Prinzip der Top-Down-Analyse 2. LL(1)-Grammatiken Modell-Vorstellung Der Scanner liefert als Ergebnis der lexikalischen Analyse,

Mehr

Formale Sprachen und Grammatiken

Formale Sprachen und Grammatiken Formale Sprachen und Grammatiken Jede Sprache besitzt die Aspekte Semantik (Bedeutung) und Syntax (formaler Aufbau). Die zulässige und korrekte Form der Wörter und Sätze einer Sprache wird durch die Syntax

Mehr

Klausuraufgaben. 1. Wir betrachten die folgende Sprache über dem Alphabet {a, b}

Klausuraufgaben. 1. Wir betrachten die folgende Sprache über dem Alphabet {a, b} Klausuraufgaben 1. Wir betrachten die folgende Sprache über dem Alphabet {a, b} L = {a n b m n > 0, m > 0, n m} a) Ist L kontextfrei? Wenn ja, geben Sie eine kontextfreie Grammatik für L an. Wenn nein,

Mehr