31.03.2014 Aufrufe

Algebraische Automatentheorie - stinfwww

Algebraische Automatentheorie - stinfwww

Algebraische Automatentheorie - stinfwww

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Algebraische</strong> <strong>Automatentheorie</strong><br />

gelesen von<br />

Prof. Dr. Droste<br />

7. Juli 2004


L A TEX-Mitschrift der Vorlesung ”<br />

<strong>Algebraische</strong> <strong>Automatentheorie</strong>“ gelesen von Prof. Dr. Droste<br />

an der Uni Leipzig im Sommersemester 2004, angefertigt durch M. Quasthoff.<br />

Die aktuelle Version des Dokuments befindet sich auf der Seite<br />

http://<strong>stinfwww</strong>.informatik.uni-leipzig.de/∼mai01cot/


Inhaltsverzeichnis<br />

3


Kapitel 1<br />

Sprachen und Automaten<br />

Definition 1.1 Ein Alphabet ist eine endliche nichtleere Menge. Seine Elemente heißen Buchstaben.<br />

Sei A Alphabet. n ∈ Æ → A n = {a 1 ,a 2 , ... a n | a 1 , ..., a n ∈ A}.<br />

ε =leeres Wort mit Länge 0, A 0 = {ε}<br />

A ∗ = {alle Wörter über A} = ⋃ n≥0 An<br />

A + = A ∗ \ A 0<br />

Sei L ⊆ A ∗ . Dann heißt L Sprache über A.<br />

Definition 1.2 Sei A ein Alphabet, L, L 1 ,L 2 ⊆ A ∗ .<br />

L 1 ∪ L 2 =mengentheoretische Vereinigung von L 1 und L 2 .<br />

L 1 · L 2 = {uv | u ∈ L 1 ,v ∈ L 2 }<br />

L 0 := {ε}, L 1 := L, L n+1 := L n · L (n ∈ Æ)<br />

L n = {u 1 ...u n | u 1 , ..., u n ∈ ̷L}<br />

L ∗ = ⋃ n≥0 Ln<br />

L + = ⋃ {<br />

L<br />

∗<br />

falls ε ∈ L<br />

n≥1 Ln =<br />

L ∗ \ L 0 falls ε ∉ L<br />

Beispiel 1.1 A = {a, b}, L = {w ∈ A ∗ | w endet auf ab} = A ∗ ·{ab}<br />

Ein endlicher Automat ist eine ”<br />

Black Box“ mit endlich vielen inneren Zuständen. Eintreten<br />

eines Ereignissses/Eintreffen eines Zeichens führen zu einer Zustandsänderung.<br />

Definition 1.3 Ein (nichtdeterministischer) Automat (Transitionssystem) über A ist ein Quadrupel<br />

A =(Q, T, I, F )mit:<br />

• Q: Menge (von Zuständen“)<br />

”<br />

• T ⊆ Q × A × Q: Menge der Transitionen<br />

• I, F ⊆ Q: Menge der initialen bzw. finalen Zustände<br />

A ist<br />

• endlich, falls Q endlich ist.<br />

1


2 KAPITEL 1. SPRACHEN UND AUTOMATEN<br />

• deterministisch, falls |I| = 1 und ∀(q, a, r), (q, a, r ′ ) ∈ T : r = r ′ (Folgezustände<br />

sind eindeutig bestimmt)<br />

• vollständig, falls ∀q ∈ Q, a ∈ A : ∃r ∈ Q :(q, a, r) ∈ T<br />

(q, a, r) ∈ T bedeutet: A befindet sich im Zustand q und geht nach Eintreffen des Ereignisses<br />

/ Symbols a in den Folgezustand r über. Man schreibt q → a r.<br />

A ist deterministisch und vollständig, genau dann wenn |I| = 1 und T eine Abbildung<br />

δ : Q × A → Q durch δ(q, a) :=r mit (q, a, r) ∈ T definiert.<br />

Sei A = (Q, T, I, F ) ein Automat. Eine Berechnungsfolge(Pfad, Weg) ist ein e Folge<br />

t 1 · t 2 · ...· t n von Transitionen t i ∈ T der Form t i =(q i−1 ,a i ,q i ), i =1, ..., n.<br />

Dann heißt<br />

a 1 a 2 ...a n<br />

q 0<br />

q n<br />

n<br />

−→<br />

a<br />

q<br />

1 a<br />

} 0 q<br />

2<br />

{{ } } 1<br />

{{ }<br />

t 1<br />

a −→ ...q n−1 −→<br />

n<br />

qn<br />

} {{ }<br />

t 2<br />

⎫<br />

Symbolfolge<br />

Anfangszustand<br />

⎪⎬<br />

von t<br />

Endzustand<br />

1 ...t n = u<br />

⎪⎭<br />

Länge<br />

dom(u) :=q 0 ,cod(u) :=q n (domain und codomain)<br />

ε =leere Berechnungsfolge mit Länge 0.<br />

BF(A) ={alle Berechnungsfolgen von A}<br />

u ∈ BF(A) erfolgreich :⇔ dom(u) ∈ I, cod(u) ∈ F<br />

ε erfolgreich :⇔ I ∩ F ≠ ∅<br />

w ∈ A ∗ wird von A erkannt / akzeptiert ⇔∃erfolgreiche Berechnungsfolge u ∈ BF(A)<br />

mit Symbolfolge w.<br />

A akzeptiert ε :⇔ I ∩ F ≠ ∅<br />

L(A) :={w ∈ A ∗ |Aakzeptiert w} =vonA akzeptierte / erkannte Sprache.<br />

Eine Sprache L ⊆ A ∗ heißt erkennbar (recognizable) :⇔∃endlicher Automat mit L = L(A)<br />

(Schreibweise L ∈ Rec(A)).<br />

In Bildern häufig:<br />

• Kreis Zustände<br />

• Quadrat auf der Spitze oder Kreis mit Pfeil rein Anfangszustände<br />

• Doppelkreis oder Kreis mit Pfeil raus Endzustände<br />

• Kreis mit Quadrat auf der Spitze drin Anfangs- und Endzustände<br />

Beispiel 1.2 A = {a, b}, Q = {1, 2, 3, 4}, I = {1}, F = {3}.<br />

A mit T = {(1,a,2), (2,a,2), (3,a,2), (1,b,1), (2,b,3), (3,b,1)} ist deterministisch und<br />

vollständig.<br />

L(A) ={w ∈ A ∗ | w endet auf ab}<br />

A + mit T + = {(1,a,1), (1,b,1), (1,a,2), (2,b,3)} ist weder deterministisch noch vollständig,<br />

es gilt aber L(A + )=L(A)<br />

t n


3<br />

Beispiel 1.3 mussmanabgemalthaben.Wirdabernocheingefügt.<br />

Beispiel 1.4 A mit Q = {1, 2, 3}, I = {1}, F = {2},<br />

T = {(1,a,2), (2,a,3), (3,a,3), (1,b,3), (2,b,2), (3,b,3)} ist vollständig und deterministisch.<br />

L(A) ={ab k | k ≥ 0} = ab ∗<br />

Satz 1.4 Sei A ein endlicher Automat. Dann existiert ein endlicher vollständiger deterministischer<br />

Automat A ′ mit L(A ′ )=L(A).<br />

Beweis Sei A =(Q, T, I, F ). Definiere A ′ =(Q ′ ,T ′ ,I ′ ,F ′ ) wie folgt:<br />

• Q ′ = P(Q) (ist endlich, da Q endlich ist)<br />

• I ′ = {I ′ }<br />

• F ′ = {U ⊆ Q | U ∪ F ≠ ∅}<br />

• Für U, V ⊆ Q, a ∈ A gelte:<br />

(U, a, V ) ∈ T ′ :⇔ V = {r ∈ Q |∃q ∈ U :(q, a, r) ∈ T }<br />

V ist durch U und a eindeutig bestimmt ⇒A ′ ist deterministisch und vollständig.<br />

L(A ′ ) ⊇ L(A):<br />

a<br />

Sei w = a 1 ...a n ∈ L(A) beliebig, fest. ⇒∃Berechnungsfolge q<br />

1 a<br />

0 →<br />

2<br />

q1 → ... →<br />

a<br />

q n→<br />

n−1 qn in A mit q 0 ∈ I, q n ∈ F .<br />

Sei U 0 = I. IstU i−1 ⊆ Q definiert mit q i−1 ∈ U i−1 ,soseiU i = {r ∈ Q |∃q ∈ U i−1 :<br />

(q, a i ,r) ∈ T }⇒q i ∈ U i und (U i−1 ,a i ,U i ) ∈ T ′ a<br />

⇒ I = U<br />

1 a<br />

0 →<br />

2<br />

a U1 → ... → Un−1 n→<br />

U n ist Berechnungsfolge in A ′ mit Symbolfolge w und q n ∈ U n ∩ F ,alsoU n ∈ F ′<br />

⇒ w ∈ L(A ′ )<br />

L(A ′ ) ⊆ L(A):<br />

Sei w = a 1 ...a n ∈ L(A ′ a<br />

) beliebig, fest. ⇒∃Berechnungsfolge U<br />

1 a<br />

0 →<br />

2<br />

U1 → ... →<br />

a<br />

U n→<br />

n−1 Un in A ′ mit U 0 = I, U n ∈ F ′ . ⇒ U n ∩ F ≠ ∅. Wähle q n ∈ U n ∩ F beliebig.<br />

Wegen (U n−1 ,a n ,U n ) ∈ T ′ existiert nach Definition von T ′ ein q n−1 ∈ U n−1 mit<br />

(q n−1 ,a n ,q n ) ∈ T .<br />

induktiv<br />

=⇒ ∃q i ∈ U i mit (q i−1 ,a i ,q i ) ∈ T (i = n, ..., 1).<br />

a<br />

⇒ q<br />

1 a<br />

0 →<br />

2<br />

a q1 → ... → qn−1 n→ qn ist Berechnungsfolge in A mit Symbolfolge w, q n ∈ F ,<br />

q i ∈ U 0 = I.<br />

⇒ w ∈ L(A)<br />

ε ∈ L(A)<br />

⇒ L(A ′ )=L(A)<br />

ε ∈ L(A) ⇔ I ∩ F = ∅<br />

⇔ I ∈ F ′<br />

⇔ I ′ ∩ F ′ ≠ ∅<br />

⇔ ε ∈ L(A ′ )


4 KAPITEL 1. SPRACHEN UND AUTOMATEN<br />

Beispiel 1.5 Anwendung der obigen Konstruktion auf den Automaten A ∗ aus Beispiel 1.2 mit<br />

A = {a, b}, Q = {1, 2, 3}, I = {1}, F = {3}, T = {(1,a,1), (1,b,1), (1,a,2), (2,b,3)}<br />

führt zu<br />

A ′ = A, Q ′ = {∅, {1}, {2}, {3}, {1, 2}, {2, 3}, {3, 1}, {1, 2, 3}}, I ′ = I, F = {{3}, {1, 2}, {2, 3}, {1, 2, 3}},<br />

T = {({1}, a,{1, 2}), ({1}, b,{1}), ({1, 2}, a,{1, 2}), ({1, 2}, b,{1, 3}),<br />

({1, 3}, a,{1, 2}), ({1, 3}, b,{1}), ({1, 2, 3}, a,{1, 2}), ({1, 2, 3}, b,{1, 3}),<br />

({2}, b,{3}), ({3}, b,∅}), ({3}, a,∅}), ({2}, a,∅}), ({2, 3}, a,∅}), ({2, 3}, b,∅}), }<br />

Hilfsmittel Ein Automat A =(Q, T, I, F ) heißt normalisiert, gdw.<br />

• |I| = |F | =1<br />

• ∀(q, a, r) ∈ T : r ∉ I, q ∉ F<br />

d. h. Initial- und Finalzustände sind eindeutig und es gibt keine Transitionen in den Initialzustand<br />

oder aus dem Finalzustand heraus.<br />

Lemma 1.5 Sei A =(Q, T, I, F ) ein Automat. Dann gibt es einen normalisierten Automaten<br />

A ′ mit L(A ′ )=L(A) \{ε}.<br />

Beweis Definiere A ′ =(Q ′ ,T ′ ,I ′ ,F ′ ) wie folgt:<br />

Q = Q ∪{i, ·<br />

f} wobei i, f ∉ Q.<br />

I ′ = {i}, F ′ = {f}<br />

T ′ = T ∪ T 1 ∪ T 2 ∪ T 3 ,wobei<br />

• T 1 = {(i, a, q)} |a ∈ A, ∃p ∈ I :(p, a, q) ∈ T }<br />

• T 2 = {(p, a, f)} |a ∈ A, ∃q ∈ F :(p, a, q) ∈ T }<br />

• T 2 = {(i, a, f)} |a ∈ A, ∃p ∈ I, q ∈ F :(p, a, q) ∈ T }<br />

