Die Übergangsfunktion Was bedeutet das? PDA, Übergangsfunktion haben wir so definiert: : Z ( [{"})!P e (Z ) (z, a, A) ist eine Menge von Paaren der Form (z 0, B 1...B k ). Jedes dieser Paare beschreibt einen möglichen Übergang. Also haben wir hier ein nichtdeterministisches Modell. Wann können diese Übergänge verwendet werden? Immer dann, wenn die geforderten Voraussetzungen vorliegen. Und was ist gefordert? Um Übergänge aus (z, a, A) anwenden zu können, muss der derzeitige Zustand z sein, oberstes Kellersymbol muss A sein, und falls a 2 gilt, muss das vom Lesekopf gesehene Eingabesymbol a sein. (Bei a = " gibt es keine Forderung hinsichtlich der Eingabe.) Einheit 28 Folie 28.1
Normale Übergänge Wie verändert sich nun der Kellerautomat, wenn ein Übergang der Form (z 0, B 1...B k ) 2 (z, a, A) angewendet wird? Zunächst interessiert uns der Fall, dass a 2 gilt. Das nennen wir einen normalen Übergang. Wie zu erwarten: Der Zustand in der endlichen Zustandskontrolle verändert sich von z zu z 0. Wie ebenfalls zu erwarten: Der Lesekopf wird auf der Eingabe um ein Zeichen weitergeschoben. (D.h. das a wird weggelesen ) Und auf dem Keller passiert folgendes: Das A wird entfernt, und dann wird der Reihe nach B k, B k 1,...,B 2 und zuletzt B 1 auf den Keller gelegt. Machen Sie sich eine Zeichnung, und überlegen Sie sich, was bei k = 0geschieht. Einheit 28 Folie 28.2
"-Übergänge Wie verändert sich der Kellerautomat, wenn ein Übergang der Form (z 0, B 1...B k ) 2 (z,",a) angewendet wird? Auch hier war zu erwarten: Der Zustand in der endlichen Zustandskontrolle verändert sich von z zu z 0. Wohl auch nicht wirklich überraschend: Der Lesekopf auf dem Eingabeband bleibt unverändert. Und die Aktion auf dem Keller ist die selbe wie im normalen Fall auf der vorigen Folie. Machen Sie sich auch hier wieder eine Zeichnung. Einheit 28 Folie 28.3
Konfigurationen Wir wollen jetzt den Begriff der Konfiguration definieren: Definition: Sei M =(Z,,,,z 0, #) ein PDA. Als Konfiguration von M bezeichnen wir jedes Element k aus der Menge Z. Die Konfiguration (z, w, V ) für z 2 Z, w 2, V 2 wollen wir so interpretieren, dass der Kellerautomat sich im Zustand z befindet, dass auf dem Eingabeband noch das Wort w zu lesen ist (d.h. wenn w = a 1 a 2...a n gilt, dann steht der Lesekopf auf a 1 ), und dass der Kellerinhalt V ist, wobei für V = A 1 A 2...A m das unterste Kellersymbol A m ist, während wir ganz oben A 1 sehen. Einheit 28 Folie 28.4
Konfigurationsübergänge Wie ändert sich die Konfiguration des PDA, wenn einer der in dieser Konfiguration möglichen Übergänge angewendet wird? Die aktuelle Konfiguration sei (z, a 1...a n, A 1...A m ). Möglich sind die Übergänge aus (z, a 1, A 1 ) und aus (z,",a 1 ). Wir setzen die intuitive Idee des Übergangs formal um und erhalten für (z 0, B 1...B k ) 2 (z, a 1, A 1 ) als neue Konfiguration: (z 0, a 2...a n, B 1...B k A 2...A m ) Wir notieren diesen Übergang auf Konfigurationen so: (z, a 1...a n, A 1...A m ) ` (z 0, a 2...a n, B 1...B k A 2...A m ) Entsprechend erhalten wir im Fall (z 0, B 1...B k ) 2 (z,",a 1 ): (z, a 1...a n, A 1...A m ) ` (z 0, a 1...a n, B 1...B k A 2...A m ) Einheit 28 Folie 28.5
Akzeptierung durch leeren Keller Mit Hilfe der Konfigurationsbeschreibungen können wir nun festlegen, welches die durch den PDA M akzeptierte Sprache ist. Die hier verwendete Art der Akzeptierung nennt man sinnvoller Weise Akzeptierung durch leeren Keller: N(M) ={w 2 9z 2 Z : (z 0, w, #) ` (z,",")} Beachte: Bei leerem Keller kann M nicht mehr weiter arbeiten. Aber die ursprüngliche Eingabe gilt nur dann als akzeptiert, wenn sie zu diesem Zeitpunkt dann auch komplett gelesen worden ist. Alternativ zur Akzeptierung durch leeren Keller kann man auch bei Kellerautomaten die Akzeptierung durch Endzustand definieren wirwerdendasindenübungenuntersuchen. Einheit 28 Folie 28.6