1
0
mirror of https://github.com/2martens/uni.git synced 2026-05-06 11:26:25 +02:00
Files
uni/fgi2/Blatt2/Aufgabenblatt2.tex
2014-10-24 09:00:57 +02:00

182 lines
10 KiB
TeX

\documentclass[10pt,a4paper,oneside,ngerman,numbers=noenddot]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{paralist}
\usepackage{gauss}
\usepackage{pgfplots}
\usepackage[locale=DE,exponent-product=\cdot,detect-all]{siunitx}
\usepackage{tikz}
\usetikzlibrary{automata,matrix,fadings,calc,positioning,decorations.pathreplacing,arrows,decorations.markings}
\usepackage{polynom}
\usepackage{multirow}
\usepackage[german]{fancyref}
\polyset{style=C, div=:,vars=x}
\pgfplotsset{compat=1.8}
\pagenumbering{arabic}
% ensures that paragraphs are separated by empty lines
\parskip 12pt plus 1pt minus 1pt
\parindent 0pt
% define how the sections are rendered
\def\thesection{2.\arabic{section})}
\def\thesubsection{\arabic{subsection}.}
\def\thesubsubsection{(\roman{subsubsection})}
% some matrix magic
\makeatletter
\renewcommand*\env@matrix[1][*\c@MaxMatrixCols c]{%
\hskip -\arraycolsep
\let\@ifnextchar\new@ifnextchar
\array{#1}}
\makeatother
\begin{document}
\author{Benjamin Kuffel, Jim Martens, Sabrina Mehrens\\Gruppe 6}
\title{Hausaufgaben zum 27. Oktober}
\maketitle
\setcounter{section}{2}
\section{} %2.3
\subsection{} % 1.
\[L(A_{2.3}) = a \cdot (ba^{*}c)^{*} + bc(abc)^{*} \cdot (a + e)\]
\[L^{\omega}(A_{2.3}) = a(ba^{*}c)^{\omega} + bc(abc)^{\omega}\]
\[(L(A_{2.3}))^{\omega} = (a \cdot (ba^{*}c)^{*} + bc(abc)^{*} \cdot (a + e))^ {\omega}\]
\subsection{} % 2.
Es sei \(w_{1}\) ein Wort aus der Sprache \(L^{\omega}(A_{2.3})\) und \(w_{2}\) ein Wort aus der Sprache \((L(A_{2.3}))^{\omega}\). Es gelte \(w_{1} = bc(abc)^{\omega}\) und \(w_{2} = (bcabce)^{\omega}\).
Bei der Sprache \(L^{\omega}(A_{2.3})\) hat man Wörter, die zum Teil aus unendlich oft auftretenden Zeichenfolgen bestehen. Die Sprache \((L(A_{2.3}))^{\omega}\) enthält alle Wörter der Sprache \(L(A_{2.3})\), welche unendlich oft hintereinander kommen können. Die erste Sprache enthält zum Beispiel nicht das Wort \(w_{2}\), da es auf \(e\) endet und dieser Endzustand nicht unendlich oft durchlaufen werden kann.
\subsection{} % 3.
\begin{figure}
\begin{tikzpicture}[node distance=2cm]
\node[state,initial] (q0) {\(q_{0}\)};
\node[state,accepting] (q1) [below=of q0] {\(q_{1}\)};
\node[state] (q2) [right=of q1] {\(q_{2}\)};
\node[state] (q3) [right=of q0] {\(q_{3}\)};
\node[state] (q4) [right=of q3] {\(q_{4}\)};
\node[state,accepting] (q6) [right=of q4] {\(q_{6}\)};
\node[state,accepting] (q5) [below=of q4] {\(q_{5}\)};
\node[state] (q7) [below=of q1] {\(q_{7}\)};
\path[->] (q0) edge node [above] {\(b\)} (q3)
(q0) edge node [left] {\(a\)} (q1)
(q1) edge[bend left] node [above] {\(b\)} (q2)
(q2) edge[loop below] node [below] {\(a\)} (q2)
(q2) edge[bend left] node [below] {\(c\)} (q1)
(q3) edge node [above] {\(c\)} (q4)
(q4) edge node [right] {\(a\)} (q5)
(q5) edge node [below left] {\(b\)} (q3)
(q4) edge node [above] {\(e\)} (q6)
(q6) edge[bend right] node [above] {\(b\)} (q3)
(q1) edge node [left] {\(a\)} (q7)
(q7) edge node [below right] {\(b\)} (q2);
\end{tikzpicture}
\caption{Büchi-Automat \(A'_{2.3}\), der \((L(A_{2.3}))^{\omega}\) akzeptiert.}
\label{fig:1}
\end{figure}
Es sind zwei Teilmengenbeziehungen zu zeigen. Die erste Richtung besagt \(L^{\omega}(A'_{2.3}) \subseteq (L(A_{2.3}))^{\omega}\) und die zweite \((L(A_{2.3}))^{\omega} \subseteq L^{\omega}(A'_{2.3})\). Es gelte \(A'_{2.3} = (Q', \Sigma ', \delta ', Q'^{0}, F')\). Desweiteren gelte \(A_{2.3} = (Q, \Sigma, \delta, Q^{0}, F)\). Für die Konstruktion von \(A'_{2.3}\) siehe \fref{fig:1}. Anhand der Konstruktion ist ersichtlich, dass \(F = F'\), sowie \(Q^{0} = Q'^{0}\) und \(Q \subseteq Q'\) gelten.
Zunächst wird \((L(A_{2.3}))^{\omega} \subseteq L^{\omega}(A'_{2.3})\) gezeigt.
\begin{alignat*}{2}
w \in (L(A_{2.3}))^{\omega} &\Rightarrow & \exists w_{det} = c_{0}c_{1}...c_{i} | i \in \mathbb{N} : w_{det} \text{ wird von \(A_{2.3}\) akzeptiert} \\
&\Rightarrow & w = (w_{det})^{\omega} \\
&\Rightarrow & \exists \text{ Erfolgsrechnung von \(A_{2.3}\) auf \(w_{det}\)} \\
&\Rightarrow & \exists p_{det} = z_{0}z_{1}z_{2}...z_{i} | \exists i \in \mathbb{N} : z_{0} \in Q^{0} \wedge z_{i} \in F \\
&\Rightarrow & \exists p = p_{det}s_{0}s_{1}...s_{i}... | \exists i \in \mathbb{N} : s_{i} \in F \wedge s_{i+1} = s_{0} \\
&\Rightarrow & F \cap inf(p) \neq \emptyset \\
&\Rightarrow & F' \cap inf(p) \neq \emptyset \\
&\Rightarrow & w \in L^{\omega}(A'_{2.3})
\end{alignat*}
Es bleibt noch zu zeigen, dass \(L^{\omega}(A'_{2.3}) \subseteq (L(A_{2.3}))^{\omega}\) gilt.
\begin{alignat*}{2}
w \in L^{\omega}(A'_{2.3}) &\Rightarrow & w \text{ wird von \(A'_{2.3}\) akzeptiert} \\
&\Rightarrow & \exists \text{ Erfolgsrechnung von \(A'_{2.3}\) auf \(w\)} \\
&\Rightarrow & \exists p = z_{0}z_{1}z_{2}... | i \in \mathbb{N} : z_{0} \in Q'^{0} \wedge F' \cap inf(p) \neq \emptyset \\
&\Rightarrow & z_{0} \in Q^{0} \wedge F \cap inf(p) \neq \emptyset \\
&\Rightarrow & \exists p_{det} = z_{0}z_{1}z_{2}...z_{i} | \exists i \in \mathbb{N} : z_{0} \in Q^{0} \wedge z_{i} \in F \\
&\Rightarrow & p = p_{det}s_{0}s_{1}...s_{i}... | \exists i \in \mathbb{N} : s_{i} \in F \wedge s_{i+1} = s_{0} \\
&\Rightarrow & \exists w_{det} \text{ welches von \(A_{2.3}\) akzeptiert wird} \\
&\Rightarrow & w = (w_{det})^{\omega} \\
&\Rightarrow & w \in (L(A_{2.3}))^{\omega}
\end{alignat*}
Damit ist die Korrektheit des konstruierten Automaten gezeigt.
\section{} %2.4
\subsection{} % 1.
\begin{enumerate}
\item Voraussetzen, dass \(W\) regulär und \(U\) \(\omega\)-regulär ist
\item Zeigen, dass jede Erfolgsrechnung für ein Wort aus \(W \cdot U\) mindestens einen Endzustand unendlich oft durchläuft
\end{enumerate}
\subsection{} % 2.
\begin{enumerate}
\item endlichen Automaten zu \(W\) konstruieren
\item Büchi-Automaten zu \(U\) konstruieren
\item Kantenbeziehungen von jedem Endzustand des endlichen Automaten (folgend: \(A_{W}\)) zu den Folgezuständen des Startzustands des Büchi-Automaten (folgend: \(A_{U}\) ergänzen
\item Startzustand von \(A_{U}\) zu normalem Status degradieren
\item Endzustände von \(A_{W}\) zu normalen Stati degradieren
\end{enumerate}
\subsection{} % 3.
Das in 2.4.2 beschriebene Verfahren terminiert nach endlich vielen Schritten, da sowohl ein endlicher Automat als auch ein Büchi-Automat endlich viele Zustände haben, endlich viele Kantenbeziehungen hinzugefügt werden und endlich viele Zustände degradiert werden.
Zum Nachweis der Korrektheit wird das in 2.4.1 beschriebene Verfahren angewendet. Dabei sei vorausgesetzt, dass \(W\) regulär und \(U\) \(\omega\)-regulär ist. Daraus folgend ist zu zeigen, dass jede Erfolgsrechnung für ein Wort aus der Konkatenation mindestens einen Endzustand unendlich oft durchläuft. Ebenfalls sei vorausgesetzt, dass die konstruierten Automaten für ihre jeweiligen Sprachen korrekt sind (Sprache des endlichen Automaten = \(W\) und Sprache des Büchi-Automaten = \(U\)). Der endliche Automat sei durch \(A_{det} = (Q, \Sigma, \delta, Q^{0}, F)\) und der Büchi-Automat durch \(A_{buechi} = (Q', \Sigma ', \delta ', Q'^{0}, F')\) beschrieben. Der zusammengesetzte Automat sei durch \(A_{concat} = (Q_{c}, \Sigma_{c}, \delta_{c}, Q_{c}^{0}, F_{c})\) beschrieben.
\begin{alignat*}{2}
w \in W \cdot U &\Rightarrow & \exists \text{ Zerlegung von \(w\) wie folgt: }w = w_{w} \cdot w_{u} : w_{w} \in W \wedge w_{u} \in U \\
&\Rightarrow & w_{u} \text{ wird von \(A_{buechi}\) akzeptiert} \\
&\Rightarrow & \exists \text{ Erfolgsrechnung von \(A_{buechi}\) auf \(w_{u}\)} \\
&\Rightarrow & \exists p_{buechi} = z_{0}z_{1}z_{2}... | z_{0} \in Q'^{0} \wedge F' \cap inf(p) \neq \emptyset \\
&\Rightarrow & w_{w} \text{ wird von \(A_{det}\) akzeptiert} \\
&\Rightarrow & \exists \text{ Erfolgsrechnung von \(A_{det}\) auf \(w_{w}\)} \\
&\Rightarrow & \exists p_{det} = s_{0}s_{1}s_{2}...s_{i} | \exists i \in \mathbb{N} : s_{0} \in Q^{0} \wedge s_{i} \in F \\
&\Rightarrow & \text{nach Konstruktion: } \exists p = p_{det}x_{0}x_{1}...x_{i}x_{i+1}... | \forall i \in \mathbb{N} : x_{i} = z_{i+1} \\
&\Rightarrow & F_{c} \cap inf(p) \neq \emptyset \\
&\Rightarrow & W \cdot U \text{ ist eine \(\omega\)-reguläre Menge}
\end{alignat*}
\subsection{} % 4.
\begin{figure}
\begin{tikzpicture}[node distance=2cm]
\node[state,initial] (p0) {\(p_{0}\)};
\node[state] (p1) [right=of p0] {\(p_{1}\)};
\node[state] (p2) [below=of p1] {\(p_{2}\)};
\node[state] (p3) [left=of p2] {\(p_{3}\)};
\node[state] (q0) [below=of p3] {\(q_{0}\)};
\node[state,accepting] (q1) [below=of q0] {\(q_{1}\)};
\node[state] (q2) [right=of q1] {\(q_{2}\)};
\node[state] (q3) [right=of q0] {\(q_{3}\)};
\node[state] (q4) [right=of q3] {\(q_{4}\)};
\node[state,accepting] (q6) [right=of q4] {\(q_{6}\)};
\node[state,accepting] (q5) [below=of q4] {\(q_{5}\)};
\node[state] (q7) [below=of q1] {\(q_{7}\)};
\path[->] (q0) edge node [above] {\(b\)} (q3)
(q0) edge node [left] {\(a\)} (q1)
(q1) edge[bend left] node [above] {\(b\)} (q2)
(q2) edge[loop below] node [below] {\(a\)} (q2)
(q2) edge[bend left] node [below] {\(c\)} (q1)
(q3) edge node [above] {\(c\)} (q4)
(q4) edge node [right] {\(a\)} (q5)
(q5) edge node [below left] {\(b\)} (q3)
(q4) edge node [above] {\(e\)} (q6)
(q6) edge[bend right] node [above] {\(b\)} (q3)
(q1) edge node [left] {\(a\)} (q7)
(q7) edge node [below right] {\(b\)} (q2)
(p0) edge[loop above] node [above] {\(f\)} (p0)
(p2) edge[loop right] node [right] {\(e\)} (p2)
(p3) edge[loop left] node [left] {\(e,f\)} (p3)
(p0) edge[bend left] node [above] {\(e\)} (p1)
(p1) edge[bend left] node [below] {\(f\)} (p0)
(p1) edge node [right] {\(e\)} (p2)
(p2) edge node [above] {\(f\)} (p3)
(p3) edge node [above right] {\(b\)} (q3)
(p3) edge[bend right] node [left] {\(a\)} (q1);
\end{tikzpicture}
\caption{Durch Konkatenation von \(A\) und \(A_{2.3.}\) entstandener Automat.}
\label{fig:2}
\end{figure}
Auf \fref{fig:2} ist der mithilfe des Verfahrens konstruierte Automat zu sehen.
\end{document}