Theoretische Informatik I (Grundzüge der Informatik I)

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Theoretische Informatik I (Grundzüge der Informatik I)"

Transkript

1 Theoretische Informatik I (Grundzüge der Informatik I)

2 Literatur: Buch zur Vorlesung: Uwe Schöning, Theoretische Informatik - kurzgefasst. Spektrum Akademischer Verlag, Heidelberg/Berlin, 4. Auflage, Ergänzende Literatur: J. E. Hopcroft, R. Motwani, J. D. Ullman, Einführung in die Automatentheorie, Formale Sprachen und Komplexitätstheorie. Oldenbourg Verlag, München, 4. Auflage, Katrin Erk, Lutz Priese, Theoretische Informatik. Eine umfassende Einführung. Springer Verlag, Heidelberg, 2. Auflage, Ingo Wegener, Theoretische Informatik. Eine algorithmenorientierte Einführung. Teubner Verlag, Stuttgart, 2. Auflage, u.v.m.

3 Aufgaben der Theoretischen Informatik 1. Grundlagen Präzisie Begriffe Formale Methoden Korrektheit 2. Kontrolle Automatisches Beweisen Zugriffskontrolle 3. Sicherheit Fehlertoleranz Fehlerkorrektur

4 Einleitung Die Theoretische Informatik entwickelt formale Modelle für die Objekte und Methoden der Praktischen und Technischen Informatik. Modell: Beschreibung des Wesentlichen einer Klasse von verwandten realen Phänomenen unter Abstrahierung von technischen Details und zufälligen Eigenschaften. Nutzen: - besseres Verständnis der realen Phänomene - Entwicklung von Problemlösungen mit formalen Methoden 1

5 Wo konkret werden in der Informatik formale Methoden benötigt? Informatiker lösen Probleme aus einem Anwendungsgebiet mit Hilfe von Rechenanlagen: Problemstellung: umgangssprachlich beschrieben A1 Formale Problembeschreibung (Problemspezifikation) A2 Formale Beschreibung einer Lösung (Algorithmus) A3 Programm (in einer gebräuchlichen Programmiersprache) A4 Interpretation der vom Programm gelieferten Ergebnisse im Sinne der ursprünglichen Problemstellung A1 und A4: Informatiker gemeinsam mit Anwender A2 und A3: Informatiker 2

6 Vorlesung Theoretische Informatik I : (1.) Was ist ein Algorithmus? - Formale Modelle Welche Funktionen sind berechenbar, welche Mengen (Sprachen) sind entscheidbar? Gibt es Funktionen f : N N, die nicht berechenbar sind? Gibt es Mengen H N, die unentscheidbar sind? (2.) Mit welchen Mitteln lassen sich unendliche Sprachen formal beschreiben? Programmiersprachen: syntaktische Korrektheit? Semantik? 3

7 (3.) Welcher Bedarf an den Resourcen Rechenzeit und Speicherplatz entsteht bei der Lösung welcher Probleme? Gibt es Funktionen f : N N, die prinzipiell berechenbar sind, die aber dennoch praktisch nicht berechnet werden können? Kann man mit mehr Rechenzeit wirklich mehr Funktionen berechnen? 4

8 Kapitel 1. Automatentheorie und Formale Sprachen 1.1 Allgemeines 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 (ii) Semantik (a) (i) Grammatik (ii) Wörterbuch : Semantik durch Übersetzung (b) (i) Formale Beschreibung der Syntax (ii) Formale Beschreibung der Semantik 5

9 Hier: Formale Methoden zur Beschreibung der Syntax von Formalen Sprachen Was ist eine Formale Sprache? Ein Alphabet Σ ist eine endliche, nicht-leere Menge, deren Elemente Zeichen oder Symbole genannt werden. Beispiele: Σ 1 := {a, b} Σ 2 := {(, ), +,,, /, a} Σ 3 := {der,die,das,kleine,große,bissige,jagt,hund,katze} Durch Hintereinanderschreiben von Zeichen erhält man Wörter. n 1 : Σ n = Wörter der Länge n über Σ ε = Wort der Länge 0 (leeres Wort) Σ + := Σ n, Σ := Σ + {ε} Wörter über Σ n 1 Beispiele: Σ 2 1 = {aa, ab, ba, bb} Σ 1 = {ε, a, b, aa, ab, ba, bb, aaa,... } 6

