Theoretische Informatik 2

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Theoretische Informatik 2"

Transkript

1 Theoretische Informatik 2 Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2009/10

2 Die Chomsky-Hierarchie Definition Sei G = (V, Σ, P, S) eine Grammatik. 1 G heißt vom Typ 3 oder regulär, falls für alle Regeln u v gilt: u V und v ΣV Σ {ε}. (d.h. alle Regeln haben die Form A ab, A a oder A ε) 2 G heißt vom Typ 2 oder kontextfrei, falls für alle Regeln u v gilt: u V. (d.h. alle Regeln haben die Form A α) 3 G heißt vom Typ 1 oder kontextsensitiv, falls für alle Regeln u v gilt: v u. (mit Ausnahme der ε-sonderregel, s. unten) 4 Jede Grammatik ist automatisch vom Typ 0. Die ε-sonderregel In einer kontextsensitiven Grammatik ist auch die Regel S ε zulässig. Aber nur, wenn das Startsymbol S nur links vorkommt.

3 CFL ist echt in CSL enthalten Bemerkung Wie wir gesehen haben, ist CFL in CSL enthalten. Zudem ist folgende Sprache nicht kontextfrei: L = {a n b n c n n 1}. L kann jedoch von einer kontextsensitiven Grammatik erzeugt werden. Daher ist CFL echt in CSL enthalten.

4 Eine kontextsensitive Grammatik für {a n b n c n n 1} Beispiel Betrachte die Grammatik G = (V, Σ, P, S) mit V = {S, B, C}, Σ = {a, b, c} und den Regeln P: S asbc, abc (1, 2) CB BC (3) ab ab (4) bb bb (5) C c (6) In G lässt sich beispielsweise das Wort w = aabbcc ableiten: S (1) asbc (2) aabcbc (3) aabbcc (4) aabbcc (5) aabbcc (6) aabbcc (6) aabbcc Allgemein gilt für alle n 1: S (1) n 1 a n 1 S(BC) n 1 (2) a n (BC) n (3) ( n 2) a n B n C n (4) a n bb n 1 C n (5) n 1 a n b n C n (6) n a n b n c n Also gilt a n b n c n L(G) für alle n 1.

5 Kontextsensitive Sprachen Beispiel (Schluss) Betrachte die kontextsensitive Grammatik G = (V, Σ, P, S) mit V = {S, B, C}, Σ = {a, b, c} und den Regeln P: S asbc, abc (1, 2) CB BC (3) ab ab (4) bb bb (5) C c (6) Umgekehrt folgt durch Induktion über die Ableitungslänge, dass jede Satzform u mit S u die folgenden Bedingungen erfüllt: # a (u) = # b (u) + # B (u) = # c (u) + # C (u), links von S kommen nur a s vor, links von einem a kommen ebenfalls nur a s vor, links von einem b kommen nur a s oder b s vor. Daraus ergibt sich, dass in G nur Wörter w Σ der Form w = a n b n c n ableitbar sind, d.h. L(G) = {a n b n c n n 1} CSL.

6 Die Turingmaschine Arbeitsband mit Eingabe x 1 x i x n Steuereinheit Schreib- Lese-Kopf Um ein geeignetes Maschinenmodell für die kontextsensitiven Sprachen zu finden, führen wir zunächst das Rechenmodell der nichtdeterministischen Turingmaschine (NTM) ein. Eine NTM erhält ihre Eingabe auf einem nach links und rechts unbegrenzten Band. Während ihrer Rechnung kann sie den Schreib-Lese-Kopf auf dem Band in beide Richtungen bewegen und dabei die besuchten Bandfelder lesen sowie die gelesenen Zeichen gegebenenfalls überschreiben.

7 Das Rechenmodell der Turingmaschine Definition Sei k 1. Eine nichtdeterministische k-band-turingmaschine (k-ntm oder einfach NTM) wird durch ein 6-Tupel M = (Z, Σ, Γ, δ, q 0, E) beschrieben, wobei Z eine endliche Menge von Zuständen, Σ das Eingabealphabet (mit / Σ), Γ das Arbeitsalphabet (mit Σ { } Γ), δ: Z Γ k P(Z Γ k {L, R, N} k ) die Überführungsfunktion, q 0 der Startzustand und E Z die Menge der Endzustände ist. Eine k-ntm M heißt deterministisch (kurz: M ist eine k-dtm oder einfach DTM), falls für alle (q, a 1,... a k ) Z Γ k gilt: δ(q, a 1,... a k ) 1.

8 Das Rechenmodell der Turingmaschine Für (q, b 1,..., b k, D 1,..., D k ) δ(p, a 1,... a k ) schreiben wir auch (p, a 1,..., a k ) (q, b 1,..., b k, D 1,..., D k ). Eine solche Anweisung ist ausführbar, falls p der aktuelle Zustand von M ist und sich für i = 1,..., k der Lesekopf des i-ten Bandes auf einem mit a i beschrifteten Feld befindet. Ihre Ausführung bewirkt, dass M vom Zustand p in den Zustand q übergeht, auf Band i das Symbol a i durch b i ersetzt und den Kopf gemäß D i bewegt (L: ein Feld nach links, R: ein Feld nach rechts, N: keine Bewegung).

9 Das Rechenmodell der Turingmaschine Definition Eine Konfiguration ist ein (3k + 1)-Tupel K = (q, u 1, a 1, v 1,..., u k, a k, v k ) Z (Γ Γ Γ ) k und besagt, dass q der momentane Zustand ist und das i-te Band mit... u i a i v i... beschriftet ist, wobei sich der Kopf auf dem Zeichen a i befindet. Im Fall k = 1 schreiben wir für eine Konfiguration (q, u, a, v) auch kurz uqav.

