• Keine Ergebnisse gefunden

Automatentheorie und formale Sprachen Pumping-Lemma für reguläre Sprachen

N/A
N/A
Protected

Academic year: 2022

Aktie "Automatentheorie und formale Sprachen Pumping-Lemma für reguläre Sprachen"

Copied!
30
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Automatentheorie und formale Sprachen Pumping-Lemma für reguläre Sprachen

Dozentin: Wiebke Petersen 10.6.2009

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 1

(2)

Finite-state automatons accept regular languages

Theorem (Kleene)

Every language accepted by a DFSA is regular and every regular language is accepted by some DFSA.

proof idea (one direction): Each regular language is accepted by a NDFSA (and therefore by a DFSA):

L

(∅)

L

()

L

(

a

i)

(3)

Finite-state automatons accept regular languages

Theorem (Kleene)

Every language accepted by a DFSA is regular and every regular language is accepted by some DFSA.

proof idea (one direction): Each regular language is accepted by a NDFSA (and therefore by a DFSA):

L

(∅)

L

()

L

(

a

i)

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 2

(4)

Proof of Kleene's theorem (cont.)

If R

1

and R

2

are two regular expressions such that the languages L

(

R

1)

and L

(

R

2)

are accepted by the automatons

A1

and

A2

respectively,

then L(R

1+

R

2)

is accepted by:

(5)

Proof of Kleene's theorem (cont.)

If R

1

and R

2

are two regular expressions such that the languages L

(

R

1)

and L

(

R

2)

are accepted by the automatons

A1

and

A2

respectively, then L(R

1+

R

2)

is accepted by:

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 3

(6)

Proof of Kleene's theorem (cont.)

L

(

R

1

R

2)

is accepted by:

(7)

Proof of Kleene's theorem (cont.)

L

(

R

1

R

2)

is accepted by:

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 4

(8)

Proof of Kleene's theorem (cont.)

L

(

R

1)

is accepted by:

(9)

Proof of Kleene's theorem (cont.)

L

(

R

1)

is accepted by:

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 5

(10)

Closure properties of regular languages

Theorem

1 If L1 and L2are two regular languages, then

the union of L1 and L2(L1∪L2) is a regular language too.

the intersection of L1and L2(L1∩L2) is a regular language too.

the concatenation of L1and L2(L1◦L2) is a regular language too.

2 The complement of every regular language is a regular language too.

3 If L is a regular language, then L is a regular language too.

(11)

Pumping lemma for regular languages

Lemma (Pumping-Lemma)

If L is an innite regular language over

Σ

, then there exists a number n

∈N

such that each word z

L with

|

z

| ≥

n can be decomposed into z

=

uvw with u

,

v

,

w

∈Σ

and v

6=

such that uv

i

w

L for any i

0.

proof sketch:

Any regular language is accepted by a DFSA with a nite number n of states.

Any innite language contains a word z which has at least length n (

|

z

| ≥

n).

While reading z, the DFSA passes at least one state q

j

twice.

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 7

(12)

Pumping lemma for regular languages

Lemma (Pumping-Lemma)

If L is an innite regular language over

Σ

, then there exists a number n

∈N

such that each word z

L with

|

z

| ≥

n can be decomposed into z

=

uvw with u

,

v

,

w

∈Σ

and v

6=

such that uv

i

w

L for any i

0.

proof sketch:

Any regular language is accepted by a DFSA with a nite number n of states.

Any innite language contains a word z which has at least length n (

|

z

| ≥

n).

While reading z, the DFSA passes at least one state q

j

twice.

(13)

Pumping lemma for regular languages

Lemma (Pumping-Lemma)

If L is an innite regular language over

Σ

, then there exists a number n

∈N

such that each word z

L with

|

z

| ≥

n can be decomposed into z

=

uvw with u

,

v

,

w

∈Σ

and v

6=

such that uv

i

w

L for any i

0.

proof sketch:

Any regular language is accepted by a DFSA with a nite number n of states.

Any innite language contains a word z which has at least length n (

|

z

| ≥

n).

While reading z, the DFSA passes at least one state q

j

twice.

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 7

(14)

Pumping lemma for regular languages

Lemma (Pumping-Lemma)

If L is an innite regular language over

Σ

, then there exists a number n

∈N

such that each word z

L with

|

z

| ≥

n can be decomposed into z

=

uvw with u

,

v

,

w

∈Σ

and v

6=

such that uv

i

w

L for any i

0.

proof sketch:

Any regular language is accepted by a DFSA with a nite number n of states.

Any innite language contains a word z which has at least length

(15)

Pumping lemma for regular languages (cont.)

Lemma (Pumping-Lemma)

If L is an innite regular language over

Σ

, then there exists a number n

∈N

such that each word z

L with

|

z

| ≥

n can be decomposed into z

=

uvw with u

,

v

,

w

∈Σ

and v

6=

such that uv

i

w

L for any i

0.

proof sketch:

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 8

(16)

L = { a

n

b

n

: n ≥ 0 } ist nicht regulär

L

={

a

n

b

n :

n

0

}

:

