Beruflich Dokumente
Kultur Dokumente
AG Zuverlässige Systeme
Dirk Nowotka, Mitja Kulczynski & Malte Skambath Christian-Albrechts-Universität zu Kiel
Hausaufgabe M1 5 Punkte
Gegeben sei die kontextfreie Grammatik G “ pt S, A, B u , t a, b u , P, Sq, wobei P die folgenden Transitio-
nen S Ñ ABa | B, A Ñ ε | Sa, B Ñ b beinhaltet. Überprüfen Sie mittels des Algorithmus der Vorlesung,
ob a) baaba P LpGq und b) bbab P LpGq gilt. Geben Sie hierzu die Zwischenstruktur des Algorithmus an.
Lösung:
a)
A, S A, S
B, S B, S
b a a b a
A A A A A A
A, S
B, S B, S B, S
b b a b
A A A A A
Hausaufgabe M2 5 Punkte
Sei Σ “ t a, b u ein Alphabet und L “ t w P Σ˚ | |w|a ď |w|b u. Definieren Sie einen Kellerautomaten K “
pQ, Σ, Γ, δ, K, q0 , F q mit Γ “ t K, ♥ u, sodass LpKq “ L gilt.
Lösung:
Für den folgenden Kellerautomaten K gilt LpKq “ L:
Σ 36
a, K Ñ ♥K
b, K Ñ ♥K
ε, K Ñ ε
a, K Ñ ♥K
q0
Hausaufgabe M3 12 Punkte
Sei Σ “ t Ñ, Ó, Ò, Ð u. Wir betrachten die Sprache L “ t w P | |w|Ò “ |w|Ó ‰ 0, |w|Ð “ |w|Ñ ‰ 0 u, die Σ`
alle Wörter w P Σ` beinhaltet, deren Start- und Endpunkt im Gitter identisch sind und jedes Symbol
a P Σ mindestens einmal in w vorkommt. Die folgende Grafik gibt ein enthaltenes (in blau) und ein nicht
enthaltenes (in rot) Wort über dem unendlichen Gitter an.
a) Zeigen Sie unter Zuhilfenahme des Pumpinglemmas, dass L nicht kontextfrei ist.
b) Definieren Sie eine Drei-Band-Turingmaschine M mit LpM q “ L, die L entscheidet.
Lösung:
a) Wir definieren opÑq “ Ð, opÐq “ Ñ, opÒq “ Ó und opÓq “ Ò. Wir nutzen nun das Pumping
Lemma für kontextfreie Sprachen, um zu zeigen, dass L nicht kontextfrei ist. Sei p P Ną0 . Setze
w “ Òp Ñp Óp Ðp P Σ` . Dann gilt w P L, da p ‰ 0 und |w|Ò “ |w|Ó , sowie |w|Ð “ |w|Ñ . Weiter
gilt |w| “ 4p ě p. Somit gibt es nach dem Pumping Lemma eine Zerlegung u, x, y, z, v P Σ˚ mit
w “ uxyzv, |xz| ‰ 0 und |xyz| ď p. Setze i “ 0 P N und sei a P Σ. Wir nehmen oBdA. mit |xz| ‰ 0
an, dass |xyz|a ‰ 0 gilt. Wegen |xyz| ď p gilt |xyz|opaq “ 0. Folglich gilt auch |uyv|a ă |uyv|opaq und
somit uyv R L. Dies steht im Widerspruch zum Pumping Lemma für kontextfreie Sprachen, womit
L keine kontextfreie Sprache sein kann.
b) Die folgende Turingmaschine entscheidet die Sprache L. Seien x P t Ñ, Ð u und y P t Ò, Ó u jeweils
beliebig.
q0
y, , Ñ y, y, ♥, R, N, N
x, , Ñ x, ♥, x, R, N, N
, , Ñ N, N, N
q1 qacc
,N
,R
x,
N
y,
x,
x
y,
Ñ
y,
x,
Ñ
y,
x
x,
x,
y,
y,
N
y,
,N
,N
N
,R
R,
x,
x,
y
y,
,x
y,
,R
Ñ
,N
q2 q3
,N
,x
y,
Hausaufgabe M4 ˇ ( 5 Punkte
Sei Σ “ t 0, 1 u ein Alphabet und L “ wwJ ˇ w P Σ˚ Ď Σ˚ eine Sprache. Geben Sie eine Turingmaschine
in Form eines Zustandsdiagramms an, welche die Sprache L entscheidet. Ein Beweis der Korrektheit Ihrer
Konstruktion ist nicht erforderlich.
o Eine einfache Lösung besitzt sieben Zustände.
Lösung:
1ÑR
0ÑR
ÑL
q1 q2
1 Ñ ,R 1 Ñ ,L
ÑN
qacc q0 q3 1ÑL
ÑR 0ÑL
0 Ñ ,R 0 Ñ ,L
ÑL
q4 q5
1ÑR
0ÑR
Beschreibung der Turingmaschine: Die Turingmaschine vergleicht jeweils den ersten Buchstaben des
Wortes auf dem Band mit dem letzten. Sind diese identisch, so akzeptiert unsere Turingmaschine
die Eingabe. Hierfür werden schrittweise die Symbole das Bandes durch -Symbole ersetzt.
Die Turingmaschine kann auf der Seite https://turingmachinesimulator.com/ wie folgt forma-
lisiert werden:
name: Aufgabe 4 (a)
init: q0
accept: qacc
q1,_ q4,0
q0,1 q2,_,< q4,0,>
q1,_,>
q2,1 q4,1
q0,0 q3,_,< q4,1,>
q4,_,>
q3,1 q4,_
q0,_ q3,1,< q5,_,<
qacc,_,-
q3,0 q5,0
q1,0 q3,0,< q3,_,<
q1,0,>
q3,_
q1,1 q0,_,>
q1,1,>
Lösung:
a) Die Aussage ist korrekt. Ist der Startzustand akzeptierend, so terminiert die Turingmaschine für
jede Eingabe. Ist unser Eingabealphabet Σ, so entspricht dies der unendlichen, erkannten Sprache
Σ˚ .
b) Die Aussage ist nicht korrekt. Eine Turingmaschine mit einem Zustand kann, wie in Aufgabenteil
a gesehen, entweder Σ˚ akzeptieren, falls der Startzustand akzeptierend ist, oder nur die Sprache
H, falls der Startzustand nicht akzeptierend ist.
c) Die Aussage ist nicht korrekt. Wir können nur das erste Zeichen verarbeiten, aber bei diesem auch
entscheiden, ob es leer ist. Somit gilt LpM q Ď Σ˚ .
Hinweis:
Geben Sie eine Turingmaschine bitte zusätzlich zur formalen oder graphischen Beschreibung in „Pseuco-
code“ an. Aus Ihrer Beschreibung sollte der Zweck jedes Zustands der Maschine klar werden. Sie können
Ihre Idee online auf der Seite https://turingmachinesimulator.com/ überprüfen.