diff --git a/Berechenbarkeits-KomplexTh/Berechenbarkeits-KomplexTh.tex b/Berechenbarkeits-KomplexTh/Berechenbarkeits-KomplexTh.tex index ccec931..3e22797 100644 --- a/Berechenbarkeits-KomplexTh/Berechenbarkeits-KomplexTh.tex +++ b/Berechenbarkeits-KomplexTh/Berechenbarkeits-KomplexTh.tex @@ -38,6 +38,7 @@ \newcommand{\spa}{\hspace*{4mm}} \newcommand{\defin}{\textcolor{darkgreen}{\textbf{Def.: }}} +\newcommand{\satz}{\textcolor{darkblue}{\textbf{Satz:}}} \newcommand{\rrfloor}{\right\rfloor} \newcommand{\llfloor}{\left\lfloor} @@ -191,5 +192,83 @@ M akzeptiert x, falls es eine akzeptierende Rechnung gibt. + \subsubsection{Nichtdeterministische Mehrband Turingmaschine} + Bsp. \( L = \{ x0y \mid \left|x\right| = \left|y\right| \}\)\\ + über \( \Sigma = \{0,1\}\) + + \begin{align*} + \delta(Z_0, 1, \Box) &= \{( Z_0,1,1,R,R )\}\\ + \delta(Z_0,0,\Box) &= \{ (Z_0,0,0,R,R), (Z_1,0,\Box,R,L) \} \\ + \delta(Z_1,a,b) &= \{ (Z_1,a,b,R,L) \} \quad a,b \rightarrow \{0,1\}\\ + \delta(Z_1,\Box,\Box) &= \{ (Z_a,\Box,\Box,N,N) \}\\ + \delta(Z_0,\Box,\Box) &= \{ (Z_v,\Box,\Box,N,N) \}\\ + \end{align*} + (fehlende Anweisungen verwerfen.) + + Deterministisch: \(\delta: Z\times \Gamma \to Z \times \Gamma \times \{ L,N,R\} \)\\ + Nicht Deterministisch: \(\delta: Z\times \Gamma \to \mathcal P(Z \times \Gamma \times \{ L,N,R\}) \) + + \satz Zu jeder k-Band Turingmaschine gibt es eine äquivalente (1-Band) Turingmaschine\\ + \underline{Bew.:} (Idee)\\ + k-Band Turingmaschine M\\\ + \begin{tabular}{c|c|c|c|c} \hline & x & & & \\\hline & & y & & \\\hline & & & z & \\\hline \end{tabular} + + TM M'\\ + \begin{tabular}{c|c|c|c|c|c|c|c|c|c|c|c|c|c|c} + \hline & \# & x & & & \# & & y & & \# & & & z & \# & \\\hline + \end{tabular} + + M:\\ + \begin{tabular}{c|c|c|c|c|c} + \hline + \(\Box\)&a&b&a&c&\(\Box\)\\ + \hline + \(\Box\)&c&c&\(\Box\)\\ + \hline + \(\Box\)&b&a&a&a&\(\Box\)\\ + \hline + \end{tabular} + + M':\\ + \begin{tabular}{c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c} + \hline + \# & \(\Box\)& a& \(\dot b\)& a&c&\(\Box\)&\#&\(\Box\)&\(\dot c\)&a&\(\Box\) & \# & \(\dot\Box\) & b&a&a&a&\(\Box\)&\#\\ + \hline + \end{tabular}\\ + \( \dot b \rightarrow \Gamma' - \Gamma \) + + M' läuft 2x mal über das gesamte Band (und zurück) + \begin{enumerate} + \item M' merkt sich alle Zeichen, die die Lese-Schreibköpfe aktuell lesen + \item M' führt die Änderungen gemäß \(\delta\) von M auf allen Bändern aus. + \end{enumerate} + + Merke Zeichen im Zustand:\\ + \spa \( Z_{Z,b,c,\Box} \)\\ + d.\,h. \(\left|Z\right| \cdot \left|\Gamma\right|^3 \) viele Zustände, also endlich. + + Initial:\\ + \begin{tabular}{c|c|c|c|c|c|c} + \hline + \# & x & \# & \(\Box\) & \# & \(\Box\) &\#\\ + \hline + \end{tabular} + + Zeit: M macht t Schritte auf Eingabe X.\\ + Alle Bänder von M' sind also mit Wörtern beschriftet mit Länge \(\le t\)\\ + \(\to\) Beschrifteter Teil des Bands von M hat Länge \(\le k \cdot t \) + + Pro Schritt von M macht M' + \begin{itemize} + \item \( \le 2 \cdot 2 \cdot t \) Schritte für die beiden Durchläufe. + \item verschieben zum Platz schaffen \( \le k \cdot 2\cdot t\) + \item Zusammen \( \le (k+2) \cdot 2\cdot t = \mathcal O(t)\).\\ + M macht t Schritte \( \Rightarrow M' \) macht \( \mathcal O(t^2) \) Schritte + \end{itemize} + + \satz Zu jeder NTM gibt es eine äquivalente TM. + + Bew. (Idee):\\ + Sei M NTM \end{document}