31.03.2014 Aufrufe

Algebraische Automatentheorie - stinfwww

Algebraische Automatentheorie - stinfwww

Algebraische Automatentheorie - stinfwww

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

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

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!