© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin...

14
1 © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) Reguläre Sprachen Karin Haenelt

Transcript of © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin...

Page 1: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

1© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

Reguläre Sprachen

Karin Haenelt

Page 2: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

2© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

Themen

• Was sind reguläre Sprachen?• Eigenschaften regulärer Sprachen

– Technik zum Nachweis, dass eine Sprache keine reguläre Sprache ist: das Pumping-Lemma

– Eigenschaften der Abgeschlossenheit– Eigenschaften der Entscheidbarkeit

Page 3: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

3© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

Sprache● Symbol unzerlegbares Grundzeichen

● unzerlegbar bezüglich der Art der Betrachtung, um die es gerade geht

● Alphabet endliche Menge von Symbolen

● Zeichenreihe endliche Folge von Symbolen eines bestimmten Alphabets

Sprache eine Menge von Zeichenreihen über einem Alphabet

interessante Mengen

● Menge der von einem Automaten akzeptierten Zeichenreihen

● Menge der von einem Automaten nicht akzeptierten Zeichenreihen

● Menge der Zeichenreihen einer Menschensprache

Grundlagen: Sprache

Page 4: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

4© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

● Sprache Jede beliebige Menge von Zeichenreihen aus *

● es gilt

- , die leere Sprache ist eine Sprache

