@@ -250,6 +250,27 @@ In pseudo code, we would like to have:

Proof, that there exists no such program: Run \texttt{test(test)}. The output of this program is not well defined.

\subsubsection{Komplexitätsklassen $\mathcal{P}$ und $\mathcal{NP}$}

\begin{fdef}

\begin{itemize}

\item$\mathcal{P}$ is the complexity class containing decision problems which can be solved by a Turing machine in polynomial time.

\item$\mathcal{NP}$ is the class of decision problems solvable by a non-deterministic polynomial time Turing machine such that the machine answers "yes", if at least one computation path accepts, and answers "no", if all computation paths reject.\\

Informally, there is a Turing machine which can check the correctness of an answer in polynomial time.

\end{itemize}

\end{fdef}

\begin{itemize}

\item An important notion is the set of $\mathcal{NP}$-complete decision problems, which is a subset of $\mathcal{NP}$ and might be informally described as the "hardest" problems in $\mathcal{NP}$.

\item If there is a polynomial-time algorithm for even one of them, then there is a polynomial-time algorithm for all the problems in NP.

\item Unsolved question: Is $\mathcal{P=NP}$?

Are there problems which cannot be solved in polynomial time?