L ist unendlich. Wäre L regulär, dann gäbe es u

,

v

,

w

∈ {

a

,

b

}

, v

6=

mit uv

n

w

L für alle n

0. Für v ergeben sich folgende Fälle:

1 angenommen v besteht aus a's und b's, dann gibt es in vn (n≥2) b's, die vor a's stehen (Widerspruch),

2 angenommen v besteht nur aus a's, dann sind alle b's in dem w-Teil; wenn man v aufpumpt, steigt die Zahl der a's ohne daÿ die der b's steigen würde (Widerspruch).

3 angenommen v besteht nur aus b's, dann analog zu v besteht nur aus a's,

(17)

L = { a

n

b

n

: n ≥ 0 } ist nicht regulär

L

={

a

n

b

n :

n

0

}

:

L ist unendlich. Wäre L regulär, dann gäbe es u

,

v

,

w

∈ {

a

,

b

}

, v

6=

mit uv

n

w

L für alle n

0. Für v ergeben sich folgende Fälle:

1 angenommen v besteht aus a's und b's, dann gibt es in vn (n≥2) b's, die vor a's stehen (Widerspruch),

2 angenommen v besteht nur aus a's, dann sind alle b's in dem w-Teil; wenn man v aufpumpt, steigt die Zahl der a's ohne daÿ die der b's steigen würde (Widerspruch).

3 angenommen v besteht nur aus b's, dann analog zu v besteht nur aus a's,

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 9

(18)

L = { a

n

b

n

: n ≥ 0 } ist nicht regulär

L

={

a

n

b

n :

n

0

}

:

L ist unendlich. Wäre L regulär, dann gäbe es u

,

v

,

w

∈ {

a

,

b

}

, v

6=

mit uv

n

w

L für alle n

0. Für v ergeben sich folgende Fälle:

1 angenommen v besteht aus a's und b's, dann gibt es in vn (n≥2) b's, die vor a's stehen (Widerspruch),

2 angenommen v besteht nur aus a's, dann sind alle b's in dem w-Teil; wenn man v aufpumpt, steigt die Zahl der a's ohne daÿ die der b's steigen würde (Widerspruch).

3 angenommen v besteht nur aus b's, dann analog zu v besteht nur aus a's,

(19)

L = { a

n

b

n

: n ≥ 0 } ist nicht regulär

L

={

a

n

b

n :

n

0

}

:

L ist unendlich. Wäre L regulär, dann gäbe es u

,

v

,

w

∈ {

a

,

b

}

, v

6=

mit uv

n

w

L für alle n

0. Für v ergeben sich folgende Fälle:

1 angenommen v besteht aus a's und b's, dann gibt es in vn (n≥2) b's, die vor a's stehen (Widerspruch),

2 angenommen v besteht nur aus a's, dann sind alle b's in dem w-Teil; wenn man v aufpumpt, steigt die Zahl der a's ohne daÿ die der b's steigen würde (Widerspruch).

3 angenommen v besteht nur aus b's, dann analog zu v besteht nur aus a's,

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 9

(20)

Hausaufgaben

Welche Aussagen kann man mit Hilfe der Abschluÿeigenschaften der regulären Sprachen und dem Pumping-Lemma über die Komplexität folgender formaler Sprachen machen:

1 L1={w ∈ {a,b}|w enthält eine ungerade Anzahl von b0s}.

2 L2={w ∈ {a,b}|w enthält die gleiche Anzahl von b0s und a0s}.

3 wR ist das Wort w in umgekehrter Reihenfolge (wwR ist ein Palindrom).

L3={wwR|w ∈ {a,b}}.

(21)

Natürliche Sprachen sind nicht regulär (1)

1 Der Hund starb.

2 Der Hund, der den Vogel jagte, starb.

3 Der Hund, der den Vogel, der den Wurm fraÿ, jagte, starb.

4 Der Hund, der den Vogel, der den Wurm, der den Rasen durchquerte, fraÿ, jagte, starb.

5 Der Hund, der den Vogel, der den Wurm, der den Rasen, der den Garten bedeckte, durchquerte, fraÿ, jagte, starb.

. . .

Allgemeine Form: der Hund (der den maskulines Nomen)

n

(transitives Verb

)n

starb.

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 11

(22)

Natürliche Sprachen sind nicht regulär (1)

1 Der Hund starb.

2 Der Hund, der den Vogel jagte, starb.

3 Der Hund, der den Vogel, der den Wurm fraÿ, jagte, starb.

4 Der Hund, der den Vogel, der den Wurm, der den Rasen durchquerte, fraÿ, jagte, starb.

5 Der Hund, der den Vogel, der den Wurm, der den Rasen, der den Garten bedeckte, durchquerte, fraÿ, jagte, starb.

. . .

Allgemeine Form: der Hund (der den maskulines Nomen

)n

n

(23)

Natürliche Sprachen sind nicht regulär (2)

Sei A=

(der den Hund, der den Vogel, der den Kühlschrank, der den Wurm, der den Rasen, der den Garten )

und B={fraÿ,beschenkte,durchquerte, jagte, liebte, sah,trank} und w =der Hund und v =starb.