10 Das Rechenmodell der Turingmaschine Definition Seien K =(p, u 1, a 1, v 1,..., u k, a k, v k ) und K =(q, u 1, a 1, v 1,..., u k, a k, v k ) Konfigurationen. K heißt Folgekonfiguration von K (kurz K K ), falls eine Anweisung (p, a 1,..., a k ) (q, b 1,..., b k, D 1,..., D k ) existiert, so dass für i = 1,..., k gilt: im Fall D i = N: D i = R: D i = L: K: u i a i v i K : u i b i v i u i = u i, a i = b i und v i = v i. K: u i a i v i K : u i b i a i v i u i = u i b i und a i v i v i, v i ε, =, sonst. K: u i a i v i K : u i a i b i v i u i u i, u i ε, a i =, sonst und v i = b i v i.

11 Das Rechenmodell der Turingmaschine Definition Die Startkonfiguration von M bei Eingabe x = x 1 x n Σ ist (q 0, ε, x 1, x 2 x n, ε,, ε,..., ε,, ε), x ε, K x = (q 0, ε,, ε,..., ε,, ε), x = ε. Eine Rechnung von M bei Eingabe x ist eine (endliche oder unendliche) Folge von Konfigurationen K 0, K 1, K 2... mit K 0 = K x und K 0 K 1 K 2. Die von M akzeptierte oder erkannte Sprache ist L(M) = {x Σ K E (Γ Γ Γ ) k : K x K}. Ein Wort x wird also genau dann von M akzeptiert (kurz: M(x) akzeptiert), wenn es eine Rechnung von M bei Eingabe x gibt, bei der ein Endzustand erreicht wird.

12 Das Rechenmodell der Turingmaschine Beispiel Betrachte die 1-DTM M = (Z, Σ, Γ, δ, q 0, E) mit Z = {q 0,... q 4 }, Σ = {a, b}, Γ = Σ {A, B, }, E = {q 4 } und den Anweisungen δ: q 0 a q 1 AR (1) Anfang der Schleife: Ersetze das erste a durch A q 1 a q 1 ar (2) Bewege den Kopf nach rechts bis zum ersten b q 1 B q 1 BR (3) und ersetze dies durch ein B (falls kein b mehr q 1 b q 2 BL (4) vorhanden ist, dann halte ohne zu akzeptieren). q 2 a q 2 al (5) Bewege den Kopf nach links bis ein A kommt, q 2 B q 2 BL (6) gehe ein Feld nach rechts zurück und wiederhole q 2 A q 0 AR (7) die Schleife. q 0 B q 3 BR (8) Falls kein a am Anfang der Schleife, dann teste, q 3 B q 3 BR (9) ob noch ein b vorhanden ist. Wenn ja, dann halte q 3 q 4 N (10) ohne zu akzeptieren. Andernfalls akzeptiere.

13 Das Rechenmodell der Turingmaschine Beispiel (Fortsetzung) δ: q 0 a q 1 AR (1) q 1 b q 2 BL (4) q 2 A q 0 AR (7) q 3 q 4 N (10) q 1 a q 1 ar (2) q 2 a q 2 al (5) q 0 B q 3 BR (8) q 1 B q 1 BR (3) q 2 B q 2 BL (6) q 3 B q 3 BR (9) Dann akzeptiert M die Eingabe aabb wie folgt: q 0 aabb (1) Aq 1 abb (2) Aaq 1 bb (4) Aq 2 abb (5) q 2 AaBb Aq 0aBb AAq 1 Bb AABq 1 b AAq 2 BB (7) (1) (3) (4) Aq 2ABB AAq 0 BB AABq 3 B AABBq 3 (6) (7) (8) (9) AABBq 4 10 Ähnlich lässt sich für ein beliebiges n 1 zeigen, dass a n b n L(M) ist.

14 Das Rechenmodell der Turingmaschine Beispiel (Schluss) δ: q 0 a q 1 AR (1) q 1 b q 2 BL (4) q 2 A q 0 AR (7) q 3 q 4 N (10) q 1 a q 1 ar (2) q 2 a q 2 al (5) q 0 B q 3 BR (8) q 1 B q 1 BR (3) q 2 B q 2 BL (6) q 3 B q 3 BR (9) Andererseits führt die Eingabe abb auf die Rechnung q 0 abb (1) Aq 1 bb (4) q 2 ABb (7) Aq 0 Bb (8) ABq 3 b Da diese nicht fortsetzbar ist und da M deterministisch ist, kann M(abb) nicht den Endzustand q 4 erreichen, d.h. abb gehört nicht zu L(M). Tatsächlich lässt sich zeigen, dass L(M) = {a n b n n 1} ist. In den Übungen werden wir eine 1-DTM für die Sprache L = {a n b n c n n 1} konstruieren.

15 Ein Maschinenmodell für CSL x 1 ˆx n Steuereinheit Es ist leicht zu sehen, dass jede Typ-0 Sprache von einer NTM M erkannt wird, die ausgehend von der Eingabe x eine Rückwärtsableitung (Reduktion) auf das Startsymbol sucht. Im Fall einer Typ-1 Sprache ist die linke Seite jeder Regel höchstens so lang wie die rechte Seite. Daher muss M in diesem Fall nur deshalb das Blank hinter x lesen, um das Ende der Eingabe erkennen zu können. Falls wir das letzte Zeichen x n von x markieren, kann M jedoch die Rechnung auf den Bereich der Eingabe beschränken. NTMs mit dieser Eigenschaft werden auch als LBAs bezeichnet.

