diff --git a/Writerside/images/image_819.png b/Writerside/images/image_819.png new file mode 100644 index 0000000..fea7d4e Binary files /dev/null and b/Writerside/images/image_819.png differ diff --git a/Writerside/images/image_820.png b/Writerside/images/image_820.png new file mode 100644 index 0000000..80e600f Binary files /dev/null and b/Writerside/images/image_820.png differ diff --git a/Writerside/images/image_821.png b/Writerside/images/image_821.png new file mode 100644 index 0000000..29d91b2 Binary files /dev/null and b/Writerside/images/image_821.png differ diff --git a/Writerside/topics/04/Theoretische Informatik/04_GrenzenGroesseEA.md b/Writerside/topics/04/Theoretische Informatik/04_GrenzenGroesseEA.md index b36f393..5d36502 100644 --- a/Writerside/topics/04/Theoretische Informatik/04_GrenzenGroesseEA.md +++ b/Writerside/topics/04/Theoretische Informatik/04_GrenzenGroesseEA.md @@ -72,7 +72,57 @@ ![image_783.png](image_783.png) +## Nerode Klassen als Zustände +> Nerode Klassen eignen sich perfekt als DEA-Zustände + +### Konstruktionsidee Beispiel +![image_819.png](image_819.png) +![image_820.png](image_820.png) + +### Formale Konstruktion +Sei $L ⊆ Σ^*$ eine Sprache mit endlichem Index $m ∈ \mathbb{N}$. +Seien $N_1, N_2, ..., N_m$ die Nerode-Klassen von $L$. +Dann definieren wir den DEA $A_L =(Σ, Q, q_s, Q_a, δ)$: +- $Q :=\{N_1, N_2, ..., N_m\}$ +- $q_s:= N(ε)$ +- $Q_a :=\{N_i\space|\space N_i ⊆ L\}$ +- für alle $i ∈ \{1,2,...,m\}$ sei $δ(N_i,x):=N(w*x)$... + - für ein _beliebiges_ $w ∈ N_i$ ## Der Satz von Myhill-Nerode +> Zu einer Sprache $L$ gibt es genau dann einen DEA $A = (Σ, Q, q_s, Q_A, δ)$ mit +> $L(A) = L$, wenn $L$ endlichen Index hat. + +### Beweis (Richtung →) {id="beweis-richtung_1"} +- Sei $A$ ein DEA mit $L(A)=L$ +- Wörter, die den gleichen Zustand erreichen + - gehören zur gleichen Nerode Klasse +- Wenn man ein beliebiges Wort betrachtet endet man in einer Nerode-Klasse +- **jede Nerode-Klasse entspricht einer der endlich vielen $N_q$** + +### Beweis (Richtung ←) +- Seien $N_1,N_2,...,N_m$ endlich viele Nerode-Klassen +- ![image_821.png](image_821.png) +- **$A$ ist ein DEA der die Sprache $L$ akzeptiert** + + + ## Reaping the Fruits! +### Anwendung 1: Minimale endliche Automaten +- Weniger Zustände als Nerode-Klassen gibt es nicht +- > Ein DEA $A$ heißt minimal, wenn jeder DEA, der $L(A)$ akzeptiert, mindestens so viele Zustände wie $A$ hat. + +### Anwendung 2: Nichtexistenz von DEAs +- gegebene Sprache $L$ + - $L$ hat unendlich viele Nerode-Klassen +- > Sei $L$ eine Sprache mit Index $i ∈ \mathbb{N}$. Jeder minimale DEA für $L$ hat $i$ Zustände. + +#### Zu $L ⊆ Σ^*$ gibt es keinen DEA +- definiere _unendliche_ Wortmenge $X ⊆ Σ^*$ +- zeige: keine zwei Worte sind rechtsäquivalent + - wähle $u,v ∈ X$ mit $u \not = v$ beliebig + - finde ein $w ∈ Σ^*$ mit $u*w ∈ L$ und $v * w \not ∈ L$ +- dann hat $L$ Index $i ≥ |X| = ∞$ und hat folglich keinen DEA + + ## Minimierungsalgorithmus