• Keine Ergebnisse gefunden

Zentral¨ubung 16.05.2019: Regul¨are Ausdr¨ucke, Anwenden des Pumping-Lemmas

N/A
N/A
Protected

Academic year: 2021

Aktie "Zentral¨ubung 16.05.2019: Regul¨are Ausdr¨ucke, Anwenden des Pumping-Lemmas"

Copied!
37
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

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

(2)

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)

(3)

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)

(4)

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)

(5)

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)

(6)

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)

(7)

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)

(8)

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)

(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 ε

ε

ε ε

ε ε ε

ε

ε

(10)

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 ε

ε

ε ε

ε ε ε

ε

ε

(11)

DFA → regul¨ arer Ausdruck

Wesentliche Ideen: Seien {z

1

, . . . , z

n

} die Zust¨ ande des DFA, konstruiere regul¨ are Ausdr¨ ucke α

ki,j

:

α

ki,j

repr¨ asentiert alle Worte, mit denen man im DFA von z

i

zu z

j

kommt, ohne als Zwischenzustand ein z

r

zu besuchen, mit r > k.

α

0i,i

ist (ε|a

1

| . . . |a

m

) f¨ ur alle a

x

∈ Σ mit δ(z

i

, a

x

) = z

i

α

0i,j

ist entweder (a

1

| . . . |a

m

) f¨ ur alle a

x

∈ Σ mit δ(z

i

, a

x

) = z

j

oder

∅ (falls es kein solches a

x

gibt)

α

k+1i,j

= α

ki,j

| α

ki,k+1

kk+1,k+1

)

α

k+1,jk

Sei z

1

der Startzustand und z

l

, z

l+1

, . . . , z

q

die Endzust¨ ande. Dann

ist α

n1,l

| . . . |α

n1,q

der zum DFA passende regul¨ are Ausdruck.

(12)

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

1

zu z

2

muss z

5

benutzen) α

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)

(13)

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

1

zu z

2

muss z

5

benutzen) α

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)

(14)

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

1

zu z

2

muss z

5

benutzen) α

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)

(15)

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

1

zu z

2

muss z

5

benutzen) α

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

(16)

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

(17)

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

i

w ∈ L.

Formale Sprache L erf¨ ullt nicht die Pumping-Eigenschaft:

F¨ ur jede Zahl n ∈ N

>0

gibt es ein Wort z ∈ L mit |z| ≥ n, sodass f¨ ur jede Zerlegung z = uvw mit

|uv| ≤ n und

|v| ≥ 1

(18)

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

>0

gibt 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

i

w 6∈ L.

(19)

Beispiel

Aufgabe

Zeigen Sie: L = {a

j

b

j

| j ∈ N } ist nicht regul¨ ar.

Beweisschritte:

1

Die Zahl n ∈ N

>0

sei 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

i

w 6∈ L (wir suchen aus)

(20)

Beispiel

Aufgabe

Zeigen Sie: L = {a

j

b

j

| j ∈ N } ist nicht regul¨ ar.

Falsche Beweisversuche: Versuch 1

1

Die Zahl n ∈ N

>0

sei 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

i

w 6∈ L (wir suchen aus)

(21)

Beispiel

Aufgabe

Zeigen Sie: L = {a

j

b

j

| j ∈ N } ist nicht regul¨ ar.

Falsche Beweisversuche: Versuch 1

1

Die Zahl n ∈ N

>0

sei 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

i

w 6∈ L (wir suchen aus)

(22)

Beispiel

Aufgabe

Zeigen Sie: L = {a

j

b

j

| j ∈ N } ist nicht regul¨ ar.

Falsche Beweisversuche: Versuch 2

1

Die Zahl n ∈ N

>0

sei beliebig gew¨ ahlt (

” vom Gegner“) Sei n ∈ N

>0

vom Gegner gew¨ ahlt

2

W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus) Wir w¨ ahlen z = a

2

b

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

i

w 6∈ L (wir suchen aus)

(23)

Beispiel

Aufgabe

Zeigen Sie: L = {a

j

b

j

| j ∈ N } ist nicht regul¨ ar.

Falsche Beweisversuche: Versuch 2

1

Die Zahl n ∈ N

>0

sei beliebig gew¨ ahlt (

” vom Gegner“) Sei n ∈ N

>0

vom Gegner gew¨ ahlt

2

W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus) Wir w¨ ahlen z = a

2

b

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

i

w 6∈ L (wir suchen aus)

(24)

Beispiel

Aufgabe

Zeigen Sie: L = {a

j

b

j

| j ∈ N } ist nicht regul¨ ar.

Falsche Beweisversuche: Versuch 3

1