⇒A ′ ist normalisiert<br />

Sei nun ε ≠ w ∈ A ∗ a<br />

,etwaw = a 1 ...a n mit a i ∈ A. w ∈ L(A) ⇔∃Berechnungsfolge q<br />

1<br />

0 →<br />

a<br />

q<br />

2<br />

a<br />

1 → ...→ qn−1<br />

n→<br />

qn in A mit q 0 ∈ I, q n ∈ F .<br />

⇔∃Berechnungsfolge i a 1 a<br />

→ q<br />

2<br />

a<br />

1 → ...→ qn−1<br />

n→<br />

f in A ′ .<br />

⇔ w ∈ L(A ′ )<br />

=⇒ L(A ′ )=L(A) \{ε}<br />

Satz 1.6 Sei A ein Alphabet.<br />

(a) ∅ ist erkennbar.<br />

∀a ∈ A : {a} ist erkennbar<br />

(b) L, L 1 ,L 2 ⊆ A ∗ seien erkennbar.<br />

⇒ L C = A ∗ \ L, L 1 ∪ L 2 ,L 1 · L 2 ,L ∗ sind erkennbar<br />

Beweis Zum Beweis von (a) siehe Übungsaufgabe (1).<br />

(b) Voraussetzung ⇒ ∃ endliche Automaten A, A ∞ , A ∈ mit L(A) = L, L(A ∞ ) =<br />

L 1 ,L(A ∈ )=L 2 .


Zu L C Satz 1.4<br />

: =⇒ Es existiert ein vollständiger deterministischer Automat A det mit L(A det )=<br />

L(A). Sei A det =(Q, T, I, F ). Definiere A C := (Q, T, I, F C ). Für jedes w ∈ A ∗<br />

gibt es genau eine Berechnungsfolge u in A det mit Symbolfolge w und dom(u) ∈ I,<br />

da A det vollständig und deterministisch ist. Es gilt<br />

w ∈ L(A det ) ⇔ cod(u) ∈ F<br />

trivial<br />

⇔<br />

cod(u) ∉ F C<br />

⇔ w ∉ L(A C )<br />

Also gilt L(A C )=(L(A det )) C = L C . Somit ist L C erkennbar.<br />

Zu L 1 ∪ L 2 : Sei A i =(Q i ,T i ,I i ,F i ), i =1, 2 und Q 1 ∩ Q 2 = ∅.<br />

Bilde A ∪ := (Q 1 ∪ Q 2 ,T 1 ∪ T 2 ,I 1 ∪ I 2 ,F 1 ∪ F 2 )<br />

⇒ L(A ∪ ) klar = L(A 1 ) ∪ L(A 2 )=L 1 ∪ L 2 ⇒ L 1 ∪ L 2 erkennbar.<br />

Zu L 1 · L 2 : Bilde mittels Lemma 1.5 normalisierte Automaten A ′ j =(Q′ j ,T′ j ,I′ j ,F′ j ),<br />

j =1, 2mitI j ′ = {i j}, F j ′ = {f j} und L(A ′ j )=L(A′ j ) \{ε} = L j \{ε}.<br />

Man schaltet A ′ 1 und A′2 ” in Serie“ (d. h. man identifiziert f 1 mit i 2 ) und erhält<br />

einen neuen Automaten A ◦ .<br />

Initialzustände von A ◦ seien i 1 sowie f 1 = i 2 , falls ε ∈ L 1 ;Finalzustände von A ◦<br />

seien f 2 sowie f 1 = i 2 , falls ε ∈ L 2 .<br />

Zu zeigen ist L(A ◦ )=L 1 · L 2 .<br />

Fall 1: ε ∉ L 1 ∪ L 2 .<br />

⇒ L(A ◦ ) klar = L(A ′ 1 ) · L(A′ 2 )=L 1 · L 2 .<br />

Fall 2: ε ∈ L 1 \ L 2 .<br />

⇒ L(A ◦ )=(L(A ′ 1 ) · L(A′ 2 )) ∪ L(A′ 2 )=(L 1 \{ε}) · L 2 ∪ L 2 = L 1 · L 2 .<br />

Fall 3: ε ∈ L 2 \ L 1 .<br />

⇒ L(A ◦ )=L(A ′ 1 ) ∪ (L(A′ 1 ) · L(A′ 2 )) = L 1 ∪ L 1 · (L 2 \{ε}) =L 1 · L 2 .<br />

Fall 4: ε ∈ L 1 ∩ L 2 .<br />

⇒ L(A ◦ )=L(A ′ 1 ) ∪ (L(A′ 1 ) · L(A′ 2 )) ∪ L(A′ 2 ) ∪{ε} =(L 1 \{ε}) ∪ (L 1 \{ε}) ·<br />

(L 2 \{ε}) ∪ (L 2 \{ε}) ∪{ε} = L 1 · L 2 .<br />

Zu L ∗ : Sei A ′ =(Q ′ ,T ′ ,I ′ ,F ′ ) ein normalisierter Automat mit I ′ = {i}, F ′ = {f}<br />

und L(A ′ )=L(A) \{ε} = L \{ε}. Man bildet aus A ′ den Automaten A ∗ ,indem<br />

i und f identifiziert werden (d. h. man schaltet A ′ mit sich selbst im Kreis).<br />

⇒ L(A ∗ )={ε}∪L(A ′ ) ∪ L(∪A ′ ) 2 ∪ L(∪A ′ ) 3 ∪ ... =(L(A ′ )) ∗ =(L \{ε}) ∗ = L ∗ .<br />

⇒A ∗ akzeptiert L ∗ .<br />

Bemerkung Mit dem Beweis zu L 1 · L 2 behandelt man nur endliche Vereinigungen. L ∗ ist aber<br />

eine unendliche Vereinigung. Es gibt folgendes Gegenbeispiel einer unendlichen Vereinigung<br />

von Sprachen, die nicht erkennbar ist:<br />

A ist endlich ⇒ A ∗ ist abzählbar ⇒ L ist abzählbar. Sei L = {w i | i ∈ Æ}<br />

