MINT üben

Endliche Automaten

Analysieren, vergleichen, implementieren: Hier zeigt sich, ob Sie einen Automaten wirklich verstanden haben.

Ihr Fortschritt:
0 / 0 Aufgaben
2

Aufgabenblock — AFB II

Zehn Aufgaben aus allen Unterkapiteln: Zustände deuten, Entwürfe vergleichen und erweitern, Automaten implementieren und Mealy-Ausgaben untersuchen — mit gestuften Tipps, wenn Sie nicht weiterkommen.

A1
Einen Automaten analysieren
AFB II

Gegeben ist ein DEA über \(\Sigma=\{a,\,b\}\).

z0 z1 z2 a a a b b b

Analysieren Sie den Automaten, indem Sie für jeden Zustand seine Bedeutung notieren. Wie viele Wörter der Länge 3 bzw. der Länge 4 akzeptiert er?

Wörter
Wörter
Was ändert ein b? Was ändert ein a? Die Schleifen zeigen: b spielt für den Zustand keine Rolle.
Der Index des Zustands ist die Anzahl der gelesenen a modulo 3. Akzeptiert wird, wenn diese Anzahl durch 3 teilbar ist.
Länge 3: bbb, aaa → 2. Länge 4: bbbb und die vier Wörter mit genau drei a → 5.
Vollständige Lösung
ZustandBedeutung
z0Anzahl der a durch 3 teilbar (auch 0)
z1Anzahl der a lässt Rest 1
z2Anzahl der a lässt Rest 2

\(L(A)=\{\,w\in\{a,b\}^*\mid \text{Anzahl der } a \text{ in } w \text{ ist durch 3 teilbar}\,\}\) — dazu gehört auch \(\varepsilon\).

Länge 3: 0 oder 3 a, also bbb, aaa → 2. Länge 4: 0 oder 3 a, also bbbb und aaab, aaba, abaa, baaa → 5

A2
Ist der Graph vollständig?
AFB II

Ein Schüler zeichnet den folgenden Graphen über \(\Sigma=\{a,\,b,\,c\}\), ohne einen Vermerk darunter zu schreiben.

z0 z1 z2 a b, c b a c

Begründen Sie, warum der Graph keinen vollständigen DEA darstellt. Wie viele Übergänge fehlen? Wie viele Übergänge hat der Automat, nachdem Sie ihn um einen Fehlerzustand zF vervollständigt haben?

Übergänge
Gehen Sie Zustand für Zustand vor und haken Sie für jedes Zeichen aus Σ ab, ob ein Pfeil existiert. Die Schleife „b, c“ zählt doppelt.
z0: a, b, c vorhanden. z1: a, b vorhanden, c fehlt. z2: nur c vorhanden, a und b fehlen.
3 Übergänge fehlen. Mit zF: \(|Z|\cdot|\Sigma|=4\cdot 3=12\).
Vollständige Lösung

Ein vollständiger DEA braucht aus jedem Zustand für jedes Zeichen genau einen Pfeil. Hier fehlen δ(z1, c), δ(z2, a) und δ(z2, b) → 3. Ohne Vermerk ist nicht klar, was bei diesen Eingaben passiert — der Graph ist unvollständig.

Vervollständigt: Die drei Lücken führen nach zF, zF erhält eine Schleife mit a, b, c. Insgesamt \(4\cdot 3\) = 12 Übergänge (6 gezeichnete + 3 neue + 3 Schleifen an zF).

A3
Bedeutung der Zustände
AFB II

Der folgende DEA liest Binärzahlen, das höchstwertige Bit zuerst. Er akzeptiert genau die Binärzahlen, die durch 3 teilbar sind.

z0 z1 z2 0 1 1 0 0 1

Erläutern Sie, warum Zustand zr bedeutet: „Der bisher gelesene Wert lässt beim Teilen durch 3 den Rest r.“ In welchem Zustand endet der Automat für 100000? (Nummer angeben)

Was passiert mit dem Wert einer Binärzahl, wenn man ein Bit \(x\) anhängt? Beispiel: 10 (2) wird zu 101 (5).
Aus dem Wert \(v\) wird \(2v+x\). Für den Rest gilt deshalb: Aus Rest \(r\) wird Rest \((2r+x) \bmod 3\) — genau das zeigen die Pfeile.
\(100000_2=32\), \(32=10\cdot 3+2\) → z2.
Vollständige Lösung

Hängt man an eine Binärzahl mit Wert \(v\) das Bit \(x\) an, entsteht der Wert \(2v+x\). Für den Rest bei Division durch 3 zählt nur der alte Rest \(r\): neuer Rest \((2r+x)\bmod 3\). Prüfung am Graphen: z1 mit 0 → \((2+0)\bmod 3=2\) → z2; z2 mit 1 → \((4+1)\bmod 3=2\) → z2 (Schleife). Startzustand z0: vor dem ersten Bit ist der Wert 0.

z0 \(\xrightarrow{\text{1}}\) z1 \(\xrightarrow{\text{0}}\) z2 \(\xrightarrow{\text{0}}\) z1 \(\xrightarrow{\text{0}}\) z2 \(\xrightarrow{\text{0}}\) z1 \(\xrightarrow{\text{0}}\) z2 → z2, denn \(32 \bmod 3 = 2\).