L(wxyv)mit x∈A und y ∈B ist eine reguläre Sprache. Deutsch∩L(wxyv) =L(wxnynv).

Wäre Deutsch regulär, dann müÿte auch L(wxnynv)regulär sein, da die Schnittmenge zweier regulärer Sprachen regulär ist (Widerspruch).

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 12

(24)

Natürliche Sprachen sind nicht regulär (2)

Sei A=

(der den Hund, der den Vogel, der den Kühlschrank, der den Wurm, der den Rasen, der den Garten )

und B={fraÿ,beschenkte,durchquerte, jagte, liebte, sah,trank} und w =der Hund und v =starb.

L(wxyv)mit x∈A und y ∈B ist eine reguläre Sprache.

Deutsch∩L(wxyv) =L(wxnynv).

Wäre Deutsch regulär, dann müÿte auch L(wxnynv)regulär sein, da die Schnittmenge zweier regulärer Sprachen regulär ist (Widerspruch).

(25)

Natürliche Sprachen sind nicht regulär (2)

Sei A=

(der den Hund, der den Vogel, der den Kühlschrank, der den Wurm, der den Rasen, der den Garten )

und B={fraÿ,beschenkte,durchquerte, jagte, liebte, sah,trank} und w =der Hund und v =starb.

L(wxyv)mit x∈A und y ∈B ist eine reguläre Sprache.

Deutsch∩L(wxyv) =L(wxnynv).

Wäre Deutsch regulär, dann müÿte auch L(wxnynv)regulär sein, da die Schnittmenge zweier regulärer Sprachen regulär ist (Widerspruch).

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 12

(26)

Natürliche Sprachen sind nicht regulär (2)

Sei A=

(der den Hund, der den Vogel, der den Kühlschrank, der den Wurm, der den Rasen, der den Garten )

und B={fraÿ,beschenkte,durchquerte, jagte, liebte, sah,trank} und w =der Hund und v =starb.

L(wxyv)mit x∈A und y ∈B ist eine reguläre Sprache.

Deutsch∩L(wxyv) =L(wxnynv).

Wäre Deutsch regulär, dann müÿte auch L(wxnynv)regulär sein, da die Schnittmenge zweier regulärer Sprachen regulär ist (Widerspruch).

(27)

Intuitive rules for regular languages

L is regular if it is possible to check the membership of a word simply by reading it symbol for symbol while using only a nite stack.

Finite-state automatons are too weak for:

counting inN(same number as);

recognizing a pattern of arbitrary length (palindrome); expressions with brackets of arbitrary depth.

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 13

(28)

Intuitive rules for regular languages

L is regular if it is possible to check the membership of a word simply by reading it symbol for symbol while using only a nite stack.

Finite-state automatons are too weak for:

counting inN(same number as);

recognizing a pattern of arbitrary length (palindrome);

expressions with brackets of arbitrary depth.

(29)

Summary: regular languages

Wiebke Petersen Automatentheorie und formale Sprachen - SoSe09 14

(30)

Gruppenarbeit

Gruppe 1: Führen sie das in Klabunde beschriebene Verfahren zur Konstruktion eines deterministischen endlichen Automaten aus einem nichtdeterministischen Automaten an einem kleinen Beispiel im Detail durch.

Gruppe 2: Beschreiben sie an 2-3 Beispielen, wie man ezient einen deterministischen Automaten aus einem nichtdeterministischen konstruiert.

Gruppe 3: Beschreiben sie an 2-3 Beispielen, wie man-Übergänge eliminiert.

Gruppe 4: Beschreiben sie an Beispielen, wie man endliche Automaten zur Konkatenation zweier regulärer Sprachen und zur Vereinigung und zur Schnittmenge zweier Sprachen bildet, und wie man endliche

Referenzen

ÄHNLICHE DOKUMENTE

IBM JOURNAL APRIL 1959 Turing Award winning paper..

❚ Zeichen können "hintereinandergefügt" werden und bilden durch die Reihung Worte. ❚ Der Operator hierzu

"Theoretische Informatik kurzgefaßt" von Uwe Schöning angeleht und wurden aus den Unterlagen zu der Vorlesung "Informatik IV – Theoretische Informatik" an der TU

Es gibt somit eine Schleife, die beliebig oft durchlaufen werden kann; das Wort kann in dem Schleifenbereich aufgepumpt werden.. Wiebke Petersen Einführung

Aufbauend auf den in der „Einführung in die Computerlinguistik“ erworbenen Grundkenntnissen bietet dieses Seminar eine Einführung in die Theorie der Automaten und formalen

head: left hand side of a rule body: right hand side of a rule clause: rule or fact.. predicate: collection of clauses with

Gruppe 4: Beschreiben sie an Beispielen, wie man endliche Automaten zur Konkatenation zweier regulärer Sprachen und zur Vereinigung und zur Schnittmenge zweier Sprachen bildet, und

Gruppe 4: Beschreiben sie an Beispielen, wie man endliche Automaten zur Konkatenation zweier regulärer Sprachen und zur Vereinigung und zur Schnittmenge zweier Sprachen bildet, und