16 Linear beschränkte Automaten Definition Für ein Alphabet Σ sei ˆΣ = Σ {â a Σ} und für x = x 1 x n Σ sei x, x = ε, ˆx = x 1 x n 1ˆx n, x ε. Eine 1-NTM M = (Z, ˆΣ, Γ, δ, q 0, E) heißt linear beschränkt (kurz: M ist ein LBA), falls gilt: x Σ : Kˆx uqav uav max{ x, 1}. Die von einem LBA akzeptierte oder erkannte Sprache ist Bemerkung L(M) = {x Σ M(ˆx) akzeptiert}. Jede k-ntm, die bei Eingaben der Länge n höchstens linear viele (also cn + c für eine Konstante c) Bandfelder besucht, kann von einem LBA simuliert werden.

17 Linear beschränkte Automaten Beispiel Es ist nicht schwer, die 1-DTM M = (Z, Σ, Γ, δ, q 0, E) mit δ: q 0 a q 1 AR (1) q 1 b q 2 BL (4) q 2 A q 0 AR (7) q 3 q 4 N (10) q 1 a q 1 ar (2) q 2 a q 2 al (5) q 0 B q 3 BR (8) q 1 B q 1 BR (3) q 2 B q 2 BL (6) q 3 B q 3 BR (9) in einen deterministischen LBA (kurz: DLBA) M = (Z, ˆΣ, Γ, δ, q 0, E) für die Sprache {a n b n n 1} umzuwandeln. Ersetze hierzu Σ durch ˆΣ = {a, b, â, ˆb}, Γ durch Γ = ˆΣ {A, B, ˆB, } sowie die Anweisung q 3 q 4 N (10) durch q 3 ˆB q 4 ˆBN (10 ) und füge die Anweisungen q 1ˆb q 2 ˆBL (4a) und q 0 ˆB q 4 ˆBN (8a) hinzu.

18 Linear beschränkte Automaten Beispiel Ersetze hierzu Σ durch ˆΣ = {a, b, â, ˆb}, Γ durch Γ = ˆΣ {A, B, ˆB, } sowie die Anweisung q 3 q 4 N (10) durch q 3 ˆB q 4 ˆBN (10 ) und füge die Anweisungen q 1ˆb q2 ˆBL (4a) und q0 ˆB q4 ˆBN (8a) hinzu: δ : q 0 a q 1 AR (1) q 1 a q 1 ar (2) q 1 B q 1 BR (3) q 1 b q 2 BL (4) q 1ˆb q 2 ˆBL (4a) q 2 a q 2 al (5) q 2 B q 2 BL (6) q 2 A q 0 AR (7) q 0 B q 3 BR (8) q 0 ˆB q 4 ˆBN (8a) q 3 B q 3 BR (9) q 3 ˆB q 4 ˆBN (10 ) Dann akzeptiert M die Eingabe aabˆb wie folgt (d.h. aabb L(M )): q 0 aabˆb AABq 1ˆb (4a) AAq 2 B ˆB AABq 3 ˆB (10 ) AABq 4 ˆB

19 Charakterisierung von CSL mittels LBAs Als nächstes zeigen wir, dass LBAs genau die kontextsensitiven Sprachen erkennen. Satz CSL = {L(M) M ist ein LBA}.

20 Beweis von CSL {L(M) M ist ein LBA} Sei G = (V, Σ, P, S) eine kontextsensitive Grammatik. Dann wird L(G) von folgendem LBA M akzeptiert (o.b.d.a. sei ε L(G)): Arbeitsweise von M bei Eingabe x = x 1 x n mit n > 0: 1 Markiere das erste Eingabezeichen x 1 2 Wähle (nichtdeterministisch) eine Regel α β aus P 3 Wähle ein beliebiges Vorkommen von β auf dem Band (falls β nicht vorkommt, halte ohne zu akzeptieren) 4 Ersetze die ersten α Zeichen von β durch α 5 Falls das erste (oder letzte) Zeichen von β markiert war, markiere auch das erste (letzte) Zeichen von α 6 Verschiebe die Zeichen rechts von β um β α Positionen nach links und überschreibe die frei werdenden Bandfelder mit Blanks 7 Enthält das Band außer Blanks nur das (markierte) Startsymbol, so halte in einem Endzustand 8 Gehe zurück zu Schritt 2

21 Beweis von CSL {L(M) M ist ein LBA} Nun ist leicht zu sehen, dass M wegen β α tatsächlich ein LBA ist. M akzeptiert x, falls es gelingt, eine Ableitung für x in G zu finden (in umgekehrter Reihenfolge, d.h. M ist ein nichtdeterministischer Bottom-Up Parser). Da sich genau für die Wörter in L(G) eine Ableitung finden lässt, folgt L(M) = L(G).

22 Beweis von {L(M) M ist ein LBA} CSL Sei M = (Z, ˆΣ, Γ, δ, q 0, E) ein LBA (o.b.d.a. sei ε L(M)). Betrachte die kontextsensitive Grammatik G = (V, Σ, P, S) mit V = {S, A} (ZΓ Γ) Σ, die für alle a, b Σ und c, d Γ folgende Regeln enthält: P : S A(â, a), (q 0 â, a) (S) Startregeln A A(a, a), (q 0 a, a) (A) A-Regeln (c, a) a (F) Finale Regeln (qc, a) a, falls q E (E) E-Regeln (qc, a) (q c, a), falls qc M q c N (N) N-Regeln (qc, a)(d, b) (c, a)(q d, b), falls qc M q c R (R) R-Regeln (d, a)(qc, b) (q d, a)(c, b), falls qc M q c L (L) L-Regeln

