Sie sind auf Seite 1von 20

Automaten und Formale Sprachen

Vierstndige Vorlesung SS 2006 u Klaus Wagner, Lehrstuhl fr Theoretische Informatik, Universitt Wrzburg u a u

Inhaltsverzeichnis
1 Regulre Sprachen a 1.1 Denition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 Endliche Automaten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Abschlueigenschaften . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Minimisierung endlicher Automaten und der Satz von Nerode . . . . . . . . . . Regulre Sprachen und Monoide . . . . . . . . . . . . . . . . . . . . . . . . . . a Logische Beschreibung regulrer Sprachen . . . . . . . . . . . . . . . . . . . . . a Sternfreie Sprachen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Weitere Automatentypen fr regulre Sprachen . . . . . . . . . . . . . . . . . . u a Grammatiken und regulre Sprachen . . . . . . . . . . . . . . . . . . . . . . . . a 2 2 2 3 4 6 8 9 11 12 14 14 15 15 15 16 17 18 18 19 19 19 19 20 20 20

2 Kontextfreie Sprachen 2.1 Bekanntes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 2.3 2.4 2.5 2.6 2.7 2.8 Normalformen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Abschlueigenschaften . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Komplexitt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a Kellerautomaten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deterministisch-kontextfreie Sprachen . . . . . . . . . . . . . . . . . . . . . . . Entscheidbarkeitsfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Kontextfreie Sprachen und Gruppoide . . . . . . . . . . . . . . . . . . . . . . .

3 Kontextsensitive Sprachen 3.1 Nichtverkrzende Grammatiken . . . . . . . . . . . . . . . . . . . . . . . . . . . u 3.2 3.3 Linear beschrnkte Automaten . . . . . . . . . . . . . . . . . . . . . . . . . . . a Abschlueigenschaften . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4 Typ-0-Sprachen 4.1 Aufzhlbare Mengen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 4.2 Abschlueigenschaften . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1
1.1

Regulre Sprachen a
Denition

Ein Alphabet ist eine endliche Menge, deren Elemente auch Symbole oder Buchstaben genannt werden. Im folgenden sei ein festes Alphabet. Ist n 0 und a1 , a2 , . . . an , so heit a1 a2 . . . an Wort uber . a Ist n 0 und a1 , a2 , . . . an , so ist |a1 a2 . . . an | =def n ist die Lnge des Wortes a1 a2 . . . an . Das leere Wort ist das einzige Wort der Lnge 0. a o sei die Menge aller Wrter uber . Jedes L heit Sprache uber . Es seien L und K Sprachen uber . L K =def {vw : v L und w K} (Konkatenation von L und K) u L0 =def {} und Lk+1 =def Lk L fr k 0 = k = {w w . . . w : n 0 and w , w , . . . , w L} (Iteration von L) L def k0 L 1 2 n 1 2 n Denition. a Die Klasse REG der -regulren Mengen sei wie folgt deniert: REG a = {a} REG L, K REG = L K, L K, L REG sonst sind keine Sprachen in REG M.a.W.: REG ist die kleinste Sprachklasse, die und {a} fr alle a enthlt und u a unter Vereinigung, Konkatenation und Iteration abgeschlossen ist. REG =def
Alphabet

REG ist die Klasse aller regulren Mengen. a

1.2

Endliche Automaten

Denition. A = (, Z, f, z0 , Z ) heit (deterministischer) [endlicher] Automat def endliche Menge (Eingabealphabet) Z [endliche] Menge (Zustandsmenge) f : Z Z totale Funktion (Uberfhrungsfunktion) u z0 Z (Startzustand) a Z Z (Menge der akzeptierenden Zustnde)

Die erweiterte Uberfhrungsfunktion f : Z ist deniert durch u f (z, ) =def z fr z Z u f (z, wa) =def f (f (z, w), a) fr z Z, w und a u Denition. Sei A = (, Z, f, z0 , Z ) ein Automat. - w heit von A akzeptiert def f (z0 , w) Z - L(A) =def {w : w und A akzeptiert w} ist die von A akzeptierte Wortmenge - |A| =def card(Z) 2

Denition. A = (, Z, f, z0 , Z ) heit nichtdeterministischer [endlicher] Automat def endliche Menge (Eingabealphabet) Z [endliche] Menge (Zustandsmenge) f : Z P(Z) totale Funktion (Uberfhrungsfunktion) u z0 Z (Startzustand) Z Z (Menge der akzeptierenden Zustnde) a

Die erweiterte Uberfhrungsfunktion f : Z ist deniert durch u f (z, ) =def {z} fr z Z u f (z, wa) =def f (z , a) fr z Z, w und a u
z f (z,w)

Denition. Sei A = (, Z, f, z0 , Z ) ein nichtdeterministischer Automat. - w heit von A akzeptiert def f (z0 , w) Z = - L(A) =def {w : w und A akzeptiert w} ist die von A akzeptierte Wortmenge. Satz 1.1 (Kleene 1956) Fr eine Sprache L sind folgende Aussagen quivalent: u a (1) L ist regulr. a (2) L wird von einem deterministischen endlichen Automaten akzeptiert. (3) L wird von einem nichtdeterministischen endlichen Automaten akzeptiert. Satz 1.2 (Pumping-Lemma fr regulre Sprachen, uvw-Theorem) u a Ist L regulr, so gibt es n0 > 0 mit: a fr jedes z L mit |z| n0 gibt es eine Zerlegung z = uvw mit - |uv| n0 u - |v| > 0 u - uv k w L fr k 0.

1.3

Abschlueigenschaften

