Inhaltsverzeichnis - Automaten und Formale Sprachen
Inhaltsverzeichnis - Automaten und Formale Sprachen
Inhaltsverzeichnis - Automaten und Formale Sprachen
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Beweis<br />
” ⇒“: L = L M für DFA M 1.7.15 ⇒ ind(∼ L ) ≤ ind(∼ M ) < ∞.<br />
” ⇐“: Sei ind(∼ L) < ∞. Wir definieren einen DFA ˆM = ˆM(∼ L ) = ( ˆQ, Σ, ˆq 0 , ˆF , ˆδ) (den<br />
Nerode-<strong>Automaten</strong>“) , wie folgt:<br />
”<br />
ˆQ := {[w] | w ∈ Σ ∗ } (Äquivalenzklassen bzgl. ∼ L ).<br />
ˆq 0 := [ε]<br />
ˆF := {[w] | w ∈ L}<br />
ˆδ([w], a) := [wa], für [w] ∈ ˆQ, a ∈ Σ.<br />
Offenbar ist | ˆQ| = ind(∼ L ) < ∞, nach Voraussetzung. Wir müssen zunächst zeigen, dass<br />
ˆF <strong>und</strong> ˆδ wohldefiniert sind, dass also die Definitionen nicht von den Repräsentanten der<br />
Äquivalenzklassen abhängen. Dies gilt für ˆF , da aus w ∈ L <strong>und</strong> w ∼ w ′ folgt, dass<br />
wε ∈ L ⇔ w ′ ε ∈ L (da ∼ L rechtsinvariant ist), also ist w ′ ∈ L.<br />
Aber auch ˆδ ist wohldefiniert: Ist w, w ′ , ∈ Σ ∗ , w ∼ w ′ , <strong>und</strong> a ∈ Σ, so ist wa ∼ L w ′ a (wegen<br />
der Rechtsvarianz von ∼ L ), also [wa] = [w ′ a].<br />
Schließlich müssen wir noch zeigen, dass L ˆM<br />
= L. Dazu benützen wir folgende Hilfsbehauptung<br />
(HB): ˆδ(ˆq 0 , w) = [w], für w ∈ Σ ∗ . (Beweis durch Induktion über |w| : w = ε :<br />
ˆδ(ˆq 0 , ε) = ˆq 0 = [ε]. Ist w = ua, u ∈ Σ ∗ , a ∈ Σ, so ist ˆδ(ˆq 0 , ua), = ˆδ(ˆδ(ˆq 0 , u), a) I.V.<br />
= ˆδ([u], a) =<br />
[ua].)<br />
Damit gilt für w ∈ Σ ∗ :<br />
w ∈ L ˆM<br />
⇔ ˆδ(ˆq 0 , w) ∈<br />
ˆF<br />
HB<br />
⇔ [w] ∈<br />
ˆF<br />
Def. ˆF<br />
⇔ w ∈ L.<br />
Mit obiger Konstruktion haben wir direkt den Minimalautomaten für die reguläre Sprache<br />
L gef<strong>und</strong>en:<br />
1.7.17 Korollar Ist L = L M für einen DFA M = (Q, Σ, q 0 , F, δ) <strong>und</strong> ist<br />
ˆM(∼ L ) = ( ˆQ, Σ, ˆq 0 , ˆF , ˆδ) 1.7.16<br />
wie in 1.7.16, so ist | ˆQ| = ind(∼ L ) 1.7.15<br />
≤ |Q|. □<br />
□<br />
In unserem Beispiel L(0 ∗ 1 ∗ ) erhalten wir den folgenden Minimalautomaten:<br />
Start<br />
[ ε ]<br />
1<br />
[1]<br />
0<br />
[10]<br />
0<br />
1<br />
0,1<br />
63