23 Beweis von {L(M) M ist ein LBA} CSL Beispiel Betrachte den LBA M = (Z, ˆΣ, Γ, δ, q 0, E) mit Z = {q 0,... q 4 }, Σ = {a, b}, Γ = {a, b, â, ˆb, A, B, ˆB, } und E = {q 4 }, sowie δ: q 0 a q 1 AR q 1ˆb q 2 ˆBL q 0 B q 3 BR q 1 a q 1 ar q 2 a q 2 al q 0 ˆB q 4 ˆBN q 1 B q 1 BR q 2 B q 2 BL q 3 B q 3 BR q 1 b q 2 BL q 2 A q 0 AR q 3 ˆB q4 ˆBN Die zugehörige kontextsensitive Grammatik G = (V, Σ, P, S) enthält dann neben den Start- und A-Regeln S A(â, a), A(ˆb, b), (q 0 â, a), (q 0ˆb, b) (S 1 -S 4 ) A A(a, a), A(b, b), (q 0 a, a), (q 0 b, b) (A 1 -A 4 ) für jedes Zeichen c Γ die F- und E-Regeln (wegen E = {q 4 }) (c, a) a, (c, b) b (F 1 -F 16 ) (q 4 c, a) a, (q 4 c, b) b (E 1 -E 16 )

24 Beweis von {L(M) M ist ein LBA} CSL Beispiel Die zugehörige kontextsensitive Grammatik G = (V, Σ, P, S) enthält dann neben den Start- und A-Regeln S A(â, a), A(ˆb, b), (q 0 â, a), (q 0ˆb, b) (S1 -S 4 ) A A(a, a), A(b, b), (q 0 a, a), (q 0 b, b) (A 1 -A 4 ) für jedes Zeichen c Γ die F- und E-Regeln (wegen E = {q 4 }) (c, a) a, (c, b) b (F 1 -F 16 ) (q 4 c, a) a, (q 4 c, b) b (E 1 -E 16 ) Daneben enthält P beispielsweise noch folgende Regeln: Für die Anweisung q 3 ˆB q 4 ˆBN die N-Regeln (q 3 ˆB, a) (q 4 ˆB, a), (q 3 ˆB, b) (q 4 ˆB, b) Für die Anweisung q 1 b q 2 BL die L-Regeln (für jedes d Γ) (d, a)(q 1 b, a) (q 2 d, a)(b, a), (d, b)(q 1 b, a) (q 2 d, b)(b, a) (d, a)(q 1 b, b) (q 2 d, a)(b, b), (d, b)(q 1 b, b) (q 2 d, b)(b, b)

25 Beweis von {L(M) M ist ein LBA} CSL Beispiel Daneben enthält P beispielsweise noch folgende Regeln: Für die Anweisung q 3 ˆB q4 ˆBN die N-Regeln (q 3 ˆB, a) (q 4 ˆB, a), (q 3 ˆB, b) (q 4 ˆB, b) Für die Anweisung q 1 b q 2 BL die L-Regeln (für jedes d Γ) (d, a)(q 1 b, a) (q 2 d, a)(b, a), (d, b)(q 1 b, a) (q 2 d, b)(b, a) (d, a)(q 1 b, b) (q 2 d, a)(b, b), (d, b)(q 1 b, b) (q 2 d, b)(b, b) Für die Anweisung q 0 a q 1 AR die R-Regeln (für jedes d Γ) (q 0 a, a)(d, a) (A, a)(q 1 d, a), (q 0 a, a)(d, b) (A, a)(q 1 d, b) (q 0 a, b)(d, a) (A, b)(q 1 d, a), (q 0 a, b)(d, b) (A, b)(q 1 d, b)

26 Beweis von {L(M) M ist ein LBA} CSL Sei M = (Z, ˆΣ, Γ, δ, q 0, E) ein LBA (o.b.d.a. sei ε L(M)). Betrachte die kontextsensitive Grammatik G = (V, Σ, P, S) mit V = {S, A} (ZΓ Γ) Σ, die für alle a, b Σ und c, d Γ folgende Regeln enthält: S A(â, a) (S) Startregeln A A(a, a), (q 0 a, a) (A) A-Regeln (c, a) a (F) Finale Regeln (qc, a) a, falls q E (E) E-Regeln (qc, a) (q c, a), falls qc M q c N (N) N-Regeln (qc, a)(d, b) (c, a)(q d, b), falls qc M q c R (R) R-Regeln (d, a)(qc, b) (q d, a)(c, b), falls qc M q c L (L) L-Regeln

27 Beweis von {L(M) M ist ein LBA} CSL Durch Induktion über m lässt sich nun leicht für alle a 1,..., a n Γ und q Z die folgende Äquivalenz beweisen: q 0 x 1 x n 1ˆx n m a 1 a i 1 qa i a n gdw. (q 0 x 1, x 1 ) (ˆx n, x n ) m (a 1, x 1 ) (qa i, x i ) (a n, x n ) (N,R,L) Ist also q 0 x 1 x n 1ˆx n m a 1 a i 1 qa i a n eine akzeptierende Rechnung von M(x 1 x n 1ˆx n ) mit q E, so folgt S (S) A(ˆx n, x n ) (A) n 1 (q 0 x 1, x 1 )(x 2, x 2 ) (x n 1, x n 1 )(ˆx n, x n ) m (a 1, x 1 ) (a i 1, x i 1 )(qa i, x i ) (a n, x n ) n x 1 x n (N,L,R) (F,E) Die Inklusion L(G) L(M) folgt analog. Bemerkung Eine einfache Modifikation des Beweises zeigt, dass 1-NTMs genau die Sprachen vom Typ 0 akzeptieren (siehe Übungen).

