\documentclass[12pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman,provide=*]{babel}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage[a4paper,margin=2.5cm]{geometry}

\title{Hausaufgabe 12}
\author{Marek Lenczewski \\ Matrikelnummer: 1025252}
\date{6.\ Juli 2026}

\begin{document}

\maketitle

\section*{Hausaufgabe 12.1}

\subsection*{Teil (a): Der Algorithmus hat Güte 2}

Zu zeigen ist, dass der Algorithmus die Güte 2 hat, also die Lösung vom
Algorithmus mindestens halb so gut ist wie die optimale Lösung. Also
$\nu(A(\varphi)) \ge \frac{1}{2}\nu(OPT(\varphi))$ für alle Eingaben $\varphi$. \\

Sei $\varphi$ eine beliebige 3-SAT-Formel mit $m$ Klauseln
$C_1, C_2, \dots, C_m$, wobei jede Klausel genau 3 Literale enthält. \\

Betrachte die beiden Belegungen $\beta_0$ (alle Variablen false) und $\beta_1$
(alle Variablen true):
\begin{itemize}
  \item Unter $\beta_0$ ist jedes negative Literal wahr.
  \item Unter $\beta_1$ ist jedes positive Literal wahr.
\end{itemize}
Jedes Literal ist positiv oder negativ. Jede Klausel $C_i$ enthält mindestens
ein Literal. Also wird jede Klausel unter $\beta_0$ oder unter $\beta_1$ (oder
unter beiden) erfüllt. \\

Sei $\nu_0 = \nu(\beta_0)$ die Anzahl der von $\beta_0$ erfüllten Klauseln und
$\nu_1 = \nu(\beta_1)$ die Anzahl der von $\beta_1$ erfüllten Klauseln. Da jede
Klausel zu $\nu_0$ oder $\nu_1$ zählt, gilt
\[
  \nu_0 + \nu_1 \ge m.
\]

Der Algorithmus wählt die Belegung mit den meisten erfüllten Klauseln, also
\[
  \nu(A(\varphi)) = \max\{\nu_0, \nu_1\} \ge \frac{\nu_0 + \nu_1}{2}
  \ge \frac{m}{2}.
\]

Da die optimale Lösung höchstens alle $m$ Klauseln erfüllen kann, gilt
$\nu(OPT(\varphi)) \le m$. Daraus folgt
\[
  \nu(A(\varphi)) \ge \frac{m}{2} \ge \frac{\nu(OPT(\varphi))}{2}.
\]

Somit hat der Algorithmus eine Güte von 2. \hfill $\square$

\subsection*{Teil (b): Formel mit genau der Hälfte}

Der Algorithmus erfüllt genau die Hälfte der maximal erfüllbaren Klauseln, wenn
$\beta_0$ und $\beta_1$ jeweils nur eine Klausel erfüllen, das Optimum aber
beide Klauseln erfüllt. \\

\textbf{Formel:}
$\varphi = (x_1 \vee x_2 \vee x_3) \wedge (\neg x_1 \vee \neg x_2 \vee \neg x_3)$

\textbf{Unter $\beta_0$ (alle false):}
\begin{itemize}
  \item $C_1 = (x_1 \vee x_2 \vee x_3) = (\text{false} \vee \text{false} \vee \text{false}) = \text{false}$
  \item $C_2 = (\neg x_1 \vee \neg x_2 \vee \neg x_3) = (\text{true} \vee \text{true} \vee \text{true}) = \text{true}$
  \item $\nu(\beta_0) = 1$
\end{itemize}

\textbf{Unter $\beta_1$ (alle true):}
\begin{itemize}
  \item $C_1 = (x_1 \vee x_2 \vee x_3) = (\text{true} \vee \text{true} \vee \text{true}) = \text{true}$
  \item $C_2 = (\neg x_1 \vee \neg x_2 \vee \neg x_3) = (\text{false} \vee \text{false} \vee \text{false}) = \text{false}$
  \item $\nu(\beta_1) = 1$
\end{itemize}

Der Algorithmus wählt
$\nu(A(\varphi)) = \max\{\nu(\beta_0), \nu(\beta_1)\} = \max\{1, 1\} = 1$. \\

Eine optimale Lösung wäre zum Beispiel $x_1 = \text{true}, x_2 = \text{false},
x_3 = \text{false}$:
\begin{itemize}
  \item $C_1 = (\text{true} \vee \text{false} \vee \text{false}) = \text{true}$
  \item $C_2 = (\text{false} \vee \text{true} \vee \text{true}) = \text{true}$
\end{itemize}

Daraus ergibt sich $\nu(OPT(\varphi)) = 2$, also
$\nu(A(\varphi)) = 1 = \frac{\nu(OPT(\varphi))}{2}$. Der Algorithmus erfüllt
genau die Hälfte der maximal erfüllbaren Klauseln. \hfill $\square$

\end{document}
