\documentclass{bschlangaul-aufgabe}
\bLadePakete{mathe,automaten,formale-sprachen,tabelle}
\begin{document}
\bAufgabenMetadaten{
  Titel = {Aufgabe 1},
  Thematik = {Multiplikation mit 3},
  Referenz = 66115-2019-H.T2-A1,
  RelativerPfad = Examen/66115/2019/09/Thema-2/Aufgabe-1.tex,
  ZitatSchluessel = examen:66115:2019:09,
  BearbeitungsStand = mit Lösung,
  Korrektheit = unbekannt,
  Ueberprueft = {unbekannt},
  Stichwoerter = {Turing-Maschine},
  EinzelpruefungsNr = 66115,
  Jahr = 2019,
  Monat = 09,
  ThemaNr = 2,
  AufgabeNr = 1,
}

Gesucht ist eine Turing-Maschine mit genau einem beidseitig unendlichen
Band, die die Funktion $f : \mathbb{N} \rightarrow \mathbb{N}$ mit $f(x)
= 3x$ berechnet. Zu Beginn der Berechnungsteht die Eingabe binär codiert
auf dem Band, wobei der Kopf auf die linkeste Ziffer (most significant
bit) zeigt. Am Ende der Berechnung soll der Funktionswert binär codiert
auf dem Band stehen, wobei der Kopf auf ein beliebiges Feld zeigen darf.
\index{Turing-Maschine}
\footcite{examen:66115:2019:09}

\begin{enumerate}

%%
% (a)
%%

\item Beschreiben Sie zunächst in Worten die Arbeitsweise Ihrer
Maschine.

\begin{bAntwort}
$13 \cdot 3 = 0b1101 \cdot 0b11 = 39 = 0b100111$:

\begin{center}
\begin{tabular}{llllll}
  & 1 & 1 & 0 & 1 &   \\
  &   & 1 & 1 & 0 & 1 \\
{\tiny 1} & {\tiny 1} &   &   &   &   \\\hline
1 & 0 & 0 & 1 & 1 & 1
\end{tabular}
\end{center}

Die entworfene Turningmaschine imitierte der Vorgehensweise beim
schriftlichen Multiplizieren. Die Maschine geht zunächst an das
Leerzeichen am rechten Ende des Eingabewortes. Die Maschine bewegt sich
nun zwei Schritte nach links und liest die Zahlen ein und addiert sie.
Schließlich bewegt sich die Maschine einen Schritt nach rechts und
schreibt das Ergebnis der Additium. Dabei wird das Eingabewort
überschrieben allmählich überschrieben.
\end{bAntwort}

%%
% (b)
%%

\item Geben Sie dann das kommentierte Programm der Turing-Maschine an
und erklären Sie die Bedeutung der verwendeten Zustände.

\begin{bAntwort}
\begin{tabularx}{\linewidth}{cX}
$z_0$ & An das rechte Ende des Eingabewortes gehen \\
$z_1$ & Übertrag 0\\
$z_2$ & Übertrag 1\\
$z_3$ & 1. Additionsschritt: $+0$ \\
$z_4$ & 1. Additionsschritt: $+1$ \\
$z_5$ & 1. Additionsschritt: $+2$ \\
$z_6$ & 2. Additionsschritt: $+0$ \\
$z_7$ & 2. Additionsschritt: $+1$ \\
$z_8$ & 2. Additionsschritt: $+2$ \\
$z_9$ & 2. Additionsschritt: $+3$ \\
$z_{10}$ & Endzustand \\
\end{tabularx}

Nicht sehr übersichtlich hier: Im Anhang findet sich die JSON-Datei für flaci.com

\begin{center}
\begin{tikzpicture}[li turingmaschine,scale=0.7,transform shape]
  \node[state,initial] (z0) at (2.14cm,-1.86cm) {$z_0$};
  \node[state] (z1) at (5.43cm,-1.86cm) {$z_1$};
  \node[state] (z8) at (9.29cm,-7.43cm) {$z_8$};
  \node[state] (z7) at (5.57cm,-7.43cm) {$z_7$};
  \node[state] (z6) at (2.29cm,-7.29cm) {$z_6$};
  \node[state] (z3) at (3.43cm,-4.86cm) {$z_3$};
  \node[state] (z4) at (7.29cm,-4.86cm) {$z_4$};
  \node[state] (z9) at (12.43cm,-7.57cm) {$z_9$};
  \node[state] (z5) at (11cm,-4.71cm) {$z_5$};
  \node[state] (z2) at (9.29cm,-2cm) {$z_2$};
  \node[state,accepting] (z10) at (4.43cm,-9.14cm) {$z_{10}$};

  \bTuringKante[above,loop above]{z0}{z0}{
    0, 0, R;
    1, 1, R;
  }

  \bTuringKante[above]{z0}{z1}{
    LEER, LEER, N;
  }

  \bTuringKante[above]{z1}{z3}{
    0, 0, L;
    LEER, LEER, L;
  }

  \bTuringKante[above]{z1}{z4}{
    1, 1, L;
  }

  \bTuringKante[above]{z8}{z2}{
    0, 0, L;
    1, 0, L;
    LEER, 0, L;
  }

  \bTuringKante{z7}{z1}{
    0, 1, L;
    1, 1, L;
    LEER, 1, L;
  }

  \bTuringKante[left,bend left]{z6}{z1}{
    0, 0, L;
    1, 0, L;
  }

  \bTuringKante[above]{z6}{z10}{
    LEER, LEER, N;
  }

  \bTuringKante[above]{z3}{z6}{
    0, 0, R;
    LEER, LEER, R;
  }

  \bTuringKante[above]{z3}{z7}{
    1, 1, R;
  }

  \bTuringKante[above]{z4}{z8}{
    1, 1, R;
  }

  \bTuringKante[above]{z4}{z7}{
    LEER, LEER, R;
    0, 0, R;
  }

  \bTuringKante[right,bend right]{z9}{z2}{
    0, 1, L;
    1, 1, L;
    LEER, 1, L;
  }

  \bTuringKante[above]{z5}{z9}{
    1, 1, R;
  }

  \bTuringKante[above]{z5}{z8}{
    0, 0, R;
    LEER, LEER, R;
  }

  \bTuringKante[above]{z2}{z5}{
    1, 1, L;
  }

  \bTuringKante[above]{z2}{z4}{
    0, 0, L;
    LEER, LEER, L;
  }
\end{tikzpicture}
\end{center}
\bFlaci{Ahjkw50kg}
\end{bAntwort}

\end{enumerate}
\end{document}
