Gib einen Kellerautomaten an, der folgende Sprache akzeptiert:
´L = {a^m b^n in {a,b}^(**) | m >= n >= 0}´
Ein Kellerautomat ´M´ könnte folgendermaßen funktionieren:
Beim Lesen eines ´a´ wird ein ´A´ auf den Keller gelegt oder der Keller unverändert gelassen. Beim Lesen des ersten ´b´ wird der Zustand gewechselt. Im zweiten Zustand darf kein ´a´ mehr gelesen werden. Außerdem wird für jedes ´b´ ein ´A´ aus dem Keller gelöscht. Ist der Keller nach Einlesen des Eingabewortes leer, waren mindestens so viele ´a´s wie ´b´s im Wort.
´M = ({s,f}, {a,b}, {A}, s, {s,f}, delta)´
mit
´delta(s, a, #) = {(s, R, A), (s, R, lambda)}´ ´delta(s, a, A) = {(s, R, "AA"), (s, R, A)}´ ´delta(s, b, A) = delta(f, b, A) = {(f, R, lambda)}´ ´delta(s, b, #) = delta(f, b, #) = delta(f, a, #) = delta(f, a, A) = O/´
HPI, 2014-04-26, Theoretische Informatik 2, Blatt 3, Aufgabe 2
2014-07-21 19:07:42 UTC
2014-07-21 19:07:42 UTC