Beruflich Dokumente
Kultur Dokumente
Aufgabe T24
In der Vorlesung wurde nur eine Richtung des folgenden Lemmas 2.3 bewiesen:
Es sei M = (Q, Σ, δ, q0 , F ) ein DFA.
Die Zustände q1 , q2 ∈ Q sind unterscheidbar genau dann wenn:
Es gibt w ∈ Σ∗ mit
1. δ̂(q1 , w) ∈ F , δ̂(q2 , w) ∈
/ F oder
2. δ̂(q2 , w) ∈ F , δ̂(q1 , w) ∈
/ F.
Beweisen Sie die fehlende Richtung.
Lösungsvorschlag
Wir verwenden die (induktive) Definition von Unterscheidbarkeit, für einen Induktionsbeweis:
Wir müssen die Richtung “unterscheidbar =⇒ δ̂...′′ zeigen.
• Induktionsanfang: Seien q1 und q2 unterscheidbar, weil q1 ∈ F , aber q2 ∈ / F ist. Dann gilt
natürlich δ̂(q1 , ε) ∈ F und δ̂(q1 , ε) ∈
/ F . Analog verhält es sich, wenn q1 ∈
/ F und q2 ∈ F
sind.
• Induktionsschritt: Seien q1 und q2 unterscheidbar, weil ein a ∈ Σ existiert, so dass q1′ :=
δ(q1 , a) und q2′ := δ(q2 , a) unterscheidbar sind. Nach Induktionsvoraussetzung existiert
daher ein w ∈ Σ∗ für das Zustandspaar q1′ und q2′ , so dass δ̂(q1′ , w) ∈ F und δ̂(q2′ , w) ∈
/F
′ ′ ′
oder δ̂(q1 , w) ∈/ F und δ̂(q2 , w) ∈ F . Wegen δ̂(q1 , aw) = δ̂(δ(q1 , a), w) = δ̂(q1 , w) und
δ̂(q2 , aw) = δ̂(δ(q2 , a), w) = δ̂(q2′ , w) folgt sofort die Aussage.
Aufgabe T25
Es sei L = { p$p$p | p ∈ {a, b}∗ }. Benutzen Sie das Pumping-Lemma um zu zeigen, dass L
nicht durch eine kontextfreie Grammatik erzeugt werden kann.
Lösungsvorschlag
Angenommen L sei kontextfrei. Dann existiert ein n, so dass jedes Wort z ∈ L mit |z| ≥ n in
z = uvwxy zerlegt werden kann mit
1. |vwx| ≤ n,
2. |vx| ≥ 1 und
3. uv i wxi y ∈ L für alle i ∈ N0 .
Sei z = an $an $an . Offensichtlich gilt z ∈ L. Falls vx mindestens ein $ enthält, so ist uv 0 wx0 y =
uwy offensichtlich nicht in L enthalten, da dieses Wort noch höchstens ein $ enthält.
Wir können also davon ausgehen, dass vx kein $ enthält. Für jede solche Zerlegung die (1) und
(2) erfüllt, gilt aber dass vwx höchstens zwei der getrennten a-Blöcke überlappt, da |vwx| ≤ n.
Damit ist aber uv 2 wx2 y ∈ / L, da mindestens einer der drei a-Blöcke genau die Länge n hat,
während mindestens einer der beiden anderen Blöcke mindestens die Länge n + 1 hat.
1
Aufgabe T26
Welche der folgenden Sprachen sind kontextfrei, welche nicht? Beweisen Sie jeweils Ihre Be-
hauptung.
1. L1 = { ai bj ck | i + j = k }
2. L2 = { ai bj ck | ij = k }
3. L3 = { pp | p ∈ {a, b}∗ }
Lösungsvorschlag
S → aSc | B | ϵ B → bBc | ϵ
2. Es lässt sich über das Pumping-Lemma zeigen, dass L2 nicht kontextfrei ist. Angenommen
das Pumping-Lemma für kontextfreie Sprachen gelte für L2 . Für das n aus dem Lemma,
2
sei das Wort z = an bn cn . Es liegt offensichtlich in L2 . Es gibt nun viele verschiedene
Möglichkeiten, z in uvwxy zu zerlegen. Da aber |vwx| ≤ n gelten muss, kann vwx nicht alle
drei Terminale (a, b und c) gleichzeitig enthalten. Man sieht leicht, dass ein Aufpumpen
zwangsweise dazu führt, dass das entstehende Wort nicht mehr in L2 liegt.
Betrachte hierfür z ′ = uv 0 wx0 y welches laut des Lemmas in L2 liegen müsste. Wenn vwx
2
die Form ai bj hat, dann ist z ′ = an−i bn−j cn , welches nicht in L2 liegt. Sonst muss vwx
2
die Form bi cj haben. Dann ist z ′ = an bn−i cn −j . Das Wort ist nicht in L2 , da n(n − i) =
n2 − ni ̸= n2 − j (für n > 1 und 1 ≤ i + j ≤ n) ist. Damit kann das Lemma für L2 nicht
gelten und es ist somit nicht kontextfrei.
3. Auch bei L3 lässt sich anhand des Pumping-Lemmas zeigen, dass diese Sprache nicht
kontextfrei ist. Sei n beliebig und z = an bn an bn ∈ L3 . Sei z = uvwxy eine entsprechende
Zerlegung. Wir unterscheiden zwischen zwei Fällen:
1. Fall: vwx ist komplett in der ersten Hälfte oder komplett in der zweiten Hälfte von z
enthalten. Durch Pumpen von v und x ändert sich daher eine Hälfte an bn und die andere
Hälfte bleibt gleich. Das so entstandene Wort ist somit nicht in L3 enthalten.
2. Fall: vwx liegt im Übergang der beiden Wörter, also ist es ein Unterwort von bn an .
Das heißt, beim pumpen muss sich das erste bn und das zweite an ändern. Da |vwx| ≤ n,
ändert sich jedoch weder das erste an noch das zweite bn . Somit ist das gepumpte Wort
nicht mehr in L3 , da es die Form an bn+i an+j bn mit i + j ≥ 1 hat.
Aufgabe T27
Beweisen oder widerlegen Sie formal, dass die kontextfreien Sprachen unter Spiegelung abge-
schlossen sind, d.h. dass falls L kontextfrei ist, dann ist auch LR kontextfrei.
Lösungsvorschlag
Ja, kontextfreie Sprachen sind unter Spiegelung abgeschlossen. Seien L eine kontextfreie Sprache
und G = (N, T, P, S) eine kontextfreie Grammatik, die jene erzeugt. Ohne Einschränkung der
Allgemeinheit ist G in Chomsky-Normalform.
Wir fügen jede Regel A → a ∈ P zu P ′ hinzu. Falls S → ε ∈ P , dann fügen wir auch diese zu
P ′ hinzu. Für jede Regel A → BC fügen wir A → CB hinzu.
2
Wir zeigen mittels einer Induktion über n, dass S ⇒nG α genau dann wenn G ⇒nG′ αR . Für
i = 1 ist die Aussage klar.
Sei n + 1 ∈ N und es gelte die Aussage bereits für n. Sei S ⇒n+1
G α. Dann gibt es Satzformen
β, γ und eine Produktion A → BC bzw. A → a aus P , sodass α = βBCγ oder α = βaγ
und S ⇒nG βAγ. Nach Induktionsvorraussetzung gilt, dass S ⇒nG′ γ R Aβ R . Daraus kann mit
A → CB ∈ P ′ (bzw. A → a) γ R CBβ R (bzw γ R aβ R ) herleiten. Die umgekehrte Richtung
kann man analog begründen (die Konstruktion ist selbst-dual). Damit ist die Aussage für n + 1
gezeigt und nach dem Induktionsprinzip gilt die Aussage für alle n, also insbesondere beliebig
lange Herleitungen, gezeigt.
3
Aufgabe H22 (15 Punkte)
Welche der folgenden Sprachen sind kontextfrei, welche nicht? Geben Sie hierfür eine kontext-
freie Grammatik (mit einer kurzen Begründung) an oder beweisen Sie, dass die Sprache nicht
kontextfrei ist.
1. L1 = { ai bj ci dj | i, j ∈ N }
n
2. L2 = {a2 | n ≥ 0},
3. L3 = {w1 . . . w2m | m ≥ 0; wi ∈ {a, b, c}, w2m+1−i ∈ {a, b, c}\{wi } für alle i ∈ {1, . . . , m}},
Lösungsvorschlag
1. L1 ist nicht kontextfrei. Angenommen, das Pumping Lemma für CFLs würde mit n für
L1 gelten. Sei z = an bn an bn in L1 mit |w| = 4n ≥ n. Dann gibt es eine Zerlegunng
uvwxy = z mit |vwx| ≤ n. Deswegen können v und w in höchstens zwei adjazente der
vier “Bereiche” an , bn , cn , dn liegen. wenn wir nun uv 2 wx2 y betrachten, sind die Längen
von nur zwei adjazente Bereichen geändert. Damit ist das Wort nicht in L1 und damit ist
die Sprache nicht kontextfrei.
2. L2 ist nicht kontextfrei: Angenommen L2 ist kontextfrei, dann gilt das Pumping-Lemma
n+2 n+2
für CFL für n ≥ 0. Betrachte das Wort a2 , welches |a2 | ≥ n erfüllt. Nach Pumping-
n+2
Lemma gibt es Zerlegung uvwxy = a2 mit |vwx| ≤ n und |vx| > 0 so dass für alle
n+2
i ≥ 0 auch uv wx y ∈ L2 . Betrachte das Wort uv 2 wx2 y = a2 +|vx| . Da 0 < |vx| ≤ n, ist
i i
Lösungsvorschlag
Ja, L▽R ist regulär. Wir geben hierfür eine konstruktiven Beweis an, indem wir einen endlichen
Automaten für die Sprache konstruieren.
Konstruktion: Seien ML = (QL , Σ, δL , qL , FL ) und MR = (QR , Σ, δR , qR , FR ) Automaten, die
je L und R erkennen (Œ über dem selben Alphabet und disjunkter Zustandsmenge). Daraus
konstruieren wir einen ε-NFA M▽ = (Q▽ , Σ, δ▽ , q▽ , F▽ ), der P := L ▽ R erkennt. Sei Q▽ =
QL × (QR ∪ {A, Ω}). Setze q▽ auf (qL , A) und F▽ auf FL × {Ω}.
Seien p, q ∈ QL , a ∈ Σ und X ∈ {A, Ω}. (1) Wenn q ∈ δL (p, a), dann (q, X) ∈ δ▽ ((p, A), X).
(2) Außerdem fügen wir zu δ▽ ε-Transitionen von (q, A) nach (q, qR ) und (q, f ) nach (q, Ω) für
f ∈ FR hinzu. Seien p′ , q ′ ∈ QR . (3) Wenn q ′ ∈ δR (p′ , a), dann (q, q ′ ) ∈ δ▽ ((q, p′ ), a) für alle
q ∈ QL .
Intuitive Erklärung (kein Beweis!): Zuerst simulieren wir ML auf der Eingabe u in den Zuständen
QL × {A}. Irgendwann raten wir, wann das Stück x, dass in R liegt, beginnt, und wechseln
4
dafür zum Automaten MR und simulieren diesen. Währenddessen haben wir uns den letzten
Zustand q aus ML gemerkt. Dann raten wir, wann x endet (dies muss in einem Endzustand von
MR geschehen) und wechseln mit einer ε-Transition in den zweite Kopie von ML und simulie-
ren den von q anfangend fort. Wir akzeptieren das Wort, wenn der Lauf in einem Endzustand
QL × {Ω} endet.
Korrektheitsbeweis: Seien uv ∈ L, x ∈ R und p1 , . . . , pk , pk+1 , pn ein akzeptierender Lauf von
uv auf ML und q1 , . . . , qm ein akzeptierender Lauf auf MR . Dann ist nach Konstruktion
ein akzeptierender Lauf von uxv auf M▽ . Die Transitionen korrespondieren zu denen die aus
Regeln (1) . . . (1), (2), (3) . . . (3), (2), (1) entstanden sind. Damit ist uxy ∈ L ▽ R.
Sei w ∈ L ▽ R. Dann gibt es einen akzeptierenden Lauf von w in M▽ . Nach Konstruktion
startet der Lauf in QL × {A}, wechselt irgendwann zu {p} × QR für ein p ∈ QL , dann zu
QL × {Ω} und endet dort. (Es gibt keine Rückkanten zwischen den o.g. Mengen). Entsprechend
ist der akzeptierende Lauf von der Form