Grundbegriffe der Informatik Tutorium 7 Tutorium Nr. 16 Philipp Oppermann 16. Dezember 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
Gliederung 1 2 Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 2/15
Definition G = (N, T, S, P) Beispiel N ist ein Alphabet von Nichtterminalsymbolen (Großbuchstaben) T ist ein Alphabet von Terminalsymbolen (Kleinbuchstaben) T N =, V = T N S N ist das Startsymbol P N V ist eine endliche Menge von Produktionen G = ({X, Y }, {a, b}, X, P) mit P = {X YY, Y ayb, Y ε} X YY ayby aaybby aaybbayb aaybbaεb = aaybbab aaaybbbab aaaεbbbab = aaabbbab Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 3/15
Ableitungsschritt (u v) w 1, w 2 V und es existiert eine Produktion X w in P, so dass u = w 1 Xw 2 und v = w 1 ww 2 Ableitung Beispiel u 0 v u = v i N 0 : (u i+1 v w V : u w i v) u v i N 0 : u i v G = ({X, Y }, {a, b}, X, P) mit P = {X YY, Y ayb ε} X 4 aaybbayb aaaεbbbab = aaabbbab, X X ab Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 4/15
Kontextfreie Sprache Definition Beispiel Eine kontextfreie Sprache ist die von einer kontextfreien Grammatik erzeugte formale Sprache. Ist G = (N, T, S, P) dann ist L(G) = {w T S w} G = ({X}, {a, b}, X, {X ε ax bx}) L(G) = {} = G = ({X}, {a, b}, X, {}) = L(G) = {a, b} Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 5/15
Aufgabe 1 Gib jeweils eine kontextfreie Grammatik über T = {a, b} an, die die folgenden Sprachen erzeugt: a) die Menge aller Wörter über T, in denen irgendwo das Teilwort baa vorkommt b) die Menge aller w T mit der Eigenschaft, dass für alle Präfixe v von w gilt: N a (v) N b (v) 1 c) L = { a i b j 0 i < j } Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 6/15
Lösung Aufgabe 1 a) z.b. G = ({X, Y }, {a, b}, X, P) mit P = {X ax bx baay, Y ay by ε} b) z.b. G = ({X}, {a, b}, X, P) mit P = {X abx bax a b ε} c) z.b. G = ({X}, {a, b}, X, P) mit P = {X axb b Xb} Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 7/15
Aufgabe 2 (Klausuraufgabe) Wir betrachten die Sprache L = {a k b m a m k m, k N 0 m k} über A = {a, b}. a) Geben Sie eine kontextfreie Grammatik an, so dass gilt: L(G) = L. b) Geben Sie für Ihre Grammatik aus Teilaufgabe a) einen Ableitungsbaum für das Wort aabbba an Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 8/15
Lösung a) G = ({S, X, Y }, {a, b}, S, P) mit P = {S XY, X axb ε, Y bya ε} b) Ableitungsbaum: Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 9/15
Aufgabe 3 (Klausuraufgabe) Gegeben sei folgende formale Sprache L = {(ab) k c m d l k, m, l > 0 und (k = m oder k = l)} a) Geben Sie eine kontextfreie Grammatik G = (N, T, S, P) an, für die gilt: L(G) = L. b) Geben Sie alle Wörter der Länge 7 an, die in L liegen. Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 10/15
Lösung Aufgabe 3 a) G = ({S, X, Y, A, B}, {a, b, c, d}, S, P) mit P = { S Yd abbd, X cx ε, Y Yd abac, A abac ε, B abbd cx} b) ababccd, ababcdd, abccccd, abcdddd Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 11/15
Produkt von Sind R M 1 M 2 und S M 2 M 3 zwei, dann heißt S R = {(x, z) M 1 M 3 y M 2 : (x, y) R (y, z) S} das Produkt der R und S. Identität I M = {(x, x) x M} R M M : Potenzen R I M = R = I M R R 0 = I M i N 0 : R i+1 = R R i R = i=0 Ri reflexiv-transitive Hülle Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 12/15
Potenzen R 0 = I M i N 0 : R i + 1 = R R i R = i=0 Ri reflexiv-transitive Hülle reflexiv, symmetrisch, transitiv Eine Relation R über der Menge M heißt reflexiv, wenn x M : xrx. symmetrisch, wenn x, y M : xry yrx transitiv, wenn x, y, z M : xry yrz = xrz Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 13/15
Aufgabe 4 Es sei L = {w {a, b} Für alle Suffixe s von w gilt: N a (s) N b (s) 1} Überprüfen Sie folgende Relation auf Reflexivität, Symmetrie und Transitivität: R = {(x, y) (x L y L) x y L} Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 14/15
Lösung Aufgabe 4 nicht reflexiv: z.b. (a, a) / R nicht symmetrisch: z.b. (a, ba) R, aber (ba, a) / R nicht transitiv: z.b. (a, b) R (b, a) R, aber (a, a) / R Philipp Oppermann GBI Tutorium Nr. 16 16. Dezember 2014 15/15