28 Deterministisch kontextsensitive Sprachen Definition Die Klasse der deterministisch kontextsensitiven Sprachen ist definiert als DCSL = {L(M) M ist ein DLBA}. Bemerkung Der DLBA M für die Sprache {a n b n n 1} aus obigem Beispiel lässt sich leicht in einen DLBA für die kontextsensitive Sprache {a n b n c n n 1} transformieren (siehe Übungen). Die Sprache {a n b n c n n 1} liegt also in DCSL \ CFL. Bis heute ungelöst ist die Frage, ob die Klasse DCSL eine echte Teilklasse von CSL ist oder nicht? Diese Fragestellung ist als LBA-Problem bekannt.

29 Zusammenfassung der Abschlusseigenschaften Vereinigung Schnitt Komplement Produkt Sternhülle REG ja ja ja ja ja DCFL nein nein ja nein nein CFL ja nein nein ja ja DCSL ja ja ja ja ja CSL ja ja ja ja ja RE ja ja nein ja ja In der VL Komplexitätstheorie wird gezeigt, dass die Klasse CSL unter Komplementbildung abgeschlossen ist. Im nächsten Kapitel werden wir sehen, dass die Klasse RE nicht unter Komplementbildung abgeschlossen ist. Die übrigen Abschlusseigenschaften der Klassen DCSL, CSL und RE in obiger Tabelle werden in den Übungen bewiesen.

11.1 Kontextsensitive und allgemeine Grammatiken

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

Mehr

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14 Kapitel: Die Chomsky Hierarchie Die Chomsky Hierarchie 1 / 14 Allgemeine Grammatiken Definition Eine Grammatik G = (Σ, V, S, P) besteht aus: einem endlichen Alphabet Σ, einer endlichen Menge V von Variablen

Mehr

2.4 Kontextsensitive und Typ 0-Sprachen

2.4 Kontextsensitive und Typ 0-Sprachen Definition 2.43 Eine Typ 1 Grammatik ist in Kuroda Normalform, falls alle Regeln eine der folgenden 4 Formen haben: Dabei: A, B, C, D V und a Σ. Satz 2.44 A a, A B, A BC, AB CD. Für jede Typ 1 Grammatik

Mehr

Rekursiv aufzählbare Sprachen

Rekursiv aufzählbare Sprachen Kapitel 4 Rekursiv aufzählbare Sprachen 4.1 Grammatiken und die Chomsky-Hierarchie Durch Zulassung komplexer Ableitungsregeln können mit Grammatiken größere Klassen als die kontextfreien Sprachen beschrieben

Mehr

Einführung in die Theoretische Informatik

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

Mehr

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

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

Mehr

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

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie 1 Einführung 2 Typ-0- und Typ-1-Sprachen 3 Berechnungsmodelle 4 Unentscheidbarkeit 5 Unentscheidbare Probleme 6 Komplexitätstheorie 15 Ziele vgl. AFS: Berechnungsmodelle für Typ-0- und Typ-1-Sprachen (Nicht-)Abschlußeigenschaften

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

Formale Sprachen. Script, Kapitel 4. Grammatiken

Formale Sprachen. Script, Kapitel 4. Grammatiken Formale Sprachen Grammatiken Script, Kapitel 4 erzeugen Sprachen eingeführt von Chomsky zur Beschreibung natürlicher Sprache bedeutend für die Syntaxdefinition und -analyse von Programmiersprachen Automaten

Mehr

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

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

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

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

Mehr

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

Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/2006 07.02.2006 28. und letzte Vorlesung 1 Die Chomsky-Klassifizierung Chomsky-Hierachien 3: Reguläre Grammatiken

Mehr

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

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

Grundbegriffe. Grammatiken

Grundbegriffe. Grammatiken Grammatiken Grammatiken in der Informatik sind ähnlich wie Grammatiken für natürliche Sprachen ein Mittel, um alle syntaktisch korrekten Sätze (hier: Wörter) einer Sprache zu erzeugen. Beispiel: Eine vereinfachte

Mehr

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

Endliche Sprachen. Folgerung: Alle endlichen Sprachen sind regulär. Beweis: Sei L={w 1,,w n } Σ*. Dann ist w 1 +L+w n ein regulärer Ausdruck für

Endliche Sprachen. Folgerung: Alle endlichen Sprachen sind regulär. Beweis: Sei L={w 1,,w n } Σ*. Dann ist w 1 +L+w n ein regulärer Ausdruck für Endliche Sprachen Folgerung: Alle endlichen Sprachen sind regulär. Beweis: Sei L={w 1,,w n } Σ*. Dann ist w 1 +L+w n ein regulärer Ausdruck für L. 447 Zusammenfassung Beschreibungsformen für reguläre Sprachen:

Mehr

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

Theoretische Informatik. Grammatiken. Grammatiken. Grammatiken. Rainer Schrader. 9. Juli 2009 Theoretische Informatik Rainer Schrader Institut für Informatik 9. Juli 2009 1 / 41 2 / 41 Gliederung die Chomsky-Hierarchie Typ 0- Typ 3- Typ 1- Die Programmierung eines Rechners in einer höheren Programmiersprache

Mehr

Das Postsche Korrespondenzproblem

Das Postsche Korrespondenzproblem Das Postsche Korrespondenzproblem Eine Instanz des PKP ist eine Liste von Paaren aus Σ Σ : (v 1, w 1 ),..., (v n, w n ) Eine Lösung ist eine Folge i 1,..., i k von Indizes 1 i j n mit v i1... v ik = w

Mehr

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

