HTWK Leipzig, Fakultät IMN
Prof. Dr. Sibylle Schwarz sibylle.schwarz@htwk-leipzig.de
10. Übung zu Theoretische Informatik: Automaten und formale Sprachen
Wintersemester 2020/21 zu lösen bis 3. Januar 2021
Aufgabe 10.1:
Zeigen Sie, dass die Sprache L={ambnck |m= 0∨n=k} nicht NFA-akzeptierbar ist.
Aufgabe 10.2:
Gegeben sind die Grammatiken
a. G1 = ({S, A, B, C, D},{a, b, c}, S, P) mit
P ={S →AD|AB, A →a|b, B→a|c, C →AB|AD|c, D →CB}.
Bestimmen Sie mit dem CYK-Algorithmus, ob gilt (a) aabccca∈L(G1)
(b) abacb∈L(G1)
b. G2 = ({S, A, B, C},{a, b}, S, P)mit
P ={S →bSb|bb|C, A→baS, B →a, C →aC|B}
Bestimmen Sie mit dem CYK-Algorithmus, ob gilt (a) bbaaabb∈L(G2)
(b) bbbbba∈L(G2)
Geben Sie für die Wörter, die durch die Grammatiken erzeugt werden, auch Ableitungsbäume in der entsprechenden Grammatik an.
Aufgabe 10.3:
Zeigen Sie, dass die Sprache L={ajbkcldm |j = 0∨k =l=m}
a. den Chomsky-Typ 1 hat
(indem Sie eine Grammatik G vom Chomsky-Typ 1 mit L=L(G) angeben), b. nicht kontextfrei ist,
Sie können dazu verwenden, dass die Menge aller kontestfreien Sprachen unter Schnitt mit regulären Sprachen abgeschlossen ist,
d.h. für alle Sprachen L, L0 gilt: (L∈CF∧L0 ∈REG)→L∩L0 ∈CF (wird später in der Vorlesung gezeigt)
Erarbeiten Sie sich anhand der Folien und Fachliteratur die reguläre und die kontextfreie Pump-Eigenschaft sowie die Pumping-Lemmata für kontextfreie und für reguläre Sprachen.
Verstehen Sie jeweils den Unterschied zwischen beiden Varianten und finden Sie für wenigstens drei verschiedene Sprachen eine Pumping-Konstante und überprüfen Sie die Gültigkeit der Pump-Eigenschaft.
Selbsttest-Aufgabe 10.4:
Zeigen Sie, dass die Sprache L={ajbkcldm |j = 0∨k =l=m}
die CF-Pump-Eigenschaft erfüllt.
Selbsttest-Aufgabe 10.5:
Zeigen Sie mit dem Pumping-Lemma für kontextfreie Sprachen, dass die folgenden Sprachen nicht kontextfrei sind:
L1 = {anbmanbm |m, n >0}
L2 = {a(i2) |i∈N}
L3 = {aibj |i∈N∧j =i2}
Selbsttest-Aufgabe 10.6:
Zeigen Sie, dass die Sprache L = {ambnck | m = 0∨n = k} die REG-Pump-Eigenschaft erfüllt.
Selbsttest-Aufgabe 10.7:
Bestimmen Sie für alle folgenden Sprachen Li, ob Li regulär, kontextfrei oder nichts von beiden ist. Begründen Sie in allen Fällen Ihre Antwort kurz.
L1 = {anbn|n > 0} ◦ {anbn |n >0}
L2 = {anbman+1 |m, n >0}
L3 = {ambnam+n |m, n >0}
L4 = {anaman|m, n > 0}
L5 = {ambncl|m =l}
L6 = {wabnawR |w∈ {a, b}∗∧n ∈N} L7 = {aibjak |i, j, k >0}
L8 = {aibjak |i=j∨i=k∨j =k}
L9 = {w∈ {a, b, c}∗ | |w|a<|w|c} ∩ {a, b}∗ L10 = {ucv ∈ {a, b, c}∗ |u∈ {a, b}∗∧v ∈ {a, b}∗}
L11 = {ucv ∈ {a, b, c}∗ |u∈ {a, b, c}∗∧v ∈ {a, b, c}∗∧ |u|=|v|}
L12 = {ucv ∈ {a, b, c}∗ |u∈ {a, b, c}∗∧v ∈ {a, b, c}∗∧ |u|=|v|} ∩ {a, b}∗ L13 = {w∈ {a, b, c}∗ |3|w|a=|w|c} ∩ {a, b}∗
Übungsaufgaben, Folien und weitere Hinweise zur Vorlesung finden Sie online unter https://informatik.htwk-leipzig.de/schwarz/lehre/ws20/tib