mirror of
https://github.com/janishutz/eth-summaries.git
synced 2025-11-25 02:24:23 +00:00
[TI] Finish finite automata representation section
This commit is contained in:
@@ -98,4 +98,4 @@ Lemma 2.6 zeigt nicht nur, dass es unendlich viele Primzahlen geben muss, sonder
|
||||
\end{align*}
|
||||
\end{theorem}
|
||||
|
||||
Der Beweis hierfür ist sehr ausführlich ab Seite 42 im Buch erklärt
|
||||
Der Beweis hierfür ist sehr ausführlich ab Seite 42 (= 57 im PDF) im Buch erklärt
|
||||
|
||||
@@ -90,9 +90,38 @@ Also gilt $L(M) = \{ w \in \Sigma^* \divides (q_0, w) \bigvdash{M}{*} (p, \lambd
|
||||
|
||||
\inlinelemma $L(M) = \{ w \in \{ 0, 1 \}^* \divides |w|_0 + |w|_1 \equiv 0 \text{ mod } 2 \}$
|
||||
|
||||
Jeder EA teilt die Menge $\Sigma^*$ in $|Q|$ Klassen
|
||||
Jeder EA teilt die Menge $\Sigma^*$ in $|Q|$ Klassen
|
||||
$\text{Kl}[p] = \{ w \in \Sigma^* \divides \hat{\delta}(q_0, w) = p \} = \{ w \in \Sigma^* \divides (q_0, w) \bigvdash{M}{*} (p, \lambda) \}$
|
||||
und entsprechend $\bigcup_{p \in Q} \text{Kl}[p] = \Sigma^*$ und $\text{Kl}[p] \text{Kl}[q] = \emptyset \smallhspace \forall p \neq q \in Q$.
|
||||
In dieser Terminologie gilt dann $L(M) = \bigcup_{p \in F} \text{Kl}[p]$
|
||||
In dieser Terminologie gilt dann $L(M) = \bigcup_{p \in F} \text{Kl}[p]$.
|
||||
Die Notation $|w|_i$ bedeutet die Länge der Buchstaben $i$ in $w$.
|
||||
|
||||
Wir können $L(M)$ mit Klassen bestimmen und haben eine Äquivalenzrelation $x R_\delta y \Leftrightarrow \hat{\delta}(q_0, x) = \hat{\delta}(q_0, y)$ auf $\Sigma^*$.
|
||||
Man beweist die Korrektheit der gewählten Klassen oft mithilfe von Induktion über die Länge der Wörter.
|
||||
Wir beginnen mit der Länge an Wörtern der Länge kleiner gleich zwei und erhöhen dies dann während unseres Induktionsschrittes.
|
||||
|
||||
Die Klassen bestimmen wir vor dem Beginn der Induktion auf und jede Klasse repräsentiert einen der Zustände.
|
||||
\begin{wrapfigure}[5]{l}{0.3\textwidth}
|
||||
\begin{tables}{ccc}{Zustand & 0 & 1}
|
||||
$q_0$ & $q_2$ & $q_1$ \\
|
||||
$q_1$ & $q_3$ & $q_0$ \\
|
||||
$q_2$ & $q_0$ & $q_3$ \\
|
||||
$q_3$ & $q_1$ & $q_2$ \\
|
||||
\end{tables}
|
||||
\end{wrapfigure}
|
||||
Haben wir einen EA mit nebenstehender Tabelle, so sind die Klassen für unseren EA $M$ sind $\class[q_0], \ldots, \class[q_3]$, definiert durch:
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
\class[q_0] & = \{ w \in \wordbool \divides |w|_0 \text{ und } |w|_1 \text{ sind gerade} \} \\
|
||||
\class[q_1] & = \{ w \in \wordbool \divides |w|_0 \text{ ist gerade, } |w|_1 \text{ ist ungerade} \} \\
|
||||
\class[q_2] & = \{ w \in \wordbool \divides |w|_0 \text{ ist ungerade, } |w|_1 \text{ ist gerade} \} \\
|
||||
\class[q_3] & = \{ w \in \wordbool \divides |w|_0 \text{ und } |w|_1 \text{ sind ungerade} \}
|
||||
\end{align*}
|
||||
%
|
||||
Falls ein EA $A$ genügend anschaulich und strukturiert dargestellt ist, kann man die Sprache $L(A)$ auch ohne Beweis bestimmen.
|
||||
|
||||
Idealerweise konstruieren wir einen EA so, dass wir die Menge aller Wörter aus $\Sigma^*$ so in Klassen aufteilen,
|
||||
sodass Wörter mit denselben Eigenschaften in derselben Klasse liegen und wir dann Übergangsfunktionen zu anderen Klassen finden,
|
||||
die nur einen Buchstaben aus $\Sigma$ zum Wort hinzufügen
|
||||
|
||||
\inlineex Das Buch enthält einige zwei gute Beispiele (Beispiel 3.1 und 3.2) mit ausführlichen Erklärungen ab Seite 58 (= Seite 73 im PDF).
|
||||
|
||||
4
semester3/ti/parts/02_finite-automata/01_simulations.tex
Normal file
4
semester3/ti/parts/02_finite-automata/01_simulations.tex
Normal file
@@ -0,0 +1,4 @@
|
||||
% Starting P63 = P78
|
||||
\newpage
|
||||
\subsection{Simulationen}
|
||||
|
||||
Binary file not shown.
@@ -71,6 +71,7 @@
|
||||
\section{Endliche Automaten}
|
||||
\stepcounter{subsection}
|
||||
\input{parts/02_finite-automata/00_representation.tex}
|
||||
\input{parts/02_finite-automata/01_simulations.tex}
|
||||
|
||||
|
||||
\end{document}
|
||||
|
||||
Reference in New Issue
Block a user