17.11.2013 Aufrufe

Skript mit Übungen - Hochschule Ravensburg-Weingarten

Skript mit Übungen - Hochschule Ravensburg-Weingarten

Skript mit Übungen - Hochschule Ravensburg-Weingarten

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.

Die Sprache wird erzeugt durch die Typ-2-Grammatik G = (V, Σ, P, S) <strong>mit</strong><br />

P = {S → $|aSa|bSb}<br />

L ist keine Typ 3 Sprache, denn wie oben gezeigt gibt es keinen endlichen Automaten zu<br />

dieser Sprache. Folgender deterministischer Kellerautomat erkennt L:<br />

Eingabezeichen s 0 s 1<br />

Kellerzeichen<br />

a, # s 0 , A#<br />

b, # s 0 , B#<br />

$, # s 1 , #<br />

a, A s 0 , AA s 1 , ε<br />

a, B s 0 , AB<br />

b, A s 0 , BA<br />

b, B s 0 , BB s 1 , ε<br />

$, A s 1 , A<br />

$, B s 1 , B<br />

ε, # s 1 , ε<br />

Beispiel 3.21 Lassen wir die Mittenmarkierung weg, so ergibt sich<br />

Σ = {a, b} und L = {a 1 . . . a n a n . . . a 1 |a i ∈ Σ, n ∈ N 0 }<br />

<strong>mit</strong> der Grammatik<br />

P = {S → aSa|bSb|ε}.<br />

Hier kann man nun die Mitte des Wortes nicht mehr in einem deterministischen Durchlauf<br />

erkennen. Daher ist ein nichtdeterministischer Kellerautomat gefordert:<br />

Eingabezeichen, s 0 s 1<br />

Kellerzeichen<br />

a, # s 0 , A#; s 1 , A#<br />

b, # s 0 , B#; s 1 , B#<br />

a, A s 0 , AA; s 1 , AA s 1 , ε<br />

a, B s 0 AB; s 1 AB<br />

b, A s 0 , BA; s 1 BA<br />

b, B s 0 , BB; s 1 , BB s 1 , ε<br />

ε, # s 1 , ε s 1 , ε<br />

Die Semantik des Erkennens eines Wortes durch einen deterministischen Kellerautomaten<br />

definieren wir wie folgt:<br />

Definition 3.17 Ein (nichtdeterministischer) Kellerautomat K erkennt, bzw. akzeptiert<br />

ein Wort w = w 1 . . . w n genau dann, wenn es eine Folge von Zustandsübergängen gibt, so<br />

∥ dass nach Lesen von w n der Keller ganz leer ist. Hierbei muß K gestartet werden auf w 1 .<br />

Bemerkung: An diesem Beispiel erkennt man, dass nichtdeterministische Kellerautomaten<br />

mächtiger sind als deterministische, d.h. es gibt Sprachen, die von nichtdeterministischen<br />

Kellerautomaten erkannt werden, aber nicht von deterministischen.<br />

71

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!