10 Für w Σ ist w die Länge von w: ε = 0 w = n für alle w Σ n, n 1. Beachte: u Σ m v Σ n : uv Σ m+n u Σ m : εu = u = uε u, v, w Σ : (uv)w = u(vw) (Σ,, ε) ist Halbgruppe mit neutralem Element ε (d.h. ein Monoid) Jedes w Σ läßt sich eindeutig als Folge von Zeichen aus Σ schreiben. 7

11 Eine Formale Sprache über Σ ist eine Teilmenge L von Σ. Beispiele: (1.) L 1 := { w Σ 1 w ist eine ungerade Zahl } (2.) L 2 := { korrekt geklammerte arithmetische Ausdrücke über Σ 2 } z.b.: (a a) a + a/(a + a) a L 2 (((a))) L 2 ((a+) a( L 2 8

12 Wie beschreibt man eine Formale Sprache? (A) Generative Beschreibungsmittel: Grammatiken (B) Analysierende Beschreibungsmittel: Automaten Beispiel einer Grammatik: Satz Subjekt Prädikat Objekt Subjekt Artikel Attribut Substantiv Artikel ε Artikel der Artikel die Artikel das Attribut ε Attribut Adjektiv Attribut Adjektiv Attribut Adjektiv kleine Adjektiv große Adjektiv bissige Substantiv Hund Substantiv Katze Prädikat jagt Objekt Artikel Attribut Substantiv 9

13 Diese Grammatik erzeugt eine Sprache L 3 Σ 3, z.b.: Satz Subj Präd Obj Art Attr Subst Art Attr Subst Adj Attr Adj Adj der kleine bissige Hund jagt die große Katze Beachte: - L 3 ist unendlich. Syntaxbaum - der kleine große Katze jagt das bissige Hund L 3, d.h. nur syntaktische, nicht semantische Korrektheit wird durch Grammatiken festgelegt. 10

14 1.1.1 Grammatiken Definition Eine Grammatik ist ein 4-Tupel G = (V, Σ, P, S): - V endliche Menge von Variablen (Nichtterminale) - Σ Terminalalphabet - V Σ = - P (V Σ) + (V Σ) endliche Menge von Produktionen - (l r) P : l V > 0 - S V Startvariable l V := V -Länge von l: ε V = 0 { w V + 1 für a V wa V = w V für a V 11

15 Ableitungsrelation G über (V Σ) : u G v gdw. x, z (V Σ) (l r) P : u = xlz und v = xrz. u 0 G v gdw. u = v u 1 G v gdw. u G v u n+1 G v gdw. w (V Σ) : u n G w G v u + G v gdw. n 1 : u n G v u G v gdw. n 0 : u n G v 12

16 Lemma G ist die kleinste reflexive und transitive Relation auf (V Σ), die G umfaßt. Beweis: u (V Σ) : u G u, denn: u 0 G u. u, v, w : u G v und v G w, so u G w, denn: u i G v und v j G w, so u i+j G w. Also: G ist reflexiv und transitiv. Ferner gilt G = 1 G G. Sei nun R (V Σ) (V Σ) reflexiv und transitiv mit G R. Dann: 0 G R, da R reflexiv. 1 G R nach Voraussetzung n+1 G = n G G, d.h. n G R und Transitivität ergibt n+1 G R. Also: G = ( n G ) R. n 0 13

17 Sprache L(G), die von G erzeugt wird: L(G) := { w Σ S G w }. Ist w L(G), so gibt es n 1 und w 0, w 1,..., w n (V Σ) mit - w 0 = S, - w i G w i+1 für alle i = 0,..., n 1, - w n = w. (w 0, w 1,..., w n ) ist eine Ableitung von w in G. ˆL(G) := { w (V Σ) S G w } Sprache der Satzformen von G. 14

18 Beispiel 1: G := ({E, T, F }, {(, ), a, +, }, P, E) mit P := {E T, E E + T, T F, T T F, F a, F (E)} G liefert korrekt geklammerte arithmetische Ausdrücke: E E + T T + T T F + T T F F + T F F F + T a F F + T a a F + T a a (E) + T a a (E + T ) + T a a (T + T ) + T a a (F + T ) + T a a (a + T ) + T a a (a + F ) + T a a (a + a) + T a a (a + a) + F a a (a + a) + a L(G). 15

19 E E T T T F F T F E F E T F T F a a ( a + a ) + a Syntaxbaum 16

20 Beispiel 2: G := (V, Σ, P, S) mit V := {S, B, C} Σ := {a, b, c} P := { S asbc, S abc, CB BC, ab ab, bb bb, bc bc, cc cc } S asbc aasbcbc aaabcbcbc aaabbccbc aaabbcbcc aaabbbccc aaabbbccc aaabbbccc aaabbbccc aaabbbccc aaabbbccc aaabbbccc = a 3 b 3 c 3 L(G). 17

21 Behauptung: L(G) = { a n b n c n n 1 }. Beweis: : Sei n 1. Dann gilt: S n 1 a n 1 S(BC) n 1 a n (BC) n a n B n C n a n b n c n. : Sei w (V Σ) mit w ˆL(G), d.h. S w. Dann gilt: w {a} = w {b,b} = w {c,c}. Gilt S + w, so ist w = a k x mit k 1 und x {a} = 0. Genauer: x = Sy mit y {B, C} 2k oder x {b, B, c, C} 2k. Aus der Form der Regeln folgt: Gilt w = a k x z Σ, so ist z = a k b k c k. 18

22 Der Ableitungsprozeß ist nichtdeterministisch, d.h. G ist i.a. keine Funktion: bcb bcb bbc bbc bbc Die Menge aller Ableitungen läßt sich durch einen i.a. unendlichen Baum beschreiben: aasbcbc asbc S aabcbc aabcbc aabbcc abc abc abc 19

23 1.1.2 Chomsky-Hierarchie Noam Chomsky, Linguist, MIT (1956) Definition Sei G = (V, Σ, P, S). Typ 0: Jede Grammatik ist vom Typ 0. Typ 1: G ist vom Typ 1 (kontext-sensitiv), wenn jede Regel (l r) P die Gestalt uav uxv mit A V, u, v (V Σ) und x (V Σ) + hat. G ist monoton, wenn für jede Regel (l r) P, l r gilt. Typ 2: Eine Typ 1-Grammatik ist vom Typ 2 (kontext-frei), wenn für jede Regel (l r) P, l V ist. Typ 3: Eine Typ 2-Grammatik ist vom Typ 3 (regulär), wenn für jede Regel (l r) P, r Σ ΣV ist. 20

24 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 1 := (V {D a, D b, D c }, Σ, P 1, S) : P 1 := {S D a SBC, S D a BC, CB BC, D a B D a D b, D b B D b D b, D b C D b D c, D c C D c D c } {D a a, D b b, D c c}. (ii) G := (V {D a, D b, D c } {Z 1, Z 2 }, Σ, P, S) : P := P 1 {CB BC} {CB Z 1 B, Z 1 B Z 1 Z 2, Z 1 Z 2 BZ 2, BZ 2 BC}. 21

25 Problem der ε-regeln Ist G eine Typ 1-Grammatik, so ist ε L(G). Sonderfall: Eine Typ 1-Grammatik G = (V, Σ, P, S) darf die Regel S ε enthalten. Dann darf S aber auf keiner rechten Regelseite vorkommen. Konstruktion: Sei G = (V, Σ, P, S ) eine Typ 1-Grammatik mit L(G ) = L {ε}. Wähle G := (V {S}, Σ, P, S) mit P := P {S ε, S S }. Dann ist G eine Typ 1-Grammatik mit L(G) = L. Dies geht auch für Typ 2-Grammatiken. 22

26 Eine Grammatik G = (V, Σ, P, S) mit P V (V Σ) heißt allgemein kontext-frei. Hier: beliebige ε-regeln der Form A ε möglich! Lemma Zu jeder allgemein kontext-freien Grammatik G gibt es eine Typ 2-Grammatik G mit L(G) = L(G ). Beweis: Wir betrachten den Fall, daß ε L(G) ist. Aufgabe: Elimination aller ε-regeln. (1.) Bestimme V 1 := { A V A G ε}: V (1) 1 := { A V (A ε) P } V1 n+1 := V (n) 1 { A V r V (n) 1 : (A r) P }. Dann: V 1 = V (n) ( V ) 1 = V n 1 (2.) Streiche alle ε-regeln. 1. (3.) B xay mit A V 1 und xy ε: neue Regel B xy einfügen. 23

27 Beispiel aus 1.1: Subjekt Artikel Attribut Substantiv Objekt Artikel Attribut Substantiv Artikel ε Attribut ε. ergibt folgende Regeln: Subjekt Artikel Attribut Substantiv Subjekt Attribut Substantiv Subjekt Artikel Substantiv Subjekt Substantiv Objekt... 24

28 Definition Sei L Σ eine Sprache. L ist vom Typ 0/Typ 1/Typ 2/Typ 3, wenn es eine Grammatik G = (V, Σ, P, S) vom Typ 0/Typ 1/Typ 2/Typ 3 gibt mit L = L(G). L i (i {0, 1, 2, 3}) bezeichnet die Klasse der Typ i-sprachen. L 3 L 2 L 1 L 0 Chomsky Hierarchie Alle diese Inklusionen sind echt: L := { a n b n n 1 } L 2 L 3 L := { a n b n c n n 1} L 1 L 2 L := H L 0 L 1 (Kap. 2) 25

29 Das Wortproblem für eine Sprache L Σ : Eingabe: w Σ. Frage: Ist w L? Eine Sprache L ist entscheidbar (rekursiv), wenn ihr Wortproblem algorithmisch entscheidbar ist. Eine Sprache L ist rekursiv aufzählbar, wenn es eine Prozedur gibt, die bei Eingabe von w Σ genau dann terminiert, wenn w L gilt. Alle Typ 1-Sprachen sind entscheidbar. Die Typ 0-Sprachen sind die r.a. Sprachen. 26

30 Satz Nicht jede Sprache L {a} ist vom Typ 0. Beweis: Jede Typ 0-Sprache wird von einer Grammatik erzeugt. Eine Grammatik läßt sich durch eine endliche Zeichenfolge beschreiben. Es gibt nur abzählbar viele Grammatiken. Es gibt nur abzählbar viele Typ 0-Sprachen. Behauptung: 2 {a} ist überabzählbar. Beweis: indirekt: angenommen 2 {a} wäre abzählbar, d.h. Bijektion ϕ : N 2 {a}. Betrachte folgende Sprache D {a} : a n D gdw. a n ϕ(n). ϕ ist Bijektion, d.h. m N : ϕ(m) = D. Dann gilt: a m D gdw. a m ϕ(m) gdw. a m D.! 27

31 Klasse aller Sprachen Typ 0-Sprachen = r.a. Sprachen entscheidbare Sprachen Typ 1-Sprachen = kontext-sensitive Sprachen Typ 2-Sprachen = kontext-freie Sprachen Typ 3-Sprachen = reguläre Sprachen endliche Sprachen Hierarchie der Sprachklassen 28

32 1.1.3 Wortproblem Sei G = (V, Σ, P, S) eine Typ 1-Grammatik, und sei S x 1... x k = x eine Ableitung für ein Wort x Σ n. Dann: x i n für alle i = 1,..., k. Aber: n i=0 (V Σ) i = n i=0 ( V + Σ ) i = ( V + Σ )n+1 1 V + Σ 1 Satz Es gibt einen Algorithmus, der bei Eingabe einer Typ 1-Grammatik G = (V, Σ, P, S) und eines Wortes x Σ in endlich vielen Schritten entscheidet, ob x L(G) oder x L(G) gilt. 29

33 Beweis: Tm n := { w (V Σ) w n und S k G w für ein k m } T n m T n 0 erhalten wir induktiv über m (n 1): := {S}, T n m+1 := Abl n(t n m), wobei Abl n (X) := X { w (V Σ) w n und w G w für ein w X }. Dann: T n 0 T n 1... T n m T n m+1... k 0 T n k. Aber k 0 T n k n i=0 (V Σ) i, d.h. Tk n k 0 ist endlich. m : T n m = T n m+1 =... = k 0 T n k. Also: x L(G) gdw. x T n m. 30

34 Algorithmus zur Lösung des Wortproblems: Eingabe: (G, x); begin n := x ; T := {S}; repeat T 1 := T ; T := Abl n (T 1 ) until (x T ) or (T = T 1 ); if x T then Ausgabe: x liegt in L(G) else Ausgabe: x liegt nicht in L(G) end Bemerkung: exponentielle Laufzeit O(c n ) 31

35 Beispiel 2 (aus 1.1.1): P : S asbc, S abc, CB BC, ab ab, bb bb, bc bc, cc cc Für n = 4: T0 4 = {S} T1 4 T2 4 T3 4 = {S, asbc, abc} = {S, asbc, abc, abc} = {S, asbc, abc, abc, abc} T 4 4 = T 4 3 Also: L(G) { x {a, b, c} x 4 } = {abc}. 32

36 1.1.4 Syntaxbäume Sei G = (V, Σ, P, S) eine Typ 2-Grammatik, und sei S = x 0 x 1 x 2... x n = x eine Ableitung für ein Wort x L(G). Beschreibung dieser Ableitung durch einen Syntaxbaum: Wurzel mit Markierung S Schritt i: x i 1 = uav urv = x i mit u, v (V Σ), (A r) P, so füge zum Knoten mit Markierung A r Söhne ein, die von links nach rechts mit den Zeichen von r markiert werden. 33

37 Beispiel 1: G = ({S}, {a, b}, {S as, S b}, S) : S a S a S a S b Beispiel 1 (aus 1.1.1): (1.) E T T F F F a F a a (2.) E T T F T a F a a a (1) Linksableitung (2) Rechtsableitung E T T F F a a 34

38 Für eine Typ 2-Grammatik G = (V, Σ, P, S) und ein Wort x Σ sind äquivalent: (a) x L(G) (b) Syntaxbaum mit Markierung x an den Blättern (c) Linksableitung von x in G. Definition Eine Typ 2-Grammatik G heißt eindeutig, wenn es für jedes Wort x L(G) nur einen Syntaxbaum gibt, andernfalls heißt G mehrdeutig. Beispiel 2: G = ({S, A, B}, {a, b, c}, P, S) mit P := {S ab, S Ac, A ab, B bc}: a S b B G ist mehrdeutig. c A G := ({S}, {a, b, c}, {S abc}, S) a S b c 35

39 Definition Eine Typ 2-Sprache L heißt inhärent mehrdeutig, wenn jede Typ 2-Grammatik G mit L = L(G) mehrdeutig ist. L := { a i b j c k i = j oder j = k }: inhärent mehrdeutig. Kann man einer Grammatik (einer Sprache) ansehen, ob sie (inhärent) mehrdeutig ist? 36

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

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

Theoretische Informatik: Berechenbarkeit und Formale Sprachen

Theoretische Informatik: Berechenbarkeit und Formale Sprachen Theoretische Informatik: Berechenbarkeit und Formale Sprachen Prof. Dr. F. Otto Fachbereich Elektrotechnik/Informatik, Universität Kassel 34109 Kassel, Germany E-mail: otto@theory.informatik.uni-kassel.de

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

Theoretische Informatik Mitschrift

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

Mehr

Theoretische Informatik: Berechenbarkeit und Formale Sprachen

Theoretische Informatik: Berechenbarkeit und Formale Sprachen Theoretische Informatik: Berechenbarkeit und Formale Sprachen Prof. Dr. F. Otto Fachbereich Elektrotechnik/Informatik, Universität Kassel 34109 Kassel, Germany E-mail: otto@theory.informatik.uni-kassel.de

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

Alphabet, formale Sprache

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

Mehr

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

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

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

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

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

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

Mehr

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

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

7. Formale Sprachen und Grammatiken

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

Mehr

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

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

Die Chomsky Hierarchie

Die Chomsky Hierarchie Die Chomsky Hierarchie Slide 1 Die Chomsky Hierarchie Hans U. Simon (RUB) Email: simon@lmi.rub.de Homepage: http://www.ruhr-uni-bochum.de/lmi Die Chomsky Hierarchie Slide 2 Vorgeplänkel: Mathematische

Mehr

Was bisher geschah: Formale Sprachen

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

Mehr

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

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

Die Chomsky Hierarchie

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

Mehr

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

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

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

(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

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

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

Mehr

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

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

Informatik III. Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung

Informatik III. Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung Informatik III Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung 09.11.2006 schindel@informatik.uni-freiburg.de 1 Äquivalenzklassen Definition und Beispiel Definition Für eine Sprache L Σ* bezeichnen

Mehr

I.5. Kontextfreie Sprachen

I.5. Kontextfreie Sprachen I.5. Kontextfreie prachen Zieht man in Betracht, dass BNF-yteme gerade so beschaffen sind, dass auf der linken eite immer genau ein Nichtterminal steht, so sind das also gerade die Ableitungsregeln einer

Mehr

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

Grundlagen der Informatik II

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

Mehr

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

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

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

Grundlagen Theoretischer Informatik 2 WiSe 2009/10 in Trier. Henning Fernau Universität Trier

Grundlagen Theoretischer Informatik 2 WiSe 2009/10 in Trier. Henning Fernau Universität Trier Grundlagen Theoretischer Informatik 2 WiSe 2009/10 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Grundlagen Theoretischer Informatik 2 Gesamtübersicht Organisatorisches; inführung rsetzungsverfahren:

Mehr

Theoretische Informatik 2 bzw. Formale Sprachen und Berechenbarkeit. Sommersemester Herzlich willkommen!

Theoretische Informatik 2 bzw. Formale Sprachen und Berechenbarkeit. Sommersemester Herzlich willkommen! Theoretische Informatik 2 bzw. Formale Sprachen und Berechenbarkeit Sommersemester 2012 Prof. Dr. Nicole Schweikardt AG Theorie komplexer Systeme Goethe-Universität Frankfurt am Main Herzlich willkommen!

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

54 4 FORMALE SPRACHEN

54 4 FORMALE SPRACHEN 54 4 FORMALE SPRACHEN 4 Formale Sprachen 41 Einführung Ich erinnere an die Definitionen im Unterkapitel 16, die im weiteren Verlauf der Vorlesung von Bedeutung sein werden Insbesondere werden wir uns mit

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

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen. I.2. I.2. Grundlagen von von Programmiersprachen.

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen. I.2. I.2. Grundlagen von von Programmiersprachen. 1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik

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

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

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

Sprachen und Programmiersprachen

Sprachen und Programmiersprachen Sprachen und Programmiersprachen Natürliche Sprachen versus Programmiersprachen / Spezifikationssprachen Syntax legt die grammatikalische Korrektheit fest. Semantik legt die Bedeutung von syntaktisch korrekten

Mehr

Theoretische Grundlagen der Informatik

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

Mehr

Formale Sprachen und deren Grammatiken. Zusammenhang mit der Automatentheorie.

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

Mehr

Ü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

Informatik III. Christian Schindelhauer Wintersemester 2006/07 6. Vorlesung

Informatik III. Christian Schindelhauer Wintersemester 2006/07 6. Vorlesung Informatik III Christian Schindelhauer Wintersemester 2006/07 6. Vorlesung 10.11.2006 schindel@informatik.uni-freiburg.de 1 Kapitel IV Kontextfreie Sprachen Kontextfreie Grammatik Informatik III 6. Vorlesung

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

Algorithmen und Datenstrukturen I - Exkurs Formale Sprachen -

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

Mehr

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

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

Herzlich willkommen!!!

Herzlich willkommen!!! Theoretische Informatik 2 Sommersemester 2013 Prof. Dr. Georg Schnitger AG Theoretische Informatik Johann Wolfgang Goethe-Universität Frankfurt am Main Herzlich willkommen!!! 1 / 19 Kapitel 1: Einführung

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

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

Theoretische Informatik

Theoretische Informatik Theoretische Informatik Sommersemester 2004 Christoph Kreitz Theoretische Informatik, Raum 1.18, Telephon 3060 kreitz@cs.uni-potsdam.de http://www.cs.uni-potsdam.de/ti/kreitz 1. Themen und Lernziele 2.

Mehr

Übungsaufgaben zu Formalen Sprachen und Automaten

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

Mehr

Theoretische Informatik

Theoretische Informatik Theoretische Informatik Wintersemester 2016/2017 2V, Mittwoch, 12:00-13:30 Uhr, F303 2Ü, Dienstag, 12:00-13:30 Uhr, BE08 2Ü, Dienstag, 15:00-16:30 Uhr, B212 2Ü, Mittwoch, 8:30-10:00 Uhr, B312 Fachprüfung:

Mehr

Formale Sprachen und Grammatiken

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

Mehr

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

6 Kontextfreie Grammatiken

6 Kontextfreie Grammatiken 6 Kontextfreie Grammatiken Reguläre Grammatiken und damit auch reguläre Ausdrücke bzw. endliche Automaten haben bezüglich ihres Sprachumfangs Grenzen. Diese Grenzen resultieren aus den inschränkungen,

Mehr

Satz 90 Sei A = (Q, Σ, δ, q 0, F ) ein DFA. Der Zeitaufwand des obigen Minimalisierungsalgorithmus ist O( Q 2 Σ ).

Satz 90 Sei A = (Q, Σ, δ, q 0, F ) ein DFA. Der Zeitaufwand des obigen Minimalisierungsalgorithmus ist O( Q 2 Σ ). Satz 90 Sei A = (Q, Σ, δ, q 0, F ) ein DFA. Der Zeitaufwand des obigen Minimalisierungsalgorithmus ist O( Q 2 Σ ). Beweis: Für jedes a Σ muss jede Position in der Tabelle nur konstant oft besucht werden.

Mehr

Automaten und Formale Sprachen

Automaten und Formale Sprachen Automaten und Formale Sprachen Prof. Dr. Dietrich Kuske FG Theoretische Informatik, TU Ilmenau Wintersemester 2011/12 WS 11/12 1 Organisatorisches zur Vorlesung Informationen, aktuelle Version der Folien

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

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

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

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

Mehr

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

Theoretische Informatik 2

Theoretische Informatik 2 Theoretische Informatik 2 Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2009/10 Die Chomsky-Hierarchie Definition Sei G = (V, Σ, P, S) eine Grammatik. 1 G heißt vom Typ 3 oder

Mehr

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

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

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

Mehr

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

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 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 Musterlösungen zu ausgewählten Übungsaufgaben

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben Dieses Dokument soll mehr dazu dienen, Beispiele für die formal korrekt mathematische Bearbeitung von Aufgaben zu liefern, als konkrete Hinweise auf typische Klausuraufgaben zu liefern. Die hier gezeigten

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

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

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

Algorithmen und Formale Sprachen

Algorithmen und Formale Sprachen Algorithmen und Formale Sprachen Algorithmen und formale Sprachen Formale Sprachen und Algorithmen Formale Sprachen und formale Algorithmen (formale (Sprachen und Algorithmen)) ((formale Sprachen) und

Mehr

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK 0. ORGANISATORISCHES UND ÜBERBLICK

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK 0. ORGANISATORISCHES UND ÜBERBLICK EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2014 0. ORGANISATORISCHES UND ÜBERBLICK Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 1 / 16

Mehr

4.2 Die Chomsky Normalform

4.2 Die Chomsky Normalform 4.2 Die Chomsky Normalform Für algorithmische Problemstellungen (z.b. das Wortproblem) aber auch für den Nachweis von Eigenschaften kontextfreier Sprachen ist es angenehm, von CFG in Normalformen auszugehen.

Mehr

16. Die Chomsky-Hierarchie

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

Mehr

Dank. Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Probleme über Sprachen. Teil II.

Dank. Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Probleme über Sprachen. Teil II. Dank Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Diese Vorlesungsmaterialien basieren ganz wesentlich auf den Folien zu den Vorlesungen

Mehr

Fakultät für Informatik Universität Magdeburg Jürgen Dassow. Motivation Englisch

Fakultät für Informatik Universität Magdeburg Jürgen Dassow. Motivation Englisch Motivation Englisch Mary and John are a woman and a man, respectively. Mary, John and William are a woman, a man and a man, respectively. Mary, John, William and Jenny are a woman, a man, a man and a woman,

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

Vorlesung Automaten und Sprachen

Vorlesung Automaten und Sprachen Vorlesung Automaten und Sprachen Markus Lohrey Universität Leipzig Sommersemester 2008 Markus Lohrey (Univ. Leipzig) Automaten und Sprachen SS 2008 1 / 251 Organisatorisches zur Vorlesung Informationen

Mehr

Herzlich willkommen!!!

Herzlich willkommen!!! Theoretische Informatik 2 Sommersemester 2015 Prof. Dr. Georg Schnitger AG Theoretische Informatik Goethe-Universität Frankfurt am Main Herzlich willkommen!!! 1 / 19 Kapitel 1: Einführung Einführung 2

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

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

Pumping-Lemma. Beispiel. Betrachte die kontextsensitive Grammatik G mit den Produktionen. S asbc abc CB HB HB HC HC BC ab ab bb bb bc bc cc cc.

Pumping-Lemma. Beispiel. Betrachte die kontextsensitive Grammatik G mit den Produktionen. S asbc abc CB HB HB HC HC BC ab ab bb bb bc bc cc cc. Pumping-Lemma Beispiel Betrachte die kontextsensitive Grammatik G mit den Produktionen S asbc abc CB HB HB HC HC BC ab ab bb bb bc bc cc cc. Sie erzeugt z.b. das Wort aabbcc: S asbc aabcbc aabhbc aabhcc

Mehr

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

Formale Sprachen, Automaten, Compiler

Formale Sprachen, Automaten, Compiler Formale Sprachen, Automaten, Compiler Berufsakademie Lörrach, TIT06-3. Semester Übung 1 -> LÖSUNGSVORSCHLAG ÜA1.1. Die "normalen" Dezimalziffern, also Σ = { 0, 1,..., 9, ist sicher ein Alphabet, aber auch

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

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

Berechenbarkeitstheorie 7. Vorlesung

Berechenbarkeitstheorie 7. Vorlesung 1 Berechenbarkeitstheorie Dr. Institut für Mathematische Logik und Grundlagenforschung WWU Münster W 15/16 Alle Folien unter Creative Commons Attribution-NonCommercial 3.0 Unported Lizenz. Das Pumpinglemma

Mehr

Grammatiken und ANTLR

Grammatiken und ANTLR Grammatiken und ANTLR Zusatzfolien zu Algo Blatt 6 Author: Henry Schaefer http://www.majeeks.de/folien_blatt6.pdf Grammatik Definition: syntaktische Beschreibung einer Sprache (H.S.) Definiton Grammatik

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