Sie sind auf Seite 1von 5

Formale Systeme, Automaten, Prozesse SS 2023

Prof. Dr. P. Rossmanith


M. Gehnen, N. Lommen, D. Mock
Datum: 07.06.2023

Übungsblatt mit Lösungen 08

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

1. Die Sprache L1 wird durch die folgende Grammatik erkannt:

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

2n+2 < 2n+2 + |vx| < 2n+3 und somit uv 2 wx2 y ∈


/ L2 .

3. L3 ist kontextfrei, da folgende kontextfreie Grammatik L3 erzeugt:

S → aSb | aSc | bSa | bSc | cSa | cSb | ε

Aufgabe H23 (10 Punkte)


Seien L und R zwei reguläre Sprachen über einem Alphabet Σ. Ist die Sprache L ▽ R := {xuy |
xy ∈ L, u ∈ R} regulär? Beweisen Sie Ihre Aussage! Beispiel: Sei L = L((ac)+ ), R = L(b+ ).
Dann sind acbbb und acabc in L ▽ R, aber nicht acac, acabac oder acbbbacbac.
Hinweis: Wenn Sie die Aussage konstruktiv beweisen wollen, müssen Ihre Konstruktion formal
angeben und zeigen, dass diese richtig ist (siehe Lösungsvorschlag T4). Wenn Sie die Aussage
widerlegen wollen, müssen Sie zwei reguläre, geeignete Sprachen für L und R wählen und
beweisen (!), dass L ▽ R nicht regulär ist.

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

(p1 , A), . . . , (pk , A), (pk , q1 ), . . . , (pk , qm ), (pk , Ω), . . . , (pn , Ω)

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

(p1 , A), . . . , (pk , A), (pk , q1 ), . . . , (pk , qm ), (pk , Ω), . . . , (pn , Ω)

(wie oben), mit pn ∈ FL , qm ∈ FR . Damit gibt es u, v, x ∈ Σ∗ mit w = uxv ∈ L(M▽ )


uv ∈ L(ML ) und x ∈ L(MR ). Hier korrespondiert u zu dem Lauf (p1 , A), . . . , (pk , A), x zu
(pk , q1 ), . . . , (pk , qm ) und v zu (pk , Ω), . . . , (pn , Ω). Die Transitionen zwischen den eben genannten
Teilläufen sind ε-Transitionen und damit ist auch w = uxv.
Damit gilt L(M▽ ) = L ▽ R.

Das könnte Ihnen auch gefallen