Keller Automat Informatik?
Ich soll einen Keller Automaten zur folgenden Sprache erstellen
L={a^3nb^2n | n>=0}
Ich weiß ehrlich gesagt nicht, wie dieser Automat aufgebaut ist. Ich soll ein Diagramm erstellen. Ich weiß allerdings nicht wie das für ein Kellerautomat für dieses Sprache geht
1 Antwort
Da nicht eindeutig lesbar, erstmal die Sprache:
war das so gemeint?
Wenn ja, dann legst Du im Endeffekt für 3 konsekutive (aufeinanderfolgende) a einen Token in den Stack, für zwei konsekutive b holst Du einen raus. Ist Stack am Ende leer, akzeptieren.
Bei Fehler in der Eingabefolge Übergang in absorbierenden Fehlerzustand (Ein Zustand, für den es keine abgehenden Übergänge mehr gibt).
Edit: Ergänzungen nach Hinweis von NormaBlack)
Und noch als Hinweis: da auch n=0 möglich sein soll, müsste der Startzustand mit dem akzeptierenden zusammenfallen.
Absorbierend nutzt man auch eher bei Markovketten, mir fiel gerade kein passenderer Begriff ein.
Konsekutiv war eher ein Druchbruch aus dem Englischen, consecutive - aufeinanderfolgend, während wir in DE konsekutiv eher für nachfolgend nutzen.
War vielleicht nicht die glücklichste Formulierung, da gebe ich Dir recht.
Hier lernt man immer was Neues, konsekutiv und absorbierend hab ich in diesem Zusammenhang noch nie gehört.