Mercurial > 13ss.theoinf
comparison notes/tex/computation.tex @ 53:a2d28c18251a
ue12 notes
author | Markus Kaiser <markus.kaiser@in.tum.de> |
---|---|
date | Mon, 15 Jul 2013 23:51:55 +0200 |
parents | adcb0ab03ade |
children | b815b94ae158 |
comparison
equal
deleted
inserted
replaced
52:d5aa58bee83b | 53:a2d28c18251a |
---|---|
726 \uncover<2>{\node at (10cm, 0) {$L = \left\{ (12^*3)^+ \right\}$};} | 726 \uncover<2>{\node at (10cm, 0) {$L = \left\{ (12^*3)^+ \right\}$};} |
727 \end{tikzpicture} | 727 \end{tikzpicture} |
728 \end{center} | 728 \end{center} |
729 \end{frame} | 729 \end{frame} |
730 } | 730 } |
731 | |
732 \defineUnit{time}{% | |
733 \begin{frame}[t] | |
734 \frametitle{$TIME$} | |
735 \setbeamercovered{dynamic} | |
736 | |
737 \begin{definition}[$TIME$] | |
738 Wir bezeichnen die minimale Anzahl der Schritte, bis eine \structure{DTM} $M$ mit Eingabe $w$ hält als $\alert{time_M(w)} \in \N \cup \left\{ \infty \right\}$.\\ | |
739 \vspace{1em} | |
740 Sei $f : \N \to \N$ total. Dann ist | |
741 \begin{align*} | |
742 \alert{TIME(f(n))} := \{ A \subseteq \Sigma^* \mid \exists &\structure{DTM}\ M. A = L(M) \wedge \\ | |
743 &\forall w \in \Sigma^*. \structure{time_M(w) \leq f(|w|)} \} | |
744 \end{align*} | |
745 die Klasse der \structure{in Zeit $f(n)$} von einer \structure{DTM} entscheidbaren Sprachen. | |
746 \end{definition} | |
747 | |
748 \vfill | |
749 | |
750 \begin{itemize} | |
751 \item $TIME(\Oh(n))$ enthält alle "\structure{linearen Probleme}". | |
752 \item Also alle Probleme, für die ein Linearzeitalgorithmus existiert. | |
753 \end{itemize} | |
754 \end{frame} | |
755 } | |
756 | |
757 \defineUnit{ntime}{% | |
758 \begin{frame}[t] | |
759 \frametitle{$NTIME$} | |
760 \setbeamercovered{dynamic} | |
761 | |
762 \begin{definition}[$NTIME$] | |
763 Wir bezeichnen die minimale Anzahl der Schritte, bis eine \structure{NTM} $M$ mit Eingabe $w$ hält als $\alert{ntime_M(w)} \in \N$. | |
764 \[ \alert{ntime_M(w)} := \begin{cases} \text{minimale Schrittanzahl} & \text{falls } w \in L(M) \\ 0 & \text{falls } w \not \in L(M)\end{cases} \] | |
765 Dann ist | |
766 \begin{align*} | |
767 \alert{NTIME(f(n))} := \{ A \subseteq \Sigma^* \mid \exists &\structure{NTM}\ M. A = L(M) \wedge \\ | |
768 &\forall w \in \Sigma^*. \structure{ntime_M(w) \leq f(|w|)} \} | |
769 \end{align*} | |
770 die Klasse der \structure{in Zeit $f(n)$} von einer \structure{NTM} entscheidbaren Sprachen. | |
771 \end{definition} | |
772 \end{frame} | |
773 } | |
774 | |
775 \defineUnit{pundnp}{% | |
776 \begin{frame} | |
777 \frametitle{P und NP} | |
778 \setbeamercovered{dynamic} | |
779 | |
780 \begin{definition} | |
781 \alert{P} ist die Menge aller von einer \structure{DTM} in polynomieller Zeit entscheidbaren Sprachen. | |
782 \[\alert{P}:= \bigcup_{p\text{ Polynom}} TIME(p(n)) = \bigcup_{k \in \N} TIME(\alert{\Oh(n^k)}) \] | |
783 \end{definition} | |
784 | |
785 \begin{definition} | |
786 \alert{NP} ist die Menge aller von einer \structure{NTM} in polynomieller Zeit entscheidbaren Sprachen. | |
787 \[\alert{NP}:= \bigcup_{p\text{ Polynom}} NTIME(p(n)) = \bigcup_{k \in \N} NTIME(\alert{\Oh(n^k)}) \] | |
788 \end{definition} | |
789 \end{frame} | |
790 } | |
791 | |
792 \defineUnit{verifikator}{% | |
793 \begin{frame} | |
794 \frametitle{Verifikator} | |
795 \setbeamercovered{dynamic} | |
796 | |
797 \begin{definition}[Verifikator] | |
798 Sei $M$ eine \structure{DTM} mit $L(M) \subseteq \left\{ w\# c \mid w \in \Sigma^*, c \in \Delta^* \right\}$. | |
799 \begin{itemize} | |
800 \item Falls $w\#c \in L(M)$, dann heißt $c$ \alert{Zertifikat} für $w$. | |
801 \item $M$ ist ein \alert{polynomiell beschränkter Verifikator} für | |
802 \[\left\{ \structure{w \in \Sigma^*} \mid \exists c \in \Delta^* . w\#c \in L(M) \right\}\] | |
803 falls $time_M(w\#c) \leq p(|w|)$ für ein Polynom $p$. | |
804 \end{itemize} | |
805 \end{definition} | |
806 | |
807 \begin{itemize} | |
808 \item \structure{NTM} rät Lösung (Zertifikat), \structure{DTM} probiert sie aus. | |
809 \item Verifizieren (wahrscheinlich) einfacher als Lösung finden. | |
810 \end{itemize} | |
811 | |
812 \vfill | |
813 | |
814 \begin{theorem} | |
815 \alert{$A \in NP$} gdw es einen pol. beschränkten Verifikator für A gibt. | |
816 \end{theorem} | |
817 \end{frame} | |
818 } | |
819 | |
820 \defineUnit{preduktion}{% | |
821 \begin{frame} | |
822 \frametitle{Polynomielle Reduzierbarkeit} | |
823 \setbeamercovered{dynamic} | |
824 | |
825 \begin{definition}[Polynomielle Reduzierbarkeit] | |
826 Eine Menge $A \subseteq \Sigma^*$ ist \alert{polynomiell reduzierbar} auf eine Menge $B \subseteq \Gamma^*$ gdw es eine totale und \structure{von einer DTM in polynomieller Zeit} berechenbare Funktion $f:\Sigma^* \to \Gamma^*$ gibt mit | |
827 \[\forall w \in \Sigma^*. w \in A \Longleftrightarrow f(w) \in B\] | |
828 Wir schreiben dann \alert{$A \leq_P B$}. | |
829 \end{definition} | |
830 | |
831 \vfill | |
832 | |
833 \begin{itemize} | |
834 \item Die Relation $\leq_P$ ist \structure{transitiv}. | |
835 \item P und NP sind \structure{nach unten abgeschlossen}: | |
836 \[A \leq_P B \in P/NP \Longrightarrow A \in P/NP\] | |
837 \end{itemize} | |
838 \end{frame} | |
839 } | |
840 | |
841 \defineUnit{npvollstaendigkeit}{% | |
842 \begin{frame} | |
843 \frametitle{NP-Vollständigkeit} | |
844 \setbeamercovered{dynamic} | |
845 | |
846 \begin{definition}[NP-Schwere] | |
847 Eine Sprache $L$ heißt \alert{NP-schwer} (NP-hart) wenn sich \structure{alle Sprachen} in NP auf $L$ reduzieren lassen. | |
848 \[\forall A \in NP. A \leq_P L\] | |
849 \end{definition} | |
850 | |
851 \begin{definition}[NP-Vollständigkeit] | |
852 Eine Sprache $L$ heißt \alert{NP-vollständig} wenn $L$ \structure{NP-schwer} ist und \structure{$L \in NP$}. | |
853 \end{definition} | |
854 | |
855 \vfill | |
856 | |
857 \structure{Fragen}: | |
858 \begin{itemize} | |
859 \item Gibt es überhaupt NP-vollständige Sprachen? | |
860 \item Gibt es eine NP-vollständige Sprache in $P$? | |
861 \end{itemize} | |
862 \end{frame} | |
863 } | |
864 | |
865 \defineUnit{sat}{% | |
866 \begin{frame} | |
867 \frametitle{SAT} | |
868 \setbeamercovered{dynamic} | |
869 | |
870 \begin{definition}[Aussagenlogik] | |
871 Syntax der \alert{Aussagenlogik}.\\ | |
872 \begin{description} | |
873 \item[Formeln] $F \rightarrow \neg F \mid (F \wedge F) \mid (F \vee F) \mid X$ | |
874 \item[Variablen] $X \rightarrow x \mid y \mid z \mid \ldots$ | |
875 \end{description} | |
876 \end{definition} | |
877 | |
878 \vfill | |
879 | |
880 \begin{definition}[SAT] | |
881 Gegeben eine \structure{aussagenlogische Formel} $F$.\\ | |
882 Ist $F$ \alert{erfüllbar}, also gibt es eine Belegung der Variablen in $F$, sodass $F$ gilt? | |
883 \end{definition} | |
884 | |
885 \begin{theorem}[Cook 1971] | |
886 $\mathbf{SAT}$ ist \alert{NP-vollständig}. | |
887 \end{theorem} | |
888 \end{frame} | |
889 } | |
890 | |
891 \defineUnit{3col}{% | |
892 \begin{frame} | |
893 \frametitle{3COL} | |
894 \setbeamercovered{dynamic} | |
895 | |
896 \begin{definition}[3COL] | |
897 Gegeben ein \structure{Graph} $G = (V, E)$.\\ | |
898 Gibt es eine \alert{Färbung der Knoten} $V$ mit $3$ Farben, so dass keine zwei benachbarten Knoten die gleiche Farbe haben? | |
899 \end{definition} | |
900 | |
901 \vfill | |
902 | |
903 \begin{center} | |
904 \begin{tikzpicture} | |
905 \tikzstyle{red} = [fill=tumred!50] | |
906 \tikzstyle{green} = [fill=tumgreen!50] | |
907 \tikzstyle{blue} = [fill=tumblue!50] | |
908 \tikzstyle{vertex} = [draw, circle, thin, blue] | |
909 \tikzstyle{edge} = [draw, thick] | |
910 | |
911 \foreach \name/\angle/\dist/\col in { | |
912 ia/18/0.8cm/blue, ib/90/0.8cm/red, ic/162/0.8cm/red, id/234/0.8cm/green, ie/306/0.8cm/green, | |
913 oa/18/1.6cm/red, ob/90/1.6cm/blue, oc/162/1.6cm/green, od/234/1.6cm/red, oe/306/1.6cm/blue} { | |
914 \node<1>[vertex] (\name) at (\angle:\dist) {}; | |
915 \node<2>[vertex, \col] (\name) at (\angle:\dist) {}; | |
916 } | |
917 | |
918 \foreach \a/\b in { | |
919 ia/oa, ib/ob, ic/oc, id/od, ie/oe, | |
920 oa/ob, ob/oc, oc/od, od/oe, oe/oa, | |
921 ia/ic, ic/ie, ie/ib, ib/id, id/ia} { | |
922 \draw[edge] (\a) -- (\b); | |
923 } | |
924 \end{tikzpicture} | |
925 \end{center} | |
926 | |
927 \begin{theorem} | |
928 Es ist \alert{$\mathbf{3COL} \leq_P \mathbf{SAT}$} und $\alert{\mathbf{SAT}} \leq_P \mathbf{3SAT} \alert{\leq_P \mathbf{3COL}}$. | |
929 \end{theorem} | |
930 \end{frame} | |
931 } |