\documentclass[11pt,a4paper]{article} \usepackage[T1]{fontenc} \usepackage{lmodern} \usepackage[utf8]{inputenc} \usepackage[margin=2.5cm]{geometry} \usepackage{amsmath,amssymb} \usepackage{tikz} \usepackage{xcolor} \setlength{\parskip}{0.4em} \setlength{\parindent}{0pt} \emergencystretch=1.5em % ---- Makros ---- \newcommand{\problem}[1]{\textsc{#1}} \newcommand{\redp}{\le_p} \newcommand{\NP}{\textsf{NP}} \newcommand{\true}{\textsf{wahr}} \newcommand{\false}{\textsf{falsch}} \tikzset{knoten/.style={circle,draw,thick,minimum size=6.5mm,inner sep=1pt}} \definecolor{boxbg}{gray}{0.94} \newsavebox{\shadedbox} \newenvironment{shaded} {\par\smallskip\noindent\begin{lrbox}{\shadedbox}\begin{minipage}{\dimexpr\linewidth-2\fboxsep\relax}} {\end{minipage}\end{lrbox}\colorbox{boxbg}{\usebox{\shadedbox}}\par\smallskip} \newcommand{\aufgabe}[2]{\medskip\noindent{\large\textbf{Aufgabe #1}}\hfill\textbf{(#2)}\par\smallskip \noindent\rule{\linewidth}{0.4pt}\par\medskip} \newcommand{\lsg}{\par\smallskip\noindent\textbf{L\"osung.}\par\smallskip} \begin{document} \thispagestyle{empty} \begin{center} {\Large\textbf{Musterl\"osung -- Probeklausur 1}}\\[4pt] {\large Analyse von Algorithmen und Komplexit\"at, SS 2026} \end{center} \medskip \noindent\rule{\linewidth}{0.4pt} % ============================= A1 ============================= \newpage \aufgabe{1 \quad ANWENDUNG -- CHRISTOFIDES' ALGORITHMUS}{6 + 4 Punkte} Kantengewichte: $ab=1$, $ac=2$, $ad=3$, $bc=3$, $bd=4$, $cd=4$. \lsg \textbf{a) Anwendung von Christofides ($\Delta$TSP2) ab Startknoten $a$.} \textbf{Schritt 1 -- Minimaler Spannbaum $T$.} Kruskal (aufsteigend $ab\,1,\ ac\,2,\ ad\,3,\ bc\,3,\ bd\,4,\ cd\,4$): W\"ahle $ab\,(1)$, $ac\,(2)$; $ad\,(3)$ verbindet $d$. Die n\"achstteure Kante $bc\,(3)$ w\"urde einen Kreis schlie{\ss}en (\emph{No-Op: wird gepr\"uft, aber verworfen}); ebenso $bd\,(4)$, $cd\,(4)$. $T = \{ab, ac, ad\}$ ist ein Stern um $a$ mit Gewicht $1+2+3 = 6$ und eindeutig. \begin{center} \begin{tikzpicture} \node[knoten] (a) at (0,2.4) {$a$}; \node[knoten] (b) at (2.4,2.4) {$b$}; \node[knoten] (c) at (0,0) {$c$}; \node[knoten] (d) at (2.4,0) {$d$}; \draw[very thick] (a) -- (b) node[fill=white,inner sep=1pt,font=\small,midway] {1}; \draw[very thick] (a) -- (c) node[fill=white,inner sep=1pt,font=\small,midway] {2}; \draw[very thick] (a) -- (d) node[fill=white,inner sep=1pt,font=\small,pos=0.3] {3}; \node[font=\small] at (1.2,-0.7) {MST $T$, Gewicht $6$}; \end{tikzpicture} \end{center} \textbf{Schritt 2 -- Knoten mit ungeradem Grad.} Grade in $T$: $\deg(a)=3$, $\deg(b)=\deg(c)=\deg(d)=1$. Alle vier Grade sind ungerade (jeder Grad wird gepr\"uft), also $X = \{a,b,c,d\}$. \textbf{Schritt 3 -- Minimales perfektes Matching $M$ auf $X$.} Die drei m\"oglichen perfekten Matchings auf $\{a,b,c,d\}$: \begin{itemize} \item $\{ab, cd\} = 1 + 4 = 5$ \item $\{ac, bd\} = 2 + 4 = 6$ \item $\{ad, bc\} = 3 + 3 = 6$ \end{itemize} Minimum eindeutig: $M = \{ab, cd\}$ mit Kosten $5$. \textbf{Schritt 4 -- Multigraph $T + M$ und Eulerkreis.} Die Kante $ab$ kommt sowohl aus $T$ als auch aus $M$, ist also doppelt. Kanten: $ab$ (doppelt), $ac$, $ad$, $cd$. Grade: $\deg(a)=4$, $\deg(b)=2$, $\deg(c)=2$, $\deg(d)=2$ -- alle gerade, der Multigraph ist eulersch. Eulerkreis ab $a$: \[ [\,a, b, a, c, d, a\,]. \] \begin{center} \begin{tikzpicture} \node[knoten] (a) at (0,2.4) {$a$}; \node[knoten] (b) at (2.4,2.4) {$b$}; \node[knoten] (c) at (0,0) {$c$}; \node[knoten] (d) at (2.4,0) {$d$}; \draw[very thick,double] (a) -- (b) node[fill=white,inner sep=1pt,font=\small,midway] {$1\ (\times 2)$}; \draw[very thick] (a) -- (c) node[fill=white,inner sep=1pt,font=\small,midway] {2}; \draw[very thick] (a) -- (d) node[fill=white,inner sep=1pt,font=\small,pos=0.3] {3}; \draw[very thick] (c) -- (d) node[fill=white,inner sep=1pt,font=\small,midway] {4}; \node[font=\small] at (1.2,-0.7) {$T + M$ (eulersch)}; \end{tikzpicture} \end{center} \textbf{Schritt 5 -- Abk\"urzen (shortcut).} Durchlaufe den Eulerkreis $[a,b,a,c,d,a]$ und \"uberspringe bereits besuchte Knoten: $a$ (neu, behalten -- \emph{No-Op}), $b$ (neu, behalten -- \emph{No-Op}), $a$ (\emph{bereits besucht $\Rightarrow$ \"uberspringen}), $c$ (neu), $d$ (neu), $a$ (Schluss). Resultierende Tour: \[ [\,a, b, c, d, a\,]. \] Tourl\"ange $= ab + bc + cd + da = 1 + 3 + 4 + 3 = 11$. \begin{center} \begin{tikzpicture} \node[knoten] (a) at (0,2.4) {$a$}; \node[knoten] (b) at (2.4,2.4) {$b$}; \node[knoten] (c) at (0,0) {$c$}; \node[knoten] (d) at (2.4,0) {$d$}; \draw[very thick] (a) -- (b) node[fill=white,inner sep=1pt,font=\small,midway] {1}; \draw[very thick] (b) -- (c) node[fill=white,inner sep=1pt,font=\small,pos=0.3] {3}; \draw[very thick] (c) -- (d) node[fill=white,inner sep=1pt,font=\small,midway] {4}; \draw[very thick] (a) -- (d) node[fill=white,inner sep=1pt,font=\small,pos=0.3] {3}; \node[font=\small] at (1.2,-0.7) {Tour $[a,b,c,d,a]$, L\"ange $11$}; \end{tikzpicture} \end{center} Zum Vergleich (Brute-Force \"uber alle $3$ Touren): $[a,b,c,d,a]=11$, $[a,b,d,c,a]=1+4+4+2=11$, $[a,c,b,d,a]=2+3+4+3=12$. Also $\mathrm{OPT}=11$; hier liefert Christofides sogar das Optimum, die G\"ute $\tfrac32$ ist eingehalten ($\tfrac{11}{11}=1 \le \tfrac32$). \medskip \textbf{b) Bedeutung, Zusatzeigenschaften, G\"ute.} \begin{itemize} \item \textbf{Was berechnet Christofides?} Eine Rundreise (Hamiltonkreis) durch alle Knoten, also eine zul\"assige N\"aherungsl\"osung f\"ur das metrische Travelling-Salesperson-Problem. \item \textbf{Zusatzeigenschaft 1 -- Symmetrie:} $w(u,v) = w(v,u)$ f\"ur alle Kanten (die Kostenfunktion ist ungerichtet). \emph{Verletzende Eingabe:} ein gerichteter Graph mit $w(a,b) = 1$, aber $w(b,a) = 5$. Dann sind MST und Matching nicht wohldefiniert bzw.\ die Analyse bricht. \item \textbf{Zusatzeigenschaft 2 -- Dreiecksungleichung:} $w(u,v) \le w(u,x) + w(x,v)$ f\"ur alle Knoten $u,x,v$. \emph{Verletzende Eingabe:} drei Knoten $a,b,c$ mit $w(a,b)=1$, $w(b,c)=1$, $w(a,c)=10$; hier ist $w(a,c)=10 > 1+1 = w(a,b)+w(b,c)$. Ohne Dreiecksungleichung liefert das Abk\"urzen keine Absch\"atzung der Tourl\"ange. \end{itemize} (Eine einzige Eingabe, die \emph{beide} Eigenschaften verletzt, w\"are ebenfalls zul\"assig.) \textbf{G\"ute:} $\tfrac32$. \hfill$\square$ % ============================= A2 ============================= \newpage \aufgabe{2 \quad VORLESUNGSBEWEIS -- DEFINITION NP}{2 + 8 Punkte} Zu zeigen: Existiert ein polynomieller Verifizierer f\"ur $L$, so existiert eine NDTM, die $L$ in nicht-deterministischer Polynomialzeit entscheidet. \lsg \textbf{a) Analoge NDTM zum gegebenen \problem{VertexCover}-Verifizierer.} Der Verifizierer r\"at nichts, sondern \emph{pr\"uft} ein von au{\ss}en gegebenes Zertifikat $C$. Die analoge NDTM ersetzt dieses Zertifikat durch eine \emph{nichtdeterministische Ratephase} und f\"uhrt danach dieselben Pr\"ufungen aus: \begin{shaded} \ttfamily\small $M(G = (V,E),\ k)$\\ 1.\quad Rate nichtdeterministisch eine Menge von Knoten $C \subseteq V$.\\ 2.\quad Falls $|C| > k$, verwerfe.\\ 3.\quad F\"ur alle $\{u,v\} \in E$: Falls $u \notin C$ und $v \notin C$, verwerfe.\\ 4.\quad Akzeptiere. \end{shaded} \textbf{Korrektheit:} $M$ hat genau dann einen akzeptierenden Rechenweg, wenn ein $C \subseteq V$ existiert, das die Pr\"ufungen 2--3 \"ubersteht, d.h.\ ein Vertex Cover der Gr\"o{\ss}e $\le k$ -- genau dann akzeptiert auch $V$ ein Zertifikat. Also akzeptiert $M$ dieselbe Sprache $L$.\\ \textbf{Laufzeit:} Raten von $C$ in $O(|V|)$, Gr\"o{\ss}e pr\"ufen $O(|V|)$, Kanten pr\"ufen $O(|E|)$ -- jeder Rechenweg l\"auft in $O(|V| + |E|)$, also polynomiell. \medskip \textbf{b) Allgemeing\"ultiger Beweis.} Sei $L$ eine Sprache mit polynomiellem Verifizierer $M$ der Laufzeit $p(|x|) = O(|x|^d)$: F\"ur $x \in L$ existiert ein Zertifikat $c$ mit $M(x,c) = 1$; f\"ur $x \notin L$ akzeptiert $M$ kein Zertifikat. In $p(|x|)$ Schritten liest $M$ h\"ochstens die ersten $p(|x|)$ Zeichen des Zertifikats. \textbf{Konstruktion der NDTM $N$.} Bei Eingabe $x$ arbeitet $N$ in zwei Phasen: \begin{itemize} \item \emph{Raten:} Schreibe mit nichtdeterministischen Entscheidungen einen String $u$ mit $|u| \le p(|x|)$ auf ein Arbeitsband. \item \emph{Verifizieren:} Simuliere $M$ auf $(x,u)$ und \"ubernimm dessen Antwort (akzeptiere/verwirf). \end{itemize} \textbf{Korrektheit:} \begin{itemize} \item Sei $x \in L$. Dann existiert ein Zertifikat $c$ mit $M(x,c)=1$; davon liest $M$ h\"ochstens die ersten $p(|x|)$ Zeichen. Der Rechenweg, der genau diesen Anfang als $u$ r\"at, akzeptiert -- also akzeptiert $N$. \item Sei $x \notin L$. Dann verwirft $M$ jedes Zertifikat, insbesondere jedes geratene $u$. Also verwerfen alle Rechenwege von $N$, und $N$ verwirft. \end{itemize} Somit akzeptiert $N$ genau die Sprache $L$. \textbf{Laufzeit:} Phase~1 braucht $\le p(|x|)$ Rateschritte, Phase~2 l\"auft in $O(|x|^d)$ -- insgesamt $O(|x|^d)$, also polynomiell. Damit entscheidet die NDTM $N$ die Sprache $L$ in nicht-deterministischer Polynomialzeit $T = O(|x|^d)$. \hfill$\square$ % ============================= A3 ============================= \newpage \aufgabe{3 \quad NP-VOLLST\"ANDIGKEIT}{10 Punkte} Zu zeigen: $k$-\problem{CliqueMember} ist NP-vollst\"andig. \lsg \textbf{$\in$ NP:} Eingabe: Graph $G = (V,E)$, Knoten $v$, Zahl $k$ und Zertifikat $C \subseteq V$. Der Verifizierer arbeitet wie folgt: \begin{itemize} \item Falls $|C| < k$ oder $v \notin C$, lehne ab. \item Pr\"ufe f\"ur jedes Paar $\{x,y\} \subseteq C$, ob $\{x,y\} \in E$; lehne sonst ab. \item Sonst akzeptiere. \end{itemize} Existiert eine Clique $C$ mit $|C| \ge k$ und $v \in C$, so ist sie ein akzeptiertes Zertifikat; sonst scheitert jedes Zertifikat an einer Pr\"ufung. Laufzeit: Gr\"o{\ss}e und Mitgliedschaft pr\"ufen $O(|V|)$, alle Paare testen $O(|V|^2)$ -- gesamt $O(|V|^2)$. Also gilt $k$-\problem{CliqueMember} $\in \NP$. \textbf{NP-schwer:} Zeige die NP-Schwere durch die Reduktion \[ \problem{Clique} \redp k\text{-}\problem{CliqueMember}. \] \problem{Clique} ist bereits als NP-vollst\"andig bekannt. \textbf{Konstruktion:} Sei $(G = (V,E),\, k)$ eine \problem{Clique}-Instanz. Wir konstruieren daraus eine $k$-\problem{CliqueMember}-Instanz $(G' = (V', E'),\, v,\, k')$ durch: \begin{itemize} \item $V' = V \cup \{v\}$ mit einem neuen Knoten $v \notin V$ \item $E' = E \cup \{\{v,w\} \mid w \in V\}$ ($v$ ist mit allen Knoten aus $V$ verbunden, also universell) \item $k' = k + 1$, ausgezeichneter Knoten $v$ \end{itemize} \textbf{Beweis hin:} \begin{itemize} \item Sei $C$ eine Clique in $G$ mit $|C| \ge k$. \item Da $v$ mit allen Knoten von $V \supseteq C$ verbunden ist, sind alle Paare in $C \cup \{v\}$ Kanten in $E'$; also ist $C \cup \{v\}$ eine Clique in $G'$. \item Wegen $v \notin V \supseteq C$ gilt $|C \cup \{v\}| = |C| + 1 \ge k + 1 = k'$, und $v \in C \cup \{v\}$. \item Also ist $(G', v, k')$ eine Ja-Instanz. \end{itemize} \textbf{Beweis zur\"uck:} \begin{itemize} \item Sei $C'$ eine Clique in $G'$ mit $|C'| \ge k'$ und $v \in C'$. \item Setze $C = C' \setminus \{v\}$; wegen $v \in C'$ gilt $|C| = |C'| - 1 \ge k' - 1 = k$, und $C \subseteq V$. \item Alle Kanten zwischen Knoten von $C$ liegen in $E$, denn neu in $E'$ sind nur die Kanten mit Endpunkt $v$, und $v \notin C$. \item Also ist $C$ eine Clique in $G$ mit $|C| \ge k$. \end{itemize} (Beide Richtungen zusammen: $(G',v,k')$ ist Ja-Instanz $\iff$ $(G,k)$ ist Ja-Instanz. Der Randfall $k \ge 1$ ist gew\"ahrleistet, da $k' = k+1 \ge 2$ und $v$ stets in der Clique liegen \emph{muss}.) \textbf{Laufzeit:} Einen Knoten und $|V|$ Kanten anlegen -- $O(|V| + |E|)$, polynomiell. Da $k$-\problem{CliqueMember} $\in \NP$ und NP-schwer ist, folgt: $k$-\problem{CliqueMember} ist NP-vollst\"andig. \hfill$\square$ % ============================= A4 ============================= \newpage \aufgabe{4 \quad ETH}{1 + 4 + 1 + 4 Punkte} \lsg \textbf{a) Parameter der \problem{VertexCover}-Instanz.} Es gilt $V' = V$, also \[ |V'| = |V|, \qquad |E'| = \binom{|V|}{2} - |E| = \tfrac12\,|V|\,(|V|-1) - |E| \;\le\; |V|^2. \] (Die Komplementkantenmenge $E'$ enth\"alt alle $\binom{|V|}{2}$ m\"oglichen Kanten au{\ss}er den $|E|$ Kanten von $G$.) \medskip \textbf{b) ETH-Schranken f\"ur \problem{VertexCover}.} Die Reduktion $\problem{Clique} \redp \problem{VertexCover}$ l\"auft in Polynomialzeit. \textbf{Bez\"uglich $|V'|$:} \begin{itemize} \item Angenommen, \problem{VertexCover} w\"are in $2^{o(|V'|)} \cdot |I|^{O(1)}$ l\"osbar. \item Da die Reduktion polynomiell ist und $|V'| = |V|$ gilt, erg\"abe die Komposition (Reduktion, dann Algorithmus) einen $2^{o(|V|)} \cdot |I|^{O(1)}$-Algorithmus f\"ur \problem{Clique}. \item Widerspruch zur ETH (\problem{Clique} $\notin 2^{o(|V|)} \cdot |I|^{O(1)}$). \item Also besitzt \problem{VertexCover} keinen $2^{o(|V'|)} \cdot |I|^{O(1)}$-Algorithmus. \end{itemize} \textbf{Bez\"uglich $|E'|$:} \begin{itemize} \item Angenommen, \problem{VertexCover} w\"are in $2^{o(\sqrt{|E'|})} \cdot |I|^{O(1)}$ l\"osbar. \item Wegen $|E'| \le \tfrac12|V|(|V|-1) \le |V|^2$ ist $\sqrt{|E'|} \le |V|$, also $o(\sqrt{|E'|}) \subseteq o(|V|)$. \item Damit w\"are \problem{VertexCover} in $2^{o(|V|)} \cdot |I|^{O(1)}$ l\"osbar, und mit $|V'|=|V|$ (Reduktion polynomiell) folgt ein $2^{o(|V|)} \cdot |I|^{O(1)}$-Algorithmus f\"ur \problem{Clique}. \item Widerspruch zur ETH. \item Also besitzt \problem{VertexCover} keinen $2^{o(\sqrt{|E'|})} \cdot |I|^{O(1)}$-Algorithmus. \end{itemize} Ergebnis: kein $2^{o(|V'|)}$ und kein $2^{o(\sqrt{|E'|})}$. \medskip \textbf{c) Parameter der \problem{HittingSet}-Instanz.} Die Grundmenge besteht aus den $2n$ Literalen, und es gibt $n$ Paar-Mengen sowie $m$ Klausel-Mengen: \[ |U| = 2n, \qquad r = n + m. \] \medskip \textbf{d) ETH-Schranken f\"ur \problem{HittingSet}.} Die Reduktion $\problem{3-SAT} \redp \problem{HittingSet}$ l\"auft in Polynomialzeit. (Sie ist korrekt, weil die $n$ disjunkten Paar-Mengen bei $k=n$ erzwingen, dass $H$ aus jedem Paar $\{x_i,\bar x_i\}$ \emph{genau} ein Literal enth\"alt -- also eine Belegung kodiert --, und das Treffen der Klausel-Mengen genau der Erf\"ullung der Klauseln entspricht.) \textbf{Bez\"uglich $|U|$:} \begin{itemize} \item Angenommen, \problem{HittingSet} w\"are in $2^{o(|U|)} \cdot |I|^{O(1)}$ l\"osbar. \item Wegen $|U| = 2n$ ist $o(|U|) = o(n)$; die Komposition erg\"abe einen $2^{o(n)} \cdot |I|^{O(1)}$-Algorithmus f\"ur \problem{3-SAT}. \item Direkter Widerspruch zur ETH. \item Also kein $2^{o(|U|)} \cdot |I|^{O(1)}$-Algorithmus. \end{itemize} \textbf{Bez\"uglich $r$:} \begin{itemize} \item Angenommen, \problem{HittingSet} w\"are in $2^{o(r)} \cdot |I|^{O(1)}$ l\"osbar. \item Wegen $r = n + m$ und $n \le 3m$ gilt $r \le 4m = O(m)$, also $o(r) \subseteq o(m)$; die Komposition erg\"abe einen $2^{o(m)} \cdot |I|^{O(1)}$-Algorithmus f\"ur \problem{3-SAT}. \item Widerspruch zur ETH nach dem Sparsification-Lemma (\problem{3-SAT} $\notin 2^{o(m)} \cdot |I|^{O(1)}$). \item Also kein $2^{o(r)} \cdot |I|^{O(1)}$-Algorithmus. \end{itemize} Ergebnis: kein $2^{o(|U|)}$ und kein $2^{o(r)}$. \hfill$\square$ % ============================= A5 ============================= \newpage \aufgabe{5 \quad APPROXIMATIVE ALGORITHMEN -- MAX-3-SAT}{2 + 5 + 3 + (10) Punkte} \lsg \textbf{a) Anwendung auf $\varphi$.} Dabei setzt $\beta_0$ alle Variablen auf \false\ und $\beta_1$ alle auf \true. Klauselauswertung: \begin{center} \begin{tabular}{l|c|c} Klausel & unter $\beta_0$ & unter $\beta_1$\\\hline $C_1 = (x_1 \vee x_2 \vee x_3)$ & \false\ (alle Lit.\ falsch) & \true\\ $C_2 = (\neg x_1 \vee \neg x_2 \vee \neg x_3)$ & \true\ ($\neg x_1$) & \false\\ $C_3 = (x_1 \vee \neg x_2 \vee x_3)$ & \true\ ($\neg x_2$) & \true\\ $C_4 = (\neg x_1 \vee x_2 \vee \neg x_3)$ & \true\ ($\neg x_1$) & \true\\ \end{tabular} \end{center} Also $v(\beta_0) = 3$ und $v(\beta_1) = 3$. Der Algorithmus gibt (bei Gleichstand $\beta_0$) den Wert $v(A(\varphi)) = \max\{3,3\} = 3$ aus. \emph{Optimum (Brute-Force \"uber alle $8$ Belegungen):} Die Belegung $(x_1,x_2,x_3) = (\false, \false, \true)$ erf\"ullt $C_1$ (durch $x_3$), $C_2$ (durch $\neg x_1$), $C_3$ (durch $\neg x_2$) und $C_4$ (durch $\neg x_1$), also alle vier. Somit $v(\mathrm{OPT}(\varphi)) = 4$. (Verh\"altnis $\tfrac{\mathrm{OPT}}{A} = \tfrac43$.) \medskip \textbf{b) G\"ute $2$.} Zu zeigen: $v(A(\varphi)) \ge \tfrac12\, v(\mathrm{OPT}(\varphi))$. Sei $\varphi$ eine Formel mit $m$ Klauseln. \textbf{Jede Klausel z\"ahlt mindestens einmal.} Unter $\beta_0$ ist jedes \emph{negative} Literal wahr, unter $\beta_1$ jedes \emph{positive}. Da jede Klausel mindestens ein Literal enth\"alt und jedes Literal positiv oder negativ ist, wird jede Klausel von $\beta_0$ oder von $\beta_1$ (oder beiden) erf\"ullt. Somit z\"ahlt jede Klausel in der Summe mindestens einmal: \[ v(\beta_0) + v(\beta_1) \;\ge\; m. \] \textbf{Obere Schranke f\"ur das Optimum.} H\"ochstens alle $m$ Klauseln k\"onnen erf\"ullt sein, also $v(\mathrm{OPT}(\varphi)) \le m$. \textbf{Kombination.} $A$ w\"ahlt die bessere der beiden Belegungen, daher \[ v(A(\varphi)) = \max\{v(\beta_0), v(\beta_1)\} \ge \frac{v(\beta_0) + v(\beta_1)}{2} \ge \frac{m}{2} \ge \frac{v(\mathrm{OPT}(\varphi))}{2}. \] Also hat $A$ die G\"ute $2$. \medskip \textbf{c) Scharfe Instanz.} W\"ahle \[ \varphi^\ast = (x_1 \vee x_2 \vee x_3) \wedge (\neg x_1 \vee \neg x_2 \vee \neg x_3). \] \begin{itemize} \item Unter $\beta_0$ (alles \false) ist die erste Klausel unerf\"ullt (alle Literale positiv, also falsch) und die zweite erf\"ullt: $v(\beta_0) = 1$. \item Unter $\beta_1$ (alles \true) ist die zweite Klausel unerf\"ullt und die erste erf\"ullt: $v(\beta_1) = 1$. \item Also $v(A(\varphi^\ast)) = \max\{1,1\} = 1$. \item Die Belegung $(x_1,x_2,x_3) = (\true, \false, \false)$ erf\"ullt beide Klauseln ($x_1$ bzw.\ $\neg x_2$), also $v(\mathrm{OPT}(\varphi^\ast)) = 2$. \end{itemize} Damit gilt $v(A(\varphi^\ast)) = 1 = \tfrac12 \cdot 2 = \tfrac12\, v(\mathrm{OPT}(\varphi^\ast))$: die Schranke aus b) wird mit Gleichheit angenommen, die G\"ute $2$ ist scharf. \medskip \textbf{d) BONUS -- \problem{MAX-$k$-SAT}.} \emph{Behauptung:} F\"ur jedes $k \ge 2$ garantiert derselbe Algorithmus $A$ ebenfalls die G\"ute $2$, und diese ist scharf. \textbf{G\"ute $2$ (Beweis).} Das Argument aus b) benutzt nur, dass jede Klausel mindestens ein Literal enth\"alt und jedes Literal positiv oder negativ ist -- es ist von der Klausell\"ange unabh\"angig. Auch bei genau $k$ Literalen pro Klausel gilt: eine Klausel wird von $\beta_0$ nur dann nicht erf\"ullt, wenn all ihre $k$ Literale positiv sind; von $\beta_1$ nur dann nicht, wenn alle $k$ negativ sind. Beides zugleich ist bei $k \ge 1$ unm\"oglich. Also wird jede Klausel von $\beta_0$ oder $\beta_1$ erf\"ullt, mithin $v(\beta_0) + v(\beta_1) \ge m$, und wie in b) \[ v(A(\varphi)) = \max\{v(\beta_0), v(\beta_1)\} \ge \frac{m}{2} \ge \frac{v(\mathrm{OPT}(\varphi))}{2}. \] Die garantierte G\"ute ist also $2$, unabh\"angig von $k$. \textbf{Sch\"arfe (f\"ur jedes $k$).} Betrachte \"uber den Variablen $x_1,\dots,x_k$ die beiden Klauseln \[ \varphi_k^\ast = (x_1 \vee \dots \vee x_k) \wedge (\neg x_1 \vee \dots \vee \neg x_k). \] Jede Klausel besteht aus genau $k$ Literalen mit paarweise verschiedenen Variablen. $\beta_0$ erf\"ullt nur die zweite, $\beta_1$ nur die erste, also $v(A(\varphi_k^\ast)) = 1$. Die Belegung $x_1 = \true$, $x_2 = \dots = x_k = \false$ erf\"ullt beide Klauseln, also $v(\mathrm{OPT}(\varphi_k^\ast)) = 2$. Damit $v(A(\varphi_k^\ast)) = \tfrac12\,v(\mathrm{OPT}(\varphi_k^\ast))$, die G\"ute $2$ wird f\"ur jedes $k$ mit Gleichheit angenommen und ist somit scharf. \hfill$\square$ \end{document}