Kontextfreie Sprachen & Kellerautomaten
Kontextfreie Sprachen & Kellerautomaten
Kontextfreie Sprachen & Kellerautomaten
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Zustandsüberführungsfunktion des <strong>Kellerautomaten</strong><br />
(q', k 1 …k n ) ! -(q, x, k) • Ist K im Zustand q,<br />
• liest auf dem Eingabeband das Symbol x<br />
• und auf dem Keller das Symbol k,<br />
• dann kann K in den Zustand q' wechseln<br />
• und k auf dem Keller durch k 1 …k n ersetzten,<br />
• wobei k 1 zum obersten Symbol wird.<br />
(q', 2) ! -(q, x, k) • Ist K im Zustand q,<br />
• liest auf dem Eingabeband das Symbol x<br />
• und auf dem Keller das Symbol k,<br />
• dann kann K in den Zustand q' wechseln<br />
• und k vom Keller löschen.<br />
(q', k 1 …k n ) ! -(q, 2, k) • Ist K im Zustand q,<br />
• und liest auf dem Keller das Symbol k,<br />
• dann kann K in den Zustand q' wechseln<br />
• und k auf dem Keller durch k 1 …k n ersetzten,<br />
• wobei k 1 zum obersten Symbol wird.<br />
(q', 2) ! -(q, 2, k) • Ist K im Zustand q,<br />
• und liest auf dem Keller das Symbol k,<br />
• dann kann K in den Zustand q' wechseln<br />
• und k vom Keller löschen.<br />
FGI-1 Habel / Eschenbach Kap 13 <strong>Kontextfreie</strong> <strong>Sprachen</strong> & Grammatiken [59]<br />
Beispiel Kellerautomat<br />
K 1 = ({a, b}, {q 0 , q 1 , q f }, {1, 1}, - 1 , q 0 , 1, {q f }) mit<br />
- 1 (q 0 , 2, 1) = - 1 (q 1 , 2, 1) = {(q f , 2)}<br />
- 1 (q 0 , a, 1) = {(q 0 , 11)}<br />
- 1 (q 0 , a, 1) = {(q 0 , 11)}<br />
- 1 (q 0 , b, 1) = - 1 (q 1 , b, 1) = {(q 1 , 2)}<br />
- 1 (q 0 , 2, 1) = - 1 (q 0 , b, 1) = - 1 (q 1 , 2, 1) =<br />
- 1 (q 1 , a, 1) = - 1 (q 1 , a, 1) = - 1 (q 1 , b, 1) =<br />
- 1 (q f , 2, 1) = - 1 (q f , 2, 1) = - 1 (q f , a, 1) =<br />
- 1 (q f , a, 1) = - 1 (q f , b, 1) = - 1 (q f , b, 1) = /<br />
FGI-1 Habel / Eschenbach Kap 13 <strong>Kontextfreie</strong> <strong>Sprachen</strong> & Grammatiken [60]