Formale Sprachen und Komplexit¨ at
Sommersemester 2019
Zentral¨ ubung 16.05.2019:
Regul¨ are Ausdr¨ ucke,
Anwenden des Pumping-Lemmas
Prof. Dr. David Sabel
LFE Theoretische Informatik
Aufgabe
Geben Sie regul¨ are Ausdr¨ ucke f¨ ur jede der folgenden formalen Sprachen an, die genau die jeweilige formale Sprache erzeugen:
a) {u ∈ {a, b}
∗| |u| = 4}
(a|b)(a|b)(a|b)(a|b)
b) {u ∈ {a, b}
∗| |u| ≤ 4}
(ε|a|b)(ε|a|b)(ε|a|b)(ε|a|b) oder (ε | (a|b) | (a|b)(a|b) | (a|b)(a|b)(a|b) | (a|b)(a|b)(a|b)(a|b))
c) {u ∈ {a, b}
∗| |u| ≥ 4}
(a|b)(a|b)(a|b)(a|b)(a|b)
∗d) {u ∈ {a, b}
∗| u enth¨ alt nicht bbbb als Teilwort}
(ε|b|bb|bbb)(a|ab|abb|abbb)
∗oder (a|ba|bba|bbba)
∗(ε|b|bb|bbb)
Aufgabe
Geben Sie regul¨ are Ausdr¨ ucke f¨ ur jede der folgenden formalen Sprachen an, die genau die jeweilige formale Sprache erzeugen:
a) {u ∈ {a, b}
∗| |u| = 4} (a|b)(a|b)(a|b)(a|b) b) {u ∈ {a, b}
∗| |u| ≤ 4}
(ε|a|b)(ε|a|b)(ε|a|b)(ε|a|b) oder (ε | (a|b) | (a|b)(a|b) | (a|b)(a|b)(a|b) | (a|b)(a|b)(a|b)(a|b))
c) {u ∈ {a, b}
∗| |u| ≥ 4}
(a|b)(a|b)(a|b)(a|b)(a|b)
∗d) {u ∈ {a, b}
∗| u enth¨ alt nicht bbbb als Teilwort}
(ε|b|bb|bbb)(a|ab|abb|abbb)
∗oder (a|ba|bba|bbba)
∗(ε|b|bb|bbb)
Aufgabe
Geben Sie regul¨ are Ausdr¨ ucke f¨ ur jede der folgenden formalen Sprachen an, die genau die jeweilige formale Sprache erzeugen:
a) {u ∈ {a, b}
∗| |u| = 4} (a|b)(a|b)(a|b)(a|b)
b) {u ∈ {a, b}
∗| |u| ≤ 4} (ε|a|b)(ε|a|b)(ε|a|b)(ε|a|b) oder (ε | (a|b) | (a|b)(a|b) | (a|b)(a|b)(a|b) | (a|b)(a|b)(a|b)(a|b)) c) {u ∈ {a, b}
∗| |u| ≥ 4}
(a|b)(a|b)(a|b)(a|b)(a|b)
∗d) {u ∈ {a, b}
∗| u enth¨ alt nicht bbbb als Teilwort}
(ε|b|bb|bbb)(a|ab|abb|abbb)
∗oder (a|ba|bba|bbba)
∗(ε|b|bb|bbb)
Aufgabe
Geben Sie regul¨ are Ausdr¨ ucke f¨ ur jede der folgenden formalen Sprachen an, die genau die jeweilige formale Sprache erzeugen:
a) {u ∈ {a, b}
∗| |u| = 4} (a|b)(a|b)(a|b)(a|b)
b) {u ∈ {a, b}
∗| |u| ≤ 4} (ε|a|b)(ε|a|b)(ε|a|b)(ε|a|b) oder (ε | (a|b) | (a|b)(a|b) | (a|b)(a|b)(a|b) | (a|b)(a|b)(a|b)(a|b)) c) {u ∈ {a, b}
∗| |u| ≥ 4} (a|b)(a|b)(a|b)(a|b)(a|b)
∗d) {u ∈ {a, b}
∗| u enth¨ alt nicht bbbb als Teilwort}
(ε|b|bb|bbb)(a|ab|abb|abbb)
∗oder (a|ba|bba|bbba)
∗(ε|b|bb|bbb)
Aufgabe
Geben Sie regul¨ are Ausdr¨ ucke f¨ ur jede der folgenden formalen Sprachen an, die genau die jeweilige formale Sprache erzeugen:
a) {u ∈ {a, b}
∗| |u| = 4} (a|b)(a|b)(a|b)(a|b)
b) {u ∈ {a, b}
∗| |u| ≤ 4} (ε|a|b)(ε|a|b)(ε|a|b)(ε|a|b) oder (ε | (a|b) | (a|b)(a|b) | (a|b)(a|b)(a|b) | (a|b)(a|b)(a|b)(a|b)) c) {u ∈ {a, b}
∗| |u| ≥ 4} (a|b)(a|b)(a|b)(a|b)(a|b)
∗d) {u ∈ {a, b}
∗| u enth¨ alt nicht bbbb als Teilwort}
(ε|b|bb|bbb)(a|ab|abb|abbb)
∗oder (a|ba|bba|bbba)
∗(ε|b|bb|bbb)
Daten
Geben Sie einen regul¨ aren Ausdruck an, der die Sprache aller g¨ ultigen Daten im Format TT-MM-JJJJ erzeugt, außer den 29.
Februar f¨ ur Schaltjahre.
( (((0(1|...|9)) | 1(0|...|9) | 2(0|...|8))(0(1|...|9))|1(0|1|2))
|29(01|03|04|05|06|07|08|09|10|11|12)
|30(01|03|04|05|06|07|08|09|10|11|12)
|31(01|03|05|07|08|10|12) )
(0|...|9)(0|...|9)(0|...|9)(0|...|9)
Daten
Geben Sie einen regul¨ aren Ausdruck an, der die Sprache aller g¨ ultigen Daten im Format TT-MM-JJJJ erzeugt, außer den 29.
Februar f¨ ur Schaltjahre.
( (((0(1|...|9)) | 1(0|...|9) | 2(0|...|8))(0(1|...|9))|1(0|1|2))
|29(01|03|04|05|06|07|08|09|10|11|12)
|30(01|03|04|05|06|07|08|09|10|11|12)
|31(01|03|05|07|08|10|12) )
(0|...|9)(0|...|9)(0|...|9)(0|...|9)
Aufgabe: Regul¨ arer Ausdruck → Endlicher Automat
Konstruieren Sie mit dem Verfahren aus der Vorlesung einen NFA mit ε- ¨ Uberg¨ angen und eindeutigen Start- und Endzust¨ anden, der als Sprache genau die durch den regul¨ aren Ausdruck
ba(b|c)
∗erzeugte Sprache akzeptiert.
b a
b
c ε
ε
ε ε
ε ε ε
ε
ε
Aufgabe: Regul¨ arer Ausdruck → Endlicher Automat
Konstruieren Sie mit dem Verfahren aus der Vorlesung einen NFA mit ε- ¨ Uberg¨ angen und eindeutigen Start- und Endzust¨ anden, der als Sprache genau die durch den regul¨ aren Ausdruck
ba(b|c)
∗erzeugte Sprache akzeptiert.
b a
b
c ε
ε
ε ε
ε ε ε
ε
ε
DFA → regul¨ arer Ausdruck
Wesentliche Ideen: Seien {z
1, . . . , z
n} die Zust¨ ande des DFA, konstruiere regul¨ are Ausdr¨ ucke α
ki,j:
α
ki,jrepr¨ asentiert alle Worte, mit denen man im DFA von z
izu z
jkommt, ohne als Zwischenzustand ein z
rzu besuchen, mit r > k.
α
0i,iist (ε|a
1| . . . |a
m) f¨ ur alle a
x∈ Σ mit δ(z
i, a
x) = z
iα
0i,jist entweder (a
1| . . . |a
m) f¨ ur alle a
x∈ Σ mit δ(z
i, a
x) = z
joder
∅ (falls es kein solches a
xgibt)
α
k+1i,j= α
ki,j| α
ki,k+1(α
kk+1,k+1)
∗α
k+1,jkSei z
1der Startzustand und z
l, z
l+1, . . . , z
qdie Endzust¨ ande. Dann
ist α
n1,l| . . . |α
n1,qder zum DFA passende regul¨ are Ausdruck.
Beispiel
z1 z5
z3
z2
z4
a
a
b b b
a
b a, b
a, b
Durch Hinschauen?
z.B. aa(baa)
∗a
Durch Kleene’s Konstruktion (ange- deutet und mit Hinschauen)
Wir brauchen α
51,2:
α
51,2= α
41,2|α
41,5(α
45,5)
∗α
45,2= ∅|α
41,5(α
45,5)
∗α
45,2= α
41,5(α
45,5)
∗α
45,2= a(ε|aba)
∗aa
= a(aba)
∗aa (Vereinfachung) α
41,2= ∅ (durch Hinschauen, jeder Weg
von z
1zu z
2muss z
5benutzen) α
41,5= a (durch Hinschauen, Schleife
l¨ auft ¨ uber z
5: geht nicht) α
45,5= ε|aba (weitere Schleifen laufen
durch z
5: geht nicht) α
45,2= aa (durch Hinschauen, Schleife
l¨ auft ¨ uber z
5: geht nicht)
Beispiel
z1 z5
z3
z2
z4
a
a
b b b
a
b a, b
a, b
Durch Hinschauen?
z.B. aa(baa)
∗a
Durch Kleene’s Konstruktion (ange- deutet und mit Hinschauen)
Wir brauchen α
51,2:
α
51,2= α
41,2|α
41,5(α
45,5)
∗α
45,2= ∅|α
41,5(α
45,5)
∗α
45,2= α
41,5(α
45,5)
∗α
45,2= a(ε|aba)
∗aa
= a(aba)
∗aa (Vereinfachung) α
41,2= ∅ (durch Hinschauen, jeder Weg
von z
1zu z
2muss z
5benutzen) α
41,5= a (durch Hinschauen, Schleife
l¨ auft ¨ uber z
5: geht nicht) α
45,5= ε|aba (weitere Schleifen laufen
durch z
5: geht nicht) α
45,2= aa (durch Hinschauen, Schleife
l¨ auft ¨ uber z
5: geht nicht)
Beispiel
z1 z5
z3
z2
z4
a
a
b b b
a
b a, b
a, b
Durch Hinschauen?
z.B. aa(baa)
∗a
Durch Kleene’s Konstruktion (ange- deutet und mit Hinschauen)
Wir brauchen α
51,2:
α
51,2= α
41,2|α
41,5(α
45,5)
∗α
45,2= ∅|α
41,5(α
45,5)
∗α
45,2= α
41,5(α
45,5)
∗α
45,2= a(ε|aba)
∗aa
= a(aba)
∗aa (Vereinfachung) α
41,2= ∅ (durch Hinschauen, jeder Weg
von z
1zu z
2muss z
5benutzen) α
41,5= a (durch Hinschauen, Schleife
l¨ auft ¨ uber z
5: geht nicht) α
45,5= ε|aba (weitere Schleifen laufen
durch z
5: geht nicht) α
45,2= aa (durch Hinschauen, Schleife
l¨ auft ¨ uber z
5: geht nicht)
Beispiel
z1 z5
z3
z2
z4
a
a
b b b
a
b a, b
a, b
Durch Hinschauen?
z.B. aa(baa)
∗a
Durch Kleene’s Konstruktion (ange- deutet und mit Hinschauen)
Wir brauchen α
51,2:
α
51,2= α
41,2|α
41,5(α
45,5)
∗α
45,2= ∅|α
41,5(α
45,5)
∗α
45,2= α
41,5(α
45,5)
∗α
45,2= a(ε|aba)
∗aa
= a(aba)
∗aa (Vereinfachung) α
41,2= ∅ (durch Hinschauen, jeder Weg
von z
1zu z
2muss z
5benutzen) α
41,5= a (durch Hinschauen, Schleife
l¨ auft ¨ uber z
5: geht nicht) α
45,5= ε|aba (weitere Schleifen laufen
durch z
5: geht nicht)
α
4= aa (durch Hinschauen, Schleife
Anwendung des Pumping-Lemmas
Pumping-Lemma:
Sprache regul¨ ar = ⇒ Sprache erf¨ ullt die Pumping-Eigenschaft Zeige, dass eine Sprache nicht regul¨ ar ist, durch Kontraposition:
Sprache erf¨ ullt nicht die Pumping-Eigenschaft
= ⇒ Sprache ist nicht regul¨ ar
Erf¨ ullt / erf¨ ullt nicht die Pumping-Eigenschaft
Formale Sprache L erf¨ ullt die Pumping-Eigenschaft Es gibt eine Zahl n ∈ N
>0, sodass jedes Wort z ∈ L, welches Mindestl¨ ange n hat (d.h. |z| ≥ n), als z = uvw geschrieben werden kann, so dass gilt:
|uv| ≤ n
|v| ≥ 1
f¨ ur alle i ≥ 0: uv
iw ∈ L.
Formale Sprache L erf¨ ullt nicht die Pumping-Eigenschaft:
F¨ ur jede Zahl n ∈ N
>0gibt es ein Wort z ∈ L mit |z| ≥ n, sodass f¨ ur jede Zerlegung z = uvw mit
|uv| ≤ n und
|v| ≥ 1
Anwendung des Pumping-Lemmas
Pumping-Lemma:
Sprache regul¨ ar = ⇒ Sprache erf¨ ullt die Pumping-Eigenschaft Zeige, dass eine Sprache nicht regul¨ ar ist, durch Kontraposition:
Sprache erf¨ ullt nicht die Pumping-Eigenschaft
= ⇒ Sprache ist nicht regul¨ ar Formale Sprache L erf¨ ullt nicht die Pumping-Eigenschaft:
F¨ ur jede Zahl n ∈ N
>0gibt es ein Wort z ∈ L mit |z| ≥ n, sodass f¨ ur jede Zerlegung z = uvw mit
|uv| ≤ n und
|v| ≥ 1
ein i ≥ 0 existiert mit uv
iw 6∈ L.
Beispiel
Aufgabe
Zeigen Sie: L = {a
jb
j| j ∈ N } ist nicht regul¨ ar.
Beweisschritte:
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“)
2
W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus)
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“)
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L (wir suchen aus)
Beispiel
Aufgabe
Zeigen Sie: L = {a
jb
j| j ∈ N } ist nicht regul¨ ar.
Falsche Beweisversuche: Versuch 1
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“) Sei n = 100 vom Gegner gew¨ ahlt
2
W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus)
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“)
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L (wir suchen aus)
Beispiel
Aufgabe
Zeigen Sie: L = {a
jb
j| j ∈ N } ist nicht regul¨ ar.
Falsche Beweisversuche: Versuch 1
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“) Sei n = 100 vom Gegner gew¨ ahlt
NEIN: Wir m¨ ussen f¨ ur alle Wahlm¨ oglichkeiten des Gegners argumentieren
2
W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus)
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“)
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L (wir suchen aus)
Beispiel
Aufgabe
Zeigen Sie: L = {a
jb
j| j ∈ N } ist nicht regul¨ ar.
Falsche Beweisversuche: Versuch 2
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“) Sei n ∈ N
>0vom Gegner gew¨ ahlt
2
W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus) Wir w¨ ahlen z = a
2b
2∈ L.
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“)
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L (wir suchen aus)
Beispiel
Aufgabe
Zeigen Sie: L = {a
jb
j| j ∈ N } ist nicht regul¨ ar.
Falsche Beweisversuche: Versuch 2
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“) Sei n ∈ N
>0vom Gegner gew¨ ahlt
2
W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus) Wir w¨ ahlen z = a
2b
2∈ L.
NEIN: |z| ≥ n gilt nicht!
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“)
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L (wir suchen aus)
Beispiel
Aufgabe
Zeigen Sie: L = {a
jb
j| j ∈ N } ist nicht regul¨ ar.
Falsche Beweisversuche: Versuch 3
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“) Sei n ∈ N
>0vom Gegner gew¨ ahlt
2
W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus) Wir w¨ ahlen z = a
n.
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“)
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L (wir suchen aus)
Beispiel
Aufgabe
Zeigen Sie: L = {a
jb
j| j ∈ N } ist nicht regul¨ ar.
Falsche Beweisversuche: Versuch 3
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“) Sei n ∈ N
>0vom Gegner gew¨ ahlt
2
W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus) Wir w¨ ahlen z = a
n.
NEIN: z ∈ L gilt nicht!
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“)
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L (wir suchen aus)
Beispiel
Aufgabe
Zeigen Sie: L = {a
jb
j| j ∈ N } ist nicht regul¨ ar.
Falsche Beweisversuche: Versuch 4
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“) Sei n ∈ N
>0vom Gegner gew¨ ahlt
2
W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus) Wir w¨ ahlen z = a
nb
n∈ L.
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“) Der Gegner zerlegt z in z = uvw mit u = a
n−1, v = a und w = b
n(damit ist |uv| ≤ n und |v| ≥ 1 erf¨ ullt)
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L (wir suchen aus)
Beispiel
Aufgabe
Zeigen Sie: L = {a
jb
j| j ∈ N } ist nicht regul¨ ar.
Falsche Beweisversuche: Versuch 4
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“) Sei n ∈ N
>0vom Gegner gew¨ ahlt
2
W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus) Wir w¨ ahlen z = a
nb
n∈ L.
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“) Der Gegner zerlegt z in z = uvw mit u = a
n−1, v = a und w = b
n(damit ist |uv| ≤ n und |v| ≥ 1 erf¨ ullt)
NEIN: Wir m¨ ussen f¨ ur alle Wahlm¨ oglichkeiten des Gegners argumentieren
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L (wir suchen aus)
Beispiel
Aufgabe
Zeigen Sie: L = {a
jb
j| j ∈ N } ist nicht regul¨ ar.
Korrekter Beweis:
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“) Sei n ∈ N
>0vom Gegner gew¨ ahlt
2
W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus) Wir w¨ ahlen z = a
nb
n∈ L.
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“) Sei z zerlegt in z = uvw mit |uv| ≤ n und |v| ≥ 1
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L (wir suchen aus)
Dann ist u = a
jv = a
kund w = a
lb
nmit k > 0, j + k + l = n und damit
f¨ ur i = 0: uv
iw = a
n−1b
n6∈ L
Beispiel: Finde den Fehler
Sei L = {a
na
n| n ∈ N }.
Behauptung L ist nicht regul¨ ar.
Beweis mit dem Pumping-Lemma:
Sei n ∈ N
>0beliebig.
Wir w¨ ahlen z = a
na
n∈ L.
Sei z = uvw mit |uv| ≤ n und v ≤ 1 eine Zerlegung von z.
Dann ist u = a
d, v = a
e, und w = a
n+n−d−eund e > 1, d + e ≤ n. Dann ist uv
0w = a
n−ea
n6∈ L.
D.h. das Pumping-Lemma zeigt, dass L nicht regul¨ ar ist.
Beispiel: Finde den Fehler
Sei L = {a
na
n| n ∈ N }.
Behauptung L ist nicht regul¨ ar.
Beweis mit dem Pumping-Lemma:
Sei n ∈ N
>0beliebig.
Wir w¨ ahlen z = a
na
n∈ L.
Sei z = uvw mit |uv| ≤ n und v ≤ 1 eine Zerlegung von z.
Dann ist u = a
d, v = a
e, und w = a
n+n−d−eund e > 1, d + e ≤ n. Dann ist uv
0w = a
n−ea
n6∈ L.
D.h. das Pumping-Lemma zeigt, dass L nicht regul¨ ar ist.
Beispiel: Finde den Fehler
Sei L = {a
na
n| n ∈ N }.
Behauptung L ist nicht regul¨ ar.
Beweis mit dem Pumping-Lemma:
Sei n ∈ N
>0beliebig.
Wir w¨ ahlen z = a
na
n∈ L.
Sei z = uvw mit |uv| ≤ n und v ≤ 1 eine Zerlegung von z.
Dann ist u = a
d, v = a
e, und w = a
n+n−d−eund e > 1, d + e ≤ n. Dann ist uv
0w = a
n−ea
n6∈ L.
D.h. das Pumping-Lemma zeigt, dass L nicht regul¨ ar ist.
Beachte: L ist regul¨ ar, z.B. wird L durch den regul¨ aren Ausdruck
(aa)
∗erzeugt!!!
Beispiel: L erf¨ ullt die Pumping-Eigenschaft
Satz
L = {a
na
n| n ∈ N } erf¨ ullt die Pumping-Eigenschaft Beweis:
Sei n = 2.
Sei z ∈ L mit |z| ≥ n.
Wir zerlegen z = uvw mit u = ε, v = z[1]z[2], w der Suffix von z ohne die ersten beiden Buchstaben.
Da z ∈ L, ist z = a
ja
jund dann gilt: v = aa, w = a
j−1a
j−1.
Daher gilt auch: uv
iw = a
ia
ia
j−1a
j−1= a
i+j−1a
i+j−1∈ L
f¨ ur alle i ∈ N .
Aufgabe
Zeigen Sie mit dem Pumping-Lemma, dass die folgenden Sprachen nicht regul¨ ar sind:
L
1= {w ∈ {a, b}
∗| #
a(w) = #
b(w)}
L
2= {a
nbbc
m| n, m ∈ N , m > n}
L
3= {a
n$a
n| n ∈ N }
L
4= {w ∈ {a, b}
∗| |w| = n
2mit n ∈ N }
Satz
L
1= {w ∈ {a, b}
∗| #
a(w) = #
b(w)} ist nicht regul¨ ar.
Beweis:
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“).
Sei n ∈ N
>0beliebig.
2
W¨ ahle ein Wort z ∈ L
1mit |z| ≥ n (wir suchen aus) Sei z = a
nb
n(dann gilt z ∈ L
1und |z| ≥ n)
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“) Sei z = uvw mit |uv| ≤ n, |v| ≥ 1 eine Zerlegung von z.
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L
1(wir suchen aus) Da |uv| ≤ n und |v| > 0 gilt v = a
kmit k > 0 und daher
uv
0w = a
n−kb
n6∈ L
1(d.h. f¨ ur i = 0 gilt uv
iw 6∈ L
1)
Satz
L
2= {a
nbbc
m| n, m ∈ N , m > n} ist nicht regul¨ ar.
Beweis:
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“).
Sei n ∈ N
>0beliebig.
2
W¨ ahle ein Wort z ∈ L
2mit |z| ≥ n (wir suchen aus) Sei z = a
nbbc
n+1(dann gilt z ∈ L
2und |z| ≥ n)
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“) Sei z = uvw mit |uv| ≤ n, |v| ≥ 1 eine Zerlegung von z.
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L
2(wir suchen aus) Da |uv| ≤ n und |v| > 0 gilt v = a
kmit k > 0 und daher
uv
3w = a
n+2kbbc
n+16∈ L
2(d.h. f¨ ur i = 3 gilt uv
iw 6∈ L
2)
Satz
L
3= {a
n$a
n| n ∈ N } ist nicht regul¨ ar.
Beweis:
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“).
Sei n ∈ N
>0beliebig.
2
W¨ ahle ein Wort z ∈ L
3mit |z| ≥ n (wir suchen aus) Sei z = a
n$a
n(dann gilt z ∈ L
3und |z| ≥ n)
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“) Sei z = uvw mit |uv| ≤ n, |v| ≥ 1 eine Zerlegung von z.
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L
3(wir suchen aus) Da |uv| ≤ n und |v| > 0 gilt v = a
kmit k > 0 und daher
uv
0w = a
n−k$a
n6∈ L
3(d.h. f¨ ur i = 0 gilt uv
iw 6∈ L
3)
Satz
L
4= {w ∈ {a, b}
∗| |w| = n
2mit n ∈ N } ist nicht regul¨ ar.
Beweis:
1
Die Zahl n ∈ N
>0sei beliebig gew¨ ahlt (
” vom Gegner“).
Sei n ∈ N
>0beliebig.
2
W¨ ahle ein Wort z ∈ L
4mit |z| ≥ n (wir suchen aus) Sei z = a
n2(dann gilt z ∈ L
4und |z| ≥ n)
3
Sei z = uvw beliebige Zerlegung mit |uv| ≤ n, |v| ≥ 1 (
” vom Gegner“) Sei z = uvw mit |uv| ≤ n, |v| ≥ 1 eine Zerlegung von z.
4
F¨ ur jede solche Zerlegung gebe ein i ∈ N an mit uv
iw 6∈ L
4(wir suchen aus) Dann ist u = a
l, v = a
kund w = a
n2−k−l, wobei k + l ≤ n und k > 0.
Daher ist uv
0w = a
l+n2−k−l= a
n2−k, wobei |a
n2−k| = n
2− k. a
n2−k6∈ L
4, da n
2− k keine Quadratzahl sein kann:
n2−k < n2 (dak >0)
n2−k≥n2−n(dak+l≤n) undn2−n=n(n−1)>(n−1)2 dahern2−k >(n−1)2