From 3875ac2b8df9145a66e9f6fcf34e77eb3bc2d072 Mon Sep 17 00:00:00 2001
From: Nunigan <michael.schmid2@ost.ch>
Date: Tue, 27 Jul 2021 22:01:05 +0200
Subject: added first part of paper and code

---
 buch/papers/multiplikation/problemstellung.tex | 104 +++++++++++++++++++++++++
 1 file changed, 104 insertions(+)
 create mode 100755 buch/papers/multiplikation/problemstellung.tex

(limited to 'buch/papers/multiplikation/problemstellung.tex')

diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex
new file mode 100755
index 0000000..b20a791
--- /dev/null
+++ b/buch/papers/multiplikation/problemstellung.tex
@@ -0,0 +1,104 @@
+%
+% teil1.tex -- Beispiel-File für das Paper
+%
+% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil
+%
+\section{Problemstellung}
+\rhead{Problemstellung}
+Dank der breiten Anwendung der Matrizenmultiplikation ist eine effiziente L\"osung dieser Operation von grosser Bedeutung.
+Das Ziel dieses Papers ist verschiedenen Algorithmen der Matrizenmultiplikation vorzustellen.
+Wobei gezielt auf Algorithmen, welche das Problem schneller als der Standard Algorithmus L\"osen eingegangen wird.
+
+\subsection{Big $\mathcal{O}$ Notation}
+Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus \cite{multiplikation:bigo}.
+$f(x) \in \mathcal{O}(g(x))$ besagt das die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$.
+Vereinfacht werden f\"ur Algorithmen die folgende Notation verwendet:
+\begin{itemize}
+	\item $f \in \mathcal{O}(1) \rightarrow f$ ist beschr\"ankt
+	\item $f \in \mathcal{O}(n) \rightarrow f$ w\"achst linear
+	\item $f \in \mathcal{O}(n^2) \rightarrow f$ w\"achst quadratisch
+	\item $f \in \mathcal{O}(\log n) \rightarrow f$ w\"achst logarithmisch
+	\item $f \in \mathcal{O}(n \log n) \rightarrow f$ hat super-lineares Wachstum
+	\item $f \in \mathcal{O}(e^n) \rightarrow f$ w\"achst exponentiell
+	\item usw.
+\end{itemize}
+
+In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die Verschiedenen Laufzeiten miteinander verglichen werden. 
+
+\begin{figure}
+	\center
+	\includegraphics[]{papers/multiplikation/images/bigo}
+	\caption{Verschiedene Laufzeiten}
+	\label{multiplikation:fig:bigo}
+\end{figure}
+
+\subsubsection{Beispiel Algorithmen}
+\paragraph{Beschr\"ankter Algorithmus}
+
+Ein Beispiel eines Beschr\"ankter Verhalten $\mathcal{O}(1)$, kann im Algorithmus \ref{multiplikation:alg:b1} entnommen werden.
+
+\begin{algorithm}\caption{}
+	\label{multiplikation:alg:b1}
+	\setlength{\lineskip}{7pt}
+	\begin{algorithmic}
+		\Function{B1}{$a, b$}
+		\State \textbf{return} $a+b$
+		\EndFunction
+	\end{algorithmic}
+\end{algorithm}
+
+Wobei Konstanten nicht beachtet werden, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu  $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$.
+
+\begin{algorithm}\caption{}
+	\label{multiplikation:alg:b2}
+	\setlength{\lineskip}{7pt}
+	\begin{algorithmic}
+		\Function{B2}{$a, b$}
+		\State $ x \gets a+b $
+		\State $ y \gets a \cdot b $
+		\State \textbf{return} $x+y$
+		\EndFunction
+	\end{algorithmic}
+\end{algorithm}
+
+\paragraph{Linearer Algorithmus}
+
+Folgender Algorithmus \ref{multiplikation:alg:l1} hat ein lineares $\mathcal{O}(n)$ Verhalten.
+
+\begin{algorithm}\caption{}
+	\setlength{\lineskip}{7pt}
+	\begin{algorithmic}
+		\label{multiplikation:alg:l1}
+		\Function{L}{$\mathbf{A}, \mathbf{B}$,n}
+		\State $ sum \gets 0$
+		\For{$i = 0,1,2 \dots,n$}
+		\State $ sum \gets sum + A[i] \cdot B[i] $
+		\EndFor
+		
+		\State \textbf{return} $sum$
+		
+		\EndFunction
+	\end{algorithmic}
+\end{algorithm}
+
+\paragraph{Quadratischer Algorithmus}
+
+Folgender Algorithmus \ref{multiplikation:alg:q1} hat ein quadratisches $\mathcal{O}(n^2)$ Verhalten.
+
+\begin{algorithm}[H]\caption{}
+	\label{multiplikation:alg:q1}
+	\setlength{\lineskip}{7pt}
+	\begin{algorithmic}
+		\Function{Q}{$\mathbf{A}, \mathbf{B}$,n}
+		\State $ sum \gets 0$
+		\For{$i = 0,1,2 \dots,n$}
+		\For{$j = 0,1,2 \dots,n$}
+		\State $ sum \gets sum + A[i] \cdot B[j] $
+		\EndFor
+		\EndFor
+		\State \textbf{return} $sum$
+		\EndFunction
+	\end{algorithmic}
+\end{algorithm}
+
+
-- 
cgit v1.2.1


From a4817013b542cd6aa1a0cd955806c82ac337dca6 Mon Sep 17 00:00:00 2001
From: Nunigan <michael.schmid2@ost.ch>
Date: Wed, 28 Jul 2021 22:27:27 +0200
Subject: added corrections from prof mueller

---
 buch/papers/multiplikation/problemstellung.tex | 27 +++++++++++++++-----------
 1 file changed, 16 insertions(+), 11 deletions(-)

(limited to 'buch/papers/multiplikation/problemstellung.tex')

diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex
index b20a791..fed6a9f 100755
--- a/buch/papers/multiplikation/problemstellung.tex
+++ b/buch/papers/multiplikation/problemstellung.tex
@@ -6,24 +6,24 @@
 \section{Problemstellung}
 \rhead{Problemstellung}
 Dank der breiten Anwendung der Matrizenmultiplikation ist eine effiziente L\"osung dieser Operation von grosser Bedeutung.
-Das Ziel dieses Papers ist verschiedenen Algorithmen der Matrizenmultiplikation vorzustellen.
-Wobei gezielt auf Algorithmen, welche das Problem schneller als der Standard Algorithmus L\"osen eingegangen wird.
+Das Ziel dieses Papers ist, verschiedenen Algorithmen der Matrizenmultiplikation vorzustellen.
+Gezielt werden auf Algorithmen, welche das Problem schneller als der Standard Algorithmus L\"osen eingegangen.
 
 \subsection{Big $\mathcal{O}$ Notation}
 Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus \cite{multiplikation:bigo}.
-$f(x) \in \mathcal{O}(g(x))$ besagt das die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$.
+$f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$.
 Vereinfacht werden f\"ur Algorithmen die folgende Notation verwendet:
 \begin{itemize}
 	\item $f \in \mathcal{O}(1) \rightarrow f$ ist beschr\"ankt
 	\item $f \in \mathcal{O}(n) \rightarrow f$ w\"achst linear
-	\item $f \in \mathcal{O}(n^2) \rightarrow f$ w\"achst quadratisch
+	\item $f \in \mathcal{O}\left (n^2 \right ) \rightarrow f$ w\"achst quadratisch
 	\item $f \in \mathcal{O}(\log n) \rightarrow f$ w\"achst logarithmisch
 	\item $f \in \mathcal{O}(n \log n) \rightarrow f$ hat super-lineares Wachstum
-	\item $f \in \mathcal{O}(e^n) \rightarrow f$ w\"achst exponentiell
+	\item $f \in \mathcal{O}\left (e^n \right ) \rightarrow f$ w\"achst exponentiell
 	\item usw.
 \end{itemize}
 
-In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die Verschiedenen Laufzeiten miteinander verglichen werden. 
+In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden. 
 
 \begin{figure}
 	\center
@@ -33,9 +33,11 @@ In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die Verschiedenen Laufze
 \end{figure}
 
 \subsubsection{Beispiel Algorithmen}
+
+Folgend einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomplexit\"atsklassen geh\"oren.
 \paragraph{Beschr\"ankter Algorithmus}
 
-Ein Beispiel eines Beschr\"ankter Verhalten $\mathcal{O}(1)$, kann im Algorithmus \ref{multiplikation:alg:b1} entnommen werden.
+Ein Beispiel eines Beschr\"ankter Verhalten $\mathcal{O}(1)$, kann im Algorithmus \ref{multiplikation:alg:b1} entnommen werden. Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen einfluss auf die Laufzeit.
 
 \begin{algorithm}\caption{}
 	\label{multiplikation:alg:b1}
@@ -47,7 +49,7 @@ Ein Beispiel eines Beschr\"ankter Verhalten $\mathcal{O}(1)$, kann im Algorithmu
 	\end{algorithmic}
 \end{algorithm}
 
-Wobei Konstanten nicht beachtet werden, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu  $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$.
+Konstanten werden nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu  $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$.
 
 \begin{algorithm}\caption{}
 	\label{multiplikation:alg:b2}
@@ -63,13 +65,14 @@ Wobei Konstanten nicht beachtet werden, der Algorithmus \ref{multiplikation:alg:
 
 \paragraph{Linearer Algorithmus}
 
-Folgender Algorithmus \ref{multiplikation:alg:l1} hat ein lineares $\mathcal{O}(n)$ Verhalten.
+Folgender Algorithmus \ref{multiplikation:alg:l1} hat ein lineares Verhalten.
+Die \texttt{for}-Schleife wird $n$-mal durchgef\"hrt und f\"uhrt deshalb zu $\mathcal{O}(n)$.
 
 \begin{algorithm}\caption{}
 	\setlength{\lineskip}{7pt}
 	\begin{algorithmic}
 		\label{multiplikation:alg:l1}
-		\Function{L}{$\mathbf{A}, \mathbf{B}$,n}
+		\Function{L}{$\mathbf{a}, \mathbf{b}$,n}
 		\State $ sum \gets 0$
 		\For{$i = 0,1,2 \dots,n$}
 		\State $ sum \gets sum + A[i] \cdot B[i] $
@@ -83,7 +86,9 @@ Folgender Algorithmus \ref{multiplikation:alg:l1} hat ein lineares $\mathcal{O}(
 
 \paragraph{Quadratischer Algorithmus}
 
-Folgender Algorithmus \ref{multiplikation:alg:q1} hat ein quadratisches $\mathcal{O}(n^2)$ Verhalten.
+Folgender Algorithmus \ref{multiplikation:alg:q1} hat ein quadratisches Verhalten.
+Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchgef\"hrt und f\"uhrt deshalb zu $\mathcal{O}\left(n^2\right)$.
+
 
 \begin{algorithm}[H]\caption{}
 	\label{multiplikation:alg:q1}
-- 
cgit v1.2.1


From 31b66acba16f525d41c42094601ade8afb3fd549 Mon Sep 17 00:00:00 2001
From: Nunigan <michael.schmid2@ost.ch>
Date: Sat, 31 Jul 2021 21:36:30 +0200
Subject: updare

---
 buch/papers/multiplikation/problemstellung.tex | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

(limited to 'buch/papers/multiplikation/problemstellung.tex')

diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex
index fed6a9f..2688f27 100755
--- a/buch/papers/multiplikation/problemstellung.tex
+++ b/buch/papers/multiplikation/problemstellung.tex
@@ -34,7 +34,7 @@ In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufze
 
 \subsubsection{Beispiel Algorithmen}
 
-Folgend einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomplexit\"atsklassen geh\"oren.
+Folgend einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomplexit\"atsklasse zugeteilt werden kann.
 \paragraph{Beschr\"ankter Algorithmus}
 
 Ein Beispiel eines Beschr\"ankter Verhalten $\mathcal{O}(1)$, kann im Algorithmus \ref{multiplikation:alg:b1} entnommen werden. Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen einfluss auf die Laufzeit.
@@ -66,7 +66,7 @@ Konstanten werden nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\
 \paragraph{Linearer Algorithmus}
 
 Folgender Algorithmus \ref{multiplikation:alg:l1} hat ein lineares Verhalten.
-Die \texttt{for}-Schleife wird $n$-mal durchgef\"hrt und f\"uhrt deshalb zu $\mathcal{O}(n)$.
+Die \texttt{for}-Schleife wird $n$-mal durchlaufen und f\"uhrt deshalb zu $\mathcal{O}(n)$.
 
 \begin{algorithm}\caption{}
 	\setlength{\lineskip}{7pt}
@@ -87,7 +87,7 @@ Die \texttt{for}-Schleife wird $n$-mal durchgef\"hrt und f\"uhrt deshalb zu $\ma
 \paragraph{Quadratischer Algorithmus}
 
 Folgender Algorithmus \ref{multiplikation:alg:q1} hat ein quadratisches Verhalten.
-Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchgef\"hrt und f\"uhrt deshalb zu $\mathcal{O}\left(n^2\right)$.
+Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchglaufen und f\"uhrt deshalb zu $\mathcal{O}\left(n^2\right)$.
 
 
 \begin{algorithm}[H]\caption{}
-- 
cgit v1.2.1


From 1663dd03e22b2ee65a8050f5eb5433c7580028b5 Mon Sep 17 00:00:00 2001
From: Nunigan <michael.schmid2@ost.ch>
Date: Wed, 4 Aug 2021 16:14:15 +0200
Subject: update multiplikation

---
 buch/papers/multiplikation/problemstellung.tex | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

(limited to 'buch/papers/multiplikation/problemstellung.tex')

diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex
index 2688f27..cd5aaaa 100755
--- a/buch/papers/multiplikation/problemstellung.tex
+++ b/buch/papers/multiplikation/problemstellung.tex
@@ -34,12 +34,12 @@ In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufze
 
 \subsubsection{Beispiel Algorithmen}
 
-Folgend einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomplexit\"atsklasse zugeteilt werden kann.
+Folgend einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomplexit\"atsklasse zugeteilt werden k\"onnen.
 \paragraph{Beschr\"ankter Algorithmus}
 
 Ein Beispiel eines Beschr\"ankter Verhalten $\mathcal{O}(1)$, kann im Algorithmus \ref{multiplikation:alg:b1} entnommen werden. Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen einfluss auf die Laufzeit.
 
-\begin{algorithm}\caption{}
+\begin{algorithm}\footnotesize\caption{}
 	\label{multiplikation:alg:b1}
 	\setlength{\lineskip}{7pt}
 	\begin{algorithmic}
@@ -51,7 +51,8 @@ Ein Beispiel eines Beschr\"ankter Verhalten $\mathcal{O}(1)$, kann im Algorithmu
 
 Konstanten werden nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu  $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$.
 
-\begin{algorithm}\caption{}
+
+\begin{algorithm}\footnotesize\caption{}
 	\label{multiplikation:alg:b2}
 	\setlength{\lineskip}{7pt}
 	\begin{algorithmic}
@@ -68,7 +69,7 @@ Konstanten werden nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\
 Folgender Algorithmus \ref{multiplikation:alg:l1} hat ein lineares Verhalten.
 Die \texttt{for}-Schleife wird $n$-mal durchlaufen und f\"uhrt deshalb zu $\mathcal{O}(n)$.
 
-\begin{algorithm}\caption{}
+\begin{algorithm}\footnotesize\caption{}
 	\setlength{\lineskip}{7pt}
 	\begin{algorithmic}
 		\label{multiplikation:alg:l1}
@@ -90,7 +91,7 @@ Folgender Algorithmus \ref{multiplikation:alg:q1} hat ein quadratisches Verhalte
 Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchglaufen und f\"uhrt deshalb zu $\mathcal{O}\left(n^2\right)$.
 
 
-\begin{algorithm}[H]\caption{}
+\begin{algorithm}[H]\footnotesize\caption{}
 	\label{multiplikation:alg:q1}
 	\setlength{\lineskip}{7pt}
 	\begin{algorithmic}
-- 
cgit v1.2.1


From e948351c11835cb6a19abe394ffb61219884b96a Mon Sep 17 00:00:00 2001
From: Nunigan <m2schmid@hsr.ch>
Date: Thu, 5 Aug 2021 18:04:32 +0200
Subject: update paper

---
 buch/papers/multiplikation/problemstellung.tex | 135 ++++++++++++++-----------
 1 file changed, 74 insertions(+), 61 deletions(-)

(limited to 'buch/papers/multiplikation/problemstellung.tex')

diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex
index cd5aaaa..c6fd10e 100755
--- a/buch/papers/multiplikation/problemstellung.tex
+++ b/buch/papers/multiplikation/problemstellung.tex
@@ -5,13 +5,15 @@
 %
 \section{Problemstellung}
 \rhead{Problemstellung}
-Dank der breiten Anwendung der Matrizenmultiplikation ist eine effiziente L\"osung dieser Operation von grosser Bedeutung.
+Wegen der breiten Anwendung der Matrizenmultiplikation ist eine effiziente L\"osung dieser Operation von grosser Bedeutung.
 Das Ziel dieses Papers ist, verschiedenen Algorithmen der Matrizenmultiplikation vorzustellen.
-Gezielt werden auf Algorithmen, welche das Problem schneller als der Standard Algorithmus L\"osen eingegangen.
+Gezielt wird auf Algorithmen eingegange, welche das Problem schneller als der Standard Algorithmus l\"osen.
 
 \subsection{Big $\mathcal{O}$ Notation}
-Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus \cite{multiplikation:bigo}.
+\label{muliplikation:sec:bigo}
+Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Abhänigkeit zur Inputgrösse \cite{multiplikation:bigo}.
 $f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$.
+Als Beispiel: benötigt eine Funktion $g$, $\mathcal{O}\left(n+n^2 \right)$ Multiplikationen so wächst $f$ mit $\mathcal{O}\left(n^2 \right)$ nicht wesentlich schneller als $g$.
 Vereinfacht werden f\"ur Algorithmen die folgende Notation verwendet:
 \begin{itemize}
 	\item $f \in \mathcal{O}(1) \rightarrow f$ ist beschr\"ankt
@@ -23,7 +25,7 @@ Vereinfacht werden f\"ur Algorithmen die folgende Notation verwendet:
 	\item usw.
 \end{itemize}
 
-In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden. 
+In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden.
 
 \begin{figure}
 	\center
@@ -34,77 +36,88 @@ In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufze
 
 \subsubsection{Beispiel Algorithmen}
 
-Folgend einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomplexit\"atsklasse zugeteilt werden k\"onnen.
+Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomplexit\"atsklasse zugeteilt werden k\"onnen.
+
+\begin{minipage}{0.4\textwidth}
+	\begin{algorithm}[H]\footnotesize\caption{}
+		\label{multiplikation:alg:b1}
+		\setlength{\lineskip}{7pt}
+		\begin{algorithmic}
+			\Function{B1}{$a, b$}
+			\State \textbf{return} $a+b$
+			\EndFunction
+		\end{algorithmic}
+	\end{algorithm}
+
+	\begin{algorithm}[H]\footnotesize\caption{}
+		\setlength{\lineskip}{7pt}
+		\begin{algorithmic}
+			\label{multiplikation:alg:linear}
+			\Function{L}{$\mathbf{a}, \mathbf{b}$,n}
+			\State $ sum \gets 0$
+			\For{$i = 0,1,2 \dots,n$}
+			\State $ sum \gets sum + A[i] \cdot B[i] $
+			\EndFor
+
+			\State \textbf{return} $sum$
+
+			\EndFunction
+		\end{algorithmic}
+	\end{algorithm}
+\end{minipage}
+\hspace{2cm}
+\begin{minipage}{0.4\textwidth}
+
+	\begin{algorithm}[H]\footnotesize\caption{}
+		\label{multiplikation:alg:b2}
+		\setlength{\lineskip}{7pt}
+		\begin{algorithmic}
+			\Function{B2}{$a, b$}
+			\State $ x \gets a+b $
+			\State $ y \gets a \cdot b $
+			\State \textbf{return} $x+y$
+			\EndFunction
+		\end{algorithmic}
+	\end{algorithm}
+
+
+	\begin{algorithm}[H]\footnotesize\caption{}
+		\label{multiplikation:alg:q1}
+		\setlength{\lineskip}{7pt}
+		\begin{algorithmic}
+			\Function{Q}{$\mathbf{A}, \mathbf{B}$,n}
+			\State $ sum \gets 0$
+			\For{$i = 0,1,2 \dots,n$}
+			\For{$j = 0,1,2 \dots,n$}
+			\State $ sum \gets sum + A[i] \cdot B[j] $
+			\EndFor
+			\EndFor
+			\State \textbf{return} $sum$
+			\EndFunction
+		\end{algorithmic}
+	\end{algorithm}
+
+\end{minipage}
+
 \paragraph{Beschr\"ankter Algorithmus}
 
 Ein Beispiel eines Beschr\"ankter Verhalten $\mathcal{O}(1)$, kann im Algorithmus \ref{multiplikation:alg:b1} entnommen werden. Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen einfluss auf die Laufzeit.
 
-\begin{algorithm}\footnotesize\caption{}
-	\label{multiplikation:alg:b1}
-	\setlength{\lineskip}{7pt}
-	\begin{algorithmic}
-		\Function{B1}{$a, b$}
-		\State \textbf{return} $a+b$
-		\EndFunction
-	\end{algorithmic}
-\end{algorithm}
+
 
 Konstanten werden nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu  $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$.
 
 
-\begin{algorithm}\footnotesize\caption{}
-	\label{multiplikation:alg:b2}
-	\setlength{\lineskip}{7pt}
-	\begin{algorithmic}
-		\Function{B2}{$a, b$}
-		\State $ x \gets a+b $
-		\State $ y \gets a \cdot b $
-		\State \textbf{return} $x+y$
-		\EndFunction
-	\end{algorithmic}
-\end{algorithm}
+
 
 \paragraph{Linearer Algorithmus}
 
-Folgender Algorithmus \ref{multiplikation:alg:l1} hat ein lineares Verhalten.
+Der Algorithmus \ref{multiplikation:alg:linear} hat ein lineares Verhalten.
 Die \texttt{for}-Schleife wird $n$-mal durchlaufen und f\"uhrt deshalb zu $\mathcal{O}(n)$.
 
-\begin{algorithm}\footnotesize\caption{}
-	\setlength{\lineskip}{7pt}
-	\begin{algorithmic}
-		\label{multiplikation:alg:l1}
-		\Function{L}{$\mathbf{a}, \mathbf{b}$,n}
-		\State $ sum \gets 0$
-		\For{$i = 0,1,2 \dots,n$}
-		\State $ sum \gets sum + A[i] \cdot B[i] $
-		\EndFor
-		
-		\State \textbf{return} $sum$
-		
-		\EndFunction
-	\end{algorithmic}
-\end{algorithm}
+
 
 \paragraph{Quadratischer Algorithmus}
 
-Folgender Algorithmus \ref{multiplikation:alg:q1} hat ein quadratisches Verhalten.
+Der Algorithmus \ref{multiplikation:alg:q1} hat ein quadratisches Verhalten.
 Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchglaufen und f\"uhrt deshalb zu $\mathcal{O}\left(n^2\right)$.
-
-
-\begin{algorithm}[H]\footnotesize\caption{}
-	\label{multiplikation:alg:q1}
-	\setlength{\lineskip}{7pt}
-	\begin{algorithmic}
-		\Function{Q}{$\mathbf{A}, \mathbf{B}$,n}
-		\State $ sum \gets 0$
-		\For{$i = 0,1,2 \dots,n$}
-		\For{$j = 0,1,2 \dots,n$}
-		\State $ sum \gets sum + A[i] \cdot B[j] $
-		\EndFor
-		\EndFor
-		\State \textbf{return} $sum$
-		\EndFunction
-	\end{algorithmic}
-\end{algorithm}
-
-
-- 
cgit v1.2.1


From 872595e81de60c85b18408f8de5a49c535518edc Mon Sep 17 00:00:00 2001
From: Nunigan <michael.schmid2@ost.ch>
Date: Fri, 6 Aug 2021 17:37:58 +0200
Subject: update multiplikation

---
 buch/papers/multiplikation/problemstellung.tex | 33 +++++++++++++-------------
 1 file changed, 16 insertions(+), 17 deletions(-)

(limited to 'buch/papers/multiplikation/problemstellung.tex')

diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex
index c6fd10e..e53b0de 100755
--- a/buch/papers/multiplikation/problemstellung.tex
+++ b/buch/papers/multiplikation/problemstellung.tex
@@ -7,13 +7,14 @@
 \rhead{Problemstellung}
 Wegen der breiten Anwendung der Matrizenmultiplikation ist eine effiziente L\"osung dieser Operation von grosser Bedeutung.
 Das Ziel dieses Papers ist, verschiedenen Algorithmen der Matrizenmultiplikation vorzustellen.
-Gezielt wird auf Algorithmen eingegange, welche das Problem schneller als der Standard Algorithmus l\"osen.
+Gezielt wird auf Algorithmen eingegangen, welche das Problem schneller als der Standard Algorithmus l\"osen.
 
 \subsection{Big $\mathcal{O}$ Notation}
 \label{muliplikation:sec:bigo}
-Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Abhänigkeit zur Inputgrösse \cite{multiplikation:bigo}.
+Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Abhängigkeit zur Inputgrösse \cite{multiplikation:bigo}.
 $f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$.
-Als Beispiel: benötigt eine Funktion $g$, $\mathcal{O}\left(n+n^2 \right)$ Multiplikationen so wächst $f$ mit $\mathcal{O}\left(n^2 \right)$ nicht wesentlich schneller als $g$.
+% Es gibt eine Konstante $K$ derart, dass $f(x) \le K g(x)$ für $x\to\infty$
+Als Beispiel: benötigt eine Funktion $g$ $\mathcal{O}\left(n^2 \right)$ Multiplikationen, so wächst $f$ mit $\mathcal{O}\left(n+ n^2 \right)$ nicht wesentlich schneller falls $x\to\infty$.
 Vereinfacht werden f\"ur Algorithmen die folgende Notation verwendet:
 \begin{itemize}
 	\item $f \in \mathcal{O}(1) \rightarrow f$ ist beschr\"ankt
@@ -26,13 +27,9 @@ Vereinfacht werden f\"ur Algorithmen die folgende Notation verwendet:
 \end{itemize}
 
 In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden.
+Bei einer logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt.
+Sch\"on zu erkennen ist, dass Logarithmische Kurven beschr\"ankt sind.
 
-\begin{figure}
-	\center
-	\includegraphics[]{papers/multiplikation/images/bigo}
-	\caption{Verschiedene Laufzeiten}
-	\label{multiplikation:fig:bigo}
-\end{figure}
 
 \subsubsection{Beispiel Algorithmen}
 
@@ -101,23 +98,25 @@ Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomple
 
 \paragraph{Beschr\"ankter Algorithmus}
 
-Ein Beispiel eines Beschr\"ankter Verhalten $\mathcal{O}(1)$, kann im Algorithmus \ref{multiplikation:alg:b1} entnommen werden. Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen einfluss auf die Laufzeit.
-
-
+Ein Beispiel eines Beschr\"ankter Verhalten $\mathcal{O}(1)$, kann im Algorithmus \ref{multiplikation:alg:b1} entnommen werden. Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen Einfluss auf die Laufzeit.
 
 Konstanten werden nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu  $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$.
 
 
-
-
 \paragraph{Linearer Algorithmus}
 
 Der Algorithmus \ref{multiplikation:alg:linear} hat ein lineares Verhalten.
 Die \texttt{for}-Schleife wird $n$-mal durchlaufen und f\"uhrt deshalb zu $\mathcal{O}(n)$.
 
-
-
 \paragraph{Quadratischer Algorithmus}
 
 Der Algorithmus \ref{multiplikation:alg:q1} hat ein quadratisches Verhalten.
-Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchglaufen und f\"uhrt deshalb zu $\mathcal{O}\left(n^2\right)$.
+Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchlaufen und f\"uhrt deshalb zu $\mathcal{O}\left(n^2\right)$.
+
+
+\begin{figure}
+	\center
+	\includegraphics[]{papers/multiplikation/images/bigo}
+	\caption{Verschiedene Laufzeiten}
+	\label{multiplikation:fig:bigo}
+\end{figure}
-- 
cgit v1.2.1


From ce9f4591847c6bd2dc6ebaa30fc5d72714e0280c Mon Sep 17 00:00:00 2001
From: Nunigan <michaelschmid13@hotmail.com>
Date: Tue, 10 Aug 2021 06:37:20 +0200
Subject: new measurements

---
 buch/papers/multiplikation/problemstellung.tex | 145 ++++++++++++++-----------
 1 file changed, 80 insertions(+), 65 deletions(-)

(limited to 'buch/papers/multiplikation/problemstellung.tex')

diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex
index e53b0de..c8ba274 100755
--- a/buch/papers/multiplikation/problemstellung.tex
+++ b/buch/papers/multiplikation/problemstellung.tex
@@ -14,87 +14,102 @@ Gezielt wird auf Algorithmen eingegangen, welche das Problem schneller als der S
 Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Abhängigkeit zur Inputgrösse \cite{multiplikation:bigo}.
 $f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$.
 % Es gibt eine Konstante $K$ derart, dass $f(x) \le K g(x)$ für $x\to\infty$
-Als Beispiel: benötigt eine Funktion $g$ $\mathcal{O}\left(n^2 \right)$ Multiplikationen, so wächst $f$ mit $\mathcal{O}\left(n+ n^2 \right)$ nicht wesentlich schneller falls $x\to\infty$.
+Als Beispiel: benötigt eine Funktion $g$ $\mathcal{O} (n^2  )$ Multiplikationen, so wächst $f$ mit $\mathcal{O} (n+ n^2  )$ nicht wesentlich schneller falls $x\to\infty$.
 Vereinfacht werden f\"ur Algorithmen die folgende Notation verwendet:
 \begin{itemize}
 	\item $f \in \mathcal{O}(1) \rightarrow f$ ist beschr\"ankt
 	\item $f \in \mathcal{O}(n) \rightarrow f$ w\"achst linear
-	\item $f \in \mathcal{O}\left (n^2 \right ) \rightarrow f$ w\"achst quadratisch
+	\item $f \in \mathcal{O}  (n^2   ) \rightarrow f$ w\"achst quadratisch
 	\item $f \in \mathcal{O}(\log n) \rightarrow f$ w\"achst logarithmisch
 	\item $f \in \mathcal{O}(n \log n) \rightarrow f$ hat super-lineares Wachstum
-	\item $f \in \mathcal{O}\left (e^n \right ) \rightarrow f$ w\"achst exponentiell
+	\item $f \in \mathcal{O}  (e^n   ) \rightarrow f$ w\"achst exponentiell
 	\item usw.
 \end{itemize}
 
 In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden.
 Bei einer logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt.
-Sch\"on zu erkennen ist, dass Logarithmische Kurven beschr\"ankt sind.
+
 
 
 \subsubsection{Beispiel Algorithmen}
 
 Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomplexit\"atsklasse zugeteilt werden k\"onnen.
 
-\begin{minipage}{0.4\textwidth}
-	\begin{algorithm}[H]\footnotesize\caption{}
-		\label{multiplikation:alg:b1}
-		\setlength{\lineskip}{7pt}
-		\begin{algorithmic}
-			\Function{B1}{$a, b$}
-			\State \textbf{return} $a+b$
-			\EndFunction
-		\end{algorithmic}
-	\end{algorithm}
-
-	\begin{algorithm}[H]\footnotesize\caption{}
-		\setlength{\lineskip}{7pt}
-		\begin{algorithmic}
-			\label{multiplikation:alg:linear}
-			\Function{L}{$\mathbf{a}, \mathbf{b}$,n}
-			\State $ sum \gets 0$
-			\For{$i = 0,1,2 \dots,n$}
-			\State $ sum \gets sum + A[i] \cdot B[i] $
-			\EndFor
-
-			\State \textbf{return} $sum$
-
-			\EndFunction
-		\end{algorithmic}
-	\end{algorithm}
-\end{minipage}
-\hspace{2cm}
-\begin{minipage}{0.4\textwidth}
-
-	\begin{algorithm}[H]\footnotesize\caption{}
-		\label{multiplikation:alg:b2}
-		\setlength{\lineskip}{7pt}
-		\begin{algorithmic}
-			\Function{B2}{$a, b$}
-			\State $ x \gets a+b $
-			\State $ y \gets a \cdot b $
-			\State \textbf{return} $x+y$
-			\EndFunction
-		\end{algorithmic}
-	\end{algorithm}
-
-
-	\begin{algorithm}[H]\footnotesize\caption{}
-		\label{multiplikation:alg:q1}
-		\setlength{\lineskip}{7pt}
-		\begin{algorithmic}
-			\Function{Q}{$\mathbf{A}, \mathbf{B}$,n}
-			\State $ sum \gets 0$
-			\For{$i = 0,1,2 \dots,n$}
-			\For{$j = 0,1,2 \dots,n$}
-			\State $ sum \gets sum + A[i] \cdot B[j] $
-			\EndFor
-			\EndFor
-			\State \textbf{return} $sum$
-			\EndFunction
-		\end{algorithmic}
-	\end{algorithm}
-
-\end{minipage}
+
+\begin{table}[t]
+	\begin{tabular}{ll}
+		\begin{minipage}{0.48\textwidth}
+			\begin{algorithm}[H]\footnotesize\caption{}
+				\label{multiplikation:alg:b1}
+				\setlength{\lineskip}{7pt}
+				\begin{algorithmic}
+					\Function{B1}{$a, b$}
+					\State \textbf{return} $a+b$
+					\EndFunction
+					\State
+					\State
+				\end{algorithmic}
+			\end{algorithm}
+		\end{minipage}	
+		&
+		\begin{minipage}{0.48\textwidth}
+			\begin{algorithm}[H]\footnotesize\caption{}
+				\label{multiplikation:alg:b2}
+				\setlength{\lineskip}{7pt}
+				\begin{algorithmic}
+					\Function{B2}{$a, b$}
+					\State $ x \gets a+b $
+					\State $ y \gets a \cdot b $
+					\State \textbf{return} $x+y$
+					\EndFunction
+				\end{algorithmic}
+			\end{algorithm}
+			
+		\end{minipage}
+	\end{tabular}
+\end{table}
+
+\begin{table}
+	\begin{tabular}[t]{ll} 
+		\begin{minipage}{0.48\textwidth}
+			\begin{algorithm}[H]\footnotesize\caption{}
+				\setlength{\lineskip}{7pt}
+				\begin{algorithmic}
+					\label{multiplikation:alg:linear}
+					\Function{L}{$\mathbf{a}, \mathbf{b}$,n}
+					\State $ sum \gets 0$
+					\For{$i = 0,1,2 \dots,n$}
+					\State $ sum \gets sum + A[i] \cdot B[i] $
+					\EndFor
+					
+					\State \textbf{return} $sum$
+					
+					\EndFunction
+					\State
+					\State
+				\end{algorithmic}
+			\end{algorithm}
+		\end{minipage}	
+		&
+		\begin{minipage}{0.48\textwidth}
+			\begin{algorithm}[H]\footnotesize\caption{}
+				\label{multiplikation:alg:q1}
+				\setlength{\lineskip}{7pt}
+				\begin{algorithmic}
+					\Function{Q}{$\mathbf{A}, \mathbf{B}$,n}
+					\State $ sum \gets 0$
+					\For{$i = 0,1,2 \dots,n$}
+					\For{$j = 0,1,2 \dots,n$}
+					\State $ sum \gets sum + A[i] \cdot B[j] $
+					\EndFor
+					\EndFor
+					\State \textbf{return} $sum$
+					\EndFunction
+				\end{algorithmic}
+			\end{algorithm}
+		\end{minipage}
+	\end{tabular}
+\end{table}
 
 \paragraph{Beschr\"ankter Algorithmus}
 
@@ -111,7 +126,7 @@ Die \texttt{for}-Schleife wird $n$-mal durchlaufen und f\"uhrt deshalb zu $\math
 \paragraph{Quadratischer Algorithmus}
 
 Der Algorithmus \ref{multiplikation:alg:q1} hat ein quadratisches Verhalten.
-Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchlaufen und f\"uhrt deshalb zu $\mathcal{O}\left(n^2\right)$.
+Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchlaufen und f\"uhrt deshalb zu $\mathcal{O} (n^2 )$.
 
 
 \begin{figure}
-- 
cgit v1.2.1


From 713ef9bbfa79eb2ae2b821da26271cdeea58834c Mon Sep 17 00:00:00 2001
From: Nunigan <michaelschmid13@hotmail.com>
Date: Tue, 17 Aug 2021 07:41:22 +0200
Subject: update

---
 buch/papers/multiplikation/problemstellung.tex | 30 ++++++++++++++------------
 1 file changed, 16 insertions(+), 14 deletions(-)

(limited to 'buch/papers/multiplikation/problemstellung.tex')

diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex
index c8ba274..a98d0e9 100755
--- a/buch/papers/multiplikation/problemstellung.tex
+++ b/buch/papers/multiplikation/problemstellung.tex
@@ -7,15 +7,15 @@
 \rhead{Problemstellung}
 Wegen der breiten Anwendung der Matrizenmultiplikation ist eine effiziente L\"osung dieser Operation von grosser Bedeutung.
 Das Ziel dieses Papers ist, verschiedenen Algorithmen der Matrizenmultiplikation vorzustellen.
-Gezielt wird auf Algorithmen eingegangen, welche das Problem schneller als der Standard Algorithmus l\"osen.
+Gezielt wird auf Algorithmen eingegangen, welche das Problem schneller als der Standardalgorithmus l\"osen.
 
 \subsection{Big $\mathcal{O}$ Notation}
 \label{muliplikation:sec:bigo}
 Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Abhängigkeit zur Inputgrösse \cite{multiplikation:bigo}.
 $f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$.
-% Es gibt eine Konstante $K$ derart, dass $f(x) \le K g(x)$ für $x\to\infty$
-Als Beispiel: benötigt eine Funktion $g$ $\mathcal{O} (n^2  )$ Multiplikationen, so wächst $f$ mit $\mathcal{O} (n+ n^2  )$ nicht wesentlich schneller falls $x\to\infty$.
-Vereinfacht werden f\"ur Algorithmen die folgende Notation verwendet:
+Dies ist gegeben, wenn es für $f \in \mathcal{O}(n^k)$ eine Konstante $C$ gibt, mit $f(n) \leq Cn^k$.
+% Es gibt eine Konstante $K$ derart, dass $f(x) \le K g(x)$ für $x\to\infty$.
+Vereinfacht werden f\"ur Algorithmen die folgende Sprechweise verwendet:
 \begin{itemize}
 	\item $f \in \mathcal{O}(1) \rightarrow f$ ist beschr\"ankt
 	\item $f \in \mathcal{O}(n) \rightarrow f$ w\"achst linear
@@ -26,6 +26,8 @@ Vereinfacht werden f\"ur Algorithmen die folgende Notation verwendet:
 	\item usw.
 \end{itemize}
 
+Konstanten werden nicht beachtet, eine Laufzeit von  $\mathcal{O}(4n^2)$ führt, falls $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$.
+
 In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden.
 Bei einer logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt.
 
@@ -50,7 +52,7 @@ Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomple
 					\State
 				\end{algorithmic}
 			\end{algorithm}
-		\end{minipage}	
+		\end{minipage}
 		&
 		\begin{minipage}{0.48\textwidth}
 			\begin{algorithm}[H]\footnotesize\caption{}
@@ -64,13 +66,13 @@ Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomple
 					\EndFunction
 				\end{algorithmic}
 			\end{algorithm}
-			
+
 		\end{minipage}
 	\end{tabular}
 \end{table}
 
 \begin{table}
-	\begin{tabular}[t]{ll} 
+	\begin{tabular}[t]{ll}
 		\begin{minipage}{0.48\textwidth}
 			\begin{algorithm}[H]\footnotesize\caption{}
 				\setlength{\lineskip}{7pt}
@@ -81,15 +83,15 @@ Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomple
 					\For{$i = 0,1,2 \dots,n$}
 					\State $ sum \gets sum + A[i] \cdot B[i] $
 					\EndFor
-					
+
 					\State \textbf{return} $sum$
-					
+
 					\EndFunction
 					\State
 					\State
 				\end{algorithmic}
 			\end{algorithm}
-		\end{minipage}	
+		\end{minipage}
 		&
 		\begin{minipage}{0.48\textwidth}
 			\begin{algorithm}[H]\footnotesize\caption{}
@@ -112,10 +114,10 @@ Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomple
 \end{table}
 
 \paragraph{Beschr\"ankter Algorithmus}
+Algorithmus \ref{multiplikation:alg:b1} ist ein Beispiel mit beschränkter Laufzeit $\mathcal{O}(1)$
+Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen Einfluss auf die Laufzeit.
 
-Ein Beispiel eines Beschr\"ankter Verhalten $\mathcal{O}(1)$, kann im Algorithmus \ref{multiplikation:alg:b1} entnommen werden. Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen Einfluss auf die Laufzeit.
-
-Konstanten werden nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu  $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$.
+Wie erwähnt, werden konstanten nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu  $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$.
 
 
 \paragraph{Linearer Algorithmus}
@@ -132,6 +134,6 @@ Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchlaufen und f\"uhrt
 \begin{figure}
 	\center
 	\includegraphics[]{papers/multiplikation/images/bigo}
-	\caption{Verschiedene Laufzeiten}
+	\caption{Laufzeiten von verschiedensten Zeitkomplexitäten. Bei einer logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt.}
 	\label{multiplikation:fig:bigo}
 \end{figure}
-- 
cgit v1.2.1


From b8b22fc376e14491a556daeacb5e8e5d216a8251 Mon Sep 17 00:00:00 2001
From: Nunigan <michaelschmid13@hotmail.com>
Date: Thu, 19 Aug 2021 06:08:48 +0200
Subject: update

---
 buch/papers/multiplikation/problemstellung.tex | 1 -
 1 file changed, 1 deletion(-)

(limited to 'buch/papers/multiplikation/problemstellung.tex')

diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex
index a98d0e9..b8c4142 100755
--- a/buch/papers/multiplikation/problemstellung.tex
+++ b/buch/papers/multiplikation/problemstellung.tex
@@ -27,7 +27,6 @@ Vereinfacht werden f\"ur Algorithmen die folgende Sprechweise verwendet:
 \end{itemize}
 
 Konstanten werden nicht beachtet, eine Laufzeit von  $\mathcal{O}(4n^2)$ führt, falls $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$.
-
 In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden.
 Bei einer logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt.
 
-- 
cgit v1.2.1


From 0c073915585da20db52db82958d50e159559e5c8 Mon Sep 17 00:00:00 2001
From: Nunigan <michaelschmid13@hotmail.com>
Date: Fri, 20 Aug 2021 08:50:43 +0200
Subject: update

---
 buch/papers/multiplikation/problemstellung.tex | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

(limited to 'buch/papers/multiplikation/problemstellung.tex')

diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex
index b8c4142..a9aeda0 100755
--- a/buch/papers/multiplikation/problemstellung.tex
+++ b/buch/papers/multiplikation/problemstellung.tex
@@ -3,13 +3,12 @@
 %
 % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil
 %
-\section{Problemstellung}
+\section{Laufzeiten von Algorithmen}
 \rhead{Problemstellung}
-Wegen der breiten Anwendung der Matrizenmultiplikation ist eine effiziente L\"osung dieser Operation von grosser Bedeutung.
+Wegen der breiten Anwendung der Matrizenmultiplikation ist eine effiziente Ausführung dieser Operation von grosser Bedeutung.
 Das Ziel dieses Papers ist, verschiedenen Algorithmen der Matrizenmultiplikation vorzustellen.
 Gezielt wird auf Algorithmen eingegangen, welche das Problem schneller als der Standardalgorithmus l\"osen.
 
-\subsection{Big $\mathcal{O}$ Notation}
 \label{muliplikation:sec:bigo}
 Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Abhängigkeit zur Inputgrösse \cite{multiplikation:bigo}.
 $f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$.
@@ -26,15 +25,15 @@ Vereinfacht werden f\"ur Algorithmen die folgende Sprechweise verwendet:
 	\item usw.
 \end{itemize}
 
-Konstanten werden nicht beachtet, eine Laufzeit von  $\mathcal{O}(4n^2)$ führt, falls $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$.
+Konstanten werden nicht beachtet, eine Laufzeit von  $4n^2$ führt, falls $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$.
 In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden.
-Bei einer logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt.
+Bei einer doppelt logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven abbgebildet.
 
 
 
 \subsubsection{Beispiel Algorithmen}
 
-Es folgen einige Beispiele von Algorithmen welche zu einer bestimmten Zeitkomplexit\"atsklasse zugeteilt werden k\"onnen.
+Es folgen einige Beispiele von Algorithmen, welche zu einer bestimmten Zeitkomplexit\"atsklasse zugeteilt werden k\"onnen.
 
 
 \begin{table}[t]
-- 
cgit v1.2.1


From 27bef650fb02f20f0f0a0980e810363583115cd9 Mon Sep 17 00:00:00 2001
From: Nunigan <michael.schmid2@ost.ch>
Date: Sat, 21 Aug 2021 14:54:03 +0200
Subject: update multiplikation

---
 buch/papers/multiplikation/problemstellung.tex | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

(limited to 'buch/papers/multiplikation/problemstellung.tex')

diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex
index a9aeda0..604ea36 100755
--- a/buch/papers/multiplikation/problemstellung.tex
+++ b/buch/papers/multiplikation/problemstellung.tex
@@ -27,7 +27,7 @@ Vereinfacht werden f\"ur Algorithmen die folgende Sprechweise verwendet:
 
 Konstanten werden nicht beachtet, eine Laufzeit von  $4n^2$ führt, falls $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$.
 In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden.
-Bei einer doppelt logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven abbgebildet.
+Bei einer doppelt logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven abgebildet.
 
 
 
-- 
cgit v1.2.1


From bf1d8fd6cf8b1a40bb0a621fda1070ddefba277b Mon Sep 17 00:00:00 2001
From: Nunigan <michaelschmid13@hotmail.com>
Date: Mon, 23 Aug 2021 11:00:26 +0200
Subject: update

---
 buch/papers/multiplikation/problemstellung.tex | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

(limited to 'buch/papers/multiplikation/problemstellung.tex')

diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex
index 604ea36..b3e0ab3 100755
--- a/buch/papers/multiplikation/problemstellung.tex
+++ b/buch/papers/multiplikation/problemstellung.tex
@@ -4,17 +4,17 @@
 % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil
 %
 \section{Laufzeiten von Algorithmen}
-\rhead{Problemstellung}
+\rhead{Laufzeiten von Algorithmen}
 Wegen der breiten Anwendung der Matrizenmultiplikation ist eine effiziente Ausführung dieser Operation von grosser Bedeutung.
 Das Ziel dieses Papers ist, verschiedenen Algorithmen der Matrizenmultiplikation vorzustellen.
 Gezielt wird auf Algorithmen eingegangen, welche das Problem schneller als der Standardalgorithmus l\"osen.
 
 \label{muliplikation:sec:bigo}
-Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Abhängigkeit zur Inputgrösse \cite{multiplikation:bigo}.
+Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Relation zur Inputgrösse \cite{multiplikation:bigo}.
 $f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$.
 Dies ist gegeben, wenn es für $f \in \mathcal{O}(n^k)$ eine Konstante $C$ gibt, mit $f(n) \leq Cn^k$.
 % Es gibt eine Konstante $K$ derart, dass $f(x) \le K g(x)$ für $x\to\infty$.
-Vereinfacht werden f\"ur Algorithmen die folgende Sprechweise verwendet:
+Vereinfacht werden f\"ur Algorithmen die folgende Sprechweisen verwendet:
 \begin{itemize}
 	\item $f \in \mathcal{O}(1) \rightarrow f$ ist beschr\"ankt
 	\item $f \in \mathcal{O}(n) \rightarrow f$ w\"achst linear
@@ -25,13 +25,13 @@ Vereinfacht werden f\"ur Algorithmen die folgende Sprechweise verwendet:
 	\item usw.
 \end{itemize}
 
-Konstanten werden nicht beachtet, eine Laufzeit von  $4n^2$ führt, falls $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$.
+Konstanten werden nicht beachtet, eine Laufzeit von  $4n^2$ führt, für $n \rightarrow \infty$ zu $\mathcal{O}(n^2)$.
 In der Abbildung \ref{multiplikation:fig:bigo} k\"onnen die verschiedenen Laufzeiten miteinander verglichen werden.
 Bei einer doppelt logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven abgebildet.
 
 
 
-\subsubsection{Beispiel Algorithmen}
+\subsubsection{Beispielalgorithmen}
 
 Es folgen einige Beispiele von Algorithmen, welche zu einer bestimmten Zeitkomplexit\"atsklasse zugeteilt werden k\"onnen.
 
@@ -115,7 +115,7 @@ Es folgen einige Beispiele von Algorithmen, welche zu einer bestimmten Zeitkompl
 Algorithmus \ref{multiplikation:alg:b1} ist ein Beispiel mit beschränkter Laufzeit $\mathcal{O}(1)$
 Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen Einfluss auf die Laufzeit.
 
-Wie erwähnt, werden konstanten nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu  $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$.
+Wie erwähnt werden Konstanten nicht beachtet, der Algorithmus \ref{multiplikation:alg:b2} f\"uhrt ebenso zu  $\mathcal{O}(1)$ und nicht zu $\mathcal{O}(2)$.
 
 
 \paragraph{Linearer Algorithmus}
@@ -132,6 +132,6 @@ Die beiden \texttt{for}-Schleifen werden jeweils $n$-mal durchlaufen und f\"uhrt
 \begin{figure}
 	\center
 	\includegraphics[]{papers/multiplikation/images/bigo}
-	\caption{Laufzeiten von verschiedensten Zeitkomplexitäten. Bei einer logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt.}
+	\caption{Laufzeiten von verschiedensten Zeitkomplexitäten. Bei einer doppelt logarithmischen Darstellung werden Polynome der Form $f(x) = x^k$ als Gerade und Exponentialfunktionen der Form $f(x) = a^x$ als nach oben gekr\"ummte Kurven dargestellt.}
 	\label{multiplikation:fig:bigo}
 \end{figure}
-- 
cgit v1.2.1


From 583925fe5661c68f4ae90712c9d697618933ee6c Mon Sep 17 00:00:00 2001
From: Nunigan <michaelschmid13@hotmail.com>
Date: Tue, 24 Aug 2021 15:34:33 +0200
Subject: typos

---
 buch/papers/multiplikation/problemstellung.tex | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

(limited to 'buch/papers/multiplikation/problemstellung.tex')

diff --git a/buch/papers/multiplikation/problemstellung.tex b/buch/papers/multiplikation/problemstellung.tex
index b3e0ab3..879b210 100755
--- a/buch/papers/multiplikation/problemstellung.tex
+++ b/buch/papers/multiplikation/problemstellung.tex
@@ -11,10 +11,10 @@ Gezielt wird auf Algorithmen eingegangen, welche das Problem schneller als der S
 
 \label{muliplikation:sec:bigo}
 Die Big $\mathcal{O}$ Notation beschreibt die Laufzeitkomplexit\"at eines Algorithmus in Relation zur Inputgrösse \cite{multiplikation:bigo}.
-$f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$ wenn $x \rightarrow \infty$.
-Dies ist gegeben, wenn es für $f \in \mathcal{O}(n^k)$ eine Konstante $C$ gibt, mit $f(n) \leq Cn^k$.
+$f(x) \in \mathcal{O}(g(x))$ besagt, dass die Funktion $f$ nicht wesentlich schneller w\"achst als $g$, wenn $x \rightarrow \infty$.
+Dies ist gegeben, falls es für $f \in \mathcal{O}(n^k)$ eine Konstante $C$ gibt, mit $f(n) \leq Cn^k$.
 % Es gibt eine Konstante $K$ derart, dass $f(x) \le K g(x)$ für $x\to\infty$.
-Vereinfacht werden f\"ur Algorithmen die folgende Sprechweisen verwendet:
+Vereinfacht werden f\"ur Algorithmen die folgenden Sprechweisen verwendet:
 \begin{itemize}
 	\item $f \in \mathcal{O}(1) \rightarrow f$ ist beschr\"ankt
 	\item $f \in \mathcal{O}(n) \rightarrow f$ w\"achst linear
@@ -64,13 +64,7 @@ Es folgen einige Beispiele von Algorithmen, welche zu einer bestimmten Zeitkompl
 					\EndFunction
 				\end{algorithmic}
 			\end{algorithm}
-
-		\end{minipage}
-	\end{tabular}
-\end{table}
-
-\begin{table}
-	\begin{tabular}[t]{ll}
+		\end{minipage} \\
 		\begin{minipage}{0.48\textwidth}
 			\begin{algorithm}[H]\footnotesize\caption{}
 				\setlength{\lineskip}{7pt}
@@ -111,6 +105,12 @@ Es folgen einige Beispiele von Algorithmen, welche zu einer bestimmten Zeitkompl
 	\end{tabular}
 \end{table}
 
+%\begin{table}
+%	\begin{tabular}[t]{ll}
+
+%	\end{tabular}
+%\end{table}
+
 \paragraph{Beschr\"ankter Algorithmus}
 Algorithmus \ref{multiplikation:alg:b1} ist ein Beispiel mit beschränkter Laufzeit $\mathcal{O}(1)$
 Da $a$ und $b$ Skalare sind, hat keine Gr\"osse $n$ einen Einfluss auf die Laufzeit.
-- 
cgit v1.2.1