Die Zahl n ∈ N

>0

sei beliebig gew¨ ahlt (

” vom Gegner“) Sei n ∈ N

>0

vom 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

i

w 6∈ L (wir suchen aus)

(25)

Beispiel

Aufgabe

Zeigen Sie: L = {a

j

b

j

| j ∈ N } ist nicht regul¨ ar.

Falsche Beweisversuche: Versuch 3

1

Die Zahl n ∈ N

>0

sei beliebig gew¨ ahlt (

” vom Gegner“) Sei n ∈ N

>0

vom 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

i

w 6∈ L (wir suchen aus)

(26)

Beispiel

Aufgabe

Zeigen Sie: L = {a

j

b

j

| j ∈ N } ist nicht regul¨ ar.

Falsche Beweisversuche: Versuch 4

1

Die Zahl n ∈ N

>0

sei beliebig gew¨ ahlt (

” vom Gegner“) Sei n ∈ N

>0

vom Gegner gew¨ ahlt

2

W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus) Wir w¨ ahlen z = a

n

b

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

i

w 6∈ L (wir suchen aus)

(27)

Beispiel

Aufgabe

Zeigen Sie: L = {a

j

b

j

| j ∈ N } ist nicht regul¨ ar.

Falsche Beweisversuche: Versuch 4

1

Die Zahl n ∈ N

>0

sei beliebig gew¨ ahlt (

” vom Gegner“) Sei n ∈ N

>0

vom Gegner gew¨ ahlt

2

W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus) Wir w¨ ahlen z = a

n

b

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

i

w 6∈ L (wir suchen aus)

(28)

Beispiel

Aufgabe

Zeigen Sie: L = {a

j

b

j

| j ∈ N } ist nicht regul¨ ar.

Korrekter Beweis:

1

Die Zahl n ∈ N

>0

sei beliebig gew¨ ahlt (

” vom Gegner“) Sei n ∈ N

>0

vom Gegner gew¨ ahlt

2

W¨ ahle ein Wort z ∈ L mit |z| ≥ n (wir suchen aus) Wir w¨ ahlen z = a

n

b

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

i

w 6∈ L (wir suchen aus)

Dann ist u = a

j

v = a

k

und w = a

l

b

n

mit k > 0, j + k + l = n und damit

f¨ ur i = 0: uv

i

w = a

n−1

b

n

6∈ L

(29)

Beispiel: Finde den Fehler

Sei L = {a

n

a

n

| n ∈ N }.

Behauptung L ist nicht regul¨ ar.

Beweis mit dem Pumping-Lemma:

Sei n ∈ N

>0

beliebig.

Wir w¨ ahlen z = a

n

a

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−e

und e > 1, d + e ≤ n. Dann ist uv

0

w = a

n−e

a

n

6∈ L.

D.h. das Pumping-Lemma zeigt, dass L nicht regul¨ ar ist.

(30)

Beispiel: Finde den Fehler

Sei L = {a

n

a

n

| n ∈ N }.

Behauptung L ist nicht regul¨ ar.

Beweis mit dem Pumping-Lemma:

Sei n ∈ N

>0

beliebig.

Wir w¨ ahlen z = a

n

a

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−e

und e > 1, d + e ≤ n. Dann ist uv

0

w = a

n−e

a

n

6∈ L.

D.h. das Pumping-Lemma zeigt, dass L nicht regul¨ ar ist.

(31)

Beispiel: Finde den Fehler

Sei L = {a

n

a

n

| n ∈ N }.

Behauptung L ist nicht regul¨ ar.

Beweis mit dem Pumping-Lemma:

Sei n ∈ N

>0

beliebig.

Wir w¨ ahlen z = a

n

a

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−e

und e > 1, d + e ≤ n. Dann ist uv

0

w = a

n−e

a

n

6∈ 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!!!

(32)

Beispiel: L erf¨ ullt die Pumping-Eigenschaft

Satz

L = {a

n

a

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

j

a

j

und dann gilt: v = aa, w = a

j−1

a

j−1

.

Daher gilt auch: uv

i

w = a

i

a

i

a

j−1

a

j−1

= a

i+j−1

a

i+j−1

∈ L

f¨ ur alle i ∈ N .

(33)

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

n

bbc

m

| n, m ∈ N , m > n}

L

3

= {a

n

$a

n

| n ∈ N }

L

4

= {w ∈ {a, b}

| |w| = n

2

mit n ∈ N }

(34)

Satz

L

1

= {w ∈ {a, b}

| #

a

(w) = #

b

(w)} ist nicht regul¨ ar.

Beweis:

1

Die Zahl n ∈ N

>0