Abschluss gegen Substitution. Wiederholung. Beispiel. Abschluss gegen Substitution

Abschluss gegen Substitution. Wiederholung. Beispiel. Abschluss gegen Substitution Wiederholung Beschreibungsformen für reguläre Sprachen: DFAs NFAs Reguläre Ausdrücke:, {ε}, {a}, und deren Verknüpfung mit + (Vereinigung), (Konkatenation) und * (kleenescher Abschluss) Abschluss gegen

Mehr

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

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

Ü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

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Wintersemester 2007 / 2008 Prof. Dr. Heribert Vollmer Institut für Theoretische Informatik 29.10.2007 Reguläre Sprachen Ein (deterministischer) endlicher Automat

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

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Algorithmen mit konstantem Platzbedarf: Die Klasse REG Algorithmen mit konstantem Platzbedarf: Die Klasse REG Sommerakademie Rot an der Rot AG 1 Wieviel Platz brauchen Algorithmen wirklich? Daniel Alm Institut für Numerische Simulation Universität Bonn August

Mehr

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung Theoretische Informatik Rainer Schrader Zentrum für Angewandte Informatik Köln 14. Juli 2009 1 / 40 2 / 40 Beispiele: Aus den bisher gemachten Überlegungen ergibt sich: aus der Chomsky-Hierarchie bleiben

Mehr

Theoretische Informatik Testvorbereitung Moritz Resl

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

Mehr

Theoretische Grundlagen der Informatik

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

Mehr

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 8. Reguläre Sprachen II Malte Helmert Gabriele Röger Universität Basel 24. März 24 Pumping Lemma Pumping Lemma: Motivation Man kann zeigen, dass eine Sprache regulär ist, indem man

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

Klausur zur Vorlesung Grundbegriffe der Informatik 5. März 2014

Klausur zur Vorlesung Grundbegriffe der Informatik 5. März 2014 Klausur zur Vorlesung Grundbegriffe der Informatik 5. März 2014 Klausurnummer Nachname: Vorname: Matr.-Nr.: Aufgabe 1 2 3 4 5 6 7 max. Punkte 6 8 4 7 5 6 8 tats. Punkte Gesamtpunktzahl: Note: Punkte Aufgabe

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

Grundlagen der Theoretischen Informatik

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

Mehr

Theoretische Informatik 2

Theoretische Informatik 2 Theoretische Informatik 2 Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2009/10 Entscheidbare und semi-entscheidbare Sprachen Definition Eine NTM M hält bei Eingabe x, falls

Mehr

Kapitel 3: Grundlegende Ergebnisse aus der Komplexitätstheorie Gliederung

Kapitel 3: Grundlegende Ergebnisse aus der Komplexitätstheorie Gliederung Gliederung 1. Berechenbarkeitstheorie 2. Grundlagen 3. Grundlegende Ergebnisse aus der Komplexitätstheorie 4. Die Komplexitätsklassen P und NP 5. Die Komplexitätsklassen RP und BPP 3.1. Ressourcenkompression

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2011/12 Die Registermaschine (random access machine, RAM) 0 I 0 1 I 1 2 I 2 m I m Programm

Mehr

Sprachen und Automaten. Tino Hempel

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

Mehr

Grammatiken. Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V. Startsymbol S V. Kurzschreibweise G = (V, Σ, P, S)

Grammatiken. Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V. Startsymbol S V. Kurzschreibweise G = (V, Σ, P, S) Grammatiken Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V Startsymbol S V Produktionen P ( (V Σ) \ Σ ) (V Σ) Kurzschreibweise G = (V, Σ, P, S) Schreibweise für Produktion (α, β) P: α β 67 /

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 Theoretische Informatik 1 Nichtdeterminismus David Kappel Institut für Grundlagen der Informationsverarbeitung TU Graz SS 2012 Übersicht Nichtdeterminismus NTM Nichtdeterministische Turingmaschine Die

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

c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}}

c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}} 2 Endliche Automaten Fragen 1. Was ergibt sich bei {a, bc} {de, fg}? a) {abc, defg} b) {abcde, abcfg} c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} 2. Was ergibt sich bei {abc, a} {bc, λ}?

Mehr

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

Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive Grammatik G mit L(G) = L(G ). Beweis im Beispiel (2.): G = (V,Σ, P, S) : P = {S asbc, S abc, CB BC, ab ab, bb bb, bc bc, cc cc}. (i) G

Mehr

Theoretische Informatik Mitschrift

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

Mehr

Was bisher geschah Chomsky-Hierarchie für Sprachen: L 0 Menge aller durch (beliebige) Grammatiken beschriebenen Sprachen L 1 Menge aller monotonen

Was bisher geschah Chomsky-Hierarchie für Sprachen: L 0 Menge aller durch (beliebige) Grammatiken beschriebenen Sprachen L 1 Menge aller monotonen Was bisher geschah Chomsky-Hierarchie für Sprachen: L 0 Menge aller durch (beliebige) Grammatiken beschriebenen Sprachen L 1 Menge aller monotonen (Kontextsensitive) Sprachen L 2 Menge aller kontextfreien

Mehr

11. Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P

11. Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P 11 Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P 11 Woche: Turingmaschinen, Entscheidbarkeit, P 239/ 333 Einführung in die NP-Vollständigkeitstheorie

Mehr

Berechenbarkeit. Script, Kapitel 2

Berechenbarkeit. Script, Kapitel 2 Berechenbarkeit Script, Kapitel 2 Intuitiver Berechenbarkeitsbegriff Turing-Berechenbarkeit WHILE-Berechenbarkeit Church sche These Entscheidungsprobleme Unentscheidbarkeit des Halteproblems für Turingmaschinen

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

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

