\documentclass{bschlangaul-aufgabe}
\bLadePakete{syntax,mathe}
\begin{document}
\bAufgabenMetadaten{
  Titel = {Aufgabe 6},
  Thematik = {Sortieren von O-Klassen},
  Referenz = 66115-2019-H.T1-A6,
  RelativerPfad = Examen/66115/2019/09/Thema-1/Aufgabe-6.tex,
  ZitatSchluessel = examen:66115:2019:09,
  BearbeitungsStand = mit Lösung,
  Korrektheit = unbekannt,
  Ueberprueft = {unbekannt},
  Stichwoerter = {Algorithmische Komplexität (O-Notation), Master-Theorem},
  EinzelpruefungsNr = 66115,
  Jahr = 2019,
  Monat = 09,
  ThemaNr = 1,
  AufgabeNr = 6,
}

\begin{enumerate}

%%
% (a)
%%

\item Sortieren\index{Algorithmische Komplexität (O-Notation)}
\footcite{examen:66115:2019:09} Sie die unten angegebenen Funktionen der
O-Klassen $\mathcal{O}(a(n))$, $\mathcal{O}(b(n))$, $\mathcal{O}(c(n))$,
$\mathcal{O}(d(n))$ und $\mathcal{O}(e(n))$ bezüglich ihrer
Teilmengenbeziehungen. Nutzen Sie ausschließlich die echte Teilmenge
$\subset$ sowie die Gleichheit $=$ für die Beziehung zwischen den
Mengen. Folgendes Beispiel illustriert diese Schreibweise für einige
Funktionen $f_1$ bis $f_5$ (diese haben nichts mit den unten angegebenen
Funktionen zu tun):
\bFussnoteUrl{http://www.s-inf.de/Skripte/DaStru.2012-SS-Katoen.(KK).Klausur1MitLoesung.pdf}

\begin{displaymath}
\mathcal{O}(f_4 (n)) \subset \mathcal{O}(f_3(n)) = \mathcal{O}(f_5(n)) \subset \mathcal{O}(f_1(n)) = \mathcal{O}(f_2(n))
\end{displaymath}

Die angegebenen Beziehungen müssen weder bewiesen noch begründet werden.

\begin{itemize}
\item $a(n) = n^2 \cdot \log_2(n) + 42$
\item $b(n) = 2^n + n^4$
\item $c(n) = 2^{2 \cdot n}$
\item $d(n) = 2^{n+3}$
\item $e(n) = \sqrt{n^5}$
\end{itemize}

\begin{bAntwort}
\begin{align*}
a(n) &= n^2 \cdot \log_2(n) + 42 &&= n\\
b(n) &= 2^n + n^4 &&= 2^n\\
c(n) &= 2^{2 \cdot n} &&=2^{2 \cdot n}\\
d(n) &= 2^{n+3} &&= 2^n\\
e(n) &= \sqrt{n^5}\\
\end{align*}

\begin{displaymath}
\mathcal{O}(a (n)) \subset \mathcal{O}(e(n)) \subset \mathcal{O}(b(n)) = \mathcal{O}(d(n)) \subset \mathcal{O}(c(n))
\end{displaymath}

\begin{displaymath}
\mathcal{O}(n^2 \cdot \log_2(n) + 42) \subset
\mathcal{O}(\sqrt{n^5}) \subset
\mathcal{O}(2^n + n^4) =
\mathcal{O}(2^{n+3}) \subset
\mathcal{O}(2^{2 \cdot n})
\end{displaymath}
\end{bAntwort}

%%
% (b)
%%

\item Beweisen Sie die folgenden Aussagen formal nach den Definitionen
der O-Notation oder widerlegen Sie sie.

\begin{enumerate}

%%
% (i)
%%

\item $\mathcal{O}(n \cdot \log_2 n) \subseteq \mathcal{O}(n \cdot (\log_2 n)^2)$

\begin{bAntwort}
Die Aussage gilt.
Für $n \geq 16$ haben wir
\begin{displaymath}
(\log_2 n)^2 \leq n \Leftrightarrow \log_2 n  \leq \sqrt n
\end{displaymath}

und dies ist eine wahre Aussage für $n \geq 16$. Also gilt die Aussage mit $n_0 = 16$ und $c = 1$.
\end{bAntwort}

%%
% (ii)
%%

\item $2^{(n+1)} \in \mathcal{O}(n \cdot \log_2 n)$
\end{enumerate}

%%
% (c)
%%

\item Bestimmen Sie eine asymptotische Lösung (in $\Theta$-Schreibweise)
für die folgende Rekursionsgleichung:
\index{Master-Theorem}

\begin{enumerate}

%%
% (i)
%%

\item $T(n) = 4 \cdot T(\frac{n}{2}) + n^2$

%%
% (ii)
%%

\item $T(n) =  T(\frac{n}{2}) +\frac{n}{2} n^2 + n$
\end{enumerate}

\end{enumerate}

\end{document}