sei beliebig gew¨ ahlt (

” vom Gegner“).

Sei n ∈ N

>0

beliebig.

2

W¨ ahle ein Wort z ∈ L

1

mit |z| ≥ n (wir suchen aus) Sei z = a

n

b

n

(dann gilt z ∈ L

1

und |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

i

w 6∈ L

1

(wir suchen aus) Da |uv| ≤ n und |v| > 0 gilt v = a

k

mit k > 0 und daher

uv

0

w = a

n−k

b

n

6∈ L

1

(d.h. f¨ ur i = 0 gilt uv

i

w 6∈ L

1

)

(35)

Satz

L

2

= {a

n

bbc

m

| n, m ∈ N , m > n} ist nicht regul¨ ar.

Beweis:

1

Die Zahl n ∈ N

>0

sei beliebig gew¨ ahlt (

” vom Gegner“).

Sei n ∈ N

>0

beliebig.

2

W¨ ahle ein Wort z ∈ L

2

mit |z| ≥ n (wir suchen aus) Sei z = a

n

bbc

n+1

(dann gilt z ∈ L

2

und |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

i

w 6∈ L

2

(wir suchen aus) Da |uv| ≤ n und |v| > 0 gilt v = a

k

mit k > 0 und daher

uv

3

w = a

n+2k

bbc

n+1

6∈ L

2

(d.h. f¨ ur i = 3 gilt uv

i

w 6∈ L

2

)

(36)

Satz

L

3

= {a

n

$a

n

| n ∈ N } ist nicht regul¨ ar.

Beweis:

1

Die Zahl n ∈ N

>0

sei beliebig gew¨ ahlt (

” vom Gegner“).

Sei n ∈ N

>0

beliebig.

2

W¨ ahle ein Wort z ∈ L

3

mit |z| ≥ n (wir suchen aus) Sei z = a

n

$a

n

(dann gilt z ∈ L

3

und |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

i

w 6∈ L

3

(wir suchen aus) Da |uv| ≤ n und |v| > 0 gilt v = a

k

mit k > 0 und daher

uv

0

w = a

n−k

$a

n

6∈ L

3

(d.h. f¨ ur i = 0 gilt uv

i

w 6∈ L

3

)

(37)

Satz

L

4

= {w ∈ {a, b}

| |w| = n

2

mit n ∈ N } ist nicht regul¨ ar.

Beweis:

1

Die Zahl n ∈ N

>0

sei beliebig gew¨ ahlt (

” vom Gegner“).

Sei n ∈ N

>0

beliebig.

2

W¨ ahle ein Wort z ∈ L

4

mit |z| ≥ n (wir suchen aus) Sei z = a

n2

(dann gilt z ∈ L

4

und |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

i

w 6∈ L

4

(wir suchen aus) Dann ist u = a

l

, v = a

k

und w = a

n2−k−l

, wobei k + l ≤ n und k > 0.

Daher ist uv

0

w = a

l+n2−k−l

= a

n2−k

, wobei |a

n2−k

| = n

2

− k. a

n2−k

6∈ 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

Referenzen

ÄHNLICHE DOKUMENTE

Somit erf¨ ullt L die Pumping-Eigenschaft nicht und kann daher auch nicht regul¨ ar sein.... Somit erf¨ ullt L die Pumping-Eigenschaft nicht und kann daher auch nicht regul¨

Hinweis: Zur Bestimmung von u k¨ onnen Sie eine beliebige Implementation des Newton Algo- rithmus verwenden.. (c) Implementieren Sie das explizite

* Werden Vektoren unterschiedlicher l¨ ange ¨ ubergeben, so soll eine aussagekr¨ aftige Fehlermeldung die Folge seien.. Hinweis: Die mit * gekennzeichneten Punkte

– Two regular expressions may be concatenated; the resulting regular expression matches any string concatenating two substrings that match the subexpressions. – Two regular

– Auch f¨ur komplexere Strukturen als regul¨are Sprachen – G¨angig f¨ur die Beschreibung von Programmiersprachen.. Beispiel: Auszug der Grammatik

Matthias Makowski, Universit¨ at Konstanz Sommersemester 2013 Martin Franzen. Ubungen zur Vorlesung Elementare Differentialgeometrie ¨

In vielen F¨ allen m¨ ochte man, dass ein regul¨ arer Ausdruck an einer Stelle nicht auf ein besonderes Zeichen sondern auf eine ganze Menge von Zeichen passt.. Dies kann durch

Du kannst nach literalen Zeichenketten suchen und weisst, dass bei regul¨ aren Aus- dr¨ ucke standardm¨ assig Gross- und Kleinschreibung unterschieden werden.. Du kannst regul¨