|
- \documentclass[uebung]{../../../lecture}
-
- \title{Übungsblatt Nr. 5}
- \author{Christian Merten, Samuel Weidemaier}
-
- \usepackage[]{enumerate}
-
- \usepackage{listings}
-
- \begin{document}
-
- \begin{aufgabe} Schleifeninvarianz
- \begin{enumerate}[(a)]
- \item $v = (a,b,i)$\\
- $B(v)= i < n$ \\
- $H(v)= (b, a+b, i+1)$
- \item Hier $F$ Fibonacci Folge.\\
- $INV(v^{j}) \equiv F(j) = a \land F(j+1) = b \land i - 1 < n$
-
- Verifikation der Schleifeninvariante:
-
- \begin{enumerate}[1.]
- \item
- Für $v^{0} = (a^{0}, b^{0}, i^{0}) = (0, 1, 0)$ gilt:
- \[
- INV(0,1,0) \equiv F(0) = 0 \land F(1) = 1 \land 0 - 1 < n
- .\]
- \item Es gelte nun $INV(v^{j}) \land B(v^{j})$.
- Wende $H$ auf $v^{j}$ an:
- \begin{itemize}
- \item
- $a_{j+1} = F(j+1) = b_j \land b_{j+1} = a_j + b_{j} = F(j) + F(j+1) = F(j+2)$
- \item
- $i_{j+1} - 1 = i_{j} + 1 - 1 = i_j < n$
- \end{itemize}
-
- \item
- Am Schleifenende gilt $\neg (i < n)$, also $i \ge n \land i - 1 < n \implies i = n$.
- \begin{align*}
- &INV(a, b, n-1) \land \neg B(v^{n-1}) \\
- \iff & F(n-1) = a \land F(n) = b \land n - 1 < n \\
- \iff &Q(v^{n})
- .\end{align*}
- \end{enumerate}
-
- \end{enumerate}
-
- \end{aufgabe}
-
- \begin{aufgabe}
- siehe \textit{readSortedArray.ccp}
- \end{aufgabe}
-
- \begin{aufgabe}
- siehe \textit{perfectShuffle.cpp}
- \end{aufgabe}
-
- \end{document}
|