Einige Beispiele zur Turingmaschine

Einige Beispiele zur Turingmaschine Einige Beispiele zur Turingmaschine Beispiel 1: Addition von 1 zu einer Dualzahl Aufgabe: Auf dem Eingabe-Band einer Turingmaschine steht eine Dualzahl (= Binärzahl, bestehend aus 0-en und 1-en, links

Mehr

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

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III Name Vorname Matrikelnummer Universität Karlsruhe Institut für Theoretische Informatik o. Prof. Dr. P. Sanders 10.4.2007 Klausur: Informatik III Aufgabe 1. Multiple Choice 11 Punkte Aufgabe 2. Minimalautomaten

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

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

Theoretische Informatik: Berechenbarkeit und Formale Sprachen

Theoretische Informatik: Berechenbarkeit und Formale Sprachen Prof. Dr. F. Otto 26.09.2011 Fachbereich Elektrotechnik/Informatik Universität Kassel Klausur zur Vorlesung Theoretische Informatik: Berechenbarkeit und Formale Sprachen SS 2011 Name:................................

Mehr

Grundlagen der Theoretischen Informatik

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

Mehr

Grundlagen der Theoretischen Informatik, SoSe 2008

Grundlagen der Theoretischen Informatik, SoSe 2008 2. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 1 Einelementiges Alphabet (4 Punkte) (a) Geben

Mehr

Formale Sprachen und endliche Automaten

Formale Sprachen und endliche Automaten Formale Sprachen und endliche Automaten Formale Sprachen Definition: 1 (Alphabet) Ein Alphabet Σ ist eine endliche, nichtleere Menge von Zeichen oder Symbolen. Ein Wort über dem Alphabet Σ ist eine endliche

Mehr

Ausgewählte unentscheidbare Sprachen

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

Mehr

Formale Sprachen und Automaten

Formale Sprachen und Automaten Turingmaschinen Formale Sprachen und Automaten Das Konzept der Turingmaschine wurde von dem Englischen Mathematiker Alan M. Turing (1912-1954) ersonnen. Turingmaschinen, Typ-0- und Typ-1-Grammatiken Der

Mehr

Grundlagen der Theoretischen Informatik

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

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 heoretische Informatik 1 eil 2 Bernhard Nessler Institut für Grundlagen der Informationsverabeitung U Graz SS 2009 Übersicht 1 uring Maschinen uring-berechenbarkeit 2 Kostenmaße Komplexität 3 Mehrband-M

Mehr

Grammatiken und die Chomsky-Hierarchie

Grammatiken und die Chomsky-Hierarchie Grammatiken und die Chomsky-Hierarchie Def.: Eine Grammatik G=(Σ,V,S,R) besteht aus endlichem Alphabet Σ endlicher Variablenmenge V mit V Σ= Startsymbol SєV endlicher Menge R с (V Σ) + x(v Σ)* von Ableitungsregeln

Mehr

2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht

2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht Formale Systeme, Automaten, Prozesse Übersicht 2 2. Reguläre Ausdrücke 2.3 Nichtdeterministische endliche Automaten 2.4 Die Potenzmengenkonstruktion 2.5 NFAs mit ɛ-übergängen 2.6 Minimale DFAs und der

Mehr

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

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

Mehr

Berechenbarkeit und Komplexität

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

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 heoretische Informatik 1 uringmaschinen David Kappel Institut für Grundlagen der Informationsverarbeitung echnische Universität Graz 11.03.2016 Übersicht uring Maschinen Algorithmusbegriff konkretisiert

Mehr

Sanders: Informatik III December 14, Kontextsensitive und Typ 0-Sprachen

Sanders: Informatik III December 14, Kontextsensitive und Typ 0-Sprachen Sanders: Informatik III December 14, 2006 1 1.4 Kontextsensitive und Typ 0-Sprachen Sanders: Informatik III December 14, 2006 2 Kuroda Normalform Eine Typ 1 Grammatik G = (V,Σ,P,S) in Kuroda Normalform

Mehr

Lexikalische Analyse, Tokenizer, Scanner

Lexikalische Analyse, Tokenizer, Scanner Lexikalische Analyse, Tokenizer, Scanner Frühe Phase des Übersetzers Aufgabenteilung: Scanner (lokale) Zeichen (Symbol-)Analyse Parser Syntax-Analyse Aufgabe des Scanners: Erkennung von: Zahlen, Bezeichner,

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Turingmaschinen und rekursiv aufzählbare Sprachen (II) 2.07.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie

Mehr

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

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

Mehr

Grundlagen der Theoretischen Informatik

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

Mehr

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

Formale Sprachen. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marian KOGLER

Formale Sprachen. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marian KOGLER Formale Sprachen Grammatiken und die Chomsky-Hierarchie Rudolf FREUND, Marian KOGLER Grammatiken Das fundamentale Modell zur Beschreibung von formalen Sprachen durch Erzeugungsmechanismen sind Grammatiken.

Mehr

Kontextsensitive und Typ 0 Sprachen

Kontextsensitive und Typ 0 Sprachen Kontextsensitive und Typ 0 Sprachen Slide 1 Kontextsensitive und Typ 0 Sprachen Hans U. Simon (RUB) Email: simon@lmi.rub.de Homepage: http://www.ruhr-uni-bochum.de/lmi Kontextsensitive und Typ 0 Sprachen

Mehr

Theoretische Informatik 2

Theoretische Informatik 2 Theoretische Informatik 2 Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2009/10 Zeitkomplexität von Turingmaschinen Die Laufzeit einer NTM M bei Eingabe x ist die maximale Anzahl

Mehr

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

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

Mehr

Kontextsensitive und Typ 0 Sprachen

Kontextsensitive und Typ 0 Sprachen Kontextsensitive und Typ 0 Sprachen Slide 1 Kontextsensitive und Typ 0 Sprachen Hans U. Simon (RUB) mit Modifikationen von Maike Buchin (RUB) Lehrstuhl Mathematik und Informatik Homepage: http://www.ruhr

Mehr

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

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

Mehr

Turing-Maschine. Berechenbarkeit und Komplexität Turing-Maschinen. Turing-Maschine. Beispiel

Turing-Maschine. Berechenbarkeit und Komplexität Turing-Maschinen. Turing-Maschine. Beispiel Berechenbarkeit und Komplexität Turing-Maschinen Wolfgang Schreiner Wolfgang.Schreiner@risc.jku.at Research Institute for Symbolic Computation (RISC) Johannes Kepler University, Linz, Austria http://www.risc.jku.at

Mehr

DKA und dkfs (mit Übungen)

DKA und dkfs (mit Übungen) DKA und dkfs (mit Übungen) Prof.Dr.Christian Wagenknecht mit Beiträgen von Herrn Dr.Michael Hielscher Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 1/15 kurz DKA Analog zu endlichen Automaten

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

(Prüfungs-)Aufgaben zu formale Sprachen

(Prüfungs-)Aufgaben zu formale Sprachen (Prüfungs-)Aufgaben zu formale Sprachen (siehe auch bei den Aufgaben zu endlichen Automaten) 1) Eine Grammatik G sei gegeben durch: N = {S, A}, T = {a, b, c, d}, P = { (S, Sa), (S, ba), (A, ba), (A, c),

Mehr

Motivation natürliche Sprachen

Motivation natürliche Sprachen Motivation natürliche Sprachen (Satz) (Substantivphrase)(Verbphrase) (Satz) (Substantivphrase)(Verbphrase)(Objektphrase) (Substantivphrase) (Artikel)(Substantiv) (Verbphrase) (Verb)(Adverb) (Substantiv)

Mehr

Theoretische Informatik für Wirtschaftsinformatik und Lehramt

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

Mehr

Theoretische Grundlagen des Software Engineering

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

Mehr

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 1. Automaten und Sprachen 1.1 Endlicher Automat Einen endlichen Automaten stellen wir uns als Black Box vor, die sich aufgrund einer Folge von

Mehr

Sanders: TGI November 26, Kontextsensitive und Typ 0-Sprachen

Sanders: TGI November 26, Kontextsensitive und Typ 0-Sprachen Sanders: TGI November 26, 2015 1 1.4 Kontextsensitive und Typ 0-Sprachen Sanders: TGI November 26, 2015 2 Kuroda Normalform Eine Typ 1 Grammatik G=(V,Σ,P,S) in Kuroda Normalform falls P V (V Σ V 2 ) V

Mehr

Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012

Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012 Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012 Hier Aufkleber mit Name und Matrikelnr. anbringen

Mehr

Formale Sprachen und Automaten

Formale Sprachen und Automaten Avant Propos Formale Sprachen und Automaten Sie [die Theorie der formalen Sprachen] ist ein Musterbeispiel einer informatischen Theorie, weil es ihr gelingt, einen großen Bestand an Einsichten und Zusammenhängen

Mehr

Einführung in die Computerlinguistik Formale Grammatiken rechtslineare und kontextfreie Grammatiken Kellerautomaten

Einführung in die Computerlinguistik Formale Grammatiken rechtslineare und kontextfreie Grammatiken Kellerautomaten Einführung in die Computerlinguistik Formale Grammatiken rechtslineare und kontextfreie Grammatiken Kellerautomaten Dozentin: Wiebke Petersen 13. Foliensatz Wiebke Petersen Einführung CL 1 Formale Grammatik

Mehr

Kapitel 7: Kellerautomaten und kontextfreie Sprachen

Kapitel 7: Kellerautomaten und kontextfreie Sprachen Kapitel 7: Kellerautomaten und kontextfreie Sprachen Prof.-Dr. Peter Brezany Institut für Softwarewissenschaft Universität Wien, Liechtensteinstraße 22 1090 Wien Tel. : 01/4277 38825 E-mail : brezany@par.univie.ac.at

Mehr

Theoretische Informatik. Probabilistische Turingmaschinen PTM PTM. Rainer Schrader. 10. Juni 2009

Theoretische Informatik. Probabilistische Turingmaschinen PTM PTM. Rainer Schrader. 10. Juni 2009 Theoretische Informatik Rainer Schrader Probabilistische Turingmaschinen Institut für Informatik 10. Juni 009 1 / 30 / 30 Gliederung probabilistische Turingmaschinen Beziehungen zwischen und NDTM es stellt

Mehr

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2012 17. DIE KONTEXTFREIEN SPRACHEN II: ABSCHLUSSEIGENSCHAFTEN, MASCHINENCHARAKTERISIERUNG, KOMPLEXITÄT Theoretische

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 3: Reguläre Grammatiken und Endliche. Automaten

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

Mehr

Einführung in Berechenbarkeit, Komplexität und formale Sprachen

Einfü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...................................

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

1. Klausur zur Vorlesung Informatik III Wintersemester 2004/2005

1. Klausur zur Vorlesung Informatik III Wintersemester 2004/2005 Universität Karlsruhe Theoretische Informatik Fakultät für Informatik WS 2004/05 ILKD Prof. Dr. D. Wagner 24. Februar 2005 1. Klausur zur Vorlesung Informatik III Wintersemester 2004/2005 Aufkleber Beachten

Mehr