Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Reguläre Sprachen Karin Haenelt.

Ähnliche Präsentationen


Präsentation zum Thema: "Reguläre Sprachen Karin Haenelt."—  Präsentation transkript:

1 Reguläre Sprachen Karin Haenelt

2 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

3 Grundlagen: Sprache Sprache

4 Grundlagen: Sprache Sprache

5 Grundlagen: Reguläre Sprache
Definition: Reguläre Sprache Eine 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:

6 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

7 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:57ff Hopcroft/Motwani/Ullman, 2002: 135ff

8 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:58 Hopcroft/Motwani/Ullman, 2002: 136

9 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:57ff Hopcroft/Motwani/Ullman, 2002: 135ff

10 Definition von Operationen auf regulären Sprachen

11 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

12 Entscheidbarkeit Es gibt algorithmische Verfahren, bei deren Anwendung auf ein beliebiges Element x und fü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

13 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, Princeton University Press.

14 Versionen 2.1: 2.0: 17.04., 05.05., , , 21.05., (Reg. Mengen, Ausdrücke, Sprachen, EA


Herunterladen ppt "Reguläre Sprachen Karin Haenelt."

Ähnliche Präsentationen


Google-Anzeigen