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

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten"

Transkript

1 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 4 Komplexitätstheorie Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 80 Kontextfreie Sprachen Zur Erinnerung Kontextfreie Grammatiken/Sprachen: alle Produktionsregeln P einer kontextfreien Grammatik G = (V, Σ, P, S) haben die Form A X, wobei A eine Variable in V ist und X eine Satzform in (V Σ) ist nach regulären Sprachen nächsthöhere Klasse in der Chomsky Hierarchie Grundlage im Compilerbau Beispiel (L = {a n b n n N}). Kontextfreie Grammatik G mit L(G) = L: S ab asb Wir zeigten bereits mit dem Pumping Lemma, dass L nicht regulär ist. Somit gibt es kontextfreie, nicht reguläre Sprachen. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 81

2 Normalformen allgemeine Form von kontextfreien Grammatiken eignet sich kaum für algorithmische Fragestellungen Normalformen geben einfache und einheitliche Struktur vor Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 82 Chomsky Normalform Definition 56 (Chomsky Normalform (CNF)). Sei G = (V, Σ, P, S) eine kontextfreie Grammatik, in der jede Regel die Form A BC oder A a oder S ε hat, wobei A V, B, C V \ {S} und a Σ ist. Dann sagen wir, dass G in Chomsky Normalform (CNF) vorliegt. Beobachtung. Falls G in CNF vorliegt und w L(G), dann besteht jede Ableitung von w aus genau 2 w 1 Schritten. Jeder Syntaxbaum (Ableitungsbaum) ist ein Binärbaum. Satz 57. Für jede kontextfreie Grammatik G existiert eine kontextfreie Grammatik G in Chomsky Normalform, so dass L(G) = L(G ). Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 83

3 Beispiel: L = {a n b n n 1} Kontextfreie Grammatik für L Grammatik für L in CNF G : S ab asb G : S AB AF E AB AF F EB A a B b Ableitung von aabb aus G S S AF af A F aeb aabb E B aabb aabb A B aabb a a b b Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 84 Beweis: Sei eine kontextfreie Grammatik G = (V,Σ, P, S) gegeben. Wir werden sukzessive die Produktionen/Regeln, die die Chomsky Regeln verletzen, durch äquivalente Regeln ersetzen. 0 Neue Startvariable S 0 und Regel S 0 S hinzufügen. Somit erscheint die Startvariable nie auf der rechten Seite 1 ε-regeln entfernen: Für jede Variable A S 0 entferne A ε, und für jede Regel der Form B X AY (X, Y (V Σ) ) füge zusätzlich eine Regel ohne A, also B XY, ein. Beachte: Für jedes Auftreten von A auf der rechten Seite fügen wir eine Extraregel ein. Z.B. für B X AY AZ fügen wir zusätzlich B X Y AZ, B XAY Z und B XY Z ein. 2 Einzelproduktionen entfernen: Entferne Regeln der Form A B (mit A, B V {S 0 }), und für jede Regel B X (X (V Σ) ) füge die Regel A X hinzu. Es sei denn, A X war eine Einzelproduktion, die bereits entfernt wurde. 3 Ersetze letztendlich jede Regel der Form mit x i V Σ für jedes i = 1,...,k: A x 1...x k Falls k 3, dann ersetze A x 1... x k durch A x 1 A 1, A 1 x 2 A 2,..., A k 2 x k 1 x k, wobei A 1,...,A k 2 neue Variablen sind. Falls k = 2, dann ersetze jedes Terminal x i Σ (i = 1, 2) in A x 1 x 2 durch X i, und füge X i x i als neue Regel hinzu, wobei X i eine neue Variable ist. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 85

4 Beispiel V = {S, A}, Σ = {a} S ASA A ε A aa ε 0-neue Startvariable S 0 S S ASA A ε A aa ε 1a-S ε eliminieren S 0 S ε S ASA A AA A aa ε 1b-A ε eliminieren S 0 S ε S ASA A AA AS SA A aa 2a-Einzelregel S A S 0 S ε S ASA aa AA AS SA A aa 2b-Einzelregel S 0 S S 0 ASA aa AA AS SA ε S ASA aa AA AS SA A aa 3a-S, S 0 ASA eliminieren (kurz) S 0 AX 1 aa AA AS SA ε S AX 1 aa AA AS SA A aa X 1 SA 3b- aa eliminieren (kurz) S 0 AX 1 A 1 A 1 AA AS SA ε S AX 1 A 1 A 1 AA AS SA A A 1 A 1 X 1 SA A 1 a Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 86 Greibach Normalform Definition 58 (Greibach Normalform (GNF)). Sei G = (V, Σ, P, S) eine kontextfreie Grammatik, in der jede Regel die Form A ab 1... B k (k 0) oder S ε hat, wobei A V, B 1,... B k V \ {S} und a Σ ist. Dann sagen wir, dass G in Greibach Normalform (GNF) vorliegt. Satz 59. Für jede kontextfreie Grammatik G existiert eine kontextfreie Grammatik G in Greibach Normalform, so dass L(G) = L(G ). Bemerkung. GNF kann als Erweiterung von regulären Grammatiken betrachtet werden. In regulären Grammatiken sind nur Regeln mit k = 0, 1 erlaubt. Jede kontextfreie Grammatik kann algorithmisch in eine GNF umgeformt werden. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 87