Spiegelwort wR eines Wortes w deniert durch: u R =def und (wa)R =def awR fr w und a . Fr eine Sprache L sei LR =def {wR : w L} u Sei ein Homomorphismus von nach , d.h., (vw) = (v)(w) fr alle v, w u ( = () = und (a1 . . . an ) = (a1 ) . . . (an ) fr a1 , . . . , an , u also: ist festgelegt durch seine Werte auf ) u (L) =def {(w) : w L} fr L 1 (K) =def {w : (w) K} fr K u Sei w und L, K . w1 L =def {v : wv L} ist das rechte w-Residuum von L Lw1 =def {v : vw L} ist das linke w-Residuum von L K 1 L =def {v : es gibt ein w K mit wv L} LK 1 =def {v : es gibt ein w K mit vw L} Satz 1.3 Sind L und K regulr und ist ein Homomorphismus, so sind auch L K, L K, a , LR , (L), 1 (L), K 1 L und LK 1 regulr. L, L K, L a 3

1.4

Minimisierung endlicher Automaten und der Satz von Nerode

Aquivalenzrelationen auf Sprachen Die zweistellige Relation auf heit Aquivalenzrelation def w w fr alle w (reexiv) u v w = w v fr alle v, w (symmetrisch) u u v, v w = u w fr alle u, v, w (transitiv) u [v] =def {w : w v} ist die -Aquivalenzklasse von v. Die -Aquivalenzklassen bilden die Zerlegung / =def {[w] : w } von , d.h.: u ist / = {Li : i I}, so gilt iI = und Li Lj = fr i = j. Die Aquivalenzrelation heit Rechtskongruenz def u v = ux vx fr alle u, v, x . u Die Aquivalenzrelation 1 heit feiner als die Aquivalenzrelation 2 (bzw. 2 heit grber als 1 ) def v 1 w = v 2 w fr alle v, w . o u Die Aquivalenzrelation auf respektiert die Sprache L def v w = (v L w L) fr alle v, w . u Oensichtlich ist L in diesem Falle die Vereinigung von -Aquivalenzklassen. Die Sprache L deniert die zweistellige Relation L auf wie folgt: u u L v def x(ux L vx L) fr alle u, v . r = u [w]L def [w]L = {v : v L w} fr alle v . indr (L) =def card({[w]r : w }) ist der Rechtsindex der Sprache L. L o Satz 1.4 Fr L ist L die grbste Rechtskongruenz auf , die L respektiert. u Der Minimalautomat einer Sprache Fr eine Sprache L denieren wir den (nicht notwendig endlichen) Automaten u AL =def (, {[w]r : w }, fL , []r , {[w]r : w L}) mit L L L u fL ([w]r , a) =def [wa]r fr w und a . L L a a Die Denition von fL ist reprsentantenunabhngig, da L eine Rechtskongruenz ist. Eigenschaft 1.5 Fr jede Sprache L gilt |AL | = indr (L). u Lemma 1.6 Fr jede Sprache L gilt L(AL ) = L. u Deniton. Der Automat A2 = (, Z2 , f2 , z20 , Z2 ) heit homomorphes Bild des (isomorph zum) Automaten A1 = (, Z1 , f1 , z10 , Z1 ) def es gibt eine surjektive (bijektive) Funktion h : Z1 Z2 mit u - h(f1 (z10 , w)) = f2 (z20 , w) fr alle w und u - z Z1 h(z) Z2 fr alle z Z1 . Eigenschaft 1.7 1. Ist A2 homomorphes Bild von A1 , so gilt |A2 | |A1 |. 2. Ist A2 isomorph zu A1 , so gilt |A2 | = |A1 |.

Eigenschaft 1.8 Ist A2 homomorphes Bild von A1 , so gilt L(A2 ) = L(A1 ). Deniton. Sei A = (, Z, f, z0 , Z ) ein endlicher Automat. A heit reduziert def Z = {f (z0 , w) : w }. Der Automat Ared =def (, {f (z0 , w) : w }, f, z0 , {f (z0 , w) : w } Z ) heit der reduzierte Automat von A. Satz 1.9 Ein reduzierter Automat A akzeptiert die Sprache L genau dann, wenn AL homomorphes Bild von A ist. Folgerung 1.10 Jeder Automat, der eine Sprache L akzeptiert, hat mindestens soviele Zustnde wie AL . a Folgerung 1.11 Alle zustandsminimalen endlichen Automaten, die eine Sprache L akzeptieren, sind isomorph zu AL . Bemerkung. Folgerung 1.11 gilt nicht fr nichtdeterministische endliche Automaten, das heit u es gibt quivalente zustandsminimale nichtdeterministische endliche Automaten, die nicht isoa morph sind. Der Satz von Nerode Satz (1) (2) (3) (4) a 1.12 (Nerode 1958) Fr eine Sprache L sind quivalent: u L ist regulr. a L wird von einem endlichen Automaten akzeptiert. indr (L) ist endlich. Der Minimalautomat von L ist endlich.

