update
This commit is contained in:
parent
4cb391f8f1
commit
9eef36c04b
BIN
Writerside/images/image_838.png
Normal file
BIN
Writerside/images/image_838.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 21 KiB |
BIN
Writerside/images/image_839.png
Normal file
BIN
Writerside/images/image_839.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 12 KiB |
BIN
Writerside/images/image_840.png
Normal file
BIN
Writerside/images/image_840.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
BIN
Writerside/images/image_841.png
Normal file
BIN
Writerside/images/image_841.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 13 KiB |
@ -126,3 +126,61 @@ Dann definieren wir den DEA $A_L =(Σ, Q, q_s, Q_a, δ)$:
|
||||
|
||||
|
||||
## Minimierungsalgorithmus
|
||||
> Grundprinzip: Äquivalente Zustände finden und zusammenführen
|
||||
|
||||
### Sprache eines Zustandes
|
||||
- Sei $q ∈ Q$ der Zustand eines DEA $A = (Σ, Q, q_s, Q_a, δ)$
|
||||
- Sprache des Zustands $q$
|
||||
- $L_A(q) := \{w ∈ Σ^*\space|\space δ^*(q,w) ∈ Q_a\}$
|
||||
|
||||
|
||||
### Äquivalente Zustände
|
||||
- DEA $A = (Σ, Q, q_s, Q_a, δ)$
|
||||
- $q_1, q_2 in Q$ sind **äquivalent ($q_q ≡_A q_2$)**
|
||||
- wenn $L_A(q_q) = L_A(q_2)$
|
||||
- **Äquivalenzklasse** von $q ∈ Q$
|
||||
- Menge der zu $q$ äquivalenten Zustände
|
||||
- $[q]_{≡_A} := \{q' ∈ Q\space|\space q' ≡_A q'\}$
|
||||
|
||||
#### Unterschied ähnliche Zustände vs. ähnliche Wörter
|
||||
> [Nerode Klasse $N(w)$](#nerode-klassen-als-zust-nde) sammelt Wörter (_ähnlich zu w_)
|
||||
>
|
||||
> [Äquivalenzklasse $[q]_{≡_A}$](#quivalente-zust-nde) sammelt Zustände (_ähnlich zu q_)
|
||||
|
||||
- in beiden Fällen: "ähnlich" ≈ "gleiches Verhalten für Folgewort"
|
||||
|
||||
|
||||
### Minimierungsstrategie
|
||||
1. Bestimme Äquivalenzklassen bzgl. $≡_A$
|
||||
- starte mit initialer Aufteilung und verfeinere Schritt für Schritt
|
||||
- Zu jeder Aufteilung:
|
||||
- Zeuge $z ∈ Σ^*$ für Notwendigkeit der Aufteilung
|
||||
2. Baue Quotientenautomaten zu den Äquivalenzklassen
|
||||
|
||||
### Quotientenautomat
|
||||

|
||||
|
||||
### Beispiel Minimierung
|
||||

|
||||
#### Bestimmung der Äquivalenzklassen
|
||||
- initiale Aufteilung
|
||||
- $P_0 = \{\{a,b,c,d,e,f\},\{c\}\}$
|
||||
- Zeuge: `ε`
|
||||
- akzeptierende / nicht akzeptierende Zustände
|
||||
- 1. Verfeinerung
|
||||
- $P_1 = \{\{a,d,e,f\},\{b\},\{c\}\}$
|
||||
- Zeuge: `x`
|
||||
- _kommt mit Eingabe von `x` in einen akzeptierenden Zustand_
|
||||
- 2. Verfeinerung
|
||||
- $P_2 = \{\{d,e,f\},\{a\},\{b\},\{c\}\}$
|
||||
- Zeuge: `yx`
|
||||
- _kommt mit Eingabe von `yx` in einen akzeptierenden Zustand_
|
||||
- Ende
|
||||
- für jede Klasse gilt:
|
||||
- Zustände der Klasse verhalten sich für jedes weitere Zeichen gleich
|
||||
- → können nicht weiter verfeinern
|
||||
|
||||

|
||||
|
||||
#### Quotientenautomat am Beispiel
|
||||

|
||||
|
Loading…
x
Reference in New Issue
Block a user