- }{ , die Menge, die nur die leere Zeichenreihe enthält, ist eine Sprache

- * , die Universalsprache, die aus der Menge aller Zeichenreihen über einem Alphabet besteht, ist eine Sprache

Sprache

Grundlagen: Sprache

Page 5: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

5© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

Reguläre Sprache

• Definition: Reguläre SpracheEine Sprache, d.h. eine Menge von Zeichenreihen, ist regulär, wenn sie die leere Menge, das leere Zeichen, ein Elementarzeichen, oder aus diesen Elementen durch Vereinigung, Verkettung oder der Hüllenbildung gebildete Mengen enthält. ■

• vgl. Kleene, 1956: 35:

Grundlagen: Reguläre Sprache

Page 6: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

6© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

Themen

• Was sind reguläre Sprachen?• Eigenschaften regulärer Sprachen

– Technik zum Nachweis, dass eine Sprache keine reguläre Sprache ist: das Pumping-Lemma

– Eigenschaften der Abgeschlossenheit– Eigenschaften der Entscheidbarkeit

Page 7: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

7© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

Das Pumping-Lemma

• Technik zum Nachweis,dass bestimmte Sprachen nicht regulär sind

• Grundidee:– Pumping-Lemma:

• Sei L eine reguläre Sprache und w eine Zeichenreihe aus L• Sei w = xyz eine Zerlegung von w• wenn w eine reguläre Zeichenreihe ist, dann kann die Teilreihe

y beliebig oft wiederholt oder gelöscht werden, wobei die resultierende Zeichenreihe nach wie vor eine reguläre Zeichenreihe ist

– Ein endlicher Automat zählt nicht mit, wie oft er einen bestimmten Zustand durchläuft

– Eine Sprache für deren Charakteristik das Mitzählen erforderlich ist, ist nicht regulär

Hopcroft/Ullmann 1988:57ffHopcroft/Motwani/Ullman, 2002: 135ff

Page 8: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

8© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

Das Pumping-Lemma• Prinzip:

– falls ein EA eine genügend lange Zeichenkette akzeptiert,existiert ziemlich am Anfang der Zeichenkette eine Teil-Zeichenkette, die „gepumpt“ werden kann, d.h. beliebig oft wiederholt werden kann.

– Die resultierende Zeichenkette wird ebenfalls durch den EA akzeptiert

• Satz (Pumping-Lemma für reguläre Sprachen)– Sei L Σ* eine reguläre Sprache.– Dann gibt es eine Konstante n, so dass

sich ein Wort w L mit |w| ≥ n schreiben lässt als w = xyz, wobei gilt:• y ≠ ε• |xy| n k 0: xykz L

• Beweis s. Hopcroft/Motwani/Ullman, 2000: 136f

Hopcroft/Ullmann 1988:58Hopcroft/Motwani/Ullman, 2002: 136

Page 9: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

9© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

Das Pumping-Lemma: ein Anwendunsgbeispiel

• Beispiel: die Sprache L={aibi | i und i ≥ 1} ist nicht durch endliche Automaten beschreibbar

• Überlegung:– ein Automat, der aibi akzeptiert,

akzeptiert auch Zeichenreihen, die er nicht akzeptieren sollte, da sie nicht zu L gehören: Beispiel: ai+xbi (mit x und x ≥ 1)

– ein endlicher Automat hat endlich viele Zustände– sei k die Anzahl der Zustände– wenn i > k, muss mindestens ein Zustand mehrfach durchlaufen

sein– der Automat hat kein Gedächtnis, in dem er zählt, wie viele a er

gesehen hat– er befindet sich in dem Zustand „hat ein oder mehrere a gesehen“– daher akzeptiert er auch ai+xbi, wenn er aibi akzeptiert

Hopcroft/Ullmann 1988:57ffHopcroft/Motwani/Ullman, 2002: 135ff

Page 10: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

10© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

Definition von Operationen auf regulären Sprachen

Vereinigung (Summe) }|{ 2121 LpLppLL

Konkatenation (Produkt, Verkettung) }|{ 2121 LqLppqLL

Beispiel X = {ein, zwei}, Y = {mal, fach} , XY = {einmal, einfach, zweimal, zweifach}

Potenz 0 },{ 10 nfürLLLL nn

Hülle (Iteration, Stern) }{ , , *

10

*

LLLLLLn

n

n

n

Page 11: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

11© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

Abgeschlossenheits-Eigenschaften

• Die wichtigsten Angeschlossenheitseigenschaften regulärer Sprachen:– Die Vereinigung zweier regulärer Sprachen ist regulär– Der Durchschnitt zweier regulärer Sprachen ist regulär– Das Komplement zweier regulärer Sprachen ist regulär– Die Differenz zweier regulärer Sprachen ist regulär– Die Spiegelung einer regulären Sprache ist regulär– Die Hülle (Sternoperator) einer regulären Sprache ist regulär– Die Verkettung von regulären Sprachen ist regulär– Ein Homomorphismus (Ersetzung von Symbolen durch

Zeichenreihen) einer regulären Sprache ist regulär– Der inverse Homomorphismus einer regulären Sprache ist

regulär

Hopcroft/Motwani/Ullman, 2002: 141

Page 12: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

12© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

Entscheidbarkeit

• Es gibt algorithmische Verfahren,bei deren Anwendungauf ein beliebiges Element x undfür beliebige reguläre Sprachen L1 und L2 sich nach endlich vielen Schritten ergibt– L1 = Leerheit– x L1 Zugehörigkeit– L1 = L2 Äquivalenz– L1 ist endlich Endlichkeit– L1 L2 = Schnitt

Page 13: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

13© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

Literatur

• Hopcroft, John E. und Jeffrey D. Ullman (1988). Einführung in die Automatentheorie, formale Sprachen und Komplexitätstheorie. Bonn u. a.: Addison-Wesley, 1988 (engl. Original Introduction to automata theory, languages and computation).

• Hopcroft, John E., Rajeev Motwani und Jeffrey D. Ullman (2002). Einführung in die Automatentheorie, Formale Sprachen und Komplexität. Pearson Studium engl. Original: Introduction to Automata Theory, Languages and Computation. Addison-Wesley. www-db.stanford.edu/~ullman/ialc.html

• Kleene, Stephen Cole (1956). Representations of Events in Nerve Sets and Finite Automata, In: C. E. Shannon and J. McCarthy, Hgg., Automata Studies, S. 3-42, Princeton, NJ, 1956. Princeton University Press.

Page 14: © Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 ( 1 15.01.2003) 1 Reguläre Sprachen Karin Haenelt.

14© Karin Haenelt 2006, Reguläre Sprachen 20.04.2008 (115.01.2003)

Versionen• 2.1: 20.04.2008• 2.0: 19.05.2006• 17.04., 23.03.2005• 05.05., 14.04., 06.04.2004,• 21.05., 15.01.2003 (Reg. Mengen, Ausdrücke, Sprachen, EA