Algorithmisches a Deniton. Die Automaten A und A heien quivalent def L(A) = L(A ). Satz 1.13 Es gibt einen O(n)-Algorithmus, der zu einem gegebenen endlichen Automaten A den reduzierten Automaten Ared konstruiert. Satz 1.14 Es gibt einen O(n2 )-Algorithmus, der zu einem gegebenen endlichen Automaten A den quivalenten zustandsminimalen Automaten AL(A) konstruiert. a Satz 1.15 Es gibt einen O(n2 )-Algorithmus, der die Aquivalenz zweier gegebener endlicher Automaten entscheidet. Bemerkungen. 1. Das Problem der Aquivalenz nichtdeterministischer endlicher Automaten ist PSPACEvollstndig. a u a 2. Das Problem der Aquivalenz regulrer (, , )-Ausdrcke in ist PSPACE-vollstndig. Dara )-Ausdrucks in aus und aus Satz 1.15 folgt, da die Uberfhrung eines regulren (, , u a einen quivalenten endlichen Automaten PSPACE-hart ist. a ...22 u O(logn))3. Das Problem der Aquivalenz regulrer (, , )-Ausdrcke ist DSPACE( 22 a hart. 5

1.5

Regulre Sprachen und Monoide a

Akzeptierung durch Monoide Denition. (M, , 1) heit Monoid def - M ist eine Menge. - ist eine zweistellige assoziative Operation auf M , also a (b c) = (a b) c. - 1 ein Einselement, also a 1 = 1 a = a. Wir setzen |(M, , 1)| =def card(M ). Wegen der Assoziativitt knnen Klammern weggelassen werden, also a o statt c ((a (b a)) b) wird auch cabab verwendet. Beispiele. Monoide sind alle Gruppen (N, +, 0), (N, , 1), (N, max, 0), u ( , , ) fr jedes Alphabet , das freie Monoid uber

Denition. Seien M = (M, , 1M ) und N = (N, , 1N ) Monoide. Die Abbildung : M N heit Homomorphismus von M nach N def - (a b) = (a) (b) fr alle a, b M . u - (1M ) = 1N . Die Abbildung : M N heit Isomorphismus von M nach N , falls sie ein bijektiver Homorphismus von M nach N ist. In diesem Fall heien M und N isomorph. Denition. Seien (M, , 1) ein Monoid, P M und : M ein Homomorphismus. - x wird von (M, , 1) mit P und akzeptiert def (x) P . - 1 (P ) heit die von (M, , 1) mit P und akzeptierte Sprache. Das syntaktische Monoid einer Sprache Denition. Die Aquivalenzrelation heit Kongruenz def u v = xuy xvy fr alle u, v, x, y . u Eigenschaft 1.16 Ist eine Kongruenz auf , so ist ( / , , [] ) ein Monoid, u wobei wir denieren: [u] [v] =def [uv] fr alle u, v . Denition. Sei L . - Die syntaktische Kongruenz L ist deniert durch u L v def xy(xuy L xvy L) u - [x]L =def [x]L fr x . - ind(L) =def card({[x]L : x }). - S(L) =def ( /L , , [e]L ) ist das syntaktische Monoid von L o Satz 1.17 Fr L ist L ist die grbste Kongruenz auf , die L respektiert. u 6

Eigenschaft 1.18 |S(L)| = ind(L) fr alle L . u Satz 1.19 Jede Sprache L wird von S(L) akzeptiert. Satz 1.20 Wird die Sprache L durch das Monoid M akzeptiert, so gilt |M | ind(L). Das syntaktische Monoid einer Sprache L ist also ein kleinstes Monoid, das L akzeptiert (o.B.: sogar bis auf Isomorphie das kleinste). Monoide und Automaten Wie kann man aus einem Automaten ein Monoid konstruieren, das dieselbe Sprache akzeptiert? Sei A = (, Z, f, z0 , Z ) ein Automat. Fr jedes x denieren wir eine Transition fx : Z Z durch fx (z) =def f (z, x). u Satz 1.21 Sei A = (, Z, f, z0 , Z ) ein Automat. 1. Fr alle x, y gilt fx fy = fxy . u 2. T(A) =def ({fx : x }, , f ) ist ein Monoid, das Transitionsmonoid von A. 3. T(A) akzeptiert L(A). Satz 1.22 Das syntaktische Monoid einer Sprache L ist isomorph zum Transitionsmonoid des Minimalautomaten von L. Wie kann man aus einem Monoid einen Automaten konstruieren, der dieselbe Sprache akzeptiert? Satz 1.23 Akzeptiert das Monoid (M, , 1) mit P M und : M die Sprache L , so akzeptiert der Automat (, M, f , 1.P ) mit f (m, a) =def m (a) ebenfalls die Sprache L. Der Automat (, M, f , 1.P ) akzeptiert zwar die gleiche Sprache wie das Monoid (M, , 1) mit P und , aber er entspricht strukturell nur bedingt diesem Monoid, weil ein Automat prinzipiell eine einseitige Struktur besitzt, beim Monoid aber links und rechts gleichberechtigt sind. Eine bessere Automaten-Entsprechung der Monoide sind die sog. Doppelautomaten, bei denen ein Eingabewort nicht nur durch Anfgen der Buchstaben von rechts, sondern auch von links u aufgebaut werden kann. Ein Nerode-Theorem f r Monoide u Satz 1.24 Fr jede Sprache L gilt indr (L) ind(L) indr (L)indr (L) . u a Satz 1.25 Fr eine Sprache L sind quivalent: u (1) (2) (3) (4) L ist regulr. a L wird von einem endlichen Monoid akzeptiert. ind(L) ist endlich. Das syntaktische Monoid von L ist endlich. 7

1.6

Logische Beschreibung regulrer Sprachen a

Fr Alphabet = {a1 , . . . , ak } wird der Logik-Kalkl MSO (monadic second order) deniert. u u Das geschieht durch Festlegung der Signatur S =def (<, Q1 , . . . , Qk ), wobei - < Symbol fr zweistellige Relationen u u - Q1 , . . . , Qk Symbole fr einstellige Relationen x1 , x2 , x3 , . . . sind die Objektvariablen X1 , X2 , X3 , . . . sind die Mengenvariablen (monadisch, weil keine mehrstelligen Relationsvariablen) Ohne Mengenvariablen bekommt man den Kalkl 1. Stufe FO (rst order) u Syntax: Denition. Formeln (der 2. Stufe) der MSO 1. atomare Formeln: (xi < xj ), Q1 (xj ) und xi Xj sind Formeln. 2. zusammengesetzte Formeln: , Formeln = , ( ), ( ), ( ), ( ), xi , xi , Xi , Xi Formeln. Denition. - Formel ist der Wirkungsbereich von x in x bzw. x. - Formel ist der Wirkungsbereich von X in X bzw. X. - Variable ist frei der Formel , falls sie an einer Stelle in vorkommt, die nicht in einem Wirkungsbereich dieser Variablen liegt. - Eine Formel ist ein Satz, falls sie keine freien Variablen besitzt. Semantik: Man betrachtet sog. Strukturen (M, R, R1 , . . . , Rk ) mit - M Grundmenge - R M M (Interpretation des Relationssymbols <) u - R M (Interpretation des Relationssymbols Qi ) fr i = 1, . . . , k. Durch eine Struktur werden alle Symbole in den Stzen durch konkrete Objekte ersetzt a = jeder Satz wird in einer Struktur wahr oder falsch. Wir wollen aber Sprachen durch Formeln beschreiben!
w w Denition. Fr w denieren wir die Struktur w =def ({1, 2, . . . , |w|}, < qa1 , . . . , qak ), u wobei

- < ist die Kleiner-Relation der natrlichen Zahlen, eingeschrnkt auf {1, 2, . . . , |w|} u a w (x) = 1 - qai def x-ter Buchstabe von w ist ai (i = 1, . . . k) Denition. - Fr einen -Satz sei L() =def {w : wahr in w }. u - L heit MSO-denierbar def es gibt einen -Satz mit L = L(). - L heit FO-denierbar def es gibt einen -Satz 1. Stufe mit mit L = L(). Satz 1.26 (Bchi 1960, Trachtenbrot 1961) u Eine Sprache ist genau dann regulr, wenn sie MSO-denierbar ist. a 8

1.7

Sternfreie Sprachen

Denition und Eigenschaften Wichtigste Teilklasse der Klasse der regulren Sprachen. a Denition. Sei ein endliches Alphabet. Sternfreie Sprachen uber - und {a} fr alle a sind sternfreie Sprachen uber . u - Sind K und L sternfreie Sprachen uber , so auch K L und K L. - Ist L eine sternfreie Sprache uber , so auch L. Eine Sprache L heit sternfrei, falls sie eine sternfreie Sprache uber ist. Eigenschaft 1.27 1. Jede sternfreie Sprache ist regulr. a 2. Jede endliche Sprache ist sternfrei. u 3. Ist , so ist eine sternfreie Sprache ber . 4. Sind L und K sternfreie Sprachen, so auch L K, L K, L, L K und LR . 5. Ist L sternfrei und : ein Homomorphismus, so ist auch 1 (L) sternfrei. Aperiodische Sprachen Denition. Eine Sprache L heit aperiodisch, falls es ein n 1 so gibt, da v n L v n+m fr alle v und m 1 gilt. u a Eigenschaft 1.28 Folgende Aussagen sind fr eine regulre Sprache L quivalent: u a (1) L ist aperiodisch, u (2) Es gibt ein n 1 so, da v n L v n+1 fr alle v gilt. u (3) (Streichungsregel) Aus v L uvw folgt v L uv und v L vw fr alle u, v, w . Satz 1.29 (Schtzenberger 1965) u Eine Sprache ist genau dann sternfrei, wenn sie regulr und aperiodisch ist. a Endliche Automaten und sternfreie Sprachen Wie erkennt man nun an einem endlichen Automaten, ob er eine sternfreie Sprache akzeptiert? Denition. Ein endlicher Automat A = (, Z, f, z0 , Z ) heit permutationsfrei, falls es ein u n 1 gibt mit f (z, wn ) = f (z, wn+1 ) fr alle z Z und w . Bemerkung. Die Eigenschaft der Permutationsfreiheit fr endliche Automaten ist PSPACEu vollstndig. a Satz 1.30 Die folgenden Aussagen sind fr eine Sprache L quivalent: u a (1) L ist sternfrei. (2) L wird von einem endlichen, permutationsfreien Automaten akzeptiert. (3) AL ist endlich und permutationsfrei.

Endliche Monoide und sternfreie Sprachen Wie erkennt man nun an einem Monoid, ob es eine sternfreie Sprache akzeptiert? Denition. a Das Monoid (M, , 1M ) enthlt das Monoid (N, , 1N ), falls N M und die Operation in N die Einschrnkung der Operation in M auf die Menge N ist. a Ein Monoid heit gruppenfrei, wenn es auer der trivialen einelementigen Gruppe keine Gruppen enthlt. a Oensichtlich ist jedes Untermonoid eines Monoids in diesem enthalten. Jedoch mu nicht jedes enthaltene Monoid ein Untermonoid sein, es knnte ein anderes Einselement besitzen. o Bemerkung. Die Eigenschaft der Gruppenfreiheit fr endliche Monoide ist NL-vollstndig. u a Satz 1.31 Die folgenden Aussagen sind fr eine Sprache L quivalent: u a (1) L ist sternfrei. (2) L wird von einem endlichen gruppenfreien Monoid akzeptiert. (3) S(L) ist endlich und und gruppenfrei. Logische Beschreibung sternfreier Sprachen Folgerung 1.32 (McNaughton und Papert 1971) Eine Sprache ist genau dann FO-denierbar, wenn sie sternfrei ist. Die Dot-Depth-Hierarchien Hierarchien innerhalb der Klasse der sternfreien Sprachen. Hier gibt es zwei Varianten: - Die Cohen-Brzozowski Hierarchie (Cohen and Brzozowski 1971) - Die Straubing-Thrien Hierarchie (Straubing and Thrien 1981) e e Wir betrachten die Straubing-Thrien Hierarchie e Denition. Die Klassen der Straubing-Thrien Hierarchie. e Sei ein endliches Alphabet. L =def { a : a } 0 L k+1/2 =def Abschlu von Lk unter Vereinigung und Konkatenation L =def Abschlu von Lk+1/2 unter Vereinigung und Komplement k+1 (k 0) Lk/2 =def endl. Alphabet L k/2

(k 0) (k 0)

Satz 1.33 1. k0 Lk/2 ist die Klasse der sternfreien Sprachen. 2. Es gilt L0 L1/2 L1 L3/2 . . . . 3. Fr k 0 ist Lk+1/2 genau die Klasse derjenigen Sprachen die sich mit einer FO-Formel u denieren lassen, bei der sich alle Quantoren vorn benden, die mit einem -Quantor beginnt und die hchstens k Wechsel zwischen und oder umgekehrt aufweist. o Bemerkung. Es ist nicht bekannt, ob es einen Algorithmus gibt, der von einer gegebenen sternfreien Menge feststellt, in welcher minimalen Stufe der Straubing-Thrien-Hierarchie sie e liegt. 10

1.8

Weitere Automatentypen fr regulre Sprachen u a

Endliche alternierende Automaten Verallgemeinerung nichtdeterministischer Automaten. Nichtdeterministische Automaten: Aufspaltung der Berechnung mit Alternierende Automaten: Aufspaltung der Berechnung mit and . Denition. A = (, Z, f, z0 , Ze , Za ) heit alternierender endlicher Automat def endliche Menge (Eingabealphabet) Z endliche Menge (Zustandsmenge) f : Z P(Z) totale Funktion (Uberfhrungsfunktion) u z0 Z (Startzustand) a Ze Z (Menge der existentiellen Zustnde, Z Ze ist die Menge der universellen Zustnde) a a - Za Z (Menge der akzeptierenden Zustnde) A akzeptiert x SA (x) evaluiert zu 1. Analog fr alternierende endliche Automaten. u Denition. Sei A = (, {z0 , z1 , . . . , zk }, f, z0 , Ze , Za ) alternierender endlicher Automat und x = a1 a2 . . . an mit a1 , a2 , . . . , an . u 1. Der (, , 0, 1)-Schaltkreis SA (x) besitzt die Gatter (i, j) fr i = 1, . . . , n und j = 1, . . . , k. - zj Za = (n, j) ist ein 1-Gatter - zj Za = (n, j) ist ein 0-Gatter u - zj Ze = (n, j) ist ein -Gatter fr i = 1, . . . , n 1 u - zj Ze = (n, j) ist ein -Gatter fr i = 1, . . . , n 1 a u - f (zj , ai ) = {zj1 , . . . , zjr } = (i 1, j) hat Vorgnger (i, j1 ), . . . , (i, jr ) fr i = 1, . . . , n - (0, 0) ist das Ausgangsgatter 2. A akzeptiert x def SA (x) evaluiert zu 1 3. L(A) =def {x : A akzeptiert x} Satz 1.34 Eine Sprache ist genau dann regulr, wenn sie von einem endlichen alternierenden a Automaten akzeptiert wird. Bemerkung. alternierender logarithmischer Raum alternierende Polynomialzeit Endliche Zweiwegautomaten Endliche Automaten sind 1-Band-TMn, die das Eingabewort von links nach rechts lesen, ohne es zu verndern. a 1-Band-TMn, die ein Wort beliebig lesen, ohne es zu verndern, heien Zweiweg-Automaten. a = = Polynomialzeit polynomieller Raum

Nichtdeterministischer Automat A deniert bei Eingabe x einen (, 0, 1)-Schaltkreis SA (x) mit

11

Denition. A = (, Z, f, z0 , Za ) heit endlicher Zweiweg-Automat def A ist eine 1-Band-TM mit - endliche Menge, , + (Eingabealphabet) - Z endliche Menge (Zustandsmenge) - f : Z ( {, +}) Z {L, R, 0} totale Funktion (Uberfhrungsfunktion) u mit f (z, ) Z {R, 0} und f (z, +) Z {L, 0} - z0 Z (Startzustand) a - Za Z (akzeptierende Zustnde) x heit von A akzeptiert def beim Start auf x+ im Zustand z0 und dem Kopf auf nimmt A irgendwann einen Zustand aus Za an. L(A) =def {x : x und A akzeptiert x} Denition. A = (, Z, f, z0 , Za ) heit nichtdeterminist. endlicher Zweiweg-Automat def A ist eine 1-Band-TM mit - endliche Menge, , + (Eingabealphabet) - Z endliche Menge (Zustandsmenge) - f : Z ( {, +}) P(Z {L, R, 0}) totale Funktion (Uberfhrungsfunktion) u mit f (z, ) Z {R, 0} und f (z, +) Z {L, 0} - z0 Z (Startzustand) a - Za Z (akzeptierende Zustnde) x heit von A akzeptiert def beim Start auf x+ im Zustand z0 und dem Kopf auf nimmt A irgendwann auf irgendeinem Rechenweg einen Zustand aus Za an. L(A) =def {x : x und A akzeptiert x} Satz 1.35 Fr eine Sprache L sind folgende Aussagen quivalent: u a (1) L ist regulr. a (2) L wird von einem endlichen Zweiweg-Automaten akzeptiert. (3) L wird von einem nichtdeterministischen endlichen Zweiweg-Automaten akzeptiert.

1.9

Grammatiken und regulre Sprachen a

Die Chomsky-Hierarchie Konzepte fr algorithmische Beherrschung von Sprachen: u Entscheidung (Akzeptierung) durch Algorithmen Erzeugung durch Grammatiken Generativer Grammatikbegries nach Chomsky: Regelbasierte Grammatik erzeugt alle syntaktisch korrekten Stze a Zunchst fr natrliche Sprachen gedacht, erfolgreicher aber in der Informatik. a u u

12

Denition. G = (, N, S, R) heit (generative) Grammatik def endliche Menge (Terminalsymbole) N endliche Menge (Nichtterminalsymbole) mit N = S N (Startsymbol) R ( N )+ ( N ) (Erzeugungsregeln) fr (v, w) R schreiben wir auch v w u Erzeugung von Sprachen durch generative Grammatiken: Denition. Sei G = (, N, S, R) Grammatik. v, w ( N ) , t 0 v = w def es existieren u1 , u2 , x, y mit (x, y) R, v = u1 xu2 , w = u1 yu2 G (G erzeugt w aus v in einem Schritt) v = w def es existieren w0 , w1 , . . . , wt ( N ) gibt mit G v = w0 = w1 = w2 . . . wt1 = wt = w (G erzeugt w aus v in t Schritten) v = w def es existiert t 0 mit v = w
G t G G G t

Beachte: w = w gilt immer


G

(G erzeugt w)

L(G) =def {w : w

und S = w}
G

(die von G erzeugte Sprache)

L(G) besteht nur aus Terminalsymbolwrter o Nichtterminalsymbole sind Hilfszeichen: werden bei Erzeugung bentigt o mssen zum Schlu eliminiert werden u a Denition. Grammatiken G und G heien quivalent def L(G) = L(G ) Klassizierung der Grammatiken nach Chomsky: Denition. Sei G = (, N, S, R) eine Grammatik. G heit Grammatik vom Typ 0. G heit Grammatik vom Typ 1 oder kontextsensitive Grammatik def jede Regel hat die Form u1 Au2 u1 wu2 mit A N , u1 , u2 , w ( N ) , w = G heit Grammatik vom Typ 2 oder kontextfreie Grammatik def jede Regel hat die Form A w mit A N , w ( N ) , w = G heit Grammatik vom Typ 3 oder rechtslineare Grammatik def jede Regel hat die Form A aB oder A a mit A, B N , a Eigenschaft 1.36 G vom Typ i + 1 = G vom Typ i (i = 0, 1, 2)

kontextsensitiv Ersetzung von A durch w nur mit gegebenen Kontext kontextfrei Ersetzung von A durch w ohne Einschrnkung a Regeln von Grammatiken der Typen 1, 2, und 3 verkrzen ein Wort nie u = kann nicht aus Startsymbol erzeugt werden. Nehmen nach Belieben zur erzeugten Wortmenge dazu.

13

Denition. Sei i {0, 1, 2, 3}, L . L heit Sprachen vom Typ i def es existiert Grammatik vom Typ i mit L = L(G) oder L = L(G) {} L heit kontextsensitiv def L ist vom Typ 1 L heit kontextfrei def L ist vom Typ 2 Li =def {L : L ist Sprache vom Typ i} Eigenschaft 1.37 L3 L2 L1 L0 Es gilt sogar Eigenschaft 1.38 L3 L2 L1 L0 Wir werden an den entsprechende Stellen Sprachen angeben, die in der jeweils greren Klasse, o aber nicht in der nchstkleineren Klasse liegen. a o Als Beispiel fr L3 L2 kann die Menge der symmetrischen Wrter uber {a, b} dienen, die u nicht vom Typ 3 (Beweis durch Pumping-Lemma), aber vom Typ 2 ist. Sprachen vom Typ 3 Satz (1) (2) (3) 1.39 Fr eine Sprache L sind aquivalent: u L regulr. a L Sprache vom Typ 3. L wird von Grammatik mit Regeln der Form A aB, A a, A erzeugt (A, B Nichtterminalsymbole, a Terminalsymbol) (Chomsky-Hierarchie)

2
2.1

Kontextfreie Sprachen
Bekanntes

CFL =def die Klasse aller kontextfreien Sprachen. Satz 2.1 Eine Sprache ist genau dann kontextfrei, wenn sie von einer Grammatik (, N, S, R) erzeugt werden kann, deren Regeln die Form A w mit A N und w ( N ) besitzen. Satz 2.2 (Pumping-Lemma fr kontextfreie Sprachen, uvwxy-Theorem) u Ist L kontextfrei, so gibt es n0 > 0 mit: Fr jedes z L mit |z| n0 gibt es eine Zerlegung z = uvwxy mit u - |vwx| n0 - |vx| > 0 u - uv k wxk y L fr k 0.

14

2.2

Normalformen

Denition. Die Grammatik G = (, N, S, R) besitzt die Chomsky-Normalform def G besitzt nur Regeln der Form A BC und A a mit A, B, C N und a . Satz 2.3 Fr jede kontextfreie Sprache L gibt es eine Grammatik G in Chomsky-Normalform u mit L(G) = L {}. Denition. Die Grammatik G = (, N, S, R) besitzt die Greibach-Normalform def G besitzt nur Regeln der Form A aBC, A aB und A a mit A, B, C N und a . Satz 2.4 Fr jede kontextfreie Sprache L gibt es eine Grammatik G in Greibach-Normalform u mit L(G) = L {}.

2.3

Abschlueigenschaften

Satz 2.5 1. Die Klasse CFL ist abgeschlossen unter Vereinigung, Durchschnitt mit regulren Mengen, Konkatenation, Iteration, Homomorphismus und inversen Homomorra phismus. 2. Die Klasse CFL ist nicht abgeschlossen unter Durchschnitt und Komplement.

2.4

Komplexitt a

Satz 2.6 Die kontextfreien Sprachen knnen von RAMs in der Zeit O(n3 ) entschieden werden o (CYK-Algorithmus). Bemerkungen. 1. Der CYK-Algorithmus kann von einer TM in der Zeit O(n4 ) realisiert werden. 2. Die kontextfreien Sprachen knnen von RAMs in der Zeit O(n2 logn) entschieden werden. o 3. Die kontextfreien Sprachen knnen von TMn in der Zeit O(n2,496 ) entschieden werden. o Satz 2.7 Die kontextfreien Sprachen knnen von nichtdeterministischen TMn in der Zeit n o entschieden werden. Lemma 2.8 Sei G = (, N, S, R) eine Grammatik in Chomsky-Normalform. Fr jedes A u N und w mit A = w gibt es ein B N und w1 , w2 , w3 mit w = w1 w2 w3 , A = w1 Bw3 , B = w2 und 1 |w| |w2 | 2 |w|. 3 3
G G G

Satz 2.9 Die kontextfreien Sprachen knnen von TMn im Raum (logn)2 entschieden werden. o

15

2.5

Kellerautomaten

Ein Kellerautomat (auch Pushdown-Automat) ist eine eingeschrnkte Turingmaschine mit zwei a Bndern: a Einweg-Eingabeband: Kopf bewegt sich nie nach links und schreibt nichts. Auf erstem rechts vom Eingabewort bleibt Kopf stehen. Keller (oder Pushdown, Stack, lifo-Speicher, Magazinspeicher): nur linksseitig unendlich, Inhalt . . . x mit x , x heit Kellerwort Ist x = so heit der linkeste Buchstabe von x Topsymbol, Kopf steht immer dort. Denition. M = (, , Z, f, z0 ) nichtdeterministischer Kellerautomat def endl. Eingabealphabet mit endl. Kelleralphabet mit endl. Zustandsmenge Z mit dem Startzustand z0 Z Uberfhrungsfunktion f : Z ( {}) P(Z ) u f (z, a, A) = (z , u) auch als Befehl zaA z u geschrieben. Ein Befehl zA z u heit -Befehl.

Denition. Sei M = (, , Z, f, z0 ) nichtdeterministischer Kellerautomat. Eine Konguration (wzv, x) von M beschreibt folgende Situation: Auf dem Eingabeband steht das Wort wv , der Eingabebandkopf steht im Feld rechts neben w, M bendet sich im Zustand z Z und das Kellerwort ist x Sei a , w, w , v, v , A , u, x, x , z, z Z, t 0. u Der Befehl zaA z u uberfhrt die Situation (wzav, Ax) in die Situation (waz v, ux). u Der Befehl zA z u uberfhrt die Situation (wzv, Ax) in die Situation (wz v, ux). (wzv, x) = (w z v , x ) def die Situation (wzv, x) wird durch Anwendung eines u Befehles von M in die Situation (w z v , x ) uberfhrt. t (wzv, x) = (w z v , x ) def es gibt Situationen S0 , S1 , . . . , St mit M (wzv, x) = S0 = S1 = . . . = St1 = St = (w z v , x ) (wzv, x) = (w z v , x ) def es gibt ein t 0 mit (wzv, x) = (w z v , x ).
M M M M M M t M

Fr die Akzeptierung verwenden wir ein spezielles Symbol . Die Eingabe w heit von u M akzeptiert, falls es einen Zustand z mit (z0 w, ) = (wz, ) gibt. L(M ) =def {w : M akzeptiert w}.
M

Satz 2.10 Fr eine Sprache L sind folgende Aussagen quivalent: u a (1) L ist kontextfrei. (2) L kann von einem nichtdeterministischen Kellerautomaten akzeptiert werden. (3) L kann von einem nichtdeterministischen Kellerautomaten mit nur einem Zustand und Befehlen der Form zaA zu mit a = und |u| 2 akzeptiert werden. Folgerung 2.11 Jede kontextfreie Sprache kann akzeptiert werden 16

1. von einem nichtdeterministischen Kellerautomaten in der Zeit n, 2. von einer nichtdeterministischen Turingmaschine mit einem 1-Weg-Eingabeband un einem Arbeitsband in der Zeit 2n und 3. von einer nichtdeterministischen Turingmaschine mit drei Arbeitsbndern in der Zeit n. a Bemerkung. Es gibt eine interessante Beziehung zwischen kontextfreien Sprachen und Linearzeitsprachen. Fr eine Sprache L sind folgende Aussagen quivalent: u a (1) L kann von einer nichtdeterministischen Mehrband-Turingmaschine in der Zeit n akzeptiert werden. (2) L kann von einer nichtdeterministischen Mehrband-Turingmaschine in der Zeit O(n) akzeptiert werden. (2) L kann aus kontextfreien Sprachen durch die Anwendung durch Durchschnittsbildung und -freie Homomorphismen erzeugt werden.

2.6

Deterministisch-kontextfreie Sprachen

Alternative Akzeptierungsweise mit akzeptierenden Zustnden. a Denition. M = (, , Z, f, z0 , Z ) nichtdeterministischer Kellerautomat mit akzeptierenden Zustnden def a endl. Eingabealphabet mit endl. Kelleralphabet mit endl. Zustandsmenge Z mit dem Startzustand z0 Z Uberfhrungsfunktion f : Z ( {}) P(Z ) u f (z, a, A) = (z , u) auch als Befehl zaA z u geschrieben. Ein Befehl zA z u heit -Befehl. a - Z Z ist die Menge der akzeptierenden Zustnde

Denition. Sei M = (, , Z, f, z0 , Z ) ein nichtdeterministischer Kellerautomat mit akzeptierenden Zustnden. a - Die Eingabe w heit von M akzeptiert, falls es einen Zustand z Z und ein x mit (z0 w, ) = (wz, x) gibt. - L(M ) =def {w : M akzeptiert w}. Satz 2.12 Eine Sprache ist genau dann kontextfrei, wenn sie von einem nichtdeterministischen Kellerautomaten mit akzeptierenden Zustnden akzeptiert werden kann. a Denition. - Ein nichtdeterministischen Kellerautomaten mit akzeptierenden Zustnden, der fr jede a u Situation hchstens einen Befehl besitzt, heit deterministischer Kellerautomat. o - DCFL =def {L(M ) : M deterministischer Kellerautomat}. Lemma 2.13 1. Die Sprache der korrekten Klammerwrter ist in DCFL. o 2. {w#wR : w {a, b} } DCFL. 3. PAL =def {wwR : w {a, b} } DCFL. 17
M

4. L0 =def {an bm ck : n, m, k 1 (m = m m = k)} DCFL. Satz 2.14 REG DCFL CFL. Satz 2.15 Die Klasse DCFL ist 1. abgeschlossen unter Komplement und Durchschnitt mit regulren Sprachen und a 2. nicht abgeschlossen unter Vereinigung, Durchschnitt, Konkatenation, Iteration und freien Homomorphismen.

2.7

Entscheidbarkeitsfragen

Satz 2.16 Das Problem w L(G) ist fr kontextfreie Grammatiken G in der Zeit O(n4 ) u entscheidbar. Satz 2.17 Das Problem L(G) = ist fr kontextfreie Grammatiken G in der Zeit O(n2 ) u entscheidbar. a u Bemerkung. Die Probleme w L(G) und L(G) = sind sogar log -vollstndig fr P. m Das Postsche Korrespondenzproblem Denition. (Postsches Korrespondenzproblem) Fr ein Alphabet sei u PKP =def {(u1 , v1 )(u2 , v2 ) . . . (um , vm ) : m 1, u1 , . . . , um , v1 , . . . , vm und es existieren r 1 und i1 , . . . , ir {1, . . . , m} mit ui1 . . . uir = vi1 . . . vir }. Satz 2.18 Fr jedes Alphabet mit # 2 ist PKP unentscheidbar. u u Satz 2.19 Die Probleme L(G) L(G ) = , L(G) L(G ) und L(G) = L(G ) sind fr kontextfreie Grammatiken G und G unentscheidbar. Bemerkung. Der Beweis von Satz 2.19 zeigt, da die Probleme L(G) L(G ) = und u L(G) L(G ) auch fr deterministisch-kontextfreie Sprachen unentscheidbar sind. Hingegen u ist L(G) = L(G ) fr deterministisch-kontextfreie Sprachen entscheidbar.

2.8

Kontextfreie Sprachen und Gruppoide

Denition. 1. (M, ) heit Gruppoid, falls M ein Menge und eine zweistellige Operation auf M ist. 2. Fr h : M denieren wir den Pseudohomomorphismus h : + M : u h(a) =def {h(a)} fr a und h(x) =def u,v= mit x=uv h(u) h(v) fr x mit |x| 2. u u

3. x heit vom Gruppoid (M, ) mit P M und h : M deniert def h(x)P = . 4. {x : h(x) P = } ist die vom Gruppoid (M, ) mit P M und h : M akzeptierte Sprache. Denition. G = (, N, S, R) heit erweiterte Grammatik def - , N und R wie bei Grammatiken. - S N (Menge von Startsymbolen) 18

Denition. Sei G = (, N, S, R) erweiterte Grammatik. t - = , = und = wie bei Grammatiken.


G G G

- L(G) =def {w : w und es gibt ein A S mit A = w} G (die von G erzeugte Sprache) Denition. Eine erweiterte Grammatik G = (, N, S, R) in Chomsky-Normalform heit eindeutig def - Aus (A1 u), (A2 u) in R folgt A1 = A2 . - Fr alle B, C N gibt es ein A N mit (A BC) in R. u - Fr alle a gibt es ein A N mit (A a) in R. u Satz 2.20 Zu jeder kontextfreien Grammatik G gibt es eine eindeutige erweiterte Grammatik G in Chomsky-Normalform mit L(G) = L(G ). Satz 2.21 Eine Sprache L mit L ist genau dann kontextfrei, wenn sie von einem Gruppoid akzeptiert werden kann.

Kontextsensitive Sprachen

CSL =def ist die Klasse der kontextsensitiven Sprachen.

3.1

Nichtverkrzende Grammatiken u

Denition. Eine Grammatik G = (, N, S, R) heit genau dann nichtverkrzend, wenn fr u u jede Regel u v in R die Beziehung |u| |v| gilt. Satz 3.1 Eine Sprache L ist genau dann kontextsensitiv, wenn es eine nichtverkrzende Gramu matik G mit L(G) = L {} gibt.

3.2

Linear beschrnkte Automaten a

Denition. Eine nichtdeterministische Turingmaschine, die mit Raumbedarf O(n) arbeitet, heit linear beschrnkter Automat. a Satz 3.2 Eine Sprache L ist genau dann kontextsensitiv, wenn sie von eine linear beschrnkten a Automaten akzeptiert werden kann.

3.3

Abschlueigenschaften

Satz 3.3 1. Die Klasse CSL ist abgeschlossen unter Vereinigung, Durchschnitt, Komplement, Konkatenation, Iteration, -freien Homomorphismen und inversen Homomorrphismen. 2. Die Klasse CSL ist nicht abgeschlossen unter beliebigen Homomorphismen. Satz 3.4 (Satz von Immerman und Szelepcsenyi) Die Klasse CSL ist abgeschlossen unter Komplement. 19

4
4.1

Typ-0-Sprachen
Aufzhlbare Mengen a

Denition. Ein Menge A heit Projektion einer Menge B, wenn x A y((x, y) B) fr u alle x gilt. Satz 4.1 Fr eine Sprache L sind folgende Aussagen quivalent: u a (1) (2) (2) (3) L L0 . L ist das homomorphe Bild einer kontextsensitiven Sprache. L ist die Projektion einer kontextsensitiven Sprache. L ist aufzhlbar. a

4.2

Abschlueigenschaften

Satz 4.2 1. Die Klasse L0 ist abgeschlossen unter Vereinigung, Durchschnitt, Konkatenation, Iteration, Homomorphismen und inversen Homomorrphismen. 2. Die Klasse L0 ist nicht abgeschlossen unter Komplement.

Ubersicht uber die Abschlueigenschaften der Klassen der Chomsky-Hierarchie: L3 = REG L2 + + + + + + + + + = CFL L1 + + + + + + + = CSL L0 = RE + + + + + + + + + + + + + + + +

Vereinigung Durchschnitt mit regulren Sprachen a Durchschnitt Komplement Konkatenation Iteration freie Homomorphismen beliebige Homomorphismen inverse Homomorphismen

20