⇒ L = ⋃ i∈Æ {w i} ,aberL ist nicht erkennbar.<br />

} {{ }<br />

erkennbar<br />

Definition 1.7 Sei A ein Alphabet. Die Menge der rationalen Sprachen über A ist die kleinste<br />

Menge M von Sprachen über A, für die gilt:<br />

(i) ∅, {a} ∈M für alle a ∈ A.<br />

(ii) L, L 1 ,L 2 ∈ M ⇒ L 1 ∪ L 2 ,L 1 · L 2 ,L ∗ ∈ M<br />

5


6 KAPITEL 1. SPRACHEN UND AUTOMATEN<br />

Das heißt, eine Sprache L ⊆ A ∗ ist rational genau dann, wenn L sich aus den Einpunktmengen<br />

von A und der leeren Menge durch endlich häufige Anwendung von ∪, · und ∗<br />

konstruieren lässt.<br />

Beispiel {ε} ist rational, da {ε} = ∅ ∗ .<br />

Folgerung 1.8 Sei A ein Alphabet. Es gilt:<br />

(a) Das System der erkennbaren Sprachen über A ist abgeschlossen unter den üblichen<br />

mengentheoretischen Operationen ∪, C , ∩ und \, bildet also insbesondere eine Boolesche<br />

Algebra und enthält alle endlichen Teilmengen von A ∗ .<br />

(b) Jede rationale Sprache über A ist erkennbar.<br />

Beweis (a) L 1 ∩ L 2 =(L C 1 ∪ LC 2 )C , L 1 \ L 2 = L 1 ∩ L C 2<br />

w ∈ A ∗ ⇒{w} ist erkennbar, denn sei w = a 1 ...a n ,dannist{w} = {a 1 }·...·{a n }<br />

erkennbar (Satz 1.6 (a))<br />

E ⊆ A ∗ endlich ⇒ E = ⋃ w∈E {w} erkennbar.<br />

(b) siehe Definition von rational“ und Satz 1.6.<br />

”<br />

Satz 1.9 (Kleene, 1951) Sei A ein Alphabet, L ⊆ A ∗ .<br />

L ist erkennbar genau dann, wenn L rational ist.<br />

Beweis ⇐“: siehe Folgerung 1.8<br />

”<br />

⇒“: Sei A =(Q, T, I, F ) ein endlicher Automat mit L(A) =L.<br />

”<br />

Für i ∈ I, f ∈ F sei A i, f := (Q, T, {i}, {f}). Wegen L(A) = ⋃ i∈I,f∈F L(A i, f)<br />

genügt es, zu zeigen:<br />

∀i ∈ I, f ∈ F : L(A i, f ) ist rational.<br />

O. E. sei Q = {1, 2 ..., n}. Für m, l ∈ Q, k ≥ 0seiX (k)<br />

m, l<br />

die Menge aller Symbolfolgen<br />

w = a 1 ...a z ∈ A ∗ , z ≥ 0, für die es in A eine Berechnungsfolge<br />

u : m a 1 a<br />

→ q<br />

2<br />

a<br />

1 → ... →<br />

z<br />

qz−1 → l<br />

gibt mit ∀1 ≤ j ≤ z − 1: q j ≤ k.<br />

Das heißt, u führt in A von m nach l wobei zwischendurch nur Zustände aus {1, 2, ..., k}<br />

berührt werden.<br />

Für m = l ist auch w = ε zugelassen (setze z = 0). Es gilt:<br />

∀k ≥ 0:X (k+1)<br />

m, l<br />

= X (k)<br />

(<br />

m, l ∪ X(k) m, k+1 · X (k) ) ∗ (k)<br />

k+1,k+1 · X<br />

k+1,l<br />

(∗)<br />

Begründung: ⊇“istklar, ⊆“: Sei w ∈ X (k+1)<br />

” ” m, l<br />

\ X (k)<br />

m, l .<br />

⇒ w ist Symbolfolge einer Berechnungsfolge u von m nach l, dienurZustände aus<br />

{1, ..., k +1} berührt und mindestens einmal den Zustand k + 1. Betrachte alle<br />

Stellen, an denen u den Zustand k +1berührt und zerlege u und w entsprechend.<br />

⇒ w ∈ X (k) (<br />

m, k+1 · X (k) ) ∗ (k)<br />

k+1,k+1 · X<br />

k+1,l .EsistX(0) m, l<br />

⊆ A, alsoistX(0)<br />

m, l<br />

rational. Ist<br />

k ≥ 0mit∀m, l ∈ Q : X (k)<br />

m, l<br />

rational, so gilt nach (∗): ∀m, l ∈ Q : X(k+1)<br />

m, l<br />

rational.<br />

Induktiv folgt ∀i ∈ I, f ∈ F : X (n)<br />

i, f<br />

ist rational. Aus X(n)<br />

i, f = L(A i, f) folgt aber, dass<br />

L(A) rationalist.


7<br />

Lemma 1.10 (Pumping-Lemma) Sei A ein endlicher Automat mit n Zuständen. Sei w ∈<br />

L(A) mit|w| ≥n. Dann existiert eine Zerlegung w = x · y · z mit y ≠ ε und ∀k ≥ 0:<br />

x · y k · z ∈ L(A).<br />

Beweis Siehe Übungsaufgabe (4).<br />

Folgerung 1.11 L = {a n b n : n ≥ 0} ist nicht rational.<br />

Beweis Wäre L rational, so auch erkennbar nach Satz 1.9. Aus Lemma 1.10 und Übungsaufgabe<br />

(6) folgt, dass L nicht erkennbar ist.<br />

Satz 1.12 Gegeben seien endliche Automaten A, A ′ . Dann lassen sich maschinell endliche Automaten<br />

A C , A ∪ konstruieren mit L(A C )=L(A) C und L(A ∪ )=L(A) ∪ L(A∪A ′ ).<br />

Ferner lässt sich maschinell entscheiden, ob L(A) =∅, obL(A) =A ∗ ,obL(A) ⊆ L(A ′ )<br />

und ob L(A) =L(A ′ ).<br />

Beweis Zur ersten Aussage siehe Beweis von Satz 1.6 (b).<br />

Zum zweiten Teil: Entscheide, ob L(A) =∅ mittels (∗):<br />

L(A) =∅⇔∀w ∈ A ∗ , |w| ≤|Q|−1: w ∉ L(A).<br />

L(A) =A ∗ ⇔ L(A C )=∅.<br />

L(A) ⊆ L(A ′ ) ⇔ L(A) \ L(A ′ )=∅<br />

L(A) =L(A ′ ) ⇔ L(A) ⊆ L(A ′ ) und L(A) ⊇ L(A ′ )


8 KAPITEL 1. SPRACHEN UND AUTOMATEN


Kapitel 2<br />

Monoide und Kongruenzrelationen<br />

Ziel: Andere Charakterisierung erkennbarer Sprachen; Algebraisierung der Theorie erkennbarer<br />

Sprachen.<br />

Definition 2.1 Sei M eine Menge und · : M × M → M eine Abbildung.<br />

(a) (M, ·) heißt Semigruppe / Halbgruppe, falls · assoziativ ist, d. h. ∀a, b, c ∈ M :<br />

(a · b) · c = a · (b · c).<br />

(b) (M, ·) heißt Monoid, falls (M, ·) eine Semigruppe ist und ∃1 ∈ M : ∀x ∈ M : x · 1=<br />

x =1· x.<br />

(c) (M, ·) heißt Gruppe, falls (M, ·) Semigruppe ist und ∃1 ∈ M : ∀x ∈ M; (x · 1=x =<br />

1 · x) ∧ (∃y ∈ M : x · y =1=y · x)<br />

(d) (M, ·) heißt kommutativ / abelsch, falls ∀x, y ∈ M : x · y = y · x<br />

Bemerkung Es gilt:<br />

(i) (M, ·) ist Gruppe ⇒ (M, ·) istMonoid⇒ (M, ·) ist Semigruppe<br />

(ii) (M, ·) istMonoid⇒ das Elemenet 1 ∈ M ist eindeutig bestimmt. Begründung: Sei<br />

1, 1 ′ ∈ M mit ∀x ∈ M : x · 1=x =1· x, x · 1 ′ = x =1 ′ · x. Dann gilt 1 = 1 · 1 ′ =1 ′ .<br />

Beispiel 2.1 (a) (M, ·) =(A + , Konkatenation) ist Semigruppe, aber kein Monoid.<br />

(M, ·) =(A ∗ , Konkatenation) ist Monoid.<br />

(b) (Æ, +) mit 0 ∈ Æ ist kommutatives Monoid.<br />

(Æ, ·) ist kommutatives Monoid.<br />

(, +) ist abelsche Gruppe.<br />

(É \{0}, ·) ist abelsche Gruppe.<br />

(c) Sei S Menge, F := {f : S → S | f Abbildung}, · sei Hintereinanderausführung. ⇒<br />

(F, ·) ist ein Monoid mit 1 = id S .<br />

Definition 2.2 Seien M, M ′ Monoide und U ⊆ M.<br />

(a) U heißt Untermonoid von M genau dann, wenn 1 ∈ U und ∀a, b ∈ U : a · b ∈ U. Man<br />

schreibt (U, ·) ⊆ (M, ·).<br />

(b) Eine Abbildung f : M → M ′ heißt Homomorphismus genau dann, wenn f(1 M )=1 M ′<br />

und ∀a, b ∈ M : f(a · b) =f(a) · f(b).<br />

9


10 KAPITEL 2. MONOIDE UND KONGRUENZRELATIONEN<br />

Ein Homomorphismus f : M → M ′ heißt<br />

• Einbettung oder Monomorphismus, falls f injektiv ist,<br />

• Epimorphismus, falls f surjektiv ist,<br />

• Isomorphismus, falls f bijektiv ist.<br />

Man schreibt M ≃ M ′ , falls ein Isomorphismus M → M ′ existiert.<br />

Lemma 2.3 Seien M, M ′ Monoide und f : M → M ′ Homomorphismus. Dann ist f(M) ⊆ M ′<br />

Untermonoid.<br />

Beweis 1 M ′ = f(1 M ) ∈ f(M). Seien x, y ∈ f(M) beliebig. ⇒∃a, b ∈ M : x = f(a), y= f(b).<br />

⇒ x · y = f(a) · f(b) =f(a · b) ∈ f(M).<br />

Satz 2.4 (a) Sei A Menge, M Monoid, f : A → M Abbildung. Dann existiert genau ein<br />

Homomorphismus g : A ∗ → M mit g |A = f.<br />

(b) M Monoid ⇒∃Menge A, Epimorphismus g : A ∗ → M.<br />

Beweis siehe Übungsaufgaben.<br />

Definition 2.5 Sei M ein Monoid und ∼ eine Äquivalenzrelation auf M. ∼ heißt Kongruenz<br />

genau dann, wenn ∀a, b, c ∈ M : a ∼ b ⇒ a · c ∼ b · c und c · a ∼ c · b.<br />

Beispiel 2.2 Sei f : M → M ′ Homomorphismus.<br />

Definiere für x, y ∈ M : x ∼ y :⇔ f(x) =f(y). Dann ist ∼ Kongruenz auf M.<br />

Satz 2.6 (Konstruktion) Sei M Monoid, ∼ Kongruenz auf M. Für x ∈ M sei [x] :={y ∈<br />

M | x ∼ y}, die∼-Äquivalenzklasse von x. SeiM /∼ := {[x] | x ∈ M} (Äquivalenzraum).<br />

Für x, y ∈ M definiere [x]·[y] :=[x·y]. Dann ist (M /∼ , ·) ein Monoid (Quotientenmonoid,<br />

Faktormonoid von M bezüglich ∼).<br />

Die Abbildung f : M → M /∼ mit x ↦→ [x] ist ein Epimorphismus (kanonischer Epimorphismus)<br />

von M auf M /∼ .<br />

Beweis Wohldefiniertheit von · : M /∼ × M /∼ → M /∼ :<br />

Sei x, y, x ′ ,y ′ ∈ M mit x ∼ x ′ ,y∼ y ′ .Esistx · y ∼ x ′ · y und x ′ · y ∼ x ′ · y ′ trans. =⇒<br />

x · y ∼ x ′ ∼ y ′ .<br />

Assoziativität:<br />

Die Assoziativität von · : M /∼ × M /∼ → M /∼ folgt direkt aus der Assoziativität von<br />

· : M × M → M.<br />

Existenz des Einselements:<br />

[1] ist das Einselement von M /∼ ,denn∀x ∈ M :[x] · [1] = [x · 1] = [x].<br />

Epimorphismuseigenschaft:<br />

Offensichtlich ist f : M → M /∼ surjektive Abbildung. Weiterhin ist f(1) = [1] und<br />

f(x · y) =[x · y] =[x] · [y] =f(x) · f(y).<br />

Satz 2.7 (Isomorphiesatz) Sei f : M → M ′ ein Epimorphismus und ∼ die durch f auf<br />

M induzierte Kongruenz. Dann ist die Abbildung g : M /∼ → M ′ mit [x] ↦→ f(x) ein<br />

Isomorphismus.


11<br />

Beweis g wohldefiniert: Sei x, y ∈ M mit [x] =[y]. Dann folgt f(x) =f(y) ausx ∼ y.<br />

g injektiv: Seien x, y ∈ M mit g([x]) = g([y]). Aus f(x) =f(y) folgt x ∼ y, und damit<br />

[x] =[y].<br />

g surjektiv: Sei z ∈ M ′ beliebig. f surjektiv ⇒∃x ∈ M : f(x) =z ⇒ [x] ∈ M /∼ und<br />

g([x]) = f(x) =z.<br />

g Homomorphismus: g([1 M ]) = f(1 M )=1 M ′. Seien x, y ∈ M ⇒ g([x] · [y]) = g([x · y]) =<br />

f(x · y) =f(x) · f(y) =g([x]) · g([y]).<br />

Damit ist g Isomorphismus.<br />

Bemerkung Sei M Monoid, ∼ Kongruenz auf M. Man sagt, ∼ hat einen endlichen Index in<br />

M :⇔ M /∼ ist endlich ⇔ es gibt nur endlich viele Äquivalenzklassen.<br />

Satz 2.8 (Konstruktion) Sei M Monoid und L ⊆ M. Für y, y ′ definiert man<br />

y ∼ L y ′ :⇔∀x, z ∈ M : xyz ∈ L ⇔ xy ′ z ∈ L<br />

Dann ist ∼ L eine Kongruenz, die sogenannte syntaktische oder Myhill-Kongruenz von L<br />

auf M. Der kanonische Epimorphismus h : M → M /∼L erfüllt h −1 (h(L)) = L (d. h. h<br />

saturiert“ L).<br />

”<br />

Beweis ∼ L ist offensichtlich eine Äquivalenzrelation.<br />

Sei y, y ′ ∈ M mit y ∼ L y ′ .Seiw ∈ M. Zu zeigen ist yw ∼ L y ′ w und wy ∼ L wy ′ .<br />

Seien x, z ∈ M beliebig.<br />

x(yw)z ∈ L ⇔ x · y · (wz) ∈ L<br />

⇔ x · y ′ · (wz) ∈ L<br />

⇔ x · (y ′ w)z ∈ L<br />

Die zweite Beziehung beweist man analog.<br />

Es gilt stets L ⊆ h −1 (h(L)). Sei x ∈ h −1 (h(L)) beliebig. Zu zeigen ist x ∈ L.<br />

Voraussetzung ⇒ h(x) ∈ h(L)<br />

⇒ ∃y ∈ L : h(x) =h(y)<br />

⇒ x ∼ L y<br />

1 · y · 1 ∈ L ⇒ 1 · x · 1=x ∈ L ⇒ L = h −1 (h(L)).<br />

Definition 2.9 Sei M ein Monoid. Ein M-Automat ist ein Quadrupel A =(Q, δ, q 0 ,F)mit<br />

1. Q Menge (von Zuständen)<br />

2. δ : Q × M → Q partielle Abbildung mit ∀q ∈ Q:<br />

(i) δ(q, 1) = q (d. h. die linke Seite ist definiert)<br />

(ii) ∀m, m ′ ∈ M : δ(q, mm ′ )=δ(δ(q, m), m ′ ) (d. h. die linke Seite definiert ⇔ rechte<br />

Seite ist definiert)<br />

Ist δ(q, m) =r, soschreibenwirqm = r oder q → m r. Also:<br />

(i) q1 =q


12 KAPITEL 2. MONOIDE UND KONGRUENZRELATIONEN<br />

(ii) ∀m, m ′ ∈ M : δ(q, mm ′ )def.⇔ (qm)m ′ def.<br />

3. q 0 ∈ Q Startzustand<br />

4. F ⊆ Q Menge der Finalzustände.<br />

5. A heißt endlich, falls Q endlich ist.<br />

6. A heißt vollständig, falls δ : Q × M → Q Abbildung ist, d. h. ∀q ∈ Q, m ∈ M : ∃r ∈<br />

Q : qm = r<br />

L(A) :={m ∈ M | q 0 m ∈ F } =von A akzeptierte / erkannte Sprache. Jede Teilmenge<br />

von M heißt Sprache (in M). L ⊆ M heißt erkennbar :⇔ ∃endlicher M-Automat A mit<br />

L = L(A).<br />

Rec(M) :={L ⊆ M | L erkennbar}.<br />

Beispiel A =(Q, T, {q 0 },F) sei deterministischer Automat über A. Dann definiert T eine<br />

partielle Abbildung δ A : Q × A → Q durch δ A (q, a) =r :⇔ (q, a, r) ∈ T .<br />

Setze d A zu einer partiellen Abbildung δ : Q × A ∗ → Q fort durch δ(q, ε) :=q, ∀q ∈ Q :<br />

δ(q, a 1 ...a n )=r :⇔ ∃Berechnungsfolge q a 1 a<br />

→ q<br />

2 a<br />

1 → ...<br />

n→<br />

r. Dannist(Q, δ, q0 ,F)ein<br />

A ∗ -Automat.<br />

Umgekehrt erhält man aus einem A ∗ -Automat (Q, δ, q 0 ,F) einen deterministischen Automaten<br />

(Q, T, {q 0 },F)mit:<br />

(q, a, r) ∈ T :⇔ δ(q, a) =r<br />

Diese beiden Umformungsprozesse sind invers zueinander und erhalten die Eigenschaft<br />

vollständig“ und die akzeptierte Sprache.<br />

”<br />

Lemma 2.10 Sie A = (Q, δ, q 0 ,F) ein M-Automat. Dann existiert ein vollständiger M-<br />

Automat A ′ =(Q ′ ,δ ′ ,q 0 ,F)mitQ ′ = Q ∪{BOTTOM}, δ ′ setzt δ fort, L(A ′ )=L(A).<br />

Beweis Wähle BOTTOM ∉ Q, setze Q ′ = Q ∪{BOTTOM}. Definiere δ ′ als Fortsetzung von<br />

δ auf Q ′ × M → Q ′ durch<br />

⎧<br />

⎪⎨ d(q ′ ,m)<br />

δ(q ′ ,m)= BOTTOM<br />

⎪⎩ BOTTOM<br />

falls q ′ ∈ Q und d(q ′ ,m)def.<br />

falls q ′ ∈ Q und d(q ′ ,m)nichtdef.<br />

falls q ′ = BOTTOM<br />

Zu zeigen ist: δ ′ ist Operation von M auf Q ′ . Für q ∈ Q : δ ′ (q, 1) = δ(q, 1) = q,<br />

δ ′ (BOTTOM,1) = BOTTOM.<br />

Seien m, m ′ ∈ M ⇒ δ ′ (BOTTOM, mm ′ )=BOTTOM = δ ′ (δ ′ (BOTTOM, m), m ′ ).<br />

Sei qinQ. Zu zeigen ist δ ′ (q, mm ′ )=δ ′ (δ ′ (q, m), m ′ ). Angenommen, die linke Seite ist in<br />

Q. ⇒ δ ′ (q, mm ′ )=δ(q, mm ′ )=δ(δ(q, m), m ′ )=δ ′ (δ ′ (q, m), m ′ ).<br />

Sonst: δ ′ (q, mm ′ )=BOTTOM.<br />

δ ′ (q, m) =BOTTOM ⇒ δ ′ (δ ′ (q, m), m ′ )=δ ′ (BOTTOM, m ′ )=BOTTOM<br />

δ ′ (q, m) ∈ Q ⇒ δ ′ (q, m) =δ(q, m) =:r<br />

Wäre δ ′ (r, m ′ ) ∈ Q,so δ ′ (r, m ′ )=δ(r, m)


13<br />

und δ(q, mm ′ )=δ(δ(q, m), m ′ ) ∈ Q,<br />

also δ(q, mm ′ )=δ(q, mm ′ )inQ. Widerspruch.<br />

Also gilt δ ′ (r, m ′ )=BOTTOM = δ ′ (q, mm ′ ) wie behauptet. Folglich ist δ ′ Operation.<br />

L(A) ={m ∈ M | δ ′ (q 0 ,m) ∈ F } = {m ∈ M | δ(q 0 ,m) ∈ F } = L(A).<br />

Satz 2.11 (Konstruktion) Sei L ⊆ M.Für x ∈ M definiere L /x := {y ∈ M | xy ∈ L} = x −1 L.<br />

Es ist L /1 = L und 1 ∈ L /x ⇔ x ∈ L. Definiere A L := (Q L ,δ,q 0 ,F) wie folgt:<br />

1. Q L := {L /x | x ∈ M}<br />

2. δ : Q L × M → Q L mit (L /x ,y) ↦→ L /xy<br />

3. q 0 := L /1<br />

4. F := {L /x | x ∈ L}<br />

Dann ist A L ein vollständiger M-Automat mit L(A L ) = L. A L heißt minimaler M-<br />

Automat von L.<br />

Beweis<br />

δ ist wohldefiniert:<br />

Seien x, x ′ ,y∈ M mit L /x = L /x ′. Zu zeigen ist L /xy = L /x ′ y.Seiz ∈ M.<br />

z ∈ L /xy ⇔ xyz ∈ L<br />

⇔ yz ∈ L /x = L /x ′<br />

⇔<br />

⇔<br />

x ′ yz ∈ L<br />

z ∈ L /x ′ y<br />

δ ist Operation:<br />

δ(L /x , 1) = L /x·1 = L /x<br />

Seien x, y, z ∈ M. (L /x )(yz) =L /x(yz) = L /(xy)z =(L /xy ) · z =(L /x · y) · z<br />

Damit ist A L vollständiger M-Automat.<br />

L(A L )=L:<br />

Sei x ∈ M.<br />

x ∈ L(A L ) ⇐⇒ q 0 x ∈ F<br />

⇐⇒ ∃x ′ ∈ L : L /x = L /1 · x = L /x ′<br />

1∈L /x ′<br />

=⇒ x ∈ L<br />

triv.<br />

⇐= (setze x ′ = x)<br />

Bemerkung Sei L ∈ M und y, y ′ ∈ M. Dann gilt<br />

y ∼ L y ′ ⇔∀x ∈ M : L /x · y = L /x · y ′ in A L<br />

Beweis<br />

” ⇒“:<br />

Sei x ∈ M. L /x · y = L /xy , L /x · y ′ = L /xy ′.Seiz ∈ M beliebig:<br />

z ∈ L /xy ⇔ xyz ∈ L<br />

⇔ xy ′ z ∈ L<br />

⇔ z ∈ L /xy ′


14 KAPITEL 2. MONOIDE UND KONGRUENZRELATIONEN<br />

” ⇐“: Seien x, z ∈ M beliebig:<br />

Bezeichnung<br />

xyz ∈ L ⇔ z ∈ L /xy = L /x · y = L /x · y ′ = L /xy ′ ⇔ xy ′ z ∈ L<br />

(a) Sei A =(Q, δ, q 0 ,F)einM-Automat. q ∈ Q heißt erreichbar genau dann, wenn<br />

∃m ∈ M : q 0 m = q.<br />

(b) Sei A =(Q, T, I, F )einAutomatüber A. q ∈ Q heißt erreichbar genau dann, wenn<br />

eine Berechnungsfolge u existiert mit dom(u) ∈ I, cod(u) =q.<br />

Satz 2.12 Sei M Monoid und L ⊆ M. SeiA =(Q, δ, q 0 ,F) ein vollständiger M-Automat<br />

mit L(A) = L. Dann gibt es eine surjektive Abbildung f : Q → Q L ,wobeiQ L die<br />

Zustandsmenge des minimalen M-Automaten für L ist.<br />

Ist L erkennbar, so hat also A L unter den L akzeptierenden vollständigen M-Automaten<br />

am wenigsten Zustände, und A L ist endlich.<br />

Beweis Definiere f : Q → Q L mit<br />

{<br />

L/x falls x ∈ M und q<br />

q ↦→<br />

0 x = q<br />

falls q nicht erreichbar in A<br />

q ′ 0<br />

A L =(Q L ,δ ′ ,q ′ 0 ,F′ ). Sei x, x ′ ∈ M mit q 0 x = q = q 0 x ′ .Seiy ∈ M:<br />

y ∈ L /x ⇔ xy ∈ L = L(A)<br />

⇔ q 0 xy ∈ F<br />

⇔ q 0 x ′ y ∈ F<br />

⇔ x ′ y ∈ L(A) =L<br />

⇔ y ∈ L /x ′<br />

Also ist L /x = L /x ′ und f wohldefiniert.<br />

Sei x ∈ M beiliebig. Setze q := q 0 x (das geht, da A vollständiger M-Automat). Dann gilt<br />

f(q) =L /x und f ist surjektiv.<br />

L erkennbar ⇒∃endlicher vollständiger M-Automat A =(Q, ...)mitL(A) =L<br />

⇒|Q L |≤|Q|<br />

Beispiel L = {a n b n | n ≥ 0} ⊆A ∗ , {a, b} ⊆A. Zeige, dass L nicht erkennbar ohne Pumping<br />

Lemma:<br />

b i ∈ L /a i = {w ∈ A ∗ | a i w ∈ L} = {a j b i+j | j ≥ 0}, also sind die Mengen L /a i, i ∈ Æ<br />

paarweise verschieden.<br />

Kürzer: b i ∈ L /a j ⇔ i = j (i, j ∈ Æ) ⇒ alle L /a i. sind paarweise verschieden.<br />

Satz 2.13 (Myhill, Nerode 1957) Sei M Monoid und L ∈ M. Die folgenden Aussagen sind<br />

äquivalent:<br />

1. L ist erkennbar


15<br />

2. Der minimale M-Automat A L ist endlich<br />

3. Das syntaktische Monoid M /∼L ist endlich<br />

4. Es exisitiert ein endliches Monoid N und ein Homomorphismus h : M → N mit<br />

L = h −1 (h(L)).<br />

Beweis<br />

1 ⇒ 2:<br />

folgt aus Satz 2.12<br />

2 ⇒ 3:<br />

Nach dem Zusatz zu Konstruktion 2.11 gilt für alle y, y ′ ∈ M:<br />

y ∼ L y ′ * ⇔∀x ∈ M : L/x · y = L /x · y ′<br />

Da A L vollständig ist, induziert jedes y ∈ M eine Abbildung ỹ : Q L → Q L mit<br />

q ↦→ q ·y. Wegen (*) gilt y ∼ L y ′ ⇔ ỹ =ỹ ′ .DaQ L endlich, existieren nur endlich viele<br />

Abbildungen Q L → Q L und damit auch höchstens soviele ∼ L -Äquivalenzklassen. Es<br />

gilt |M /∼L |≤|Q L | |Q L|<br />

3 ⇒ 4:<br />

Setze N = M /∼L .Wähle h : M → N den kanonischen Epomorphismus. Mit Konstruktion<br />

2.8 folgt h −1 (h(L)) = L.<br />

4 ⇒ 1:<br />

Es existiert ein endlicher Monoid N, h : M → N mit L = h −1 (h(L)).<br />

Definiere A =(Q, δ, q 0 ,F) wie folgt: Q := N, q 0 =1 N , F := h(L) ⊆ N, δ(q, m) :=<br />

q i h(m), q ∈ Q = N, n ∈ M, δ(q, 1) = q · h(1) = q · 1=q, δ(q, mm ′ )=d · h(mm ′ )=<br />

q · h(m) · h(m ′ )=δ(δ(q, m), m ′ )<br />

⇒Aist endlicher M-Automat. m ∈ M ⇒ δ(q 0 ,m)=q 0 h(m) =h(m).<br />

m ∈ L(A) ⇔ h(m) ∈ F ⇔ m ∈ h −1 (h(L)). Also ist L(A) =h −1 (h(L)) = L.<br />

Folgerung 2.14 Seien M, M ′ Monoide, f : M → M ′ Homomorphismus, L ′ ⊆ M ′ und L =<br />

f −1 (L ′ ).<br />

(a) L ′ erkennbar ⇒ L erkennbar<br />

(b) f surjektiv, L ∈ Rec(M) ⇒ L ′ ∈ Rec(M ′ )<br />

Beweis (a) Seien y 1 ,y 2 ∈ M. Seif(y 1 ) ∼ L f(y 2 ). Zu zeigen ist y 1 ∼ L y 2 .<br />

Sei x, z ∈ M.<br />

x · y 1 · z ∈ L ⇒ f(xy 1 z)=f(x) · f(y 1 ) · f(z) ∈ f(L) ⊆ L ′<br />

⇒ f(x) · f(y 2 ) · f(z) ∈ L ′<br />

⇒ xy 2 z ∈ f −1 (L ′ )=L<br />

Umkehrung verläuft analog ⇒ y 1 ∼ L y 2 .<br />

L ′ erkennbar ⇒∼ L ′-Äquivalenzklassen endlich | ∼ L -Äquivalenzklassen| ≤ | ∼ L ′<br />

-Äquivalenzklassen| ⇒|∼ L -Äquivalenzklassen| endlich ⇒ L erkennbar.


16 KAPITEL 2. MONOIDE UND KONGRUENZRELATIONEN<br />

(b) Seien y 1 ′ ,y′ 2 ∈ M ′ , f surjektiv ⇒ ∃y 1 ,y 2 ∈ M : f(y 1 ) = y 1 ′ .Seiy 1 ∼ L y 2 .Zu<br />

zeigen ist y 1 ′ ∼ L ′ y′ 2 . Seien x′ ,z ′ ∈ M ′ .Wähle x, z ∈ M mit f(x) =x ′ , f(z) =z ′ .<br />

x ′ y 1 ′ z′ ∈ L ′ ⇒ xy 1 z ∈ f −1 (L ′ )=L ⇒ xy 2 z ∈ L ⇒ x ′ y 2 ′ z′ = f(xy 2 z) ∈ f(L).<br />

Umkehrung ⇒ y 1 ′ ∼ L ′ y′ 2 .Also|∼ L ′ -Äquivalenzklassen| ≤|∼ L -Äquivalenzklassen|<br />

Satz 2.13<br />

endlich, da L erkennbar =⇒ L ′ erkennbar.<br />

Folgerung 2.15 Sei M Monoid. Die Menge Rec(M) ⊆ M der erkennbaren Sprachen ist abgeschlossen<br />

unter Vereinigung, Durchschnittsbildung und Komplementsbildung. Sie enthält<br />

∅, M.<br />

Beweis ({q}, δ,q,∅) mit∀m ∈ M : δ(q, m) =q akzeptiert nichts ⇒∅∈Rec(M).<br />

({q}, δ,q,{q}) mit∀m ∈ M : δ(q, m) =q akzeptiert jedes Wort ⇒ M ∈ Rec(M).<br />

Sei L 1 ,L 2 ∈ Rec(M). Zu zeigen ist L 1 ∩ L 2 ∈ Rec(M).<br />

y ∼ L1 ∩L 2<br />

y ′ ⇔∀x, z ∈ M : xyz ∈ L 1 ∩ L 2 ⇔ xy ′ z ∈ L 1 ∩ L 2 ⇐∀x, z ∈ M, i ∈{1, 2} :<br />

xyz ∈ L i ⇔ xy ′ z ∈ L i ⇔ y ∼ L1 y ′ und y ∼ L2 y ′ .<br />

Es gilt |∼ L1 ∩L 2<br />

-Äquivalenzklassen| ≤|∼ L1 -Äquivalenzklassen|+| ∼ L2 -Äquivalenzklassen| <<br />

∞. AlsoistL 1 ∩ L 2 erkennbar.<br />

Sei L ∈ Rec(M) ⇒ es existiert ein vollständiger M-Automat A =(Q, δ, q 0 ,F)mitL(A) =<br />

L. Dannerkennt(Q, δ, q 0 ,F C ) das Komplement L C .<br />

( ) C.<br />

Weiterhin ist L 1 ∪ L 2 = L C 1 ∩ LC 2<br />

Bemerkung Es gibt Monoide M mit Rec(M) = {∅, M}, z.B.mitM unendliche einfache<br />

Gruppe.<br />

Definition 2.16 Sei M Monoid. Die Menge RAT(M) der rationalen Ausdrücke ist die kleinste<br />

Menge von Symbolfolgen, für die gilt:<br />

1. E ⊆ M, E endlich ⇒ E ∈ RAT(M)<br />

2. E 1 ,E 2 ∈ RAT(M) ⇒ (E 1 ∪E 2 ),E 1·E 2 ,E 1 ∗∈RAT(M) (mit(, ), ∪, ·, ∗ als Zeichen).<br />

Syntaxdefinition der rationalen Ausdrücke<br />

Für A, B ⊆ M sei<br />

A · B := {a · b | a ∈ A, b ∈ B}<br />

A ∗ := {a 1 · ...· a n | n ∈ N, a 1 , ..., a n ∈ A}∪{1}<br />

= ⋃ A n<br />

n≥0<br />

= kleinstes Untermonoid von M, welches A enthält<br />

Semantik der rationalen Ausdrücke<br />

Definiere Ä = Ä M :RAT(M) →P(M)<br />

E ⊆ M, E endlich ⇒ Ä(E) :=E<br />

E 1 ,E 2 ∈ RAT(M), Ä(E 1 ), Ä(E 2 )def. ⇒ Ä(E 1 ∪ E 2 ):=Ä(E 1 ) ∪ Ä(E 2 )<br />

Ä(E 1 · E 2 ):=Ä(E 1 )cdotÄ(E 2 )<br />

Ä(E ∗ 1):=(L(E 1 )) ∗


17<br />

Rat(M) :={Ä(E) | E ∈ RAT(M)} = {rationale Sprachen in M}.<br />

L ⊆ M rational ⇔∃E ∈ RAT(M) : L = Ä(E)<br />

Bemerkung Sei f : M → M ′ Homomorphismus und A, B ⊆ M.<br />

⇒ f(A · B) =f(A) · f(B) und f(A ∗ )=f(A) ∗ .<br />

Beweis Sei x ′ ∈ M ′ .<br />

x ′ ∈ f(A · B) ⇔ ∃x ∈ A · B : x ′ = f(x)<br />

⇔ ∃a ∈ A, b ∈ B : x ′ = f(a · b) =f(a) · f(b)<br />

⇔ ∃a ′ ∈ f(A), b ′ ∈ f(B) : x ′ = a ′ · b ′<br />

⇔ x ′ ∈ f(A) · f(B)<br />

⇒ f(A n )=f(A · ...· A) =f(A) · ...· f(A) =(f(A)) n<br />

⇒ f(A ∗ )=f( ⋃ n≥0 An )= ⋃ n≥0 f(An )= ⋃ n≥0 (f(A))n =(f(A)) ∗<br />

Bemerkung Alternativ argumentiert man<br />

f(A · B) = f({a · b | a ∈ A, b ∈ B})<br />

= {f(a · b) | a ∈ A, b ∈ B}<br />

= {f(a) · f(b) | a ∈ A, b ∈ B}<br />

= {f(a) | a ∈ A}·{f(b) | b ∈ B}<br />

= f(A) · f(B)<br />

Lemma 2.17 Seien M, M ′ Monoide, f : M → M ′ Homomorphismus. Definiere die ”<br />

induzierte<br />

Ersetzungsabbildung“ f :RAT(M) → RAT(M ′ ) induktiv durch<br />

E endlich<br />

f<br />

↦→ f(E)<br />

(E 1 ∪ E 2 ) ↦→ (f(E 1 ) ∪ f(E 2 ))<br />

E 1 · E 2 ↦→ f(E 1 ) · f(E 2 )<br />

E1 ∗ ↦→ f(E 1 ) ∗<br />

Das heißt f(E) ist der rationale Ausdruck, der entsteht, indem man in E jede endliche Teilmenge<br />

E ′ durch f(E ′ ) ersetzt. Dann gilt für alle E ∈ RAT(M): f(Ä M (E)) = Ä M ′(f(E)).<br />

Beweis durch Induktion über den Aufbau von E. SeiE ⊆ M endlich.<br />

⇒ Ä M (E) =E, f(E) =f(E) ⇒ f(Ä M (E)) = f(E) =f(E) =Ä M ′(f(E))<br />

Die Behauptung gelte nun für E 1 ,E 2 ∈ RAT(M). Sei ◦∈{∪, ·}:<br />

f(Ä M (E 1 ◦ E 2 )) = f(Ä M (E 1 ) ◦ Ä M (E 2 ))<br />

= f(Ä M (E 1 )) ◦ f(Ä M (E 2 ))<br />

= Ä M ′(f(E 1 )) ◦ Ä M ′(f(E 2 ))<br />

= Ä M ′(f(E 1 ) ◦ f(E 2 ))<br />

= Ä M ′(f(E 1 ◦ E 2 ))


18 KAPITEL 2. MONOIDE UND KONGRUENZRELATIONEN<br />

f(Ä M (E1)) ∗ = f((L M (E 1 )) ∗ )<br />

(<br />

) ∗<br />

= f(Ä M (E 1 ))<br />

(<br />

) ∗<br />

= Ä M ′(f(E 1 )<br />

= Ä M ′<br />

((f(E 1 )) ∗)<br />

= Ä M ′(f(E1 ∗ ))<br />

Satz 2.18 Seien M, M ′ Monoide.<br />

(a) f : M → M ′ Homorphismus, L ∈ Rat(M) ⇒ f(L) ∈ Rat(M ′ )<br />

(b) f : M → M ′ Epimorphismus, L ′ ⊆ M ′ :<br />

L ′ ∈ Rat(M ′ ) ⇔∃L ∈ Rat(M) :f(L) =L ′<br />

Im Allgemeinen ist f −1 (L ′ ) ∉ Rat(M). Einfaches Gegenbeispiel: Wähle nicht endlich<br />

erzeugtes Monoid, z. B. (Q, +) und M ′ = {1}.<br />

(c) Sei L ⊆ M:<br />

L ∈ Rat(M) ⇔∃Alphabet X : ∃ Homomorphismus h : X ∗ → M : ∃L 0 ∈ Rat(X ∗ ):<br />

h(L 0 )=L<br />

(d) M ∈ Rat(M) ⇔ M ist endlich erzeugt (∃X ⊆ M, |X| < ∞ : M = X ∗ )<br />

Beweis (a) L ∈ Rat(M) ⇒∃E ∈ RAT(M) : L = Ä M (E) ⇒ f(L) =f(Ä M (E)) = Ä M ′(f(E))<br />

und f(E) ∈ RAT(M ′ ) ⇒ f(L) ∈ Rat(M ′ ).<br />

(b) ⇐“ gilt nach (a)<br />

”<br />

” ⇒“: L′ ∈ Rat(M ′ ) ⇒∃E ′ ∈ RAT(M ′ ): L ′ = Ä M ′(E ′ ).<br />

Sei E ∈ RAT(M) der Ausdruck, der aus E ′ entsteht, indem man jedes E i ′ durch E i<br />

ersetzt. Seien E i ′ (i ∈ I) die in E′ auftauchenden endlichen Teilmengen von M ′ .<br />

f : M → M ′ surjektiv ⇒∃endliches E i ⊆ M : f(E i )=E i ′ (i ∈ I).<br />

Die Ersetzungsabbildung f aus Lemma 2.17 erfüllt f(E i )=f(E i )=E i ′.Alsoist<br />

f(E) =E ′ . Weiter folgt aus Lemma 2.17 f(Ä M (E)) = Ä M ′(f(E)) = Ä M ′(E ′ )=L ′ .<br />

Setze L = Ä M (E).<br />

(c) ⇐“ gilt nach (a)<br />

”<br />

” ⇒“: Wähle E ∈ RAT(M) mitL = Ä M (E). Seien E i (i ∈ I) die in E auftauchenden<br />

endlichen Teilmengen von M.<br />

Sei X := ⋃ i∈I E i ⇒ X endlich.. Es ist auch EinRAT(X ∗ ). Aus Satz 2.4 (a) folgt, es<br />

existiert genau ein Homomorphismus h : X ∗ → M mit h |X =id.<br />

Aus (b) folgt h(Ä X ∗(E) )=Ä M (h(E)) = L ⇒ L 0 ∈ Rat(X ∗ ) und die Behauptung.<br />

} {{ }<br />

:=L 0<br />

(d) ⇒“: Nach (c) existiert ein Alphabet X und ein Homomorphismus h : X ∗ → M und<br />

”<br />

L 0 ∈ Rat(X ∗ )mith(L 0 )=M. ⇒ M = h(X ∗ )=(h(X)) ∗ und h(X) endlich ⇒ h(X)<br />

ist endliches Erzeugendensystem von M.<br />

” ⇐“: Sei M = E∗ für eine endliche Teilmenge E ⊆ M.<br />

⇒ E ∗ ∈ RAT(M)<br />

⇒ Ä M (E ∗ )=(Ä M (E)) ∗ = E ∗ = M<br />

⇒ M ∈ Rat(M).


19<br />

Beispiel M = X ∗ , X = {a, b}; M = Æ × Æ mit komponentenweiser Addition.<br />

L ′ := {(1, 1)} ∗ = {(n, n) | n ≥ 0} ∈Rat(M ′ ) ist endlich erzeugt.<br />

Definiere f : M → M ′ mit w ↦→ (|w| a , |w| b ). f ist Epimorphismus.<br />

Aber L ′ ∉ Rec(M ′ )! Wäre f −1 (L ′ )rationalinM = X ∗ , so auch erkennbar nach Kleene.<br />

Aus Folgerung 2.14 (b) und f surjektiv folgt L ′ erkennbar.<br />

Das ist ein Widerspruch.<br />

Folgerung 2.19 Sei M ein Monoid. M ist endlich erzeugt ⇔ Rec(M) ⊆ Rat(M).<br />

Beweis<br />

” ⇐ “:<br />

Rec(M) ⊆ Rat(M) 2.15<br />

2.18 (d)<br />

⇒ M ∈ Rec(M) =⇒ M ist endlich erzeugt.<br />

” ⇒ “:<br />

Sei M = X ∗ mit X ⊆ M endlich und L ∈ Rec(M). Sei Xf<br />

∗ das freie Monoid aller<br />

Wörter über dem Alphabet X.<br />

Aus Satz 2.4 (a) folgt ∃ Homomorphismus h : Xf ∗ → M mit h |X =id.Istm ∈ M, so<br />

ist m = x 1 ···x n mit x 1 , ..., x n ∈ X geeignet h =⇒ Hom. h(x 1 ···x n )=h(x 1 ) ···h(x n )=<br />

2.14 (a)<br />

x 1 ···x n = m ⇒ h surjektiv =⇒ L 0 := h −1 (L) ∈ Rec(Xf ∗) Kleene =⇒ L 0 ∈ Rat(Xf ∗ 2.18 (a)<br />

) =⇒<br />

h(L 0 ) ∈ Rat(M)<br />

h(L 0 )=h(h −1 (L)) h = surj.<br />

L ⇒ L ∈ Rat(M).


20 KAPITEL 2. MONOIDE UND KONGRUENZRELATIONEN


Kapitel 3<br />

Monadische Logik zweiter Stufe und<br />

der Satz von Büchi<br />

In der Mathematik macht man Aussagen über mathematische Objekte wie z. B. in der Algebra<br />

über Gruppen (G, ◦, 1), Ringe (R, +, ·, 0, 1), Körper (K, +, ·, 0, 1), Ordnungsstrukturen<br />

(M, ≤), Graphen (V, E). In der Informatik trifft man Aussagen z. B. über technische Systeme,<br />

die durch derartige Strukturen inklusive Transitionssysteme, Petri-Netze usw. beschrieben werden.<br />

Diese algebraischen Objekte bestehen aus Grundemengen und gegebenenfalls Relationen,<br />

Funktionen, Konstanten. Aussagen betreffen die Elemente der Teilmengen der Grundmenge oder<br />

ihrer kartesischen Potenzen (T ⊆ M × M). Diese werden (in der Prädikatenlogik erster Stufe<br />

oder monadischen Logik zweiter Stufe) gebildet aus folgenden Objekten:<br />

Definition<br />

Terme: bestehend aus Konstanten oder Elementvariablen oder gegebenfalls iterierte Anwendung<br />

von Funktionen hierauf (z. B. h(f(x), g(x, y, z)))<br />

Atomformeln: Relationen R(t 1 , ..., t n ) vom Grad n ∈ Æ mit Termen t 1 , ..., t n oder<br />

Relationen t ∈ X mit einem Term t und einer Mengenvariable X.<br />

Formeln: gebildet aus Automformeln unter Verwendung von ∨, ¬, ∃, (, ). Daraus lassen<br />

sich ∧, →, ↔ und ∀ wie üblich definieren. ∃ kann sich auf Element- oder Mengenvariablen<br />

beziehen.<br />

Ob eine abstrakte Formel in einer Struktur ”<br />

gilt“, hängt ab von:<br />

der Struktur: also von der Grundmenge, den Konstanten, den Relationen und den Funktionen<br />

den Werten: also von den Elementen bzw. Teilmengen der Grundmenge die man für die ”<br />

freien“<br />

Element- und Mengenvariablen der Grundmenge einsetzt.<br />

Definition Eine Variable heißt ”<br />

frei“, falls sie nicht überall gebunden ist, d. h. im Bereich eines<br />

Quantors steht.<br />

ϕ = ϕ(v 1 , ..., v n ,V 1 , ..., V k ) sei Formel mit freien Elementvariablen aus {v 1 , ..., v n } und<br />

freien Mengenvariablen aus {V 1 , ..., V k }.<br />

Definition Sei S eine Struktur und x 1 , ..., x n Elemente, X 1 , ..., X k Teilmengen der Grundmenge<br />

von S. Man schreibt<br />

S|= ϕ[x 1 , ..., x n ,X 1 , ..., X k ]:⇔ ϕ gilt in S, wennmanfür x i in v i und X i und V i einsetzt<br />

21


22 KAPITEL 3. MONADISCHE LOGIK ZWEITER STUFE UND DER SATZ VON BÜCHI<br />

Beispiel (∃x)x · x = 1 + 1 gilt in (Ê, +, ·, 1), aber nicht in (É, +, ·, 1).<br />

(∀x)[0 ≤ x ↔ (∃y)x = y · y] gilt in (Ê, +, ·, 1), aber nicht in (É, +, ·, 1).<br />

Definiere ϕ(X) :=[(1∈ X) ∧ (∀x)(x ∈ X → x +1∈ X)]. Dann gilt (Æ, +, 1)|= ϕ[Æ], aber<br />

nicht (Æ, +, 1)|= ϕ[Æ ∪ [0, 100]]<br />

Setze ψ := (∀X)(ϕ(X) → (∀x)x ∈ X) (Beachte: ∀x“ bezieht sich auf die Grundmenge)<br />

”<br />

Dann gilt ψ in (Æ, +, 1), aber nicht in (É, +, 1).<br />

Definition Eine Formel heißt Satz oder Aussage, wenn sie keine freien Variablen enthält, d. h.<br />

jede in ihr auftretende Variable ist gebunden. Zur genauen Definition der Gültigkeit von<br />

Formeln, siehe Logik-Vorlesung.<br />

Besonders ”<br />

einfache“ Formeln betreffen nur die Elemente von Strukturen (keine Mengenvariablen)<br />

und haben nur endliche Disjunktion/Konjunktionen. Diese Formeln bilden die Prädikatenlogik<br />

erster Stufe.<br />

Modelltheorie nennt man die Anwendung der Prädikatenlogik auf algebraische Strukturen. Axiome<br />

von Halbgruppen, Gruppen, Ringen und Körpern, partielle Ordnungen und Boole’sche Algebren<br />

gehören zur Prädikatenlogik erster Stufe.<br />

Definition Lässt man in den Aussagen einer Logik auch Mengenvariablen zu, erhält man Logiken<br />

höherer Stufe. Lässt man nur Variablen für Teilmengen der Grundstruktur zu (nicht<br />

ihrer kartesischen Potenzen), erhält man die monadische Logik zweiter Stufe.<br />

Beispiel Das Dedekindsche Schnittaxion ist<br />

(<br />

∀X∀Y (∃x)(x ∈ X) ∧ (∃y)(y ∈ Y ) ∧ (∀x)(∀y)[(x ∈ X ∧ y ∈ Y ) → x ≤ y]<br />

)<br />

→ (∃z)(∀x)(∀y)[(x ∈ X ∧ y ∈ Y ) → (x ≤ z ∧ z ≤ y)]<br />

Es gilt in (Ê, ≤), in (, ≤), aber nicht in (É, ≤).<br />

Beispiel In (Æ, s)mits : Æ → Æ, x ↦→ x +1istx ≤ y monadisch definierbar:<br />

ϕ(u, v) :=∀X[u ∈ X ∧ (∀z)(z ∈ X → s(z) ∈ X)] → v ∈ X<br />

Für alle x, y ∈ Æ gilt x ≤ y ⇔ (Æ, s)|= ϕ[x, y].<br />

In (Æ, ≤) isty = x +1inderPrädikatenlogik erster Stufe definierbar:<br />

ψ(u, v) :=u ≤ v∧ ≠(u = v) ∧ (∀w)(u ≤ w ∧ w ≤ v) → (u = v ∨ w = v)<br />

Für alle x, y ∈ Æ gilt: y = x +1=s(x) ⇔ (Æ, ≤)|= ψ[x, y].<br />

Definition Man vereinbart folgende Schreibweisen:<br />

X = Y :⇔ (∀x)(x ∈ X ↔ x ∈ Y )<br />

X ⊆ Y :⇔ (∀x)(x ∈ X → x ∈ Y )<br />

X = ∅ :⇔ (∀x)¬(x ∈ X)<br />

X ≠ ∅ :⇔ ¬(X = ∅)<br />

X ∩ Y = Z :⇔ (∀x)[(x ∈ X ∧ x ∈ Y ) ↔ x ∈ Z]<br />

Sing(X) :⇔ X ≠ ∅∧(∀x)(∀y)[(x ∈ X ∧ y ∈ X) → x = y]<br />

Die monadische Logik zweiter Stufe ist wesentlich aussagekräftiger als die Prädikatenlogik<br />

erster Stufe. aber häufig noch handhabbar.


23<br />

Darstellung von Wörtern<br />

Sei A ein Alphabet, w = a 1 ···a n ∈ A ∗ .Signatur:≤, P a (a ∈ A)<br />

Dann ist<br />

w =({1, ..., n}, ≤, (R a ) a∈A )<br />

mit R a := {i | 1 ≤ i ≤ n, a i = a} (a ∈ A)<br />

Beispiel Sei A = {a, b, c, d} und w = ababc. Dannistw =({1, 2, 3, 4, 5}, ≤, R a ,R b ,R c ,R d )<br />

mit R a = {1, 3}, R b = {2, 4}, R c = {5}, R d = ∅.<br />

Diese Darstellung erfüllt w 1 = w 2 ⇔ w 1 = w 2 für alle w 1 ,w 2 ∈ A ∗ .<br />

Bemerkung Man kann so die Eigenschaften von w und somit auch von w mit Hilfe der Prädikatenlogik<br />

oder der monadischen logik beschreiben.<br />

Definition 3.1 Sei ϕ ein Satz. Dann ist L(ϕ) :={w ∈ A ∗ | w|= ϕ}<br />

L heißt in der monadischen Logik (Prädikatenlogik) definierbar genau dann, wenn ein Satz<br />

der monadischen Logik (Prädikatenlogik) existiert mit L = L(ϕ).<br />

Beispiel<br />

1. ϕ = ∃y∃z : z = y +1∧ P a (y) ∧ P b (z) ∧∀x : x ≠ z → x ≤ y<br />

⇒ L(ϕ) ={w ∈ A ∗ | w|= ϕ} = {w ∈ A ∗ | w = u · ab, u ∈ A ∗ }<br />

2. Beschreibung von w = a 1 ···a n hat gerade Länge.<br />

σ := ∃X∃Y : ∀x∀y(y = x +1)→ (x ∈ X ↔ y ∈ Y )<br />

∧X ∩ Y = ∅<br />

∧∃u, v(∀z : u ≤ z ≤ v) ∧ u ∈ X ∧ v ∈ Y<br />

∧∀z(z ∈ X ∨ z ∈ Y )<br />

⇒ L(σ) ={w ∈ A ∗ ||w| ∈2Æ} ist nicht in Prädikatenlogik erster Stufe definierbar.<br />

Satz 3.2 (Büchi, 1960) Sei A ein endliches Alphabet, L ⊆ A ∗ . Dann gilt<br />

L erkennbar ⇔ L ist in der monadischen Logik zweiter Stufe definierbar<br />

Beweis ⇒“: Sei A =(Q, T, q ” o ,F) ein endlicher Automat mit L(A) =L. SeiQ =(q i | 0 ≤<br />

i ≤ m}.<br />

Wir beschreiben die Existenz einer Berechnungsfolge u mit Symbolfolge w = a 1 ···a n ∈<br />

L(A) durch die Existenz geeigneter Mengen Y 0 , ..., Y m . Y i enthält die Stellen j von<br />

w bei denen (d. h. vor Ausführung von a j ) sich der Automat im Zustand q i befindet<br />

a<br />

(Beispiel: q<br />

1 a<br />

0 →<br />

2 a q1 →<br />

3 a q2 →<br />

4<br />

q0 → q1 ⇒ Y 0 = {1, 4}, Y 1 = {2}, Y 2 = {3}).<br />

(<br />

)<br />

Sei ϕ der Satz ∃Y 0 , ..., Y m : ∧ i≠j ¬∃y(y ∈ Y i ∧ y ∈ Y j )<br />

)<br />

∧<br />

(∃x(∀y : x ≤ y) ∧ x ∈ Y 0<br />

(<br />

)<br />

∧ ∀x(∃y : y = x +1)→∨ (qi ,a, q j )∈T (x ∈ Y i ∧ P a (x) ∧ x +1∈ Y j )<br />

(<br />

)<br />

∧ ∃z(∀x : x ≤ z) ∨ (qi ,a, q j )∈T (z ∈ Y i ∧ P a (x))<br />

Sei w ∈ A + . Es ist w|= ϕ ⇔ ∃u ∈ BF(A) : Symbolfolge(u) = w, dom(u) =<br />

q 0 , cod(u) ∈ F ⇒ w ∈ L(A). Also L(ϕ) =L(A) \{ε} = L \{ε}.<br />

1. Fall: ε ∉ L(A) =L → fertig<br />

2. Fall: ε ∈ L(A) =L, dannϕ ′ = ϕ ∧∀x¬(x = x) und L(ϕ ′ )=L


24 KAPITEL 3. MONADISCHE LOGIK ZWEITER STUFE UND DER SATZ VON BÜCHI<br />

⇐“: 1. Schritt: Wechsel der logischen Sprache.<br />

”<br />

Jede endliche Menge A kann in {0, 1} k injektiv abgebildet werden, wenn |A| ≤2 k .<br />

Sei σ ein Satz und L = L(σ) definierbar in A ∗ . ⇒ L definierbar in ({0, 1} k ) ∗ durch<br />

σ ∧∀x(∨ a∈A⊆{0, 1} ∗P a (x)).<br />

Angenommen, es wurde gezeigt, dass L erkennbar in ({0, 1}) ∗ ⇒ mit Lemma 3.3<br />

folgt dann, dass L erkennbar in A ∗ .<br />

Sei also ohne Einschränkung A = {0, 1} k .<br />

Ein Wort w = a 1 ···a n ∈ A ∗ kann dann auch dargestellt werden durch w =({1, ..., n}, ≤<br />

,R 1 , ..., R k )wobeiR j = {i | 1 ≤ i ≤ n, (a i ) j =1}, d.h.a i hat in j-Zeile eine 1.<br />

(Beispiel: w =(0, 1) t (1, 1) t (0, 1) t , R 1 = {2}, R 2 = {1, 2, 3}).<br />

Wir codieren das Prädikat P a (x) durch eine geeignete Konjunktion von x ∈ R j und<br />

¬(x ∈ R j )mit(j =1, ..., k).<br />

⇒ jeder gegebene Satz lässt sich in einen Satz übersetzen, der kein P a enthält, sondern<br />

neue Relationssymbole R j mit Interpretation R j ⊆{1, ..., n}.<br />

2. Schritt: Vereinfachung der Sprache Statt ≤ genügt es, die Relation


25<br />

Wir zeigen nun durch Induktion über die Quantorentiefe von geschachtelten Mengenvariablen<br />

(∃X), dass gilt:<br />

∀k ∈ Æ∀ϕ ∈P k : L(ϕ) :={w ∈ ({0, 1} k ) ∗ | w|= ϕ} ist erkennbar.<br />

. Für qd(ϕ) = 0 (qualifier depth) folgt ϕ ∈M k .<br />

Unterinduktion über den Aufbau von ϕ ∈M k :<br />

L k (ϕ 1 ∨ ϕ 2 )=L k (ϕ 1 ) ∪ L k (ϕ 2 )<br />

L k (¬ϕ) =(L k (ϕ)) C<br />

⇒∀ϕ ∈M k : L k (ϕ) erkennbar.<br />

Induktionsschritt: Angenommen für Sätze ϕ 1 ,ϕ 2 ∈P k ist die Behauptung gezeigt.<br />

Sei k ≥ 0 und ψ =(∃X)ϕ ∈P k ;z.z.L k (ψ) erkennbar.Daψ ein Satz ist, enthält<br />

ϕ höchstens X als freie Variable. Ohne Einschränkung enthalte ϕ das X. Bilde ϕ ′ ,<br />

indem in ϕ jedes X durch das Relationssymbol R k+1 ersetzt wird.<br />

⇒ ϕ ′ ∈P k+1 und qd(ϕ ′ )=qd(ψ) − 1<br />

Aus der Induktionsvoraussetzung folgt, dass L k+1 (ϕ ′ )={w ∈ ({0, 1} k+1 ) ∗ | w|= ϕ ′ }<br />

erkennbar ist. Wir werden zeigen, dass hieraus folgt, dass L k (ψ) erkennbarist.Sei<br />

π : {0, 1} k+1 →{0, 1} k die kanonische Projektion (x, z) ↦→ x für x ∈{0, 1} k ,z∈<br />

{0, 1}. Setze π eindeutig fort zu Homomorphismus π :({0, 1} k+1 ) ∗ → ({0, 1} k ) ∗<br />

Nach Mehrfachanwendung des Satzes von Kleene folgt aus L k+1 (ϕ ′ )erkennbar⇒<br />

π(L k+1 (ϕ ′ )) erkennbar. Wir zeigen L k (ψ) =π(L k+1 (ϕ ′ )): [... das ist der letzte Beweisschritt<br />

1 ].<br />

Lemma 3.3 Seien A ⊆ B endliche Alphabete, L ⊆ A ∗ .<br />

Beweis siehe Übung.<br />

L erkennbar in A ∗ ⇔ L erkennbar in B ∗<br />

Satz 3.4 Seien ϕ, ϕ ′ Sätze der monadischen Logik. Es läßt sich maschinell entscheidenm L(ϕ) =<br />

A ∗ und ob L(ϕ) =L(ϕ ′ ).<br />

Beweis Der Beweis von Satz 3.2 gibt ein Konstruktionsverfahren für endliche Automaten A, A ′<br />

mit L(A) =L(ϕ) und L(A ′ )=L(ϕ ′ ). Nun verwende Satz 1.12.<br />

1 Ab jetzt fehlen einige Beweisteile und Beweise.


26 KAPITEL 3. MONADISCHE LOGIK ZWEITER STUFE UND DER SATZ VON BÜCHI


Kapitel 4<br />

Sternfreie Sprachen<br />

Definition 4.1 Sei M ein Monoid. Die Klasse der sternfreien Sprachen von M ist kleinste<br />

Klasse von Sprachen die<br />

1. alle endlichen Teilmengen von M enthält<br />

2. abgeschlossen ist unter den Operationen Vereinigung, Komplement, Produkt<br />

Eine sternfreie Sprache lässt sich also aus endlichen Teilmengen von M konstruieren mit Hilfe<br />

von ∪, C , · ohne ∗ . Die Klasse der sternfreien Sprachen von M ist eine Boolesche Algebra.<br />

Wichtigster Fall: M = A ∗ . Dann folgt aus L sternfrei ⇒ L erkennbar. Damit gilt<br />

{sternfreie Sprachen über A} ⊆Rat(A ∗ )<br />

Beispiel • A = {a, b}. A ∗ = ∅ C ist sternfrei<br />

• X = {ab} ∗ ist sternfrei, da X = {ε}∪[({a}·A ∗ ∩ A ∗ {b}) \ (A ∗ aaA ∗ ∪ A ∗ bbA ∗ )]<br />

Ziel ist die Beschreibung der sternfreien Sprachen in A ∗ .<br />

Definition 4.2 Sei M ein Monoid und L ⊆ M.<br />

(a) L heißt aperiodisch ⇔∃n ∈ Æ∀x, y, z ∈ M : xy n z ∈ L ⇔ xy n+1 z ∈ L<br />

Das kleinste derartige n heißt Index von L (i(L)).<br />

(b) M heißt aperiodisch ⇔∃n ∈ N : ∀x ∈ M : x n = x n+1 .<br />

Satz 4.3 Sei M ein Monoid, L ⊆ M. Folgende Aussagen sind äquivalent:<br />

1. L aperiodisch<br />

2. ∃ aperiodisches Monoid M ′ , Homomorphismus h ′ : M → M ′ : L = h −1 (h(L))<br />

3. M/∼ L ist aperiodisch und endlich<br />

Beweis [Hat der Mitschreiber verpasst ...]<br />

Lemma 4.4 Sei M ein aperiodisches Monoid.<br />

(a) Seien p, q, r ∈ M mit q = pqr ⇒ q = pq = qr.<br />

(b) m ∈ M, M · m · M = M ⇒ m =1<br />

27


28 KAPITEL 4. STERNFREIE SPRACHEN<br />

Beweis Sei q = pqr und n ∈ N mit ∀x ∈ M : x n = x n+1 ⇒ q = pqr = p(pqr)r = ... = p n qr n =<br />

p n+1 qr n = p(p n qr n )=pq. Analog folgt q = qr.<br />

1 ∈ M = M ·m·M ⇒∃u, v ∈ M :1=umv = um·1·v ⇒ a)<br />

1=u·m·1 =u·1·m =1·m = m.<br />

Satz 4.5 (Schützenberger, 1965) Sei A ein Alphabet, L ⊆ A ∗ . Dann gilt L sternfrei ⇔ L<br />

aperiodisch und erkennbar<br />

Beweis ⇒“: L erkennbar, siehe oben. L aperiodisch: Per Induktion über den Aufbau von L.<br />

”<br />

Für alle a ∈ A ist i({a}) = 2, denn ∀x, y, z ∈ A ∗ : xy 2 z ∈{a} ⇔xy 3 z ∈{a}.<br />

Sind X, Y ⊆ A ∗ aperiodisch, so ist X ∪ Y aperiodisch mit i(X ∪ Y ) ≤ max{i(X), i(Y )},<br />

denn [...].<br />

i(X C )=i(X), denn [...].<br />

i(X · Y ) ≤ i(X)+i(Y ) + 1, denn [...].<br />

⇐“: schwer.<br />

”<br />

Satz 4.6 (McNaughton + Papert 1971) Sei L ⊆ A ∗ .<br />

Beweis siehe z. B. Buch von Straubing<br />

L ist sternfrei ⇔ L ist in Prädikatenlogik 1. Stufe definierbar<br />

Folgerung 4.7 Es gibt keinen Satz der Prädikatenlogik erster Stufe, der beschreibt, dass ein<br />

beliebiges Wort w ∈ A ∗ gerade Länge hat.<br />

Beweis Sonst wäre L = {w ∈ A ∗ ||w| gerade} sternfrei und damit aperiodisch. In einer Übung<br />

wird gezeigt, dass dies nicht der Fall ist.


Kapitel 5<br />

Prozesskosten – Funktionen für<br />

diskrete Systeme<br />

Sei A ein Alphabet. Diskrete Systeme S bestehen aus<br />

• Zuständen, gewöhnlich endlich viele<br />

• Transitionen, d. h. durch Aktionen in A induzierte Zustandsübergänge<br />

• Kosten der Transitionen, z. B. ∈ R + ∪{∞}=: Ê + (0 ∈ R + ).<br />

∫<br />

Man erhält eine Kostenfunktion c : Q × A × Q → Ê + . Es gilt c(t) =∞⇔t ̸ T .<br />

Ein Pfad, Weg oder Realisierung eines Prozesses p ist eine Folge von Tranisitionen<br />

a<br />

p : q<br />

1<br />

0 → q → q<br />

} {{ }} {{ 2<br />

}<br />

t 1<br />

1 a 2<br />

t 2<br />

→ ...→ q n−1<br />

a n→ qn<br />

} {{ }<br />

t n<br />

mit internen Kosten c(p) := ∑ n<br />

i=1 c(t i ). Ein Pfad ist eine Berechnungsfolge ⇔ c(t i ) < ∞∀i =<br />

1, ..., n<br />

DieKosteneineProzessesw ∈ A ∗ ,dervonq 0 nach q n führt c(w) q0 ,q n<br />

ist das Minimum der<br />

Kosten seiner Realisierungen.<br />

Man definiert zu jedem Zustand q i Kosten λ i , um das System zu betreten und γ i ,umdasSystem<br />

zu verlassen. Ist λ i ≤∞, dann heißt q i Anfangszustand; ist γ i ≤∞,heißtq i Endzustand.<br />

Man definiert |S| : A ∗ → Ê + mit w ↦→ (S, w):=min ij {λ i + c(w) i, j + γ j }<br />

Alternative Modelle<br />

1. (Ê + ∪{∞}, min, +)<br />

2. (Ê + , max, +) Modell prüft die maximal entstehenden Kosten. Der diese realisierende Pfad<br />

heißt kritischer Pfad.<br />

3. ([0, 1], max, ·), wobei man in der Berechnung von c(p) ”<br />

+“ durch ”·“ ersetzt. Dann ist c(t)<br />

die Zuverlässigkeit<br />

4. (Ê + ∪{∞}, max, min) Kapazitätsmodell<br />

5. ({0, 1}, min, max) entspricht dem klassischen Automatenmodell<br />

Definition 5.1 ...<br />

29


30 KAPITEL 5. PROZESSKOSTEN – FUNKTIONEN FÜR DISKRETE SYSTEME<br />

Definition 5.2 (K, +, ·, 0, 1) heißt Semiring, falls<br />

1. (K, +, 0) kommutatives Monoid mit neutralem Element 0,<br />

2. (K, ·, 1) Monoid mit neutralem Element 1<br />

3. · ist distributiv über +<br />

4. ∀x ∈ K : x · 0=0=0· x<br />

K heißt kommutativ, falls (K, ·, 1) kommutativ ist.<br />

Beispiel 1. (Æ, +, ·, 0, 1), (, +, ·, 0, 1), . . .<br />

2. alle Ringe und Körper<br />

3. =({0, 1}, ∨, ∧, 0, 1) Boolescher Semiring<br />

4. (Ê + ∪{−∞}, max, +, −∞, 0) max-plus-Semiring<br />

mit Ê + = {r ∈ Ê | r ≥ 0} und x +(−∞) =−∞ =(−∞)+x für alle x ∈ Ê + ∪{−∞}<br />

5. (Ê + ∪{∞}, ∈, +, ∞, 0) min-plus-Semiring<br />

Definition 5.3 Sei A ein Alphabet, K Semiring. Ein diskretes System S über A mit Bewertung<br />

in K ist ein Tupel (Q, λ, μ, γ) mit<br />

• Q Menge von Zuständen<br />

• μ : Q × A × Q → K<br />

• λ : Q → K bestimmt für q ∈ Q die Kosten für den Einstieg in S.<br />

• γ : Q → K bestimmt für q ∈ Q die Kosten für den Einstieg in S.<br />

Ziel: Für welche Funktionen f : A ∗ → K gilt: ∃ System S mit f = |S|, d.h.f ist das Verhalten<br />

eines Systems? Schützenberger: genau die rationalen Sprachen.<br />

Sei K ein Semiring und n ∈ Æ. Setze K n×n := { alle n × n-Matrizen mit Einträgen aus K}.<br />

Definiere für A =(a ij ),B=(b ij ) ∈ K n×n : A + B =(a ij + b ij ) und (A · B) ik := ∑ n<br />

j=1 a ij · b jk .<br />

Damit ist (K n×n , +, ·, 0, E) ist ein Semiring.<br />

Beweis Nachrechnen!<br />

In der Situation von Definition 5.3 mit Q = {1, ..., n} ist für jedes w ∈ A ∗ der Funktionswert<br />

μ(w) einen × n-Matrix, also μ(w) : A ∗ → K n×n eine Abbildung.<br />

Satz 5.4 Gegeben seien A, K, S, μ wie in Definition 5.3. Dann ist<br />

ein Monoid-Homomorphismus.<br />

μ :(A ∗ , ·) → (K n×n , ·)<br />

Beweis Zu zeigen ist μ(ε) =E ∈ K n×n . μ(ε) ij =0für alle i ≠ j, dafür beliebige Summanden<br />

a i gilt: 0 = ∑ i∈∅ a i. μ(ε) ii = ∑ u Pfad von i nach i mit AF ε μ(p) =μ(ε) =1⇒ μ(ε) =1.<br />

Bleibt zu zeigen μ(w 1 ,w 2 )=μ(w 1 ) · μ(w 2 ). [. . . ]<br />

Man interpretiert μ(w) i, j als Kosten von w beim Übergang von i nach j =: (μw) i, j .<br />

• μw = Kosten-Transitionsmatrix von w.


31<br />

• λ ∈ K 1×n Zeilenvektor<br />

• γ ∈ K n×1 Spaltenvektor<br />

• (S, w):= ∑ i, j∈Q λ i · (μw) i, j · γ j = λ · (μw) · γ<br />

Definition 5.5 Sei A ein Alphabet, K ein Semiring. Jede Funktion S : A ∗ → K heißt auch<br />

formale Potenzreihe über A ∗ mit Werten in K.<br />

Setze<br />

• (S, w) =S(w),<br />

• S = ∑ w∈A∗(S, w).w<br />

• K 〈〈A ∗ 〉〉 := K A∗ := {S : A ∗ → K | S Abbildung}<br />

Es heißt S : A ∗ → K erkennbar, wenn ein endliches System S existiert mit S = |S|. Falls zu S<br />

das Tripel (λ, μ, γ) gehört, so heißt das Tripel auch Darstellung von S bzw. S.<br />

Setze weiterhin K rec 〈〈A ∗ 〉〉 := {S ∈ K 〈〈A ∗ 〉〉 | S erkennbar}. Problem: Beschreibe K rec 〈〈A ∗ 〉〉.<br />

Für S, T ∈ K 〈〈A ∗ 〉〉 setzen wir S+T : A ∗ → K mit w ↦→ S(w)+T (w). Damit ist (K 〈〈A ∗ 〉〉 , +, 0)<br />

abelsches Monoid mit neutralem Element 0 : A ∗ → K mit w ↦→ 0 K . Definiere supp(S) :={w ∈<br />

A ∗ | (S, w) ≠0}.<br />

S ∈ K 〈〈A ∗ 〉〉 heißt Polynom ⇔ supp(S) endlich. Man setzt<br />

K 〈A ∗ 〉 ist Untermonoid von K 〈〈A ∗ 〉〉.<br />

K 〈A ∗ 〉 := {S ∈ K | S Polynom}<br />

Für X ⊆ A ∗ sei ½ X =char(X) : A ∗ → K mit w ↦→<br />

die Indikator oder charakteristische<br />

Funktion von X.<br />

Man identifiziert k ∈ K mit k · 1 ε : A ∗ → K mit w ↦→<br />

{<br />

1, w ∈ X<br />

0, w ∉ X<br />

{<br />

k, w = ε<br />

0 w ≠ ε<br />

Dann ist K ⊆ K Untermonoid. Die Funktionen k · 1 w heißen Monome. Ein Polynom S<br />

ist eine endliche Summe von Monomen S = ∑ w∈supp(S) (S, w) · ½ w.<br />

Allgemeiner: Sei k ∈ K, S ∈ K 〈〈A ∗ 〉〉. Definiere k · S : A ∗ → K mit w ↦→ k · (S, w), d. h.<br />

(k · S, w) = k · (S, w), k · S = ∑ w∈A ∗ k · (S, w).w und entsprechend S · k : A∗ → K mit<br />

w ↦→ (S, w) · k.<br />

Man definiert (S · T, w)= ∑ w 1 ,w 2 ∈A ∗ mit w=w 1 w 2<br />

(S, w 1 ) · (T, w 2 ).<br />

[... hier fehlt was? ]<br />

Satz 5.9 (K 〈〈A ∗ 〉〉 , +, ·, 0, ½ {ε} ) und (K 〈A ∗ 〉 , +, ·, 0, ½ {ε} ) sind Semiringe.<br />

Beweis Nachrechnen von supp(S · T ) ⊆ supp(S) · supp(T ).<br />

Lemma 5.10 Die Abbildung<br />

supp : ( 〈〈A ∗ 〉〉 , +, ·, 0, ½ {ε} ) → (P(A ∗ ), ∪, ·, ∅, {ε})<br />

ist ein Semiring-Isomorphismus mit supp −1 =char<br />

Beweis siehe Übungs-Aufgabe 45.


32 KAPITEL 5. PROZESSKOSTEN – FUNKTIONEN FÜR DISKRETE SYSTEME<br />

Damit ist supp( rec 〈〈A ∗ 〉〉) =Rec(A ∗ )=Rat(A ∗ ) und S ∗ = ∑ n≥0 Sn und S 0 = ½ {ε} .<br />

Man definiert (S ∗ ,w):= ∑ n≥0 (Sn ,w). Diese unendliche Summe, die nicht in K konvergieren<br />

muss. Abhilfe schafft eine Komplettierung von K oder die Forderung (S n ,w)=0für fast alle<br />

n.<br />

Dies ist bereits erfüllt wenn (S, ε) =0.Seiw ∈ A ∗ beliebig und n>|w|. Dannist<br />

(S n ,w) = (S ···S, w)<br />

∑<br />

=<br />

u 1 , ..., u n∈A ∗ : u 1···u n=w<br />

(S, u 1 ) ···(S, u n )<br />

Da n>|w|, existierteini mit u i = ε ⇒ (S, u i )=0→ (S n ,w) = 0. Falls (S, ε) = 0 definiere<br />

(S ∗ ,w):= ∑ |w|<br />

n=0 (Sn ,w)=: ∑ n≥0 (Sn ,w) ∗ ist damit eine partielle Operation auf K 〈〈A ∗ 〉〉.<br />

Eine Abbildung S : A ∗ → K heißt quasiregulär (proper), :⇔ (S, ε) =0.<br />

Definition 5.11 Sei K Semiring, S ∈ K 〈〈A ∗ 〉〉. Dann heißt S rational :⇔ S lässt sich aus<br />

endlich vielen Polynomen (oder Monomen) mit Hilfe von +, ·, ∗ in endlich vielen Schritten<br />

konstruieren.<br />

K rat 〈〈A ∗ 〉〉 := {S ∈ K 〈〈A ∗ 〉〉 | S rational}<br />

(kleinster ∗ -abgeschlossener Teilsemiring von K 〈〈A ∗ 〉〉, derK 〈A ∗ 〉 enthält).<br />

Die Abbildung supp : 〈〈A ∗ 〉〉 → P(A ∗ )erfüllt supp(S ∗ ) = (supp(S)) ∗ . Damit gilt<br />

S : A ∗ → rational ⇔ supp(S) ⊆ A ∗<br />

Zum Beweis übertrage man die Operationen +, ·, ∗ auf die Operationen ∪, ·, ∗ und beachte die<br />

Isomorphie von supp.<br />

[...]<br />

Man kann den Satz von Kleene auf den Booleschen Semiring übertragen:<br />

rec 〈〈A ∗ 〉〉 = rat 〈〈A ∗ 〉〉<br />

Satz 5.12 (Schützenberger, 1961) Sei K ein beliebiger Semiring, A ein Alphabet. Dann gilt<br />

K rec 〈〈A ∗ 〉〉 = K rat 〈〈A ∗ 〉〉<br />

Bemerkung Dies ist eine Verallgemeinerungen des Satzes von Kleene auf Automaten mit Kostenfunktionen<br />

und rationalen Ausdrücke über mit Kosten versehenen Monomen.<br />

Beweis ...<br />

Satz 5.13 Sei K Semiring, A Alphabet.<br />

Beweis ...<br />

• L ⊆ A ∗ erkennbar ⇒ ½ L ∈ K rec 〈〈A ∗ 〉〉<br />

• K rec 〈〈A ∗ 〉〉 ist abgeschlossen unter Summe und externem Produkt<br />

• K 〈A ∗ 〉⊆K rec 〈〈A ∗ 〉〉


33<br />

Satz 5.14 Sei K beliebiger Semiring, A Alphabet, S ∈ K rec 〈〈A ∗ 〉〉.<br />

(a) ∃ Darstellung (λ, μ, γ) vonS mit:<br />

(*) Es existiert genau ein Finalzustand j und es ist γ j =1,sowieμ(w) jk =0für alle<br />

ε ≠ w ∈ A ∗ und alle k ∈ Q.<br />

(b) ∃ Darstellung (λ, μ, γ) vonS mit:<br />

(**) Es existiert genau ein Initialzustand i und es ist λ i =1,sowieμ(w) ki =0für<br />

alle ε ≠ w ∈ A ∗ und alle k ∈ Q.<br />

(c) Sei S ′ ∈ K 〈〈A ∗ 〉〉 definiert durch<br />

(S ′ ,w):=<br />

{<br />

(S, w) w ≠ ε<br />

0 w = ε<br />

⇒ es existiert eine Darstellung (λ, μ, γ) vonS ′ mit (*) und (**).<br />

Vgl. auch Lemma 1.5 (normalisierte Automaten).<br />

Beweis ...<br />

Satz 5.15 Sei K ein beliebiger Semiring, A ein Alphabet.<br />

S 1 ,S 2 ∈ K rec 〈〈A ∗ 〉〉 ⇒ S 1 · S 2 erkennbar<br />

Beweis ...<br />

Satz 5.16 Sei K ein beliebiger Semiring.<br />

S ∈ K rec 〈〈A ∗ 〉〉 ⇒ S ∗ erkennbar<br />

Beweis ...<br />

Folgerung 5.17 Sei K ein beliebiger Semiring<br />

⇒ K rat 〈〈A ∗ 〉〉 ⊆ K rec 〈〈A ∗ 〉〉<br />

Beweis Klar mit Satz 5.13 (c), (b), Satz 5.15 und 5.16.<br />

Nun zur Umkehrung:<br />

Satz 5.18 Sei K ein beliebiger Semiring<br />

⇒ K rec 〈〈A ∗ 〉〉 ⊆ K rat 〈〈A ∗ 〉〉<br />

Beweis (analog zum Beweis von Satz 1.9)<br />

Sei S ∈ K rec 〈〈A ∗ 〉〉 und S =(Q, λ, μ, γ) ein diskretes System mit |S| = S und etwa<br />

Q = {1, ..., n}. Für m, l ∈ Q, 0 ≤ k ≤ n sei<br />

X (k)<br />

m, l := {p ∈ (Q×A×Q)∗ \{ε}|p Pfad von m nach l, der dazwischen nur Zustände ≤ k berührt}


34 KAPITEL 5. PROZESSKOSTEN – FUNKTIONEN FÜR DISKRETE SYSTEME<br />

Es gilt: ∀k ≤ 0: (∗) X (k+1)<br />

m, l<br />

= X (k)<br />

m, l<br />

∪<br />

Begründung wie im Beweis von Satz 1.9:<br />

” ⊇“istklar.<br />

·<br />

(<br />

X (k) (<br />

m, k+1 · X (k) ) ∗ )<br />

(k)<br />

k+1,k+1 · X<br />

k+1,l<br />

mit derselben<br />

⊆“: Sei p einPfadinX(k+1)<br />

” m, l<br />

\ X (k)<br />

m, l<br />

. Betrachte die Stellen, an denen p durch k +1geht<br />

(kommt mindestens 1x vor) und zerlege p dementsprechend. Für m, l ∈ Q, 0 ≤ k ≤ n<br />

definiere<br />

m, l : A∗ → K mit w ↦→ ∑ {μ(p) | p ∈ X (k)<br />

m, l<br />

,prealisiert w}<br />

μ (k)<br />

μ (k)<br />

m, l<br />

ist eine formale Potenzreihe, μ(k)<br />

m, l<br />

(ε) := 0. Seien m, l ∈ Q, 0≤ k ≤ n und w ∈ A∗<br />

⇒ μ (k)<br />

m, l (w) =∑ {μ(p) | p ∈ X (k+1)<br />

m, l<br />

realisiert w}<br />

(∗)<br />

= ∑ {μ(p) | p ∈ X (k)<br />

m, l realisiert w} + ∑ {μ(p) | p ∈ X (k)<br />

m, k+1·<br />

}{{}<br />

=:R(w)<br />

= μ (k)<br />

m, l (w)+R(w)<br />

Es ist R(w) = ∑ {μ ∈ (p) | p = p ′ · p ′′ · p ′′′ ,p ′<br />

X (k)<br />

k+1,l ,p′ ,p ′′ ,p ′′′ realisieren u ′ ,u ′′ ,u ′′′ ,w= u ′ u ′′ u ′′′ }.<br />

(<br />

X (k)<br />

k+1,k+1<br />

∈ X (k)<br />

m, k+1 ,p′′ ∈<br />

) ∗·X<br />

(k)<br />

k+1,l<br />

realisiert w}<br />

(<br />

X (k)<br />

k+1,k+1) ∗,p<br />

′′′<br />


Literaturverzeichnis<br />

[1] B. Klonssainov, A.Nerode: Automata Theorie and its Applications, Birkhäuser, 2001<br />

[2] D. Kozen: Automata and Computability, Springer<br />

[3] D. van Loewen (ed.): Handbook of Theoretical Computer Science vo. B. Elsevier, 1990,<br />

Kap. 1<br />

35

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!