Endliche Automaten Endliche Automaten J. Blömer /24
Endliche Automaten Endliche Automaten sind ein Kalkül zur Spezifikation von realen oder abstrakten Maschinen regieren auf äußere Ereignisse (=Eingaben) ändern ihren inneren Zustand produzieren gegebenenfalls eine Ausgabe werden in der Regel durch gerichtete, markierte Graphen dargestellt. Endliche Automaten J. Blömer /24
Endliche Automaten Endliche Automaten sind ein Kalkül zur Spezifikation von realen oder abstrakten Maschinen regieren auf äußere Ereignisse (=Eingaben) ändern ihren inneren Zustand produzieren gegebenenfalls eine Ausgabe werden in der Regel durch gerichtete, markierte Graphen dargestellt. Endliche Automaten werden eingesetzt, um das Verhalten realer Maschinen (z.b. Ampelanlagen, Getränkeautomaten) zu spezifizieren das Verhalten von Softwarekomponenten (z.b. Benutzeroberflächen) zu spezifizieren einfache Sprachen (z.b. Bezeichner und Zahlen in Programmiersprache) zu spezifizieren. Endliche Automaten J. Blömer /24
Einführende Beispiele - Bezeichner in Programmiersprachen Endliche Automaten und Sprachen Endlicher Automat definiert eine Sprache, d.h. Menge von Worten über einem Alphabet. Endliche Automaten J. Blömer 2/24
Einführende Beispiele - Bezeichner in Programmiersprachen Endliche Automaten und Sprachen Endlicher Automat definiert eine Sprache, d.h. Menge von Worten über einem Alphabet. Buchstabe Buchstabe start Ziffer Beispiel: Automat akzeptiert jede Folge von Buchstaben und Ziffern, die mit einem Buchstaben beginnt. Endliche Automaten J. Blömer 2/24
Einführende Beispiele - Getränkeautomat Endliche Automaten und Maschinen Endlicher Automat spezifiziert das Verhalten einer Maschine. Endliche Automaten J. Blömer 3/24
Einführende Beispiele - Getränkeautomat Endliche Automaten und Maschinen Endlicher Automat spezifiziert das Verhalten einer Maschine. GeldRück GetränkNehmen start 2 Eur 2 GeldRück Eur Eur Beispiel: Automat akzeptiert Folgen von Ereignissen zur Bedienung eines Getränkeautomaten. Endliche Automaten J. Blömer 3/24
Deterministische endliche Automaten Definition Ein deterministischer endlicher Automat (DFA) (engl. deterministic finite automaton) A ist ein 5-Tupel (Σ, Q, δ, q, F ), wobei Q eine endliche Menge von Zuständen ist, Σ ein endliches Alphabet ist, δ : Q Σ Q die (partielle) Übergangsfunktion ist, q der Startzustand ist, F Q die Menge von Endzuständen (auch: akzeptierenden Zuständen) ist. Endliche Automaten J. Blömer 4/24
Deterministische endliche Automaten Definition Ein deterministischer endlicher Automat (DFA) (engl. deterministic finite automaton) A ist ein 5-Tupel (Σ, Q, δ, q, F ), wobei Q eine endliche Menge von Zuständen ist, Σ ein endliches Alphabet ist, δ : Q Σ Q die (partielle) Übergangsfunktion ist, q der Startzustand ist, F Q die Menge von Endzuständen (auch: akzeptierenden Zuständen) ist. Erinnerung: Eine Funktion mit Definitionsbereich D und Bildbereich ist eine Relation f D B mit ((x, y) f (x, z) f ) y = z. f heißt total, falls zu jedem x D ein y B existiert mit (x, y) f. Andernfalls heißt f partiell. Endliche Automaten J. Blömer 4/24
Deterministische endliche Automaten Definition Ein deterministischer endlicher Automat (DFA) (engl. deterministic finite automaton) A ist ein 5-Tupel (Σ, Q, δ, q, F ), wobei Q eine endliche Menge von Zuständen ist, Σ ein endliches Alphabet ist, δ : Q Σ Q die (partielle) Übergangsfunktion ist, q der Startzustand ist, F Q die Menge von Endzuständen (auch: akzeptierenden Zuständen) ist. Ist die Übergangsfunktion δ eines DFA total, so heißt A vollständig. r = δ(q, a) heißt Nachfolgezustand von q unter a. A heißt deterministisch, da es zu jedem Paar (q, a), q Q, a Σ, höchstens einen Nachfolgezustand δ(q, a) gibt. Endliche Automaten J. Blömer 4/24
Beispiele Endliche Automaten J. Blömer 5/24
Beispiele DFA A definiert durch Q = {, }, q = Σ = {Buchstabe, Ziffer} F = {} und Übergangsfunktion δ definiert durch δ Buchstabe Ziffer Endliche Automaten J. Blömer 5/24
Beispiele DFA A definiert durch Q = {, }, q = Σ = {Buchstabe, Ziffer} F = {} und Übergangsfunktion δ definiert durch δ Buchstabe Ziffer DFA A 2 definiert durch Q = {,, 2}, q = Σ = { Eur, 2 Eur, GeldRück, F = {} GetränkNehmen} und Übergangsfunktion δ definiert durch δ Eur 2 Eur GR GTN 2 2 2 Endliche Automaten J. Blömer 5/24
Graphische Darstellung von DFAs DFAs und Graphen pro Zustand ein Knoten, jeweils markiert mit Zustand, Startzustand und Endzustände gekennzeichnet Kante (q, r) markiert mit a Σ genau dann, wenn δ(q, a) = r erhalten Multigraphen, da Kanten sich nur durch Markierung unterscheiden können Endliche Automaten J. Blömer 6/24
Graphische Darstellung von DFAs DFAs und Graphen DFA A : pro Zustand ein Knoten, jeweils markiert mit Zustand, Startzustand und Endzustände gekennzeichnet Kante (q, r) markiert mit a Σ genau dann, wenn δ(q, a) = r erhalten Multigraphen, da Kanten sich nur durch Markierung unterscheiden können Q = {, }, q = Σ = {Buchstabe, Ziffer} F = {} δ Buchstabe Ziffer Endliche Automaten J. Blömer 6/24
Graphische Darstellung von DFAs DFAs und Graphen DFA A : pro Zustand ein Knoten, jeweils markiert mit Zustand, Startzustand und Endzustände gekennzeichnet Kante (q, r) markiert mit a Σ genau dann, wenn δ(q, a) = r erhalten Multigraphen, da Kanten sich nur durch Markierung unterscheiden können Q = {, }, q = Σ = {Buchstabe, Ziffer} F = {} Buchstabe Buchstabe start δ Buchstabe Ziffer Ziffer Endliche Automaten J. Blömer 6/24
Graphische Darstellung von DFAs DFAs und Graphen pro Zustand ein Knoten, jeweils markiert mit Zustand, Startzustand und Endzustände gekennzeichnet Kante (q, r) markiert mit a Σ genau dann, wenn δ(q, a) = r erhalten Multigraphen, da Kanten sich nur durch Markierung unterscheiden können DFA A 2 : Q = {,, 2}, q = Σ = { Eur, 2 Eur, GeldRück, F = {} GetränkNehmen} δ Eur 2 Eur GR GTN 2 2 2 Endliche Automaten J. Blömer 6/24
Graphische Darstellung von DFAs DFAs und Graphen pro Zustand ein Knoten, jeweils markiert mit Zustand, Startzustand und Endzustände gekennzeichnet Kante (q, r) markiert mit a Σ genau dann, wenn δ(q, a) = r erhalten Multigraphen, da Kanten sich nur durch Markierung unterscheiden können DFA A 2 : Q = {,, 2}, q = Σ = { Eur, 2 Eur, GeldRück, F = {} GetränkNehmen} δ Eur 2 Eur GR GTN 2 2 2 GeldRück GetränkNehmen start 2 Eur 2 Eur Eur GeldRück Endliche Automaten J. Blömer 6/24
Vervollständigung endlicher Automaten Erinnerung: Ein DFA A = (Σ, Q, δ, q, F ) heißt vollständig, wenn die Übergangsfunktion δ total ist. Endliche Automaten J. Blömer 7/24
Vervollständigung endlicher Automaten Erinnerung: Ein DFA A = (Σ, Q, δ, q, F ) heißt vollständig, wenn die Übergangsfunktion δ total ist. Zum besseren Verständnis, zur Realisierung und zur formalen Argumentation kann es sinnvoll oder notwendig sein, einen DFA A so zu ergänzen, dass er vollständig ist. Endliche Automaten J. Blömer 7/24
Vervollständigung endlicher Automaten Erinnerung: Ein DFA A = (Σ, Q, δ, q, F ) heißt vollständig, wenn die Übergangsfunktion δ total ist. Zum besseren Verständnis, zur Realisierung und zur formalen Argumentation kann es sinnvoll oder notwendig sein, einen DFA A so zu ergänzen, dass er vollständig ist. Ergänzung endlicher Automaten zu vollständigen Automaten Sei A = (Σ, Q, δ, q, F ) ein DFA. Zur Ergänzung wird ein neuer Zustand f mit f F eingeführt, 2 für alle Paare (q, a) Q Σ, für die die Übergangsfunktion δ nicht definiert ist, δ(q, a) = f gesetzt, 3 für alle Paare (f, a), a Σ, δ(f, a) = f gesetzt. Endliche Automaten J. Blömer 7/24
Vervollständigung endlicher Automaten DFA A : Buchstabe Buchstabe start Ziffer Endliche Automaten J. Blömer 8/24
Vervollständigung endlicher Automaten DFA A : Vervollständigung von A : Buchstabe Buchstabe start Buchstabe Buchstabe start Ziffer f Ziffer Ziffer Ziffer Buchstabe Endliche Automaten J. Blömer 8/24
Vervollständigung endlicher Automaten DFA A 3 : start q q q 2 q 3 q 4 Endliche Automaten J. Blömer 9/24
Vervollständigung endlicher Automaten DFA A 3 : Vervollständigung von A 3 : start q start q f, q q q 2 q 2 q 3 q 3 q 4 q 4 Endliche Automaten J. Blömer 9/24
Erweiterung von Übergangsfunktionen Um das Verhalten eines DFAs A = (Σ, Q, δ, q, F ) bei Folgen von Symbolen zu beschreiben, erweitern wir die Übergangsfunktion. Endliche Automaten J. Blömer /24
Erweiterung von Übergangsfunktionen Um das Verhalten eines DFAs A = (Σ, Q, δ, q, F ) bei Folgen von Symbolen zu beschreiben, erweitern wir die Übergangsfunktion. Definition 2 Sei A = (Σ, Q, δ, q, F ) deterministischer endlicher Automat. Dann wird die erweiterte Übergangsfunktion ˆδ : Q Σ Q rekursiv wie folgt definiert: ˆδ(q, ɛ) = q für alle q Q und das leere Wort ɛ ˆδ(q, wa) = δ(ˆδ(q, w), a) für alle q Q, w Σ, a Σ. Endliche Automaten J. Blömer /24
Erweiterung von Übergangsfunktionen Um das Verhalten eines DFAs A = (Σ, Q, δ, q, F ) bei Folgen von Symbolen zu beschreiben, erweitern wir die Übergangsfunktion. Definition 2 Sei A = (Σ, Q, δ, q, F ) deterministischer endlicher Automat. Dann wird die erweiterte Übergangsfunktion ˆδ : Q Σ Q rekursiv wie folgt definiert: ˆδ(q, ɛ) = q für alle q Q und das leere Wort ɛ Bemerkungen: ˆδ(q, wa) = δ(ˆδ(q, w), a) für alle q Q, w Σ, a Σ. ˆδ(q, a) = δ(q, a) für alle q Q und a Σ Endliche Automaten J. Blömer /24
Erweiterung von Übergangsfunktionen Um das Verhalten eines DFAs A = (Σ, Q, δ, q, F ) bei Folgen von Symbolen zu beschreiben, erweitern wir die Übergangsfunktion. Definition 2 Sei A = (Σ, Q, δ, q, F ) deterministischer endlicher Automat. Dann wird die erweiterte Übergangsfunktion ˆδ : Q Σ Q rekursiv wie folgt definiert: ˆδ(q, ɛ) = q für alle q Q und das leere Wort ɛ Bemerkungen: ˆδ(q, wa) = δ(ˆδ(q, w), a) für alle q Q, w Σ, a Σ. Wir unterscheiden häufig nicht zwischen δ und ˆδ und schreiben auch δ für die erweiterte Übergangsfunktion ˆδ. 2 Ist δ nicht vollständig, so ist auch ˆδ nicht vollständig. 3 Um ˆδ zu vervollständigen, genügt es δ zu vervollständigen. Endliche Automaten J. Blömer /24
Erweiterung von Übergangsfunktionen Definition 2 Sei A = (Σ, Q, δ, q, F ) deterministischer endlicher Automat. Dann wird die erweiterte Übergangsfunktion ˆδ : Q Σ Q rekursiv wie folgt definiert: ˆδ(q, ɛ) = q) für alle q Q und das leere Wort ɛ ˆδ(q, wa) = δ(ˆδ(q, w), a) für alle q Q, w Σ, a Σ. Alternative Formulierungen Für q, q Q und w = a a n, a i Σ, i =,..., n, gilt ˆδ(q, w) = δ(... δ(δ(q, a ), a 2 )..., a n ) 2 ˆδ(q, w) = q genau dann, wenn es r,..., r n Q gibt mit r = q, r n = q und δ(r i, a i+ ) = r i+ für i =,..., n. Endliche Automaten J. Blömer /24
Erweiterung von Übergangsfunktionen - Beispiele DFA A 3 : start q q q 2 q 3 q 4 Endliche Automaten J. Blömer 2/24
Erweiterung von Übergangsfunktionen - Beispiele DFA A 3 : start q δ(q, ) = δ(δ(q, ), ) = δ(δ(δ(q, ), ), ) = δ(δ(q 2, ), ) q = δ(q 2, ) = q 3 F q 2 Folge von Zuständen: r = q, r = q 2, r 2 = q 2, r 3 = q 3 q 3 q 4 Endliche Automaten J. Blömer 2/24
Erweiterung von Übergangsfunktionen - Beispiele DFA A 3 : start q δ(q, ) = δ(δ(q, ), ) = δ(δ(δ(q, ), ), ) = δ(δ(δ(δ(q, ), ), ), ) q = δ(δ(δ(δ(δ(q, ), ), ), ), ) q 2 = δ(δ(δ(δ(q, ), ), ), ) = δ(δ(δ(q 2, ), ), ) = δ(δ(q 2, ), ) = δ(q 3, ) q 3 = q 4 F q 4 Folge von Zuständen: r = q, r = q, r 2 = q 2, r 3 = q 2, r 4 = q 3 r 5 = q 4 Endliche Automaten J. Blömer 2/24
Erweiterung von Übergangsfunktionen - Beispiele DFA A 3 : start q δ(q, ) = δ(δ(q, ), ) = δ(δ(δ(q, ), ), ) = δ(δ(q, ), ) q = ; q 2 nicht definiert, da δ(q, ) nicht definiert q 3 Folge von Zuständen: r = q, r = q, r 2 nicht definiert q 4 Endliche Automaten J. Blömer 2/24
Erweiterung von Übergangsfunktionen - Beispiele Vervollständigter A 3 : start q q q 2 f, q 3 q 4 Endliche Automaten J. Blömer 2/24
Erweiterung von Übergangsfunktionen - Beispiele Vervollständigter A 3 : start q f, δ(q, ) = δ(δ(q, ), ) = δ(δ(δ(q, ), ), ) = δ(δ(q, ), ) q = δ(f, ) = f q 2 Folge von Zuständen: r = q, r = q, r 2 = f, r 3 = f q 3 q 4 Endliche Automaten J. Blömer 2/24
Erweiterung von Übergangsfunktionen - Berechnung als Weg DFA A 3 : start q δ(q, ) = δ(δ(q, ), ) = δ(δ(δ(q, ), ), ) = δ(δ(δ(δ(q, ), ), ), ) q = δ(δ(δ(δ(δ(q, ), ), ), ), ) q 2 = δ(δ(δ(δ(q, ), ), ), ) = δ(δ(δ(q 2, ), ), ) = δ(δ(q 2, ), ) = δ(q 3, ) q 3 = q 4 F q 4 Folge von Zuständen: r = q, r = q, r 2 = q 2, r 3 = q 2, r 4 = q 3 r 5 = q 4 Endliche Automaten J. Blömer 3/24
Erweiterung von Übergangsfunktionen - Beispiele DFA A : Buchstabe B:= Buchstabe, Z:=Ziffer Buchstabe start Ziffer Endliche Automaten J. Blömer 4/24
Erweiterung von Übergangsfunktionen - Beispiele DFA A : B:= Buchstabe, Z:=Ziffer Buchstabe Buchstabe start Ziffer δ(, BZB) = δ(δ(, BZ), B) = δ(δ(δ(, B), Z), B) = δ(δ(, Z), B) = δ(, B) = F Folge von Zuständen: r =, r =, r 2 =, r 3 = Endliche Automaten J. Blömer 4/24
Erweiterung von Übergangsfunktionen - Beispiele DFA A : B:= Buchstabe, Z:=Ziffer Buchstabe Buchstabe start Ziffer δ(, ZBB) = δ(δ(, ZB), B) = δ(δ(δ(, Z), B), B) = ; nicht definiert, da δ(, Z) nicht definiert Folge von Zuständen: r =, r nicht definiert Endliche Automaten J. Blömer 4/24
Erweiterung von Übergangsfunktionen - Beispiele Vervollständigter A : B:= Buchstabe, Z:=Ziffer Buchstabe start Buchstabe Ziffer Ziffer f Ziffer δ(, ZBB) = δ(δ(, ZB), B) = δ(δ(δ(, Z), B), B) = δ(δ(f, B), B) = δ(f, B) = f Folge von Zuständen: r =, r = f, r 2 = f, r 3 = f Buchstabe Endliche Automaten J. Blömer 4/24
Automaten und Sprachen Definition 3 Sei A = (Σ, Q, δ, q, F ) ein deterministischer endlicher Automat. Der DFA A akzeptiert das Wort w Σ genau dann, wenn δ(q, w) F. Die Menge L(A) := {w Σ δ(q, w) F } heißt die von A akzeptierte Sprache. Endliche Automaten J. Blömer 5/24
Automaten und Sprachen Definition 3 Sei A = (Σ, Q, δ, q, F ) ein deterministischer endlicher Automat. Der DFA A akzeptiert das Wort w Σ genau dann, wenn δ(q, w) F. Die Menge L(A) := {w Σ δ(q, w) F } heißt die von A akzeptierte Sprache. DFA A Buchstabe Buchstabe start Ziffer Endliche Automaten J. Blömer 5/24
Automaten und Sprachen Definition 3 Sei A = (Σ, Q, δ, q, F ) ein deterministischer endlicher Automat. Der DFA A akzeptiert das Wort w Σ genau dann, wenn δ(q, w) F. Die Menge L(A) := {w Σ δ(q, w) F } heißt die von A akzeptierte Sprache. DFA A Buchstabe Buchstabe start B:= Buchstabe, Z:=Ziffer L(A ) = {w {B, Z} w beginnt mit B} = L(B(B Z) ) Ziffer Endliche Automaten J. Blömer 5/24
Automaten und Sprachen DFA A 3 : start q q q 2 q 3 q 4 Endliche Automaten J. Blömer 6/24
Automaten und Sprachen DFA A 3 : start q q q 2 L(A 3 ) ={w {, } w beginnt mit und endet mit } =L( 2 ( ) 2 ) (als regulärer Ausdruck) q 3 q 4 Endliche Automaten J. Blömer 6/24
Automaten und Sprachen DFA A 4 : start s a q a b r b b a b a q 2 r 2 b a Endliche Automaten J. Blömer 7/24
Automaten und Sprachen DFA A 4 : start s a q a b r b b a b a q 2 r 2 b a L(A 4 ) = {w {a, b} + w beginnt und endet mit demselben Symbol} Endliche Automaten J. Blömer 7/24
Automaten und Sprachen DFA A 2 : GeldRück GetränkNehmen start 2 Eur 2 GeldRück Eur Eur Endliche Automaten J. Blömer 8/24
Automaten und Sprachen DFA A 2 : GeldRück GetränkNehmen start 2 Eur 2 GeldRück Eur Eur ( Eur GeldRück) ( Eur Eur GeldRück) L(A 2 ) = L ( Eur Eur GetränkNehmen) (2 Eur GeldRück) (2 Eur GetränkNehmen) Endliche Automaten J. Blömer 8/24
DFAs, NFAs und reguläre Ausdrücke Satz 4 Sei Σ ein Alphabet und L Σ eine Sprache. Dann sind die folgenden Aussagen äquivalent: Es gibt einen DFA A mit L = L(A). 2 Es gibt einen regulären Ausdruck R mit L = L(R). Endliche Automaten J. Blömer 9/24
Endliche Automaten mit Ausgabe Man kann mit endlichen Automaten auch Reaktionen der modellierten Maschine in Form von Ausgaben modellieren. Erweitern dazu Automaten um ein Ausgabealphabet T und eine Ausgabefunktion. Es gibt zwei Varianten: Mealy-Automaten ordnen Zustandsübergängen eine Ausgabe zu. 2 Moore-Automaten ordnen Zuständen eine Ausgabe zu. Endliche Automaten J. Blömer 2/24
Mealy-Automaten Definition 5 Sei A = (Σ, Q, δ, q, F ) eine endlicher Automat, T ein endliches Alphabet und λ : Q Σ T eine Funktion. Dann ist A erweitert um T und λ ein Mealy-Automat. T wird Ausgabealphabet und λ Ausgabefunktion genannt. Wir sagen, dass λ den Zustandsübergängen von A Ausgaben zuordnet. Endliche Automaten J. Blömer 2/24
Mealy-Automaten Definition 5 Sei A = (Σ, Q, δ, q, F ) eine endlicher Automat, T ein endliches Alphabet und λ : Q Σ T eine Funktion. Dann ist A erweitert um T und λ ein Mealy-Automat. T wird Ausgabealphabet und λ Ausgabefunktion genannt. Wir sagen, dass λ den Zustandsübergängen von A Ausgaben zuordnet. Mealy-Automaten: b/y 2 a/x a/x λ(, b) = y, λ(, a) = λ(, a) = x Endliche Automaten J. Blömer 2/24
Mealy-Automaten Definition 5 Sei A = (Σ, Q, δ, q, F ) eine endlicher Automat, T ein endliches Alphabet und λ : Q Σ T eine Funktion. Dann ist A erweitert um T und λ ein Mealy-Automat. T wird Ausgabealphabet und λ Ausgabefunktion genannt. Wir sagen, dass λ den Zustandsübergängen von A Ausgaben zuordnet. Mealy-Automaten: b/y a/x 2 a/x Bildbereich von λ ist T, daher leeres Wort als Ausgabe möglich Automat muss nicht bei jedem Übergang mit einer Ausgabe reagieren λ(, b) = y, λ(, a) = λ(, a) = x Endliche Automaten J. Blömer 2/24
Endliche Automaten mit Ausgabe Definition 6 Sei A = (Σ, Q, δ, q, F ) eine endlicher Automat, T ein endliches Alphabet und µ : Q T eine Funktion. Dann ist A erweitert um T und µ ein Moore-Automat. T wird Ausgabealphabet und µ Ausgabefunktion genannt. Wir sagen, dass µ den Zuständen von A Ausgaben zuordnet. Endliche Automaten J. Blömer 22/24
Endliche Automaten mit Ausgabe Definition 6 Sei A = (Σ, Q, δ, q, F ) eine endlicher Automat, T ein endliches Alphabet und µ : Q T eine Funktion. Dann ist A erweitert um T und µ ein Moore-Automat. T wird Ausgabealphabet und µ Ausgabefunktion genannt. Wir sagen, dass µ den Zuständen von A Ausgaben zuordnet. Moore-Automaten: b 2 x a a y µ() = y, µ(2) = x Endliche Automaten J. Blömer 22/24
Endliche Automaten mit Ausgabe Definition 6 Sei A = (Σ, Q, δ, q, F ) eine endlicher Automat, T ein endliches Alphabet und µ : Q T eine Funktion. Dann ist A erweitert um T und µ ein Moore-Automat. T wird Ausgabealphabet und µ Ausgabefunktion genannt. Wir sagen, dass µ den Zuständen von A Ausgaben zuordnet. Moore-Automaten: b a 2 x y µ() = y, µ(2) = x a Bildbereich von µ ist T, daher leeres Wort als Ausgabe möglich Automat muss nicht in jedem Zustand mit einer Ausgabe reagieren Moore-Automaten können Ausgaben nicht so fein differenzieren wie Mealy-Automaten Endliche Automaten J. Blömer 22/24
Getränkeautomat GeldRück GetränkNehmen start 2 Eur 2 GeldRück Eur Eur Endliche Automaten J. Blömer 23/24
Getränkeautomat mit Ausgabe - Mealy-Automat GeldRück / 2 Eur GetränkNehmen/Getränk start 2 Eur 2 Eur Eur GeldRück /Eur Endliche Automaten J. Blömer 23/24
Getränkeautomat GeldRück GetränkNehmen start 2 Eur 2 GeldRück Eur Eur Endliche Automaten J. Blömer 23/24
Getränkeautomat mit Ausgabe - Moore-Automat Getränk Nehmen 3 Getränk KlappeÖffnen 2 Eur Eur Eur 2 GeldNehmen GeldNehmen 4 Eur GeldRück 5 2 Eur GeldRück Endliche Automaten J. Blömer 23/24
Vergleich Mealy- und Moore-Automaten In Mealy-Automaten können Übergänge, die zum selben Zustand führen, unterschiedliche Ausgaben erzeugen. Endliche Automaten J. Blömer 24/24
Vergleich Mealy- und Moore-Automaten In Mealy-Automaten können Übergänge, die zum selben Zustand führen, unterschiedliche Ausgaben erzeugen. Moore-Automaten können Ausgaben nicht so fein differenzieren wie Mealy-Automaten. Endliche Automaten J. Blömer 24/24
Vergleich Mealy- und Moore-Automaten In Mealy-Automaten können Übergänge, die zum selben Zustand führen, unterschiedliche Ausgaben erzeugen. Moore-Automaten können Ausgaben nicht so fein differenzieren wie Mealy-Automaten. Aber jeder Mealy-Automat kann durch Einführung zusätzlicher Zustände in einen Moore-Automaten transformiert werden, der das gleiche Verhalten hat (siehe Beispiel Getränkeautomat) Endliche Automaten J. Blömer 24/24