1 Berechenbarkeitstheorie Dr. Institut für Mathematische Logik und Grundlagenforschung WWU Münster W 15/16 Alle Folien unter Creative Commons Attribution-NonCommercial 3.0 Unported Lizenz.
Das Pumpinglemma trukturelles Lemma über eine Eigenschaft von regulären prachen Hat eine prache diese Eigenschaft nicht, kann ie nicht regulär sein (Anwendung: Beweis Nichtregularität) Definition Eine prache heißt pumpbar gdw., es gibt ein k N, sodass für alle Wörter w L mit w k es eine Zerlegung von w = xyz gibt, für die gilt: 1. xy k, 2. i 0: xy i z L, 3. y > 0. 2 Pumpinglemma L REG L ist pumpbar
Beispiel L = {a k k ungerade} REG Zur Erinnerung: pumbar heißt k N w L: ( w k) xyz = w mit xy k, y > 0,und i 0: xy i z L In diesem Fall: k = 3 w L zerteile w wie folgt w = aaaaaa a x y z xy k und y > 0 sind erfüllt 3 i 0 gilt: w und xy i z unterscheiden sich um 2i as xy i z besitzt eine ungerade Anzahl von as xy i z L L ist pumpbar
Beweis des Pumpinglemmas Zu zeigen: L ist regulär, dann ist L pumpbar sei L regulär, und M = (Q, Σ, δ, q 0, F ) ein DEA der L erkennt wir setzen k = Q + 1 jeder w-lauf ( w k) besucht mindestens k = Q + 1 Zustände 1 Zustand doppelt sei p der 1. Zustand der mehrfach besucht wurde 4 Lauf: q 0 p p p Teillauf zum 1. p x Eigenschaft 1: y > 0 Eigenschaft 2: xy k vom 1. zum 2. p y Teillauf ab 2. p z Eigenschaft 3: i 0: xy i z L
Am Beispiel M Q = 5 w = abbaba hat folgenden Lauf k = 5 5 erster doppelter Zustand ist 1 x = a, y = bba, z = ba Wiederholung i = 3 xyyyz = abbabbabbaba hat akzeptierenden Lauf
Anwendung des Pumpinglemmas PL: L REG L ist pumpbar Umkehrung PL: L nicht pumpbar L REG nicht pumpbar heißt: k N w L: ( w k) xyz = w mit xy k, y > 0 gilt i 0: xy i z L Interpretation als 2-pieler piel: Gegenspieler wählt bei den Quantoren. Wir wählen bei den Quantoren. Wahl in Abhängigkeit der vorigen Auswahlen. Haben wir eine Gewinnstrategie ist die prache nicht pumpbar und somit nicht regulär. 6
1. Beispiel L = {a n b n n 0} Zu zeigen: k N w L: ( w k) xyz = w mit xy k, y > 0 gilt i 0: xy i z L Gegenspieler bestimmt k wir wählen w L in Abhängigkeit von k, in unserem Fall w = a k b k Gegenspieler wählt Zerteilung von w wir zeigen: für jede seiner Wahlen finden wir ein i, sodass xy i z L in unserem Fall wissen wir dass y L(a ) und y ε 7 d.h. für i = 2 ist xy i z = a k+ y b k L also ist L nicht pumpbar und somit nicht regulär
2. Beispiel L = {uu u {a, b} } Zur Erinnerung k N w L: ( w k) xyz = w mit xy k, y > 0 gilt i 0: xy i z L wir wählen w L in Abhängigkeit von k, in unserem Fall w = a k ba k b wir zeigen für jede Zerteilung gibt es ein i, so dass xy i z L y besteht nur aus as xy i z enthält genau zweimal das Zeichen b bs legen Endpositionen von u fest xy 0 z = a k y ba k b L L ist nicht pumpbar, also ist L nicht regulär 8
3. Beispiel L = {a n2 n 0} Abstände zwischen Quadratzahlen wachsen linear 1 4 9 16 25 1 3 5 7 (n + 1) 2 n 2 = 2n + 1 für Pumplänge k wählen wir w = a k2 L da Σ = {a} spielt bei der Zerteilung von w nur die Länge von y eine Rolle wir wählen i = 2, d.h. xy i z k 2 + k die zu k 2 nächste Quadratzahl ist (k + 1) 2 = k 2 + 2k + 1 k 2 < xy 2 z k 2 + k < k 2 + 2k + 1 = (k + 1) 2 xy 2 z liegt zwischen k 2 und (k + 1) 2 und kann demnach keine Quadratzahl sein L nicht pumpbar L REG 9
10 2. Kapitel Kontextfreie prachen
Kontextfreie Grammatiken Grammatiken = Formalismus zum Beschreiben von prachen mit Ableitungsregeln Ziel: {a n b n n 0} soll erkannt werden Ziel: Modell soll beherrschbar bleiben 11 Kontextfreie Grammatik Eine Kontextfreie Grammatik G ist ein 4 Tupel (V, Σ, R, ), bestehend aus V endliche Menge von Variablen, Σ endliche Menge von Terminalsymbolen, R V (V Σ) einer endliche Menge von Regeln, V einem tartsymbol.
chreibweise: (x, w) R wird geschrieben als x w linke eite 12 rechte eite Zusammenfassen aller Regeln mit der gleichen linken eite (x, w 1 ), (x, w 2 ), (x, w 3 ) R geschrieben als x w 1 w 2 w 3 Variablen = Großbuchstaben Terminalsymbole = Kleinbuchstaben, Ziffern, onderzeichen wenn nicht anders angegeben, tartsymbol immer es genügt i.a. die Regeln der Grammatik anzugeben Beispiel: aaa ε A ax 1 a X 1 baa
prache einer kf Grammatik wenn u, v, w (Σ V ) und A w eine Regel, dann leitet uav zu uwv ab chreibweise: uav uwv wiederholtes Ableiten: uav t chreibweise: uav t 13 Definition Für eine kf Grammatik G ist die prache der Grammatik L(G) definiert als L(G) := {w Σ w}. also alle Wörter über Σ die ich aus dem tartsymbol ableiten kann
Beispiel 1 ab ε ab aabb a k b k a k b k L(G) = {a n b n n 0} Beispiel 2 aa bb ε 14 aa abba u u u u L(G) = {u u u {a, b} } Beispiel 3 () ε L(G) = {w {(, )} w korrekt gklammert }
Ableitungsbäume beim DEA/NEA bezeugte der Lauf eines Wortes die Berechnung lineare Ableitungssequenz w erfasst die truktur der Berechnung unzureichend Alternative: Ableitungsbaum eines Wortes w Knotenbeschrifteter Baum mit Elementen aus Σ V ausgezeichnete Wurzel, mit beschriftet Blätter enthalten Terminalsymbole wenn Knoten Bezeichnung X V hat und die Kinder (von links) u 1, u 2, u 3,..., dann muss es die Regel geben X u 1 u 2 u 3 geben w =Terminale des Baumes in Post-Order 15
Beispiel + a w = a + a a + 16 Nicht eindeutig! + a a a a a (a + a) a (a + a a) a Definition Gibt es ein Wort in einer kf. Grammatik G mit zwei unterschiedlichen Ableitungsbäumen so heißt G mehrdeutig. Mehrdeutigkeit gilt es zu vermeiden!
Definition Die prache L(G) einer kf. Grammatik G heißt kontextfreie prache. CFL := {L L ist kontextfrei} atz 10 L REG L CFL 17 Aus atz 10 folgt, dass REG CFL...... denn {a n b n n 0} ist kontextfrei aber nicht regulär endliche prachen REG CFL