27.11.2014 Aufrufe

Automaten, Formale Sprachen und Berechenbarkeit I

Automaten, Formale Sprachen und Berechenbarkeit I

Automaten, Formale Sprachen und Berechenbarkeit I

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.

1. ENDLICHE AUTOMATEN 21<br />

Durch diese Transformation wird aus einem <strong>Automaten</strong> A = (Q, Σ, δ, I, F ) ein Automat A ′ =<br />

(Q, Σ, δ ′ , I, F ′ ) erzeugt mit:<br />

δ ′ = (δ ∪ {(p, a, q) | (p, ε, r) ∈ δ ∗ , (r, a, q) ∈ δ} ) \ (Q × {ε} × Q)<br />

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

Schritt a.<br />

Schritt c.<br />

F ′ = F ∪ {p ∈ Q | (p, ε, q) ∈ δ ∗ , q ∈ F }<br />

} {{ }<br />

Schritt b.<br />

Schritt 4 (Potenzautomatenkonstruktion): Erzeuge aus einem endlichen nicht-deterministischen<br />

<strong>Automaten</strong> mit einem Startzustand einen endlichen deterministischen <strong>Automaten</strong>.<br />

Idee (Potenzautomat): Wir verfolgen alle Wege im endlichen buchstabierenden <strong>Automaten</strong><br />

gleichzeitig, dabei merken wir uns alle Zustände, in denen sich der Automat befinden könnte.<br />

Beispiel<br />

Als Beispiel dazu betrachten wir den buchstabierenden <strong>Automaten</strong> aus Abb. 2.9, der die Sprache<br />

aller Wörter akzeptiert, die mit mind. drei Einsern enden.<br />

1<br />

q 0 <br />

1<br />

q 1 1<br />

q 2 q 3<br />

0,1<br />

Abbildung 2.9. Ein buchstabierender Automat für Wörter, die mit mindestens drei Einsern enden.<br />

Nun betrachten wir das Wort w = 110111 <strong>und</strong> simulieren den <strong>Automaten</strong>:<br />

initial : {q 0 }<br />

1 : {q 0 , q 1 } Übergang von q 0 mit 1 nach q 0 oder q 1 möglich.<br />

1 : {q 0 , q 1 , q 2 } Übergang von q 0 mit 1 nach q 0 oder q 1 möglich. Übergang<br />

von q 1 mit 1 nach q 2 möglich.<br />

0 : {q 0 } Einen Übergang mit 0 gibt es nur von q 0 ; der führt<br />

wieder nach q 0 .<br />

1 : {q 0 , q 1 } . . .<br />

1 : {q 0 , q 1 , q 2 } . . .<br />

1 : {q 0 , q 1 , q 2 , q 3 } Automat kann sich (bei geeigneter Auswahl der Alternativen)<br />

im Endzustand q 3 befinden; das Wort w wird<br />

also akzeptiert.<br />

Die Simulation aller möglichen erreichbaren Zustände für jedes beliebige Eingabewort w können<br />

wir nun ein für alle mal durchführen: Abb. 2.10 zeigt den entsprechenden <strong>Automaten</strong>.<br />

Formal läßt sich die Potenzautomatenkonstruktion wie folgt beschreiben: Für einen buchstabierenden<br />

<strong>Automaten</strong> A = (Q, Σ, δ, q 0 , F ) definieren wir A ′ = (2 Q , Σ, δ ′ , {a 0 }, F ′ ), wobei<br />

2 Q = {P ⊆ Q} die Potenzmenge von Q ist, d.h. die Menge aller Teilmengen von Q.<br />

Die Potenzmenge 2 Q von Q ist zwar sehr groß; sie ist aber endlich. Also ist A ′ auch ein endlicher<br />

Automat.<br />

Achtung: Die Bezeichner P <strong>und</strong> R bezeichnen im folgenden Teilmengen von Q, d.h. Zustände des<br />

Potenzautomaten.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!