Skriptes - Uni Bremen - Universität Bremen
Skriptes - Uni Bremen - Universität Bremen
Skriptes - Uni Bremen - Universität Bremen
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Kellerautomaten<br />
10. Kellerautomaten<br />
Bisher hatten wir kontextfreie Sprachen nur mit Hilfe von Grammatiken charakterisiert.<br />
Wir haben gesehen, dass endliche Automaten nicht in der Lage sind, alle kontextfreien<br />
Sprachen zu akzeptieren.<br />
Um die Beschreibung von kontextfreien Sprachen mit Hilfe von endlichen Automaten zu<br />
ermöglichen, muss man diese um eine unbeschränkte Speicherkomponente, einen sogenannten<br />
Keller (engl. Stack), erweitern. Dieser Keller speichert zwar zu jedem Zeitpunkt<br />
nur endlich viel Information, kann aber unbeschränkt wachsen.<br />
Die folgende Abbildung zeigt eine schematische Darstellung eines Kellerautomaten:<br />
Eingabe: von links nach rechts; nur ein Symbol sichtbar<br />
00000000<br />
11111111<br />
00000000<br />
11111111<br />
Lese−<br />
kopf<br />
endliche<br />
Kontrolle<br />
00 11<br />
00 11<br />
= ^ NEA<br />
Schreibkopf<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
nur oberstes Symbol<br />
sichtbar<br />
Änderung des Inhalts<br />
nur von oben<br />
kann beliebig groß werden<br />
Diese Idee wird in folgender Weise formalisiert.<br />
Definition 10.1 (Kellerautomat)<br />
01<br />
Keller<br />
Ein Kellerautomat (pushdown automaton, kurz PDA) hat die Form<br />
A = (Q,Σ,Γ,q 0 ,Z 0 ,∆), wobei<br />
• Q eine endliche Menge von Zuständen ist,<br />
• Σ das Eingabealphabet ist,<br />
• Γ das Kelleralphabet ist,<br />
• q 0 ∈ Q der Anfangszustand ist,<br />
• Z 0 ∈ Γ das Kellerstartsymbol ist und<br />
• ∆ ⊆ Q×(Σ∪{ε})×Γ×Γ ∗ ×Q eine endliche Übergangsrelation ist.<br />
74