19.11.2014 Aufrufe

Inhaltsverzeichnis - Automaten und Formale Sprachen

Inhaltsverzeichnis - Automaten und Formale Sprachen

Inhaltsverzeichnis - Automaten und Formale Sprachen

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.

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

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!