5 Pumping Lemma für kontextfreie Sprachen Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 88 Pumping Lemma für kontextfreie Sprachen Wie kann man beweisen, dass eine Sprache nicht kontextfrei ist? Satz 60 (Pumping Lemma für kontextfreie Sprachen). Sei L eine kontextfreie Sprache über ein beliebiges Alphabet Σ. Dann existiert eine Zahl n N, so dass für alle Wörter w L mit w n eine Zerlegung w = uvxyz mit folgenden Eigenschaften existiert: 1 vy 1, 2 vxy n, 3 uv k xy k z L für alle k N. Bemerkung. Für unäre Alphabete sind beide Pumping Lemmata äquivalent, da bei Wörtern über unären Alphabeten die Reihenfolge keine Rolle spielt und somit uv k xy k z = x(vy) k uz. Wir werden noch sehen, dass jede kontextfreie Sprache über einem unären Alphabet in der Tat regulär ist. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 89

6 Beispiel Beispiel. Die Sprache L = {a m b m c m m N} ist nicht kontextfrei. Beweis: Beweis durch Widerspruch mit Hilfe des Pumping-Lemmas. Angenommen L wäre kontextfrei. Dann gäbe es eine Pumping-Zahl n, so dass jedes Wort w = a m b m c m mit w n eine Zerlegung zulässt mit 1 vy 1, 2 vxy n, 3 uv k xy k z L für alle k N. w = uvxyz Betrachte insbesondere den Fall m = n, d.h. w = a n b n c n. Teil 2 impliziert vy kann nicht sowohl a s als auch b s und c s enthalten. Wegen Teil 1 gilt vy ε, und aus Teil 3 (angewandt mit k = 0) folgern wir uxz L. Also gibt es ein l < n mit uxz = a l b l c l, so dass vy doch a s und b s und c s enthalten muss, denn sonst w = uvxyz L. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 90 Beweis von Satz 60 Beweis: Sei G = (V,Σ, P, S) eine Grammatik für L in CNF und V = k. Setze n = 2 k. Sei w L(G) ein Wort mit w n. Jeder Syntaxbaum von w in G ist bis auf die letzte Ebene ein Binärbaum B: D.h. innerhalb des Binärbaumes B stehen Ableitungen der Form A BC: A und in der untersten Ebene stehen Ableitungen der Form B A a mit a Σ. Weil der Binärbaum B mindestens n = 2 k Blätter hat, gibt es einen Pfad der Länge k von der Wurzel S zu einem Blatt in B. Betrachtet man also einen Pfad P maximaler Länge in B, so sind (k + 1) Knoten mit Variablen beschriftet. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 91 C

7 Beweis von Satz 60 Teil 2 Weil G nur k Variablen hat, gibt es eine Variable, die doppelt auf P vorkommt. Genauer gibt es sogar auf dem unteren Teilstück der Länge k von P eine Variable A, die doppelt vorkommt: Betrachte nun die Teilwörter, die innerhalb des Baumes aus den beiden A s abgeleitet werden. Dies liefert eine Zerlegung w = uvxyz. Da das obere A nur k Schritte von der Blattebene entfernt ist, folgt vxy 2 k = n. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 92 Beweis von Satz 60 Teil 3 Weil die Grammatik CNF hat, gilt ferner vy 1. Weil A doppelt vorkommt, kann der Ableitungsbaum auf folgende Art modifiziert werden, um uxz = uv 0 xy 0 z abzuleiten: Dafür führe von dem oberen A aus die Ableitung durch, die in B von dem unteren A aus durchgeführt wird. Also folgt uxz L. Ferner kann man auch an das untere A in B nochmals die Ableitung anfügen, die von dem oberen A aus durchgeführt wurde. Also folgt uv 2 xy 2 z L. Entsprechend erhält man uv k xy k z L (k 2), so dass die Behauptung folgt. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 93

