Theoretische Grundlagen der Informatik
|
|
- Wilhelm Hauer
- vor 6 Jahren
- Abrufe
Transkript
1 Theoretische Grundlagen der Informatik Vorlesung am 18. Januar 2018 INSTITUT FÜR THEORETISCHE Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft
2 Greibach Normalform Greibach Normalform Eine kontextfreie Grammatik ist in Greibach-Normalform, wenn alle Ableitungsregeln von der Form sind. A aα mit A V, a Σ und α V Satz: Für jede kontextfreie Grammatik G, für die L(G) das leere Wort nicht enthält, kann eine (äquivalente) kontextfreie Grammatik G mit L(G) = L(G ) in Greibach-Normalform konstruiert werden Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
3 Beweis - Ersetzung (i) Folgende Ersetzungen ändern nichts an der erzeugten Sprache: Ersetzung (i). Eine Regel wobei A α 1 Bα 2 B β 1, B β 2,..., B β r alle Regeln sind, deren linke Seite B ist, kann durch die Regeln ersetzt werden. A α 1 β 1 α 2 A α 1 β 2 α 2... A α 1 β r α Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
4 Beweis - Ersetzung (ii) Folgende Ersetzungen ändern nichts an der erzeugten Sprache: Ersetzung (ii). Seien A Aα 1,..., A Aα r A β 1,..., A β s alle Regeln, deren linke Seite A ist, wobei β i nicht mit A beginnen. Dann können die Regeln A Aα 1,..., A Aα r durch die Regeln A β 1 B,..., A β s B B α 1,..., B α r, B α 1 B,..., B α r B ersetzt werden. Dabei sei B eine neu eingeführte Variable Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
5 Beweis - Definitionen Annahme G ist in Chomsky-Normalform mit V = {A 1,..., A m } Σ = {a 1,..., a n } und damit ausschließlich Regeln der Form A i A j A k A i a j. Die Grammatik in Greibach-Normalform wird zusätzlich die Variablen {B 1,..., B m } benutzen. Sei V := {A 1,..., A m, B 1,..., B m } Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
6 Beweis: Invarianten V := {A 1,..., A m, B 1,..., B m } Σ = {a 1,..., a n } zu Beginn mit Regeln der Form A i A j A k A i a j. Während der Umformung sind folgende Invarianten erfüllt. 1.Invariante Die rechte Seite einer Regel, deren rechte Seite mit einer Variablen beginnt, besteht nur aus Variablen Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
7 Beweis: Invarianten V := {A 1,..., A m, B 1,..., B m } Σ = {a 1,..., a n } zu Beginn mit Regeln der Form A i A j A k A i a j. Während der Umformung sind folgende Invarianten erfüllt. 2.Invariante Die rechte Seite einer Regel, deren rechte Seite mit einer Variablen beginnt, beginnt mit einer Variablen aus V = {A 1,..., A m } Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
8 Beweis: Invarianten V := {A 1,..., A m, B 1,..., B m } Σ = {a 1,..., a n } zu Beginn mit Regeln der Form A i A j A k A i a j. Während der Umformung sind folgende Invarianten erfüllt. 3.Invariante Symbole aus Σ kommen nur als erstes Zeichen der rechten Seite einer Regel vor Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
9 Beweis: Invarianten V := {A 1,..., A m, B 1,..., B m } Σ = {a 1,..., a n } zu Beginn mit Regeln der Form A i A j A k A i a j. Während der Umformung sind folgende Invarianten erfüllt. 4.Invariante Die rechte Seite einer Regel, deren linke Seite aus V = {A 1,..., A m } ist und deren rechte Seite mit einer Variablen aus V beginnt, beginnt sogar mit zwei Variablen aus V Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
10 Beweis: Invarianten V := {A 1,..., A m, B 1,..., B m } Σ = {a 1,..., a n } zu Beginn mit Regeln der Form A i A j A k A i a j. Während der Umformung sind folgende Invarianten erfüllt. 5.Invariante Die rechte Seite einer Regel, deren linke Seite aus V \V = {B 1,..., B m } ist, besteht nur aus Variablen aus V Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
11 Beweis: Invarianten V := {A 1,..., A m, B 1,..., B m } Σ = {a 1,..., a n } zu Beginn mit Regeln der Form A i A j A k A i a j. Wir formen G zunächst so um, dass außer Invarianten 1-5 noch die nächste Invariante gilt: 6.Invariante Falls A i A j α Regel ist, so gilt j > i Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
12 Beweis - Übersicht Invarianten 1.Invariante Die rechte Seite einer Regel, deren rechte Seite mit einer Variablen beginnt, besteht nur aus Variablen. 2.Invariante Die rechte Seite einer Regel, deren rechte Seite mit einer Variablen beginnt, beginnt mit einer Variablen aus V = {A 1,..., A m }. 3.Invariante Symbole aus Σ kommen nur als erstes Zeichen der rechten Seite einer Regel vor. 4.Invariante Die rechte Seite einer Regel, deren linke Seite aus V = {A 1,..., A m } ist und deren rechte Seite mit einer Variablen aus V beginnt, beginnt sogar mit zwei Variablen aus V. 5.Invariante Die rechte Seite einer Regel, deren linke Seite aus V \V = {B 1,..., B m } ist, besteht nur aus Variablen aus V. 6.Invariante Falls A i A j α Regel ist, so gilt j > i Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
13 Beweis: Beispielgrammatik V = {A 1, A 2, A 3 } Σ = {0, 1} S = A 1 R = {A 1 A 2 A 3, {A 2 A 3 A 1, A 2 1, {A 3 A 1 A 2, A 3 0} Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
14 Beweis - Verfahren - Schritt 1 Vorher: Grammatik in Chomsky-Normalform Nachher: 6. Invariante hält: Falls A i A j α Regel ist, so gilt j > i. Aktion: Dabei wenden wir (in dieser Reihenfolge) Ersetzung (ii) zur Ersetzung aller Regeln A 1 A 1 α Ersetzung (i) zur Ersetzung aller Regeln A 2 A 1 α Ersetzung (ii) zur Ersetzung aller Regeln A 2 A 2 α Ersetzung (i) zur Ersetzung aller Regeln A 3 A 1 α Ersetzung (i) zur Ersetzung aller Regeln A 3 A 2 α Ersetzung (ii) zur Ersetzung aller Regeln A 3 A 3 α Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
15 Beweis - Schritt 1 - Beispiel Ersetzung (i) A α 1 Bα 2 B β 1 β 2,... β r A α 1 β 1 α 2 α 1 β 2 α 2... α 1 β r α 2 B β 1 β 2,... β r V = {A 1, A 2, A 3 } Σ = {0, 1} S = A 1 R = {A 1 A 2 A 3, {A 2 A 3 A 1, A 2 1, {A 3 A 1 A 2, A 3 0} V = {A 1, A 2, A 3 } Σ = {0, 1} S = A 1 R = {A 1 A 2 A 3, {A 2 A 3 A 1, A 2 1, {A 3 A 2 A 3 A 2, A 3 0} Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
16 Beweis - Schritt 1 - Beispiel Ersetzung (i) A α 1 Bα 2 B β 1 β 2,... β r V = {A 1, A 2, A 3 } Σ = {0, 1} S = A 1 R = {A 1 A 2 A 3, {A 2 A 3 A 1, A 2 1, {A 3 A 2 A 3 A 2, A 3 0} A α 1 β 1 α 2 α 1 β 2 α 2... α 1 β r α 2 B β 1 β 2,... β r V = {A 1, A 2, A 3 } Σ = {0, 1} S = A 1 R = {A 1 A 2 A 3, {A 2 A 3 A 1, A 2 1, {A 3 A 3 A 1 A 3 A 2 1A 3 A 2, {A 3 0} Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
17 Beweis - Schritt 1 - Beispiel Ersetzung (ii) A Aα 1,..., A Aα r A β 1,..., A β s V = {A 1, A 2, A 3 } Σ = {0, 1} A β 1 B,..., A β s B B α 1,..., B α r, B α 1 B,..., B α r B A β 1,..., A β s V = {A 1, A 2, A 3 } Σ = {0, 1} S = A 1 R = {A 1 A 2 A 3, {A 2 A 3 A 1, A 2 1, {A 3 A 3 A 1 A 3 A 2, {A 3 0 1A 3 A 2 } S = A 1 R = {A 1 A 2 A 3, {A 2 A 3 A 1, A 2 1, {A 3 0B 3 1A 3 A 2 B 3, {B 3 A 1 A 3 A 2 A 1 A 3 A 2 B 3 {A 3 0 1A 3 A 2 } Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
18 Beweis - Verfahren - Schritt 2 Vorher: Alle Regeln sind von der Form A aα A α mit α (V ), a Σ wobei es keine ε-regeln oder Kettenregeln mit linker Seite A V gibt. Wegen Invariante 6 gibt es keine Regel A m α beginnen alle A m 1 α-regeln mit A m. Aktion: Ersetze mit absteigenden k alle Regeln der Form mittels Ersetzung (i). A k α mit α (V ) Nachher: Regeln mit linker Seite in V in Form A k aα, a Σ, α (V ) Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
19 Beweis - Schritt 2 - Beispiel Ersetzung (i) A α 1 Bα 2 B β 1 β 2,... β r V = {A 1, A 2, A 3 } Σ = {0, 1} S = A 1 R = {A 1 A 2 A 3, {A 2 A 3 A 1, {A 2 1, {A 3 0B 3 1A 3 A 2 B 3, {A 3 0 1A 3 A 2 } {B 3 A 1 A 3 A 2 A 1 A 3 A 2 B 3 A α 1 β 1 α 2 α 1 β 2 α 2... α 1 β r α 2 B β 1 β 2,... β r V = {A 1, A 2, A 3 } Σ = {0, 1} S = A 1 R = {A 1 A 2 A 3, {A 2 0B 3 A 1 1A 3 A 2 B 3 A 1 {A 2 0A 1 1A 3 A 2 A 1 {A 2 1, {A 3 0B 3 1A 3 A 2 B 3, {A 3 0 1A 3 A 2 } {B 3 A 1 A 3 A 2 A 1 A 3 A 2 B Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
20 Beweis - Schritt 2 - Beispiel Ersetzung (i) V = {A 1, A 2, A 3 } Σ = {0, 1} S = A 1 R = {A 1 A 2 A 3, {A 2 0B 3 A 1 1A 3 A 2 B 3 A 1 {A 2 0A 1 1A 3 A 2 A 1 1 {A 3 0B 3 1A 3 A 2 B 3, {A 3 0 1A 3 A 2 } {B 3 A 1 A 3 A 2 A 1 A 3 A 2 B 3 V = {A 1, A 2, A 3 } Σ = {0, 1} S = A 1 R = {A 1 0B 3 A 1 A 3 {A 1 1A 3 A 2 B 3 A 1 A 3, {A 1 0A 1 A 3 1A 3 A 2 A 1 A 3 1A 3, {A 2 0B 3 A 1 1A 3 A 2 B 3 A 1 {A 2 0A 1 1A 3 A 2 A 1 1 {A 3 0B 3 1A 3 A 2 B 3, {A 3 0 1A 3 A 2 } {B 3 A 1 A 3 A 2 A 1 A 3 A 2 B Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
21 Beweis - Verfahren - Schritt 3 Vorher: Rechte Seiten von Regeln, deren linke Seite aus V \V = {B 1,..., B m } ist, beginnen mit einer Variablen aus {A 1,..., A m } (wegen Invarianten 2 und 5). Aktion: Ersetze Regeln B i A j α, α (Σ V ) mit Ersetzung (i). Nachher: G ist in Greibach-Normalform Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
22 Beweis - Schritt 3 - Beispiel Ersetzung (i) {A 1 0B 3 A 1 A 3 {A 1 1A 3 A 2 B 3 A 1 A 3, {A 1 0B 3 A 1 A 3 {A 1 1A 3 A 2 B 3 A 1 A 3, {A 1 0A 1 A 3 1A 3 A 2 A 1 A 3 1A 3 {A, 1 0A 1 A 3 1A 3 A 2 A 1 A 3 1A 3, {A 2 0B 3 A 1 1A 3 A 2 B 3 A 1 {A 2 0A 1 1A 3 A 2 A 1 1 {A 3 0B 3 1A 3 A 2 B 3, {A 3 0 1A 3 A 2 } {B 3 A 1 A 3 A 2 A 1 A 3 A 2 B 3 {A 2 0B 3 A 1 1A 3 A 2 B 3 A 1 {A 2 0A 1 1A 3 A 2 A 1 1 {A 3 0B 3 1A 3 A 2 B 3, {A 3 0 1A 3 A 2 } {B 3 1A 3 A 3 A 2 0B 3 A 1 A 3 A 3 A 2 {B 3 1A 3 A 2 A 1 A 3 A 3 A 2 0A 1 A 3 A 3 A 2 {B 3 1A 3 A 2 B 3 A 1 A 3 A 3 A 2 1A 3 A 3 A 2 B 3 {B 3 0B 3 A 1 A 3 A 3 A 2 B 3 1A 3 A 2 A 1 A 3 A 3 A 2 B 3 {B 3 0A 1 A 3 A 3 A 2 B 3 {B 3 1A 3 A 2 B 3 A 1 A 3 A 3 A 2 B Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
23 Kellerautomaten Ein (nichtdeterministischer) Kellerautomat (NPDA bzw. PDA, Pushdown Automaton) besteht aus (Q, Σ, Γ, q 0, Z 0, δ, F ), wobei Q endliche Zustandsmenge Σ endliches Eingabealphabet Γ endliches STACK-Alphabet q 0 Q Anfangszustand Z 0 Γ Initialisierung des STACK δ : Q (Σ {ε}) Γ 2 Q Γ, d.h. δ(q, a, Z ) {(q, γ) : q Q, γ Γ } δ(q, ε, Z ) {(q, γ) : q Q, γ Γ } F Q Menge der akzeptierenden Endzustände, F = ist möglich Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
24 Kellerautomaten - Visualisierung Eingabeband E i n g a b e A Kellerautomat B C # Keller Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
25 Kellerautomaten - Arbeitsweise Eine Konfiguration eines PDA ist ein Tripel (q, w, α) mit q Q, w Σ der Teil der Eingabe, der noch nicht gelesen wurde, α Γ STACK-Inhalt. Zu Konfiguration (q, w 1... w k, Z 1... Z m ) gibt es die Nachfolgekonfigurationen: (q, w 2... w k, Z 1... Z r Z 2... Z m ) für alle (q, Z 1... Z r ) δ(q, w 1, Z 1 ) und (q, w 1... w k, Z 1... Z r Z 2... Z m ) für alle (q, Z 1... Z r ) δ(q, ε, Z 1 ) Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
26 Kellerautomaten - Arbeitsweise Ein PDA akzeptiert ein w Σ durch leeren Stack, wenn es eine zulässige Folge von Konfigurationen aus der Anfangskonfiguration (q 0, w, Z 0 ) in eine Konfiguration (q, ε, ε), q Q, gibt. Ein PDA akzeptiert ein w Σ durch einen akzeptierenden Endzustand, wenn es eine zulässige Folge von Konfigurationen aus der Anfangskonfiguration (q 0, w, Z 0 ) in eine Konfiguration (q, ε, γ) mit q F und γ Γ gibt. Ein PDA ist deterministisch (DPDA), falls für alle q Q, a Σ, Z Γ. δ(q, a, Z ) + δ(q, ε, Z ) Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
27 Kellerautomaten - Beispiel Ein DPDA für L = {w#w R w {0, 1} }. Informelle Beschreibung: Betrachte beliebiges Wort w 1... w n #w n... w 1 L. Phase 1 Lies w 1... w n und schreibe jeweils w i auf den STACK bis # gelesen. Phase 2 Lies w n... w 1 und vergleiche den jeweils gelesenen Buchstaben mit dem jeweils obersten Buchstaben auf dem STACK. Gleichheit: Nimm obersten Buchstaben vom STACK Sonst: Stoppe in nichtakzeptierenden Zustand Phase 3 Ist nur noch Z 0 auf dem STACK Entferne Z 0 Akzeptiere die Eingabe mit leerem STACK Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
28 Kellerautomaten - Beispiel Ein DPDA für L = {w#w R w {0, 1} }. (Q = {q 0, q 1, q 2 }, Σ = {0, 1, #}, Γ = Σ {Z 0 }), q 0, Z 0, δ, ) δ(q 0, 0, Z 0 ) = (q 1, 0Z 0 ) Phase 1 δ(q 0, 1, Z 0 ) = (q 1, 1Z 0 ) δ(q 1, 0, 0) = (q 1, 00) δ(q 1, 0, 1) = (q 1, 01) δ(q 1, 1, 0) = (q 1, 10) δ(q 1, 1, 1) = (q 1, 11) δ(q 1, #, 0) = (q 2, 0) Trennzeichen gelesen Zu Phase 2 δ(q 1, #, 1) = (q 2, 1) δ(q 2, 0, 0) = (q 2, ε) Phase 2 δ(q 2, 1, 1) = (q 2, ε) δ(q 2, ε, Z 0 ) = (q 2, ε) Phase Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
29 Beispiel - Berechnung für Eingabe 001#100 δ(q 0, 0, Z 0 ) = (q 1, 0Z 0 ) δ(q 0, 1, Z 0 ) = (q 1, 1Z 0 ) δ(q 1, 0, 0) = (q 1, 00) δ(q 1, 0, 1) = (q 1, 01) δ(q 1, 1, 0) = (q 1, 10) δ(q 1, 1, 1) = (q 1, 11) δ(q 1, #, 0) = (q 2, 0) δ(q 1, #, 1) = (q 2, 1) δ(q 2, 0, 0) = (q 2, ε) δ(q 2, 1, 1) = (q 2, ε) δ(q 2, ε, Z 0 ) = (q 2, ε) Zustand Eingabe Stack Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
30 Beispiel - Berechnung für Eingabe 001#100 δ(q 0, 0, Z 0 ) = (q 1, 0Z 0 ) δ(q 0, 1, Z 0 ) = (q 1, 1Z 0 ) δ(q 1, 0, 0) = (q 1, 00) δ(q 1, 0, 1) = (q 1, 01) δ(q 1, 1, 0) = (q 1, 10) δ(q 1, 1, 1) = (q 1, 11) δ(q 1, #, 0) = (q 2, 0) δ(q 1, #, 1) = (q 2, 1) δ(q 2, 0, 0) = (q 2, ε) δ(q 2, 1, 1) = (q 2, ε) δ(q 2, ε, Z 0 ) = (q 2, ε) Zustand Eingabe Stack q 0 001#100 Z Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
31 Beispiel - Berechnung für Eingabe 001#100 δ(q 0, 0, Z 0 ) = (q 1, 0Z 0 ) δ(q 0, 1, Z 0 ) = (q 1, 1Z 0 ) δ(q 1, 0, 0) = (q 1, 00) δ(q 1, 0, 1) = (q 1, 01) δ(q 1, 1, 0) = (q 1, 10) δ(q 1, 1, 1) = (q 1, 11) δ(q 1, #, 0) = (q 2, 0) δ(q 1, #, 1) = (q 2, 1) δ(q 2, 0, 0) = (q 2, ε) δ(q 2, 1, 1) = (q 2, ε) δ(q 2, ε, Z 0 ) = (q 2, ε) Zustand Eingabe Stack q 0 001#100 Z 0 q 1 01#100 0Z Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
32 Beispiel - Berechnung für Eingabe 001#100 δ(q 0, 0, Z 0 ) = (q 1, 0Z 0 ) δ(q 0, 1, Z 0 ) = (q 1, 1Z 0 ) δ(q 1, 0, 0) = (q 1, 00) δ(q 1, 0, 1) = (q 1, 01) δ(q 1, 1, 0) = (q 1, 10) δ(q 1, 1, 1) = (q 1, 11) δ(q 1, #, 0) = (q 2, 0) δ(q 1, #, 1) = (q 2, 1) δ(q 2, 0, 0) = (q 2, ε) δ(q 2, 1, 1) = (q 2, ε) δ(q 2, ε, Z 0 ) = (q 2, ε) Zustand Eingabe Stack q 0 001#100 Z 0 q 1 01#100 0Z 0 q 1 1#100 00Z Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
33 Beispiel - Berechnung für Eingabe 001#100 δ(q 0, 0, Z 0 ) = (q 1, 0Z 0 ) δ(q 0, 1, Z 0 ) = (q 1, 1Z 0 ) δ(q 1, 0, 0) = (q 1, 00) δ(q 1, 0, 1) = (q 1, 01) δ(q 1, 1, 0) = (q 1, 10) δ(q 1, 1, 1) = (q 1, 11) δ(q 1, #, 0) = (q 2, 0) δ(q 1, #, 1) = (q 2, 1) δ(q 2, 0, 0) = (q 2, ε) δ(q 2, 1, 1) = (q 2, ε) δ(q 2, ε, Z 0 ) = (q 2, ε) Zustand Eingabe Stack q 0 001#100 Z 0 q 1 01#100 0Z 0 q 1 1#100 00Z 0 q 1 # Z Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
34 Beispiel - Berechnung für Eingabe 001#100 δ(q 0, 0, Z 0 ) = (q 1, 0Z 0 ) δ(q 0, 1, Z 0 ) = (q 1, 1Z 0 ) δ(q 1, 0, 0) = (q 1, 00) δ(q 1, 0, 1) = (q 1, 01) δ(q 1, 1, 0) = (q 1, 10) δ(q 1, 1, 1) = (q 1, 11) δ(q 1, #, 0) = (q 2, 0) δ(q 1, #, 1) = (q 2, 1) δ(q 2, 0, 0) = (q 2, ε) δ(q 2, 1, 1) = (q 2, ε) δ(q 2, ε, Z 0 ) = (q 2, ε) Zustand Eingabe Stack q 0 001#100 Z 0 q 1 01#100 0Z 0 q 1 1#100 00Z 0 q 1 # Z 0 q Z 0 q Z Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
35 Beispiel - Berechnung für Eingabe 001#100 δ(q 0, 0, Z 0 ) = (q 1, 0Z 0 ) δ(q 0, 1, Z 0 ) = (q 1, 1Z 0 ) δ(q 1, 0, 0) = (q 1, 00) δ(q 1, 0, 1) = (q 1, 01) δ(q 1, 1, 0) = (q 1, 10) δ(q 1, 1, 1) = (q 1, 11) δ(q 1, #, 0) = (q 2, 0) δ(q 1, #, 1) = (q 2, 1) δ(q 2, 0, 0) = (q 2, ε) δ(q 2, 1, 1) = (q 2, ε) δ(q 2, ε, Z 0 ) = (q 2, ε) Zustand Eingabe Stack q 0 001#100 Z 0 q 1 01#100 0Z 0 q 1 1#100 00Z 0 q 1 # Z 0 q Z 0 q Z 0 q 2 0 0Z Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
36 Beispiel - Berechnung für Eingabe 001#100 δ(q 0, 0, Z 0 ) = (q 1, 0Z 0 ) δ(q 0, 1, Z 0 ) = (q 1, 1Z 0 ) δ(q 1, 0, 0) = (q 1, 00) δ(q 1, 0, 1) = (q 1, 01) δ(q 1, 1, 0) = (q 1, 10) δ(q 1, 1, 1) = (q 1, 11) δ(q 1, #, 0) = (q 2, 0) δ(q 1, #, 1) = (q 2, 1) δ(q 2, 0, 0) = (q 2, ε) δ(q 2, 1, 1) = (q 2, ε) δ(q 2, ε, Z 0 ) = (q 2, ε) Zustand Eingabe Stack q 0 001#100 Z 0 q 1 01#100 0Z 0 q 1 1#100 00Z 0 q 1 # Z 0 q Z 0 q Z 0 q 2 0 0Z 0 q 2 Z Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
37 Beispiel - Berechnung für Eingabe 001#100 δ(q 0, 0, Z 0 ) = (q 1, 0Z 0 ) δ(q 0, 1, Z 0 ) = (q 1, 1Z 0 ) δ(q 1, 0, 0) = (q 1, 00) δ(q 1, 0, 1) = (q 1, 01) δ(q 1, 1, 0) = (q 1, 10) δ(q 1, 1, 1) = (q 1, 11) δ(q 1, #, 0) = (q 2, 0) δ(q 1, #, 1) = (q 2, 1) δ(q 2, 0, 0) = (q 2, ε) δ(q 2, 1, 1) = (q 2, ε) δ(q 2, ε, Z 0 ) = (q 2, ε) Zustand Eingabe Stack q 0 001#100 Z 0 q 1 01#100 0Z 0 q 1 1#100 00Z 0 q 1 # Z 0 q Z 0 q Z 0 q 2 0 0Z 0 q 2 Z 0 akzeptiert durch leeren Stack Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
38 Kellerautomaten - Beispiel 2 Ein NPDA für L = {ww R w {0, 1} }. Informelle Beschreibung: In diesem Fall fehlt das Trennzeichen. Der NPDA funktioniert wie der DPDA aus dem letzten Beispiel Der Übergang in Phase 2 funktioniert allerdings nichtdeterministisch. Bemerkung: Für die Sprache L = {ww R w {0, 1} } gibt es keinen DPDA. NPDAs können also mehr als DPDAs Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
39 Kellerautomaten - Beispiel 2 Ein NPDA für L = {ww R w {0, 1} }. (Q = {q 0, q 1, q 2 }, Σ = {0, 1, #}, Γ = Σ {Z 0 }), q 0, Z 0, δ, ) δ(q 0, 0, Z 0 ) = {(q 1, 0Z 0 )} Phase 1 δ(q 0, 1, Z 0 ) = {(q 1, 1Z 0 )} δ(q 1, 0, 0) = {(q 1, 00), (q 2, ɛ)} δ(q 1, 0, 1) = {(q 1, 01)} δ(q 1, 1, 0) = {(q 1, 10)} δ(q 1, 1, 1) = {(q 1, 11), (q 2, ɛ)} δ(q 2, 0, 0) = {(q 2, ε)} Phase 2 δ(q 2, 1, 1) = {(q 2, ε)} δ(q 2, ε, Z 0 ) = {(q 2, ε)} Phase Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
40 Satz: Zu einem PDA, der eine Sprache L durch einen akzeptierenden Endzustand akzeptiert, kann ein PDA konstruiert werden, der L mit leerem STACK akzeptiert Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
41 Beweis - Beschreibung Sei A 1 = (Q 1, Σ, Γ 1, δ 1, q0 1, Z 0 1, F 1) PDA, der L durch Übergang in einen Zustand aus F 1 akzeptiert. Wir konstruieren dazu einen PDA A 2 = (Q 2, Σ, Γ 2, δ 2, q0 2, Z 0 2 ), der L durch leeren STACK akzeptiert. Sei q E ein neuer Zustand Sei Z0 2 ein neues Stack-Symbol Idee der Konstruktion von A 2. Lege zu Beginn Z0 2 vor Z 0 1 auf den Stack, so dass der Stack nicht versehentlich geleert werden kann. Dann Verfahre wie in A 1. Wenn Zustand in F 1 erreicht wird: Gehe zu q E und leere den Stack Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
42 Beweis - Konstruktion A 1 = (Q 1, Σ, Γ 1, δ 1, q 1 0, Z 1 0, F 1) akzeptiert durch Endzustand A 2 = (Q 2, Σ, Γ 2, δ 2, q0 2, Z 0 2 ), akzeptiert durch leeren Stack Sei q E ein neuer Zustand Sei Z0 2 ein neues Stack-Symbol Q 2 = Q 1 {q0 2, q E} Γ 2 = Γ 1 {Z 2 0 } δ 2 (q 2 0, ε, Z 2 0 ) = {(q1 0, Z 1 0 Z 2 0 )} δ 2 (q, a, Z ) = δ 1 (q, a, Z ) für q Q 1, a = ε, Z Γ 1 δ 1 (q, a, Z ) für q Q 1 \F 1, a = ε, Z Γ 1 δ 2 (q, ε, Z ) = δ 1 (q, ε, Z ) {(q E, ε)} für q F 1, Z Γ 2 δ 2 (q E, ε, Z ) = {(q E, ε)} für Z Γ 2 δ( ) = sonst Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
43 Satz: Zu einem PDA, der eine Sprache L mit leerem STACK akzeptiert, kann ein PDA konstruiert werden, der L durch einen akzeptierenden Endzustand akzeptiert Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
44 Beweis - Beschreibung Sei A 1 = (Q 1, Σ, Γ 1, δ 1, q0 1, Z 0 1 ), ein PDA der w L mit leerem STACK akzeptiert Wir konstruieren dazu einen PDA A 2 = (Q 2, Σ, Γ 2, δ 2, q0 2, Z 0 2, F 2), der genau die w L durch Übergang in einen Zustand q F 2 akzeptiert. Sei Z0 2 ein neues Stack-Symbol Sei q F ein neuer (End-)Zustand Sei q0 2 ein neuer (Anfangs-)Zustand Idee der Konstruktion von A 2. Lege zu Beginn Z0 2 vor Z 0 1 auf den Stack, und lösche Z 0 2 nur, wenn die Abarbeitung von A 1 durch leeren Stack akzeptiert hätte. Gehe in Endzustand q F, wenn A 1 durch leeren Stack akzeptiert hätte Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
45 Beweis - Konstruktion A 1 = (Q 1, Σ, Γ 1, δ 1, q 1 0, Z 1 0, F 1) akzeptiert durch leeren Stack A 2 = (Q 2, Σ, Γ 2, δ 2, q0 2, Z 0 2 ), akzeptiert durch Endzustand q0 2 neuer Anfangszustand q F neuer (End-)Zustand ein neues Stack-Symbol Z 2 0 Q 2 = Q 1 {q 2 0, q F }, F 2 = {q F } Γ 2 = Γ 1 {Z 2 0 } { δ 2 (q0 2 {q, a, X ) = 1 0, Z0 1Z 0 2} falls a = ε und X = Z 0 2 sonst δ 2 (q, a, Z ) = δ 1 (q, a, Z ), falls q Q 1, a Σ {ε} und Z Γ 1 δ 2 (q, ε, Z 2 0 ) = {(q F, ε)} für q Q Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
46 Satz: Für eine Grammatik G in Greibach-Normalform kann ein PDA konstruiert werden, der L(G) mit leerem STACK akzeptiert Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
47 Beweis Sei G = (Σ, V, S, R) eine Grammatik in Greibach Normalform Konstruiere gewünschten Automaten A = (Q, Σ, Γ, δ, q 0, Z 0 ) Q := {q 0 } Γ := V Z 0 := S δ(q 0, a, A) := {(q 0, α) (A aα) R} Per Induktion über die Länge i einer Ableitung beweisen wir: S w 1... w i A 1... A m A kann beim Lesen von w 1... w i den STACK-Inhalt A 1... A m erzeugen. Möglicherweise ist A 1... A m = ɛ. Daraus folgt: A erkennt w 1... w n mit leerem STACK S w 1... w n in G Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
48 Beweis Q := {q 0 } Γ := V Z 0 := S δ(q 0, a, A) := {(q 0, α) (A aα) R} Induktionsanfang ist mit i = 0 trivialerweise erfüllt. Induktionsschritt: Sei i 1 und j stehe für eine Ableitung der Länge j. Dann gilt S i w 1... w i A 1... A m A V, r {1,..., m} mit S i 1 w 1... w i 1 A A r... A m w 1... w i A 1... A m. Mit Induktionsvoraussetzung ist dies äquivalent zu A V, r {1,..., m} so, dass A das Wort w 1... w i 1 lesen und dabei STACK-Inhalt A A r... A m erzeugen kann, und A w i A 1... A r 1 Regel von G ist Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
49 Beweis Q := {q 0 } Γ := V Z 0 := S δ(q 0, a, A) := {(q 0, α) (A aα) R} Induktionsanfang ist mit i = 0 trivialerweise erfüllt. Induktionsschritt: Sei i 1 und j stehe für eine Ableitung der Länge j. Mit Induktionsvoraussetzung ist dies äquivalent zu A V, r {1,..., m} so, dass A das Wort w 1... w i 1 lesen und dabei STACK-Inhalt A A r... A m erzeugen kann, und A w i A 1... A r 1 Regel von G ist. Dies ist genau dann erfüllt, wenn A das Wort w 1... w i lesen und dabei den STACK-Inhalt A 1... A m erzeugen kann Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE
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
Mehr8. Turingmaschinen und kontextsensitive Sprachen
8. Turingmaschinen und kontextsensitive Sprachen Turingmaschinen (TM) von A. Turing vorgeschlagen, um den Begriff der Berechenbarkeit formal zu präzisieren. Intuitiv: statt des Stacks bei Kellerautomaten
Mehr4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls
4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls δ(q, a, Z) + δ(q, ɛ, Z) 1 (q, a, Z) Q Σ. Die von einem DPDA, der mit leerem Keller akzeptiert,
Mehr11.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
Mehr1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,
Theorie der Informatik 8. März 25 8. Reguläre Sprachen I Theorie der Informatik 8. Reguläre Sprachen I 8. Reguläre Grammatiken Malte Helmert Gabriele Röger 8.2 DFAs Universität Basel 8. März 25 8.3 NFAs
Mehr2.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
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 10.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik
MehrEin 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
MehrAlgorithmen mit konstantem Platzbedarf: Die Klasse REG
Algorithmen mit konstantem Platzbedarf: Die Klasse REG Sommerakademie Rot an der Rot AG 1 Wieviel Platz brauchen Algorithmen wirklich? Daniel Alm Institut für Numerische Simulation Universität Bonn August
MehrEINFÜHRUNG IN DIE THEORETISCHE INFORMATIK
EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2012 17. DIE KONTEXTFREIEN SPRACHEN II: ABSCHLUSSEIGENSCHAFTEN, MASCHINENCHARAKTERISIERUNG, KOMPLEXITÄT Theoretische
Mehr1 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 15 Ziele vgl. AFS: Berechnungsmodelle für Typ-0- und Typ-1-Sprachen (Nicht-)Abschlußeigenschaften
MehrTheoretische Informatik 2
Theoretische Informatik 2 Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2009/10 Die Chomsky-Hierarchie Definition Sei G = (V, Σ, P, S) eine Grammatik. 1 G heißt vom Typ 3 oder
MehrTheoretische 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
MehrSuche nach einem solchen Kreis. Endlichkeitstest. Vereinigung und Durchschnitt. Abschlusseigenschaften
Endlichkeitstest Eingabe: DFA/NFA M. Frage: Ist die von M akzeptierte Sprache endlich? Nahe liegende Beobachtung: In einem DFA/NFA, der eine unendliche Sprache akzeptiert, muss es einen Kreis geben, der
Mehra n b n c n ist kontextsensitiv kontextfreie Sprachen (Typ 2) Abschnitt 3.3 kontextfreie Sprachen: Abschlusseigenschaften Chomsky NF und binäre Bäume
Kap 3: Grammatiken Chomsky-Hierarchie 32 Kap 3: Grammatiken Kontextfreie 33 a n b n c n ist kontextsensiti Beispiel 3111 modifizieren: Σ = {a, b, c G = (Σ, V, P, X ) V = {X, Y, Z P : X ε X axyz ZY YZ ay
MehrEinführung in Berechenbarkeit, Komplexität und formale Sprachen
Johannes Blömer Skript zur Vorlesung Einführung in Berechenbarkeit, Komplexität und formale Sprachen Universität Paderborn Wintersemester 2011/12 Inhaltsverzeichnis 1 Einleitung 2 1.1 Ziele der Vorlesung...................................
MehrSprachen 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Ü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
MehrDefinition (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
MehrFormale 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
Mehrist 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
MehrTeil 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 ),
MehrTheoretische 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
MehrFormale Sprachen. Spezialgebiet für Komplexe Systeme. Yimin Ge. 5ahdvn. 1 Grundlagen 1. 2 Formale Grammatiken 4. 3 Endliche Automaten 5.
Formale Sprachen Spezialgebiet für Komplexe Systeme Yimin Ge 5ahdvn Inhaltsverzeichnis 1 Grundlagen 1 2 Formale Grammatien 4 Endliche Automaten 5 4 Reguläre Sprachen 9 5 Anwendungen bei Abzählproblemen
MehrTuring-Maschinen. Definition 1. Eine deterministische Turing-Maschine (kurz DTM) ist ein 6- Dem endlichen Alphabet Σ von Eingabesymbolen.
Turing-Maschinen Nachdem wir endliche Automaten und (die mächtigeren) Kellerautomaten kennengelernt haben, werden wir nun ein letztes, noch mächtigeres Automatenmodell kennenlernen: Die Turing-Maschine
MehrTheoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten
Inhalt 1 Einführung 2 Automatentheorie und Formale Sprachen Grammatiken Reguläre Sprachen und endliche Automaten Kontextfreie Sprachen und Kellerautomaten Kontextsensitive und Typ 0-Sprachen 3 Berechenbarkeitstheorie
MehrBerechenbarkeit 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
MehrFormale 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
MehrEndliche Sprachen. Folgerung: Alle endlichen Sprachen sind regulär. Beweis: Sei L={w 1,,w n } Σ*. Dann ist w 1 +L+w n ein regulärer Ausdruck für
Endliche Sprachen Folgerung: Alle endlichen Sprachen sind regulär. Beweis: Sei L={w 1,,w n } Σ*. Dann ist w 1 +L+w n ein regulärer Ausdruck für L. 447 Zusammenfassung Beschreibungsformen für reguläre Sprachen:
Mehrä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?
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik KIT 2..2 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik nationales Forschungszentrum Endliche Automaten in
MehrTutorium zur theoretischen Informatik Übungsblatt 4 (2006-12-13)
Ein verständiges Herz erwirbt Kenntnisse, und das Ohr der Weisen lauscht dem Wissen. (Die Bibel, "Buch der Sprüche", Kapitel 18 Vers 15) Inhalt 1. Empfehlenswerte Referenzen 2. Aufgabe 1 CF Grammatik für
MehrAusgewählte unentscheidbare Sprachen
Proseminar Theoretische Informatik 15.12.15 Ausgewählte unentscheidbare Sprachen Marian Sigler, Jakob Köhler Wolfgang Mulzer 1 Entscheidbarkeit und Semi-Entscheidbarkeit Definition 1: L ist entscheidbar
MehrSpeicherplatz-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
MehrInformatik 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
MehrTheoretische 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Übung zu Grundbegriffe der Informatik. Simon Wacker. 15. November 2013
Übung zu Grundbegriffe der Informatik Simon Wacker 15. November 2013 Vollständige Induktion über die Wortlänge Es sei B ein Alphabet. Dann ist B = n N 0 B n. Für jedes Wort w B sei A w eine Aussage, die
MehrKapitel 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
MehrAutomaten und Formale Sprachen
Automaten und Formale Sprachen Prof. Dr. Dietrich Kuske FG Theoretische Informatik, TU Ilmenau Wintersemester 2011/12 WS 11/12 1 Organisatorisches zur Vorlesung Informationen, aktuelle Version der Folien
Mehr1 Varianten von Turingmaschinen
1 Varianten von Turingmaschinen Es gibt weitere Definitionen für Turingmaschinen. Diese haben sich aber alle als äquivalent herausgestellt. Ein wiederkehrendes Element der Vorlesung: Äquivalenz von Formalismen
MehrLösungen zur 3. Projektaufgabe TheGI1
Marco Kunze (makunze@cs.tu-berlin.de) WS 2001/2002 Sebastian Nowozin (nowozin@cs.tu-berlin.de) 21. 1. 2002 Lösungen zur 3. Projektaufgabe TheGI1 Definition: Turing-Aufzähler Ein Turing-Aufzähler einer
MehrZusammenfassung Grundzüge der Informatik 4
Zusammenfassung Grundzüge der Informatik 4 Sommersemester 04 Thorsten Wink 21. September 2004 Version 1.2 Dieses Dokument wurde in L A TEX 2εgeschrieben. Stand: 21. September 2004 Inhaltsverzeichnis 1
MehrAutomaten, Spiele und Logik
Automaten, Spiele und Logik Woche 13 11. Juli 2014 Inhalt der heutigen Vorlesung Linearzeit Temporale Logik (LTL) Alternierende Büchi Automaten Nicht-Determinisierung (Miyano-Ayashi) Beschriftete Transitionssysteme
MehrLösungsvorschläge Blatt Z1
Theoretische Informatik Departement Informatik Prof. Dr. Juraj Hromkovič http://www.ita.inf.ethz.ch/theoinf16 Lösungsvorschläge Blatt Z1 Zürich, 2. Dezember 2016 Lösung zu Aufgabe Z1 Wir zeigen L qi /
MehrFormale Sprachen und Automaten
Formale Sprachen und Automaten Kapitel 1: Grundlagen Vorlesung an der DHBW Karlsruhe Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2012 Ziel Einführung der wichtigsten
MehrSatz von Kleene. (Stephen C. Kleene, ) Wiebke Petersen Einführung CL 2
Satz von Kleene (Stephen C. Kleene, 1909-1994) Jede Sprache, die von einem deterministischen endlichen Automaten akzeptiert wird ist regulär und jede reguläre Sprache wird von einem deterministischen endlichen
MehrKapitel: Kontextfreie Sprachen. Kontextfreie Sprachen 1 / 78
Kapitel: Kontextfreie Sprachen Kontextfreie Sprachen 1 / 78 Die Syntax von Programmiersprachen Wie lässt sich die Syntax einer Programmiersprache definieren, so dass die nachfolgende Syntaxanalyse effizient
MehrGrundbegriffe 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
MehrGrundbegriffe 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
MehrFORMALE 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
MehrTheoretische 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
MehrAutomaten, Spiele, und Logik
Automaten, Spiele, und Logik Woche 2 25. April 2014 Inhalt der heutigen Vorlesung 1. Reguläre Ausdrücke 2. der Satz von Kleene 3. Brzozowski Methode 4. grep und perl Reguläre Ausdrücke Rekursive Definition,
MehrGrammatiken. Einführung
Einführung Beispiel: Die arithmetischen Ausdrücke über der Variablen a und den Operationen + und können wie folgt definiert werden: a, a + a und a a sind arithmetische Ausdrücke Wenn A und B arithmetische
MehrTheoretische Informatik Mitschrift
3. Endliche Automaten endliche Zustandsübergangssysteme Theoretische Informatik Mitschrift Beispiel: 2-Bit-Ringzähler: ={Inc} L R ={IncInc Inc,Inc 7, Inc 11,...} n ' mod ' 4=3 ={Inc n k 0.n=4 k3 } 2-Bit-Ringzähler
MehrVorlesung 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
MehrFormale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung
Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung Frank Heitmann heitmann@informatik.uni-hamburg.de 13. Mai 2014 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/17 Überblick Wir hatten
Mehr7 Endliche Automaten. Reimund Albers Papierfalten Kapitel 7 Endliche Automaten 103
Reimund Albers Papierfalten Kapitel 7 Endliche Automaten 103 7 Endliche Automaten Ein erstes Beispiel Ganz im Sinn der vorangegangenen Kapitel machen wir wieder Anleihen in einem wohl etablierten Gebiet.
MehrMotivation. 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
MehrKonfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen.
H MPKP Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen. Beispiel: 1234q567 bedeutet: Kopf steht auf 5, Zustand ist q. Rechnung:
Mehr6 Kontextfreie Grammatiken
6 Kontextfreie Grammatiken Reguläre Grammatiken und damit auch reguläre Ausdrücke bzw. endliche Automaten haben bezüglich ihres Sprachumfangs Grenzen. Diese Grenzen resultieren aus den inschränkungen,
Mehr1 Reguläre Sprachen. 1.1 Reguläre Ausdrücke. Kai Sauerwald Zusammenfassung: GTI SS 12
1 Reguläre Sprachen Definition 1.1 Alphabet Eine endliche, nicht leere Menge. Definition 1.2 Wort Ein Wort w über einem Alphabet Σ ist eine endliche Folge σ 1... σ n von Zeichen aus Σ. Definition 1.8 Wiederholung
MehrÜbung Theoretische Grundlagen Nachtrag zur Vorlesung Dirk Achenbach 21.11.2013
Übung Theoretische Grundlagen Nachtrag zur Vorlesung Dirk Achenbach 21.11.2013 INSTITUT FÜR KRYPTOGRAPHIE UND SICHERHEIT KIT University of the State of Baden-Wuerttemberg and National Laboratory of the
MehrFormale Sprachen und Automaten
Formale Sprachen und Automaten Kapitel 5: Typ 1 und Typ 0 Vorlesung an der DHBW Karlsruhe Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2012 Kapitel 5 Typ 1
MehrSatz 90 Sei A = (Q, Σ, δ, q 0, F ) ein DFA. Der Zeitaufwand des obigen Minimalisierungsalgorithmus ist O( Q 2 Σ ).
Satz 90 Sei A = (Q, Σ, δ, q 0, F ) ein DFA. Der Zeitaufwand des obigen Minimalisierungsalgorithmus ist O( Q 2 Σ ). Beweis: Für jedes a Σ muss jede Position in der Tabelle nur konstant oft besucht werden.
MehrKomplexität des Äquivalenzproblems für reguläre Ausdrücke
Philipp Zschoche philipp.zschoche@uni-oldenburg.de Proseminar ÄRA: Äquivalenz regulärer Ausdrücke Sommersemester 2014 Modulverantwortlich: Dr. Hans Fleischhack, Prof. Dr. Eike Best Carl von Ossietzky Universität
MehrTheoretische Grundlagen des Software Engineering
Theoretische Grundlagen des Software Engineering 4: Nichtdeterminismus Teil 2 schulz@eprover.org Software Systems Engineering Nichtdeterministische endliche Automaten Definition: Ein nichtdeterministischer
MehrProgrammiersprachen 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
MehrWortproblem 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?
MehrFormale Sprachen. Script, Kapitel 4. Grammatiken
Formale Sprachen Grammatiken Script, Kapitel 4 erzeugen Sprachen eingeführt von Chomsky zur Beschreibung natürlicher Sprachen bedeutend für die Syntaxdefinition von Programmiersprachen (Compilerbau) Automaten
MehrTU8 Beweismethoden. Daniela Andrade
TU8 Beweismethoden Daniela Andrade daniela.andrade@tum.de 12.12.2016 1 / 21 Kleine Anmerkung Meine Folien basieren auf den DS Trainer von Carlos Camino, den ihr auf www.carlos-camino.de/ds findet ;) 2
MehrSprachen/Grammatiken eine Wiederholung
Sprachen/Grammatiken eine Wiederholung Was sind reguläre Sprachen? Eigenschaften regulärer Sprachen Sprachen Begriffe Symbol: unzerlegbare Grundzeichen Alphabet: endliche Menge von Symbolen Zeichenreihe:
Mehr2.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
MehrGrammatiken und die Chomsky-Hierarchie
Grammatiken und die Chomsky-Hierarchie Def.: Eine Grammatik G=(Σ,V,S,R) besteht aus endlichem Alphabet Σ endlicher Variablenmenge V mit V Σ= Startsymbol SєV endlicher Menge R с (V Σ) + x(v Σ)* von Ableitungsregeln
MehrLösungsvorschläge Blatt 4
Theoretische Informatik Departement Informatik Prof. Dr. Juraj Hromkovič http://www.ita.inf.ethz.ch/theoinf16 Lösungsvorschläge Blatt 4 Zürich, 21. Oktober 2016 Lösung zu Aufgabe 10 (a) Wir zeigen mit
MehrDer deterministische, endliche Automat. Formale Grundlagen der Informatik 1 Kapitel 3 Mehr zu regulären Sprachen
Der deterministische, endliche Automat Formale Grundlagen der Informatik 1 Kapitel 3 Mehr zu regulären Sprachen Frank Heitmann heitmann@informatik.uni-hamurg.de 8. April 2014 Definition (DFA) Ein deterministischer,
MehrGTI. Hannes Diener. 6. Juni - 13. Juni. ENC B-0123, diener@math.uni-siegen.de
GTI Hannes Diener ENC B-0123, diener@math.uni-siegen.de 6. Juni - 13. Juni 1 / 49 Die Turingmaschine war das erste (bzw. zweite) formale Modell der Berechenbarkeit. Sie wurden bereits 1936 (also lange
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik 3. Endliche Automaten (V) 21.05.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Determinierte endliche Automaten (DEAs) Indeterminierte
MehrAutomatentheorie und formale Sprachen
Automatentheorie und formale Sprachen VL 4 Reguläre Ausdrücke und reguläre Sprachen Kathrin Hoffmann 10. April 2012 Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 114 Aufgabe 13:
Mehrliefern 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
MehrTHEORETISCHE INFORMATIK
THEORETISCHE INFORMATIK Vorlesungsskript Jiří Adámek Institut für Theoretische Informatik Technische Universität Braunschweig Januar 2014 Inhaltsverzeichnis 1 Endliche Automaten 1 1.1 Mathematische Grundbegriffe.......................
MehrStatt (r s) schreiben wir in Zukunft meistens rs, gelegentlich auch (r; s).
14 2 REGULÄRE AUSDRÜCKE 2 Reguläre Ausdrücke Wir wollen (i.a. unendliche) Sprachen mit endlichen Mitteln darstellen, z.b. durch Grammatiken, nach denen die Sätze der Sprache gebildet werden dürfen. Es
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen
MehrEigenschaften regulärer Sprachen
= {} {0} {0} {} = {0} {} Für L(A) benötigen wir gemäß Gleichung.3 die Mengen R 3 und R3 3. R 3 = R R3 (R33) R3 = {0} {00} {0} {} ({ε} {0, } {0} {}) {0, } {00} = {0} {00} {0} {} ({0, } {0} {}) {0, } {00}
MehrÜbung Theoretische Grundlagen
Übung Theoretische Grundlagen Berechenbarkeit/Entscheidbarkeit Nico Döttling November 26, 2009 INSTITUT FÜR KRYPTOGRAPHIE UND SICHERHEIT KIT University of the State of Baden-Wuerttemberg and National Laboratory
MehrProgrammiersprachen und Übersetzer
Programmiersprachen und Übersetzer Berufsakademie Lörrach, TIT05-3. Semester Klausur, 1. Dez 2006 Aufgabe 1 2 3 4 5 6 7 8 9 Σ Note Max. 6 8 17 22 22 18 6 20 22 141 Punkte Alle Bezeichnungen bitte gemäß
Mehr4.2 Die Chomsky Normalform
4.2 Die Chomsky Normalform Für algorithmische Problemstellungen (z.b. das Wortproblem) aber auch für den Nachweis von Eigenschaften kontextfreier Sprachen ist es angenehm, von CFG in Normalformen auszugehen.
Mehr3 Vom Zählen zur Induktion
7 3 Vom Zählen zur Induktion 3.1 Natürliche Zahlen und Induktions-Prinzip Seit unserer Kindheit kennen wir die Zahlen 1,, 3, 4, usw. Diese Zahlen gebrauchen wir zum Zählen, und sie sind uns so vertraut,
MehrThomas Behr. 17. November 2011
in in Fakultät für Mathematik und Informatik Datenbanksysteme für neue Anwendungen FernUniversität in Hagen 17. November 2011 c 2011 FernUniversität in Hagen Outline in 1 2 3 4 5 6 - Was ist das? in über
MehrLösung zur Klausur. Grundlagen der Theoretischen Informatik. 1. Zeigen Sie, dass die folgende Sprache regulär ist: w {a, b} w a w b 0 (mod 3) }.
Lösung zur Klusur Grundlgen der Theoretischen Informtik 1. Zeigen Sie, dss die folgende Sprche regulär ist: { w {, } w w 0 (mod 3) }. Lösung: Wir nennen die Sprche L. Eine Sprche ist genu dnn regulär,
MehrAufgabentypen die in der Klausur vorkommen
Aufgabentypen die in der Klausur vorkommen können 1. Nennen Sie fünf wichtige Anwendungsgebiete der Computerlinguistik. 2. Für welches der drei Anwendungsgebiete Maschinelle Übersetzung, Rechtschreibkorrektur
MehrReguläre Sprachen Endliche Automaten
Endliche Automaten (Folie 54, Seite 16 im Skript) Einige Vorteile endlicher deterministischer Automaten: durch Computer schnell simulierbar wenig Speicher benötigt: Tabelle für δ (read-only), aktueller
MehrReduzierbarkeit und das Post'sche Korrespondenzproblem
Reduzierbarkeit und das Post'sche Korrespondenzproblem Agenda Motivation Reduzierbarkeit Definition Bedeutung Post'sches Korrespondenzproblem (PKP) Modifiziertes Post'sches Korrespondenzproblem (MPKP)
MehrJeweils am Montag um 18:30 treffen sich Studenten in Seminarraum 3 zum gemeinsamen Lernen.
Jeweils am Montag um 18:30 treffen sich Studenten in Seminarraum 3 zum gemeinsamen Lernen. Betrachtungen zu Sprache, Logik und Beweisen Sprache Wir gehen von unserem Alphabet einigen Zusatzsymbolen aus.
MehrGrundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014
Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Ulrich Furbach Institut für Informatik Sommersemester 2014 Furbach Grundlagen d. Theoretischen Informatik:
MehrGrammatiken und ANTLR
Grammatiken und ANTLR Zusatzfolien zu Algo Blatt 6 Author: Henry Schaefer http://www.majeeks.de/folien_blatt6.pdf Grammatik Definition: syntaktische Beschreibung einer Sprache (H.S.) Definiton Grammatik
MehrGrundlagen Theoretischer Informatik I SoSe 2011 in Trier. Henning Fernau Universität Trier fernau@uni-trier.de
Grundlagen Theoretischer Informatik I SoSe 2011 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Grundlagen Theoretischer Informatik I Gesamtübersicht Organisatorisches; Einführung Logik
MehrLösungen zu Übungsblatt 4
Lösungen zu Übungsblatt 4 Aufgabe 1 Sei Σ = {0,1,2} und u = 0102. Gesucht ist der minimale DEA der die Sprache L u = {w Σ u ist Teilwort von w} erkennt. Laut Vorlesung ist das Rückgrat des DEA von der
MehrMusterlösung zur Nachklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14
Institut für Theoretische Informatik Prof. Dr. Jörn Müller-Quade Musterlösung zur Nachklausur Theoretische Grundlagen der Informatik Wintersemester 203/4 Vorname Nachname Matrikelnummer Hinweise Für die
Mehr2. Berechnungsmächtigkeit von Zellularautomaten. Ziele Simulation von Schaltwerken Simulation von Turingmaschinen
2. Berechnungsmächtigkeit von Zellularautomaten Ziele Simulation von Schaltwerken Simulation von Turingmaschinen Beispiel WIREWORLD Elektronen laufen über Drähte von einem Gatter zum nächsten 2.3 Satz
MehrNichtdeterministische Platzklassen
Sommerakademie 2010 Rot an der Rot AG 1: Wieviel Platz brauchen Algorithmen wirklich? Nichtdeterministische Platzklassen Ulf Kulau August 23, 2010 1 Contents 1 Einführung 3 2 Nichtdeterminismus allgemein
Mehr