Automten und Formle Sprchen lis Theoretische Informtik Sommersemester 011 Dr. Snder Bruggink Üungsleitung: Jn Stückrth Snder Bruggink Automten und Formle Sprchen 1
Reguläre Sprchen Wir eschäftigen uns jetzt einige Wochen mit regulären Sprchen. deterministische und nicht-deterministische endliche Automten reguläre Ausdrücke eweisen, dss eine Sprche nicht regulär ist: Pumping Lemm Minimlutomten und Äquivlenzreltionen Aschlusseigenschften und Entscheidungsverfhren Snder Bruggink Automten und Formle Sprchen
Kurzer Einschu: Äquivlenzreltionen Ws ist eine Äquivlenzreltion? Wir wiederholen zunächst die Definition einer Reltion: Reltion Eine (zweistellige, homogene) Reltion R uf einer Menge M ist eine Teilmenge R M M. Sttt (m 1, m ) R schreit mn oft uch m 1 R m. Grphische Drstellung: (, ) R Snder Bruggink Automten und Formle Sprchen 16
Kurzer Einschu: Äquivlenzreltionen Äquivlenzreltion Eine Äquivlenzreltion R uf einer Menge M ist eine Reltion R M M, die die folgenden Eigenschften ht: R ist reflexiv, d.h., es gilt (, ) R für lle M. R ist symmetrisch, d.h., flls (, ) R, so uch (, ) R. R ist trnsitiv, d.h., us (, ) R und (, c) R folgt (, c) R. Hier sind, und c elieige Elemente von M. Snder Bruggink Automten und Formle Sprchen 17
Kurzer Einschu: Äquivlenzreltionen Reflexiv: Symmetrisch: Trnsitiv: c Snder Bruggink Automten und Formle Sprchen 18
Kurzer Einschu: Äquivlenzreltionen Äquivlenzklsse Sei R eine Äquivlenzreltion uf M und m M. Die Äquivlenzklsse [m] R von m ist die folgende Menge: [m] R = {n M (n, m) R} Mnchml schreit mn uch nur [m], wenn klr ist, welche Reltion gemeint ist. Snder Bruggink Automten und Formle Sprchen 19
Kurzer Einschu: Äquivlenzreltionen Eigenschften von Äquivlenzklssen Sei R eine Äquivlenzreltion uf M und m 1, m M. Dnn gilt entweder [m 1 ] R = [m ] R oder Außerdem gilt: [m 1 ] R [m ] R =. M = [m] R. m M D.h., zwei Äquivlenzklssen sind entweder gleich oder vollständig disjunkt. Außerdem üerdecken sie M vollständig. Mn sgt uch: die Äquivlenzklssen ilden eine Prtition von M. Snder Bruggink Automten und Formle Sprchen 130
Erkennungsäquivlenz 4 1 6, 3 5 Ist dieser Automt der kleinste Automt, der seine Sprche kzeptiert? Snder Bruggink Automten und Formle Sprchen 131
Erkennungsäquivlenz Die Zustände 4 und 5 sind erkennungsäquivlent. Eenso die Zustände und 3. Diese Zustände können verschmolzen werden:, 1 /3 4/5 6, Snder Bruggink Automten und Formle Sprchen 13
Erkennungsäquivlenz Erkennungsäquivlenz (Definition) Gegeen sei ein DFA M = (Z, Σ, δ, z 0, E). Zwei Zustände z 1, z Z heißen erkennungsäquivlent genu dnn, wenn für jedes Wort w Σ gilt: ˆδ(z 1, w) E ˆδ(z, w) E. Snder Bruggink Automten und Formle Sprchen 133
Myhill Nerode-Äquivlenz Wenn wir die Erkennungsäquivlenz uf Wörter erweitern (nsttt Zustände), erhlten wir die Myhill Nerode-Äquivlenz. Myhill-Nerode-Äquivlenz (Definition) Gegeen sei eine Sprche L und Wörter x, y Σ. Wir definieren eine Äquivlenzreltion R L mit x R L y genu dnn, wenn für lle z Σ gilt (xz L yz L). Snder Bruggink Automten und Formle Sprchen 134
Myhill Nerode-Äquivlenz Ws sind die Myhill Nerode-Äquivlenzklssen der folgenden Sprchen? L 1 = {w {, } # (w) gerde} L = {w {,, c} ds Teilwort c kommt in w nicht vor} Snder Bruggink Automten und Formle Sprchen 135
Myhill Nerode-Äquivlenz Myhill-Nerode-Äquivlenz und Regulrität (Stz) Eine Sprche L Σ ist genu dnn regulär, wenn R L endlich viele Äquivlenzklssen ht. Snder Bruggink Automten und Formle Sprchen 136
Myhill Nerode-Äquivlenz L ist regulär R L ht endlich viele Äquivlenzklssen: Sei L eine reguläre Sprche und M = (Z, Σ, δ, z 0, E) ein DFA mit T (M) = L. Dnn definieren wir eine Äquivlenzreltion R M mit x R M y ˆδ(z 0, x) = ˆδ(z 0, y) für x, y Σ. Die Anzhl der Äquivlenzklssen von R M ist gleich der Anzhl der (erreichren) Zustände von M, d.h., sie ist endlich. Snder Bruggink Automten und Formle Sprchen 137
Myhill Nerode-Äquivlenz Mn knn zeigen, dss us x R M y immer x R L y folgt. Wir nehmen n, dss x R M y und nehmen ein elieiges z Σ. Dnn gilt: xz L ˆδ(z 0, xz) E ˆδ(ˆδ(z 0, x), z) E ˆδ(ˆδ(z 0, y), z) E ˆδ(z 0, yz) E yz L. (Def. kz. Sprche) (Def. ˆδ) x R M y (Def. ˆδ) (Def. kz. Sprche) Also setzt R M höchstens so viele Elemente in Beziehung wie R L und ht dmit mehr oder gleich viele Äquivlenzklssen wie R L. Drus folgt er, dss R L nur endlich viele Äquivlenzklssen ht. Snder Bruggink Automten und Formle Sprchen 138
Myhill Nerode-Äquivlenz R L ht endlich viele Äquivlenzklssen L ist regulär: Wir nehmen zunächst n, dss R L endlich viele Äquivlenzklssen ht und konstruieren einen endlichen Automten M 0 = (Z, Σ, δ, z 0, E) für L, der wie folgt definiert ist: Z = {[w] RL w Σ } (Menge der Äquivlenzklssen) z 0 = [ε] RL E = {[w] RL w L} δ([w] RL, ) = [w] RL Es gilt: x L(M 0 ) ˆδ([ε], x) E [x] E x L. Deswegen gilt T (M 0 ) = L. Snder Bruggink Automten und Formle Sprchen 139
Myhill Nerode-Äquivlenz Sei M 0 der DFA, der us den Äquivlenzklssen konstruiert wird. Es gilt, für einen elieigen Automten M, mit T (M) = T (M 0 ), dss: R M R L = R M0. Ds heißt, dss wir M 0 us M konstruieren können, indem wir erkennungsäquivlente Zustände verschmelzen. In nderen Worten: M 0 ist der minimle DFA für L: lle nderen minimlen DFAs, die die gleiche Sprche kzeptieren, sind gleich (nch evtl. umenennen der Zustände). Snder Bruggink Automten und Formle Sprchen 140
Myhill Nerode-Äquivlenz Aus dem oigen Stz folgt uch, dss eine Sprche, die unendlich viele Myhill Nerode-Äquivlenzklssen ht, nicht regulär ist. Diese Ttsche können wir enutzen, um zu zeigen, dss eine Sprche nicht regulär ist. Dzu muss mn nur unendlich viele Wörter us Σ ufzählen und zeigen, dss sie in verschiedenen Äquivlenzklssen sind. Beispiel: Sprche L 3 = { k k k 0} ht unendlich viele Äquivlenzklssen. Snder Bruggink Automten und Formle Sprchen 141
Minimlutomten Wie knn mn den minimlen DFA us einem elieigen (nicht notwendigerweise minimlen DFA) erhlten, ohne die Äquivlenzklssen zu konstruieren? Lösung: wir strten mit dem DFA und verschmelzen lle erkennungsäquivlenten Zustände. Dei legen wir zunächst fest, welche Zustände uf jeden Fll nicht erkennungsäquivlent sind (die Endzustände und Nicht-Endzustände) und suchen weitere nicht erkennungsäquivlente Zustände. Snder Bruggink Automten und Formle Sprchen 14
Minimlutomten Algorithmus Minimlutomt Einge: DFA M Ausge: Mengen von erkennungsäquivlenten Zuständen 1 Entferne die Zustände, die vom Strtzustnd us nicht erreichr sind. Stelle eine Telle ller (ungeordneten) Zustndspre {z, z } mit z z uf. 3 Mrkiere lle Pre {z, z } mit z E und z E (oder umgekehrt) (z, z sind sicherlich nicht erkennungsäquivlent.) Snder Bruggink Automten und Formle Sprchen 143
Minimlutomten Algorithmus Minimlutomt 4 Für jedes noch unmrkierte Pr {z, z } und jedes Σ teste, o {δ(z, ), δ(z, )} ereits mrkiert ist. Wenn j: mrkiere uch {z, z }. (Von z, z git es Üergänge zu nicht erkennungsäquivlenten Zuständen, sie können dher nicht erkennungsäquivlent sein.) 5 Wiederhole den vorherigen Schritt, is sich keine Änderung in der Telle mehr ergit. 6 Für lle jetzt noch unmrkierten Pre {z, z } gilt: z und z sind erkennungsäquivlent. Snder Bruggink Automten und Formle Sprchen 144
Minimlutomten Durchführung des Minimierungs-Algorithmus m Beispiel des folgenden Automten: 1 3 4 5 6, 3 4 5 6 1 3 4 5 Erstelle eine Telle ller Zustndspre Snder Bruggink Automten und Formle Sprchen 145
Minimlutomten Durchführung des Minimierungs-Algorithmus m Beispiel des folgenden Automten: 1 3 4 5 6, 3 4 5 6 1 1 1 1 1 1 3 4 5 (1) Mrkiere Pre von Endzuständen und Nicht-Endzuständen Snder Bruggink Automten und Formle Sprchen 145
Minimlutomten Durchführung des Minimierungs-Algorithmus m Beispiel des folgenden Automten: 1 3 4 5 6, 3 4 5 6 1 1 1 1 1 1 3 4 5 () Mrkiere {, 4} wegen δ(, ) = 1, δ(4, ) = 6 und {1, 6} mrkiert Snder Bruggink Automten und Formle Sprchen 145
Minimlutomten Durchführung des Minimierungs-Algorithmus m Beispiel des folgenden Automten: 1 3 4 5 6, 3 4 5 3 6 1 1 1 1 1 1 3 4 5 (3) Mrkiere {3, 5} wegen δ(3, ) = 1, δ(5, ) = 6 und {1, 6} mrkiert Snder Bruggink Automten und Formle Sprchen 145
Minimlutomten Durchführung des Minimierungs-Algorithmus m Beispiel des folgenden Automten: 1 3 4 5 6, 3 4 5 4 3 6 1 1 1 1 1 1 3 4 5 (4) Mrkiere {, 5} wegen δ(, ) = 1, δ(5, ) = 6 und {1, 6} mrkiert Snder Bruggink Automten und Formle Sprchen 145
Minimlutomten Durchführung des Minimierungs-Algorithmus m Beispiel des folgenden Automten: 1 3 4 5 6, 3 4 5 5 4 3 6 1 1 1 1 1 1 3 4 5 (5) Mrkiere {3, 4} wegen δ(3, ) = 1, δ(4, ) = 6 und {1, 6} mrkiert Snder Bruggink Automten und Formle Sprchen 145
Minimlutomten Durchführung des Minimierungs-Algorithmus m Beispiel des folgenden Automten: 1 3 4 5 6, 3 4 5 5 6 4 3 6 1 1 1 1 1 1 3 4 5 (6) Mrkiere {1, 5} wegen δ(1, ) = 3, δ(5, ) = 6 und {3, 6} mrkiert Snder Bruggink Automten und Formle Sprchen 145
Minimlutomten Durchführung des Minimierungs-Algorithmus m Beispiel des folgenden Automten: 1 3 4 5 6, 3 4 7 5 5 6 4 3 6 1 1 1 1 1 1 3 4 5 (7) Mrkiere {1, 4} wegen δ(1, ) = 3, δ(4, ) = 6 und {3, 6} mrkiert Snder Bruggink Automten und Formle Sprchen 145
Minimlutomten Durchführung des Minimierungs-Algorithmus m Beispiel des folgenden Automten: 1 3 4 5 6, 3 8 4 7 5 5 6 4 3 6 1 1 1 1 1 1 3 4 5 (8) Mrkiere {1, 3} wegen δ(1, ) =, δ(3, ) = 5 und {, 5} mrkiert Snder Bruggink Automten und Formle Sprchen 145
Minimlutomten Durchführung des Minimierungs-Algorithmus m Beispiel des folgenden Automten: 1 3 4 5 6, 9 3 8 4 7 5 5 6 4 3 6 1 1 1 1 1 1 3 4 5 (9) Mrkiere {1, } wegen δ(1, ) =, δ(, ) = 4 und {, 4} mrkiert Snder Bruggink Automten und Formle Sprchen 145
Minimlutomten Durchführung des Minimierungs-Algorithmus m Beispiel des folgenden Automten: 1 3 4 5 6, 9 3 8 4 7 5 5 6 4 3 6 1 1 1 1 1 1 3 4 5 Die verleienden Zustndspre {, 3} und {4, 5} können nicht mehr mrkiert werden sie sind erkennungsäquivlent Snder Bruggink Automten und Formle Sprchen 145
Minimlutomten Hinweise für die Durchführung des Minimierungs-Algorithmus: Die Telle möglichst so ufstellen, dss jedes Pr nur genu einml vorkommt!,..., n vertikl und 1,..., n 1 horizontl notieren. Bitte ngeen, welche Zustände in welcher Reihenfolge und wrum mrkiert wurden! (Im Buch von Schöning werden immer nur Sternchen ( ) verwendet, er drus werden ei der Korrektur die Reihenfolge und die Gründe für die Mrkierung nicht ersichtlich.) Snder Bruggink Automten und Formle Sprchen 146
Minimlutomten Für nicht-deterministische Automten knn mn folgende Aussgen treffen: Es git nicht den minimlen NFA, sondern es knn mehrere geen. Folgende zwei minimle NFAs erkennen L((0 1) 1) und hen eide zwei Zustände. (Mit nur einem Zustnd knn diese Sprche nicht erknnt werden.) 0, 1 1 1 0 1 1 1 0 Snder Bruggink Automten und Formle Sprchen 147
Minimlutomten Gegeen ein DFA M. Dnn ht ein minimler NFA, der T (M) erkennt, immer höchstens so viel Zustände wie M. (Denn M ist selst schon ein NFA.) Außerdem: der minimle NFA knn exponentiell kleiner sein ls der minimle DFA. Siehe Beispielsprchen: L k = {x {0, 1} x k, ds k-letzte Zeichen von x ist 0}. Snder Bruggink Automten und Formle Sprchen 148
Aschlusseigenschften Aschlusseigenschften Ageschlossenheit (Definition) Gegeen sei eine Menge M und ein n-ärer Opertor f : M M M. Mn sgt, eine Menge M M ist unter f geschlossen, wenn für n elieige Elemente m 1,..., m n M gilt: f (m 1,..., m n ) M. Beispiel: Sei M = N und M = {i i N und i ist gerde}. Sei f der Multipliktionsopertor, d.h. f (x, y) = x y. M ist geschlossen unter f, denn ds Produkt zweier gerder Zhlen ist wieder eine gerde Zhl. Sei nun g die Opertion: g(x) = x/, woei / der Gnzzhldivision entspricht. M ist nicht unter der Opertion g geschlossen. Ein Gegeneispiel ist: g(6) = 6/ = 3. Snder Bruggink Automten und Formle Sprchen 149
Aschlusseigenschften Aschlusseigenschften Wir etrchten hier Aschlusseigenschften für die Menge ller regulären Sprchen. Die interessnte Frge ist: Flls L 1, L regulär sind, sind dnn uch L 1 L, L 1 L, L 1 L, L 1 = Σ \L 1 (Komplement) und L 1 regulär? Kurze Antwort: Die regulären Sprchen sind unter llen diesen Opertionen geschlossen. Snder Bruggink Automten und Formle Sprchen 150
Aschlusseigenschften Aschlusseigenschften Aschluss unter Vereinigung Wenn L 1 und L reguläre Sprchen sind, dnn ist uch L 1 L regulär. Beweis: D L 1 und L nch Annhme regulär sind, git es reguläre Ausdrücke α 1 und α mit L(α 1 ) = L 1 und L(α ) = L. Der reguläre Ausdruck α 1 α erzeugt nun die Sprche L 1 L und von dher ist sie regulär. Snder Bruggink Automten und Formle Sprchen 151
Aschlusseigenschften Aschlusseigenschften Aschluss unter Produkt/Konktention Wenn L 1 und L reguläre Sprchen sind, dnn ist uch L 1 L = {w 1 w w 1 L 1, w L } regulär. Beweis: D L 1 und L nch Annhme regulär sind, git es reguläre Ausdrücke α 1 und α mit L(α 1 ) = L 1 und L(α ) = L. Der reguläre Ausdruck α 1 α erzeugt nun die Sprche L 1 L und von dher ist sie regulär. Snder Bruggink Automten und Formle Sprchen 15
Aschlusseigenschften Aschlusseigenschften Aschluss unter der Stern-Opertion Wenn L eine reguläre Sprche ist, dnn ist uch L regulär. Beweis: D L nch Annhme regulär ist, git es einen regulären Ausdruck α mit L(α) = L. Der reguläre Ausdruck α erzeugt dnn die Sprche L. D es einen regulären Ausdruck für die Sprche git, ist sie regulär. Snder Bruggink Automten und Formle Sprchen 153