8 Weiteres Beispiel für Satz 60 Beispiel. Die Sprache L = {a h b i c j 0 h i j} {a, b, c} ist nicht kontextfrei. Beweis: Wir führen den Beweis durch Widerspruch mit Hilfe des Pumping-Lemmas. Angenommen L wäre kontextfrei. Dann gäbe es eine Pumping-Zahl n, so dass jedes Wort w = a h b i c j mit w n eine Zerlegung zulässt mit w = uvxyz 1 vy 1, 2 vxy n, 3 uv k xy k z L für alle k N. Betrachte insbesondere den Fall h = i = j = n, d.h. w = a n b n c n. Fall 1 (v oder y enthält mindestens zwei verschiedene Zeichen): Dann kann uv 2 xy 2 z nicht die Form a... ab... bc... c haben. Fall 2 (v und y enthalten jeweils höchstens Zeichen eines Typs): Da v und y jeweils nur Zeichen eines Typs enthalten, gibt es ein Zeichen, welches weder in v noch in y erscheint. Wir behandeln die drei offensichtlichen Unterfälle separat. Falls a nicht in vy enthalten ist, dann betrachte uv 0 xy 0 z = uxz, welches immer noch h = n a s, aber entweder weniger als i = n b s oder weniger als j = n c s enthält. Falls b nicht in vy enthalten ist, dann enthält vy entweder a s oder c s. Falls vy a s enthält dann ist die Anzahl der a s in uv 2 xy 2 z größer als die Anzahl der b s. Falls vy c s enthält dann ist die Anzahl der b s in uv 0 xy 0 z größer als die Anzahl der c s. Falls c nicht in vy enthalten ist, dann betrachte uv 2 xy 2 z, welches immer noch j = n c s, aber entweder mehr als h = n a s oder mehr als i = n b s enthält. In jedem Fall erhalten wir einen Widerspruch. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 94 Gibt es nichtreguläre, kontextfreie Sprachen über Σ = {a}? Satz 61 (Unäre kontextfreie Sprachen sind regulär). Sei L eine kontextfreie Sprache über dem Alphabet Σ = {a}. Dann ist L regulär. Beweis: Sei L eine kontextfreie Sprache über Σ = {a} und sei n die Pumping-Zahl aus Satz 60. D.h. jedes Wort w L mit w n hat eine Zerlegung w = uvxyz mit 1 vy 1, 2 vxy n, 3 uv k xy k z L für alle k N. Daraus folgt, dass es zu jedem w L {a}, w n zwei Zahlen s w := uxz, l w := vy gibt, so dass w = a s w +lw und 1 l w 1, 2 l w n, 3 a s w +klw L für alle k N. Wegen Teil 2 ist die Menge M := {l w w L und w n} endlich und für q := n! gilt Sei l teilt q für alle l M. (4) R := { r q a r L und für alle i mit 1 i r/q gilt a r iq L }. Dann gilt wegen Teil 3 und (4), dass R q. Setze nun L = {w L w q} {a r+iq r R und i N}. Da {w L w q} < und R <, gibt es einen Automaten der L akzeptiert (siehe Übungsblatt). Aus der Definition von R folgt, dass für alle r R das Wort w = a r in L ist. Da r n, existiert l w n für alle Wörter der Form w = a r mit r R. Wegen (4) folgt, dass es für jedes i N ein j i gibt, so dass iq = j i l w. Demnach gilt a r+iq = a r+j i lw L für alle i N wegen Teil 3 und somit L L. Ist ferner w = a m L mit m q, so gibt es ein r R und ein i N mit m = r + iq. Also folgt, dass w L, weshalb L L. Zusammenfassend folgt, dass L regulär ist, da L regulär ist, L L, und L L. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 95

9 CYK-Algorithmus Wortproblem für kontextfreie Sprachen Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 96 Wortproblem für kontextfreie Sprachen Wie löst man das Wortproblem für kontextfreie Sprachen? Eingabe: Kontextfreie Grammatik G = (V, Σ, P, S) in CNF und Wort w Σ Ziel: Entscheide, ob w L(G). Idee: dynamische Programmierung Für ein Wort w der Länge n sei w ij die Teilsequenz der Länge j von w, die an der i-ten Stelle beginnt. Der CYK-Algorithmus berechnet eine Tabelle (T ), deren ij-eintrag (T ij ) alle Variablen A V mit A G w ij enthält. Die Tabelle wird schrittweise für i = 1,... n und j = 1,..., n aufgebaut. Frage Was ist schlecht an einem rekursiven Ansatz für den CYK-Algorithmus? Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 97

10 Algorithmus von Cocke, Younger und Kasawi ALGORITHMUS: CYK. Eingabe: Ausgabe: kontextfreie Grammatik G = (V, Σ, P, S) in CNF und w = a 1... a n Σ JA, falls w L(G), und NEIN sonst 1 Initialisiere T i1 := {A V A a i P} für jedes i = 1,..., n. 2 Für j = 2,..., n (Schleife über Spalten) Für i = 1,..., n + 1 j Setze T ij :=. Für k = 1,..., j 1 T ij := T ij { A V (Schleife über Zeilen) A BC P mit B T ik und C T i+k,j k } Ende Schleife über k. Ende Schleife über i. Ende Schleife über j. 3 Wenn S T 1n, dann gib JA aus und sonst NEIN. (Schleife über Zeilen) (Schleife über Spalten) Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 98 Beispiel: CYK-Algorithmus Beispiel (L = {a n b n c m n, m 1}). Grammatik G für L äquivalente Grammatik G in CNF S XC X ab axb C c cc S XZ X AB AY A a Z c CZ Y XB B b C c T ij für w = aaabbbcc: A X S S 2 A X Y 3 A X Y 4 B 5 B 6 B 7 C, Z Z 8 C, Z S XZ AY Z AXBZ AAY BZ AAX BBZ AAABBBZ AAABBBCZ Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 99

11 Kellerautomaten Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 100 Kellerautomaten Anforderungen Gesucht: Automaten, die kontextfreie Sprachen akzeptieren. Benötigt: Unbegrenzten Speicher, um z.b. Sprachen wie {a n b n n N} zu erkennen. Idee: Statte NFA s mit einem Keller/Stack aus, welcher bei Übergängen manipuliert (PUSH- und POP-Operationen) werden kann. Akzeptiert: Wörter, die so abgearbeitet werden können, dass der Stack am Ende leer ist, sind in der akzeptierten Sprache ( keine Endzustände). a, A AA a, A z a ε, ε ε b, A ε ε, ε z b Akzeptiert: L = {a n b n n N} Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 101

12 PDA-Kellerautomat Definition 62 (PDA). Ein Kellerautomat (PushDown Automata) ist ein 6-Tupel Dabei ist Z eine endliche Menge von Zuständen, M = (Z, Σ, Γ, δ, z 0, ). Σ ein Alphabet, das sog. Eingabealphabet, mit Σ Z =, Γ ein Alphabet, das sog. Kelleralphabet, mit Γ Z =, δ : Z (Σ {ε}) Γ P e (Z Γ ) die Überführungsfunktion, wobei P e (Z Γ ) = {Y Z Γ Y < } die Menge der endlichen Teilmengen von Z Γ ist, z 0 Z der Startzustand und Γ das unterste Kellerzeichen ist. Wie funktioniert δ? (z a, A B 1... B k, B 1... B k ) δ(z, a, A) z z Wenn M in Zustand z ist, das Eingabesymbol a liest und A das oberste Kellerzeichen ist, dann kann M in z übergehen und A auf dem Keller durch B 1... B k ersetzen, wobei dann B 1 oberstes Kellerzeichen ist. Falls a = ε, dann spricht man vom spontanen Übergang. Falls B k = A, dann pusht man B 1... B k 1 auf den Stack/Keller. Falls k = 1 und B 1 = ε, dann popt man A vom Stack/Keller. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 102 Konfigurationen, Relationen, PDA und Sprachen Definition 63 (Konfiguration). Eine Konfiguration eines Kellerautomaten M = (Z, Σ, Γ, δ, z 0, ) ist ein Tupel K = (z, σ, γ) Z Σ Γ, wobei (z, σ, γ) den aktuellen Zustand beschreibt. Genauer ist z der aktuelle Zustand von M, σ der noch zu lesende Teil des Eingabewortes und γ der aktuelle Kellerinhalt. Definition 64 (Relationen: M, M ). Sei M = (Z, Σ, Γ, δ, z 0, ) ein PDA. Wir definieren die Relation M (kurz ) auf der Menge der Konfigurationen von M wie folgt: Sei z, z Z, σ = aσ Σ, γ = Aγ Γ und ν Γ, dann (z, σ, γ) M (z, σ, νγ ), falls (z, ν) δ(z, a, A) (z, σ, γ) M (z, σ, νγ ), falls (z, ν) δ(z, ε, A). Mit M (kurz ) bezeichnen wir die reflexive und transitive Hülle von M. Definition 65 (akzeptierte Sprache (PDA)). Sei M = (Z, Σ, Γ, δ, z 0, ) ein PDA. Die von M akzeptierte Sprache ist N(M) := {w Σ (z 0, w, ) M (z, ε, ε) für irgendein z Z }, die Menge der Wörter, die M so abarbeiten kann, dass der Keller/Stack am Ende leer ist. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 103

13 Kontextfreie Sprachen Satz 66 (PDA s und kontextfreie Sprachen). Sei L eine Sprache über einem beliebigen Alphabet Σ. PDA M mit N(M) = L L ist kontextfrei. Beweis ( ): Sei L eine kontextfreie Sprache, die von der kontextfreien Grammatik G = (V, Σ, P, S) erzeugt wird. Definiere M = ({z}, Σ, V Σ, δ, z, S), wobei δ genau folgende Übergänge zulässt: (z, X) δ(z, ε, A), für jede Regel A X P (z, ε) δ(z, a, a), für alle a Σ. Sei nun w Σ. Dann gilt: w L(G) es gibt eine Ableitung S w, es gibt eine Folge von Konfigurationen (z, w, S) (z, ε, ε), w N(M). Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 104 Rückrichtung von Satz 66 Sei ein PDA M = (Z, Σ, Γ, δ, z 0, ) gegeben. Wir nehmen an, dass für jeden Übergang (z, B 1... B k ) δ(z, a, A) gilt, dass k 2. Andernfalls ersetzen wir den Übergang (z, a, A) (z, B 1... B k ) durch (z, a, A) (z 1, B k 1 B k ) (z 1, ε, B k 1 ) (z 2, B k 2 B k 1 ). a, A B k 1B k z z 1 ε, B k 1 B k 2B k 1... (z k 2, ε, B 2 ) (z, B 1 B 2 ) z z ε, B 3 B 2B 3 k 2 ε, B 2 B 1B 2 Wir definieren nun G = (V, Σ, P, S), wobei V = {S} Z Γ Z, und P die folgenden Produktionen enthält: S (z 0,, z), für alle z Z, (z, A, z ) a, für alle (z, ε) δ(z, a, A), (z, A, z ) a(z 1, B, z ), für alle (z 1, B) δ(z, a, A) und z Z, (z, A, z ) a(z 1, B, z 2 )(z 2, C, z ), für alle (z 1, BC) δ(z, a, A) und z 2, z Z. Offensichtlich ist G eine kontextfreie Grammatik. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 105

14 Rückrichtung von Satz 66 Teil 2 Behauptung 67 (Hilfslemma für Satz 66). Für alle z, z Z, A Γ und w Σ gilt: (z, A, z ) w gdw. (z, w, A) (z, ε, ε). Bevor wir die Behauptung zeigen, reduzieren wir Satz 66 auf diese. Sei also w Σ beliebig, dann gilt w N(M) (z 0, w, ) (z, ε, ε) für ein z Z, (z 0,, z ) w für ein z Z, S (z 0,, z ) w für ein z Z, w L(G). Es bleibt noch die Behauptung zu zeigen. Der Beweis spaltet sich wieder in zwei Teile (Hin- und Rückrichtung). Aber zuvor stellen wir fest, dass für alle a Σ {ε} gilt: (z, A, z ) a gdw. (z, A, z ) a P gdw. (z, ε) δ(z, a, A) (5) gdw. (z, a, A) (z, ε, ε). Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 106 Hinrichtung der Behauptung 67 Beweis ( ): Wir führen Induktion über k, die Länge einer Linksableitung von w. Der Induktionsanfang (k = 1) ergibt sich aus (5). Betrachten wir nun also eine Ableitung mit k > 1. Fall 1 ((z, A, z ) a w): Dann ist w = a. Dies ist bei k > 1 unmöglich. Fall 2 ((z, A, z ) a(z 1, B, z ) aw = w): Dann ist (z 1, B) δ(z, a, A) und nach Induktionsvoraussetzung gilt (z 1, w, B) (z, ε, ε). Daraus folgt (z, aw, A) (z 1, w, B) (z, ε, ε). Fall 3 ((z, A, z ) a(z 1, B, z 2 )(z 2, C, z ) aw = w): Dann ist (z 1, BC) δ(z, a, A) und nach Induktionsvoraussetzung gilt (z 1, u, B) (z 2, ε, ε) und (z 2, v, C) (z, ε, ε), wobei w = uv. Daraus folgt (z, auv, A) (z 1, uv, BC) (z 2, v, C) (z, ε, ε). Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 107

15 Rückrichtung der Behauptung 67 Beweis ( ): Angenommen (z, w, A) (z, ε, ε) Wir zeigen mit Induktion über die Zahl n der Schritte von M, dass dann (z, A, z ) w gilt. Der Induktionsanfang n = 1. Für a Σ {ε} gilt: (z 1, A, z ) a (z, A, z ) a P (z, ε) δ(z, a, A) (z, a, A) (z, ε, ε) Sei nun also n > 1. Wir können w zerlegen in w = au, a Σ {ε}, so dass gilt: (z, au, A) (z 1, u, γ) + (z, ε, ε) (z 1 Z, γ Γ ). Fall 1 (γ = ε): Dies kann nicht sein, weil dann (z 1, a, γ) keine Folgekonfiguration hätte (d.h. n = 1). Fall 2 (γ = B Γ): Nach Induktion gilt: (z 1, B, z ) u. Nach Definition von P gibt es ferner eine Regel (z, A, z ) a(z 1, B, z ) P. Also folgt: (z, A, z ) a(z 1, B, z ) au = w. Fall 3 (γ = BC Γ 2 ): Die Berechnung (z 1, u, BC) (z, ε, ε) wird in zwei Teile zerlegt: (z 1, u 1, BC) (z 2, u 2, C) (z 2, u 2, C) (z, ε, ε), mit u = u 1 u 2, so dass (z 1, u 1, B) (z 2, ε, ε). Daher zeigt die Induktionsvoraussetzung, dass Also ermöglicht P die Ableitung (z 1, B, z 2 ) u 1 und (z 2, C, z ) u 2. (z, A, z ) a(z 1, B, z 2 )(z 2, C, z ) au 1 (z 2, C, z ) au 1 u 2 = au = w. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 108 Deterministisch kontextfreie Sprachen Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 109

16 Deterministischer Kellerautomat Definition 68 (DPDA - deterministischer Kellerautomat). Ein deterministischer Kellerautomat ist ein Tupel M = (Z, Σ, Γ, δ, z 0,, E), wobei (Z, Σ, Γ, δ, z 0, ) ein Kellerautomat ist, für alle z Z, a Σ und A Γ gilt: δ(z, a, A) + δ(z, ε, A) 1, E Z eine Menge von Endzuständen ist. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 110 Determinismus vs. Nichtdeterminismus DPDA für L = {w w R w {a, b} } {a, b, } a, push A b, push B a, A ε b, B ε, ε ε z 0 z 1 ε, ε z 2 PDA für L = {ww R w {a, b} } {a, b} a, push A b, push B a, A ε b, B ε ε, ε ε, ε ε z 0 z 1 Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 111

17 Deterministisch kontextfreie Sprachen Definition 69 (akzeptierte Sprache (DPDA)). Eine Konfiguration von M ist ein Tripel (z, w,γ) Z Σ Γ, und die Relation M ist wie für PDA s definiert. M akzeptiert w Σ, falls es einen Zustand z E gibt, so dass (z 0, w, ) M (z,ε, γ) mit γ Γ. Mit N(M) bezeichnen wir die von M akzeptierte Sprache. Definition 70. Eine Sprache L heißt deterministisch kontextfrei, falls es einen deterministischen Kellerautomaten mit L = N(M) gibt. Bemerkung. Eine Sprache L ist deterministisch kontextfrei gdw. es eine sogenannte LR(k)-Grammatik (k > 0) gibt, die L erzeugt. LR(k)-Grammatiken sind kontextfreie Grammatiken für die jeder Ableitungsschritt eindeutig durch k Terminale der Eingabe bestimmt ist. Ferner gilt LR(0) LR(1)= =LR(k). Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 112 Abschlusseigenschaften det. kf. Sprachen Satz Falls L deterministisch kontextfrei ist, so ist auch L deterministisch kontextfrei. 2 Falls R regulär und L deterministisch kontextfrei ist, ist auch R L deterministisch kontextfrei. Insbesondere ist jede reguläre Sprache deterministisch kontextfrei. 3 Jede deterministisch kontextfreie Sprache ist kontextfrei. 4 Die Klasse der deterministisch kontextfreien Sprache ist weder unter Vereinigung noch unter Schnittbildung abgeschlossen. Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 113

18 Zusammenfassung Chomsky Normalform Greibach Normalform Pumping Lemma für kontextfreie Sprachen Das Wortproblem und der CYK Algorithmus Kellerautomaten (PDA s), Konfigurationen, deterministische Kellerautomaten (DPDA s) deterministisch kontextfreie Sprachen, LR(k)-Grammatik Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen / Kontextfreie Sprachen und Kellerautomaten 114

Theoretische Grundlagen der Informatik

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

Mehr

Kontextfreie Sprachen

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

Mehr

Kontextfreie Sprachen

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

Mehr

Zusammenfassung Grundzüge der Informatik 4

Zusammenfassung 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

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

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

Kapitel 2: Formale Sprachen Kontextfreie Sprachen. reguläre Grammatiken/Sprachen. kontextfreie Grammatiken/Sprachen

Kapitel 2: Formale Sprachen Kontextfreie Sprachen. reguläre Grammatiken/Sprachen. kontextfreie Grammatiken/Sprachen reguläre Grammatiken/prachen Beschreibung für Bezeichner in Programmiersprachen Beschreibung für wild cards in kriptsprachen (/* reguläre Ausdrücke */)?; [a-z]; * kontextfreie Grammatiken/prachen Beschreibung

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

Tutorium zur theoretischen Informatik Übungsblatt 4 (2006-12-13)

Tutorium 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

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

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

2. Übungsblatt 6.0 VU Theoretische Informatik und Logik

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

Mehr

REG versus CF. Theorem REG ist echt in CF enthalten.

REG versus CF. Theorem REG ist echt in CF enthalten. REG versus CF Theorem REG ist echt in CF enthalten. Beweis: Wir wissen: L = {a m b m m 1} ist nicht regulär. Andererseits ist L kontextfrei, wie die einfache kontextfreie Grammatik G = ({a, b}, {S}, S,

Mehr

5.7 Kontextfreie Grammatiken und Kellerautomaten

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

Mehr

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

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

Mathematische Grundlagen der Informatik 2

Mathematische Grundlagen der Informatik 2 Zusammenfassung Math2I Mathematische Grundlagen der Informatik 2 Emanuel Duss emanuel.duss@gmail.com 12. April 2013 1 Zusammenfassung Math2I Mathematische Grundlagen der Informatik 2 Dieses Dokument basiert

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

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 Sprachen bedeutend für die Syntaxdefinition von Programmiersprachen (Compilerbau) Automaten

Mehr

Theoretische Grundlagen der Informatik

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

Mehr

Automaten und formale Sprachen Klausurvorbereitung

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

Mehr

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

Klammersprache Definiere

Klammersprache Definiere Klammersprache w=w 1...w n {(,)}* heißt korrekt geklammert, falls die Anzahl ( ist gleich der Anzahl ). in jedem Anfangsstück w 1,...,w i (i n) ist die Anzahl ( nicht kleiner als die Anzahl ). Definiere

Mehr

Die mathematische Seite

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

Mehr

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

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

Mehr

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

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

Mehr

Sprachen/Grammatiken eine Wiederholung

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

Mehr

Theoretische Grundlagen der Informatik

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

Mehr

Deterministischer Kellerautomat (DPDA)

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

Mehr

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

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

Mehr

Automatentheorie und formale Sprachen

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

Mehr

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

Mehr

Grundlagen der Theoretischen Informatik

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

Mehr

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

Informales Beispiel. Formale Grundlagen der Informatik 1 Kapitel 6 Eigenschaften kontextfreier Sprachen. Grammatiken. Anmerkungen Informales Beispiel Formale Grundlagen der Informatik 1 Kapitel 6 Eigenschaften kontextfreier Sprachen Frank Heitmann heitmann@informatik.uni-hamburg.de 22. April 2014 I L IL ID L a b c D 0 1 2 3 4 Eine

Mehr

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

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

Mehr

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

Theoretische Informatik Mitschrift

Theoretische Informatik Mitschrift 6. Kontextfreie Sprachen Theoretische Informatik Mitschrift Typ-2-Grammatiken: Regeln der Form A mit A N und N * Beispiel: Grammatik für arithmetische Ausdrücke G= {E,T,F },{,,,,a}, P, E, P : E ET T T

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

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

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

Mehr

Maike Buchin 18. Februar 2016 Stef Sijben. Probeklausur. Theoretische Informatik. Bearbeitungszeit: 3 Stunden

Maike Buchin 18. Februar 2016 Stef Sijben. Probeklausur. Theoretische Informatik. Bearbeitungszeit: 3 Stunden Maike Buchin 8. Februar 26 Stef Sijben Probeklausur Theoretische Informatik Bearbeitungszeit: 3 Stunden Name: Matrikelnummer: Studiengang: Geburtsdatum: Hinweise: Schreibe die Lösung jeder Aufgabe direkt

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

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

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

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

Mehr

q 0 q gdw. nicht (q A) (q A) q i+1 q gdw. q i q oder ( a Σ) δ(q, a) i δ(q, a) L = {a n b n : n N} für a, b Σ, a b

q 0 q gdw. nicht (q A) (q A) q i+1 q gdw. q i q oder ( a Σ) δ(q, a) i δ(q, a) L = {a n b n : n N} für a, b Σ, a b Kap. 2: Endliche Automaten Myhill Nerode 2.4 Minimalautomat für reguläre Sprache Abschnitt 2.4.3 L Σ regulär der Äuivalenzklassen-Automat zu L ist ein DFA mit minimaler Zustandszahl (= index( L )) unter

Mehr

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

Mehr

Theorie der Informatik

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

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 8: kontextfreie Grammatiken Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2009/2010 1/37 Überblick Kontextfreie Grammatiken

Mehr

Andererseits ist L kontextfrei, wie die einfache kontextfreie Grammatik G = ({a, b},{s}, S, P) mit den Regeln

Andererseits ist L kontextfrei, wie die einfache kontextfreie Grammatik G = ({a, b},{s}, S, P) mit den Regeln REG versus CF Theorem REG ist echt in CF enthalten. Beweis: Wir wissen: L = {a m b m m 1} ist nicht regulär. Andererseits ist L kontextfrei, wie die einfache kontextfreie Grammatik G = ({a, b},{s}, S,

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

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

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

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

Mehr

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

2.2 Reguläre Sprachen Endliche Automaten

2.2 Reguläre Sprachen Endliche Automaten 2.2.1 Endliche Automaten E I N G A B E Lesekopf endliche Kontrolle Signal für Endzustand Ein endlicher Automat liest ein Wort zeichenweise und akzeptiert oder verwirft. endlicher Automat Sprache der akzeptierten

Mehr

WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven

WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven WS06/07 Referentin: Katharina Blinova Formale Sprachen Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven 1. Allgemeines 2. Formale Sprachen 3. Formale Grammatiken 4. Chomsky-Hierarchie 5.

Mehr

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014

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

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

Übungsblatt Nr. 3. Lösungsvorschlag

Übungsblatt Nr. 3. Lösungsvorschlag Institut für Kryptographie und Sicherheit Prof. Dr. Jörn Müller-Quade Nico Döttling Dirk Achenbach Tobias Nilges Vorlesung Theoretische Grundlagen der Informatik Übungsblatt Nr. 3 svorschlag Aufgabe 1

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

a n b n c n ist kontextsensitiv kontextfreie Sprachen (Typ 2) Abschnitt 3.3 kontextfreie Sprachen: Abschlusseigenschaften Chomsky NF und binäre Bäume

a 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

Mehr

Grundbegriffe der Informatik Tutorium 7

Grundbegriffe der Informatik Tutorium 7 Grundbegriffe der Informatik Tutorium 7 Tutorium Nr. 16 Philipp Oppermann 16. Dezember 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Theoretische Grundlagen der Informatik

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

Mehr

Formelsammlung theoretische Informatik I

Formelsammlung theoretische Informatik I Formelsammlung theoretische Informatik I Stand: 27.05.2005 - Version: 1.0.3 Erhältlich unter http://privat.macrolab.de Diese Formelsammlung basiert auf der Vorlesung Theoretische

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

Grundlagen der Theoretischen Informatik

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

Mehr

3 kontextfreie Sprachen

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

Mehr

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

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

Mehr

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

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

Mehr

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

Übungsblatt Nr. 3. Lösungsvorschlag

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

Mehr

2.1 Allgemeines. Was ist eine Sprache? Beispiele:

2.1 Allgemeines. Was ist eine Sprache? Beispiele: Was ist eine Sprache? Beispiele: (a) Deutsch, Japanisch, Latein, Esperanto,...: Natürliche Sprachen (b) Pascal, C, Java, Aussagenlogik,...: Formale Sprachen Wie beschreibt man eine Sprache? (i) Syntax

Mehr

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

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

Mehr

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

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

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Woche 10 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung Zusammenfassung der letzten LV Satz Sei G = (V, Σ, R, S) eine kontextfreie

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen 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

Mehr

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

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

Mehr

Chomsky-Grammatiken 16. Chomsky-Grammatiken

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

Mehr

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

Musterlösungen zu Grundlagen der theoretischen Informatik (skizziert)

Musterlösungen zu Grundlagen der theoretischen Informatik (skizziert) Musterlösungen zu Grundlagen der theoretischen Informatik (skizziert) (3a) L 2 =(a + ε)(ba) (b + ɛ) oderl 2 = ε + L 2 mit L 2 = a(ba) (b + ε)+b(ab) (a + ε) oder L 2 = a +(a + ε)(ba) b(a + ε) L 3 = ε +

Mehr

Übungsaufgaben zu Formalen Sprachen und Automaten

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

Mehr

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

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

Mehr

Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung

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

Mehr

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

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

Mehr

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

Normalformen für kontextfreie Grammatiken. Noam CHOMSKY, Sheila GREIBACH. Bäume. Ableitungen in kontextfreien Grammatiken. Grammatik G = (N,T,P,S) Noam CHOMSKY, Sheila GREIBACH Normalformen für kontextfreie Grammatiken Noam CHOMSKY (*1928 ) Sheila GREIBACH (*1939) Grammatik G = (N,T,P,S) GREIBACH Normalform: A aw, w N* Erweiterte GREIBACH Normalform:

Mehr

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

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

Mehr

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

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

Mehr

Theoretische Informatik I

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

Mehr

Informatik IC2. Balazs Simon

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

Mehr

Informatik 3 Theoretische Informatik WS 2016/17

Informatik 3 Theoretische Informatik WS 2016/17 Zwischenklausur 2 20. Januar 2017 Informatik 3 Theoretische Informatik WS 2016/17 Prof. Dr. Peter Thiemann Albert-Ludwigs-Universität Freiburg Institut für Informatik Name: Übungsgruppe: Schreiben Sie

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

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

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

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

Mehr

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

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

Mehr

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie Theorie der Informatik 17. März 2014 6. Formale Sprachen und Grammatiken Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 6.1 Einführung

Mehr

Formale Sprachen. Der Unterschied zwischen Grammatiken und Sprachen. Rudolf Freund, Marian Kogler

Formale Sprachen. Der Unterschied zwischen Grammatiken und Sprachen. Rudolf Freund, Marian Kogler Formale Sprachen Der Unterschied zwischen Grammatiken und Sprachen Rudolf Freund, Marian Kogler Es gibt reguläre Sprachen, die nicht von einer nichtregulären kontextfreien Grammatik erzeugt werden können.

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

Kurz-Skript zur Theoretischen Informatik I

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

Mehr

1 Automatentheorie und Formale Sprachen

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

Mehr

Grundbegriffe der Informatik

Grundbegriffe 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

Mehr

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

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

Mehr

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