Theorie für MI Aussagenlogik: Syntax D ie K lassen P und N P N P -V ollständige P roblem e Aussagenlogische Formeln über einer Menge X von Variablen sind induktiv definiert: I jede Variable x ∈ X ist eine Formel I ist F eine Formel, dann auch ¬F I sind F und G Formeln, dann auch (F ∧ G) I sind F und G Formeln, dann auch (F ∨ G) A ussagenlogik N P -V ollständigkeit von SA T Spezialfälle von SA T W eitere N P -vollständige P roblem e Aussagenlogik ist die einfachste Form der Logik, die sich nur mit der logischen Verknüpfung von Elementaraussagen, die wahr oder falsch sein können, befasst. Wir betrachten hier nur die Verknüpfungen Negation ¬, Konjunktion ∧ und Diskunktion ∨. Man kann aber zeigen, dass sich alle möglichen logischen Verknüpfungen aus diesen zusammensetzen lassen. So ist z.B. die Implikation F → G definierbar als ¬F ∨ G . Aussagenlogik dient auch der Beschreibung von digitalen Schaltkreisen. Aussagenlogik: Semantik Theorie für MI D ie K lassen P und N P Für eine Bewertung α : X → {0, 1} der Variablen X wird induktiv der Wert α(F ) einer Formel F definiert: I α(x) ist durch α gegeben I α(¬F ) = 1 − α(F ) I α(F ∧ G ) = min(α(F ), α(G )) I α(F ∨ G ) = max(α(F ), α(G )) D efinition: N P -V ollständige P roblem e A ussagenlogik N P -V ollständigkeit von SA T Spezialfälle von SA T W eitere N P -vollständige P roblem e α erfüllt F , wenn α(F ) = 1 ist. M an schreibt dafür auch α |= F F ist Tautologie, wenn α |= F für alle α gilt. F ist erfüllbar, wenn es eine Bewertung α gibt mit α |= F . Für eine Bewerung der Variablen mit Wahrheitswerten, wobei 1 als “wahr” und 0 als “falsch” interpretiert wird, lässt sich der Wahrheitswert einer zusammengesetzten Formel gemäß der angegebenen Regeln ausrechnen, die dem intuitiven Verständnis der Bedeutung der Verknüpfungen entsprechen. Eine Bewertung erfüllt eine Formel, wenn diese mir den gegebene Werten für die Variablen wahr wird. Ist eine Formel unabhängig von der Bewertung der Variablen immer wahr, wie z.B. F ∨ ¬F , dann heißt sie Tautologie. Eine Formel F ist genau dann erfüllbar, wenn ihre Negation ¬F keine Tautologie ist. Theorie für MI Das Erfüllbarkeitsproblem D ie K lassen P und N P N P -V ollständige P roblem e Problem SAT Instanz: Frage: A ussagenlogik N P -V ollständigkeit von SA T Spezialfälle von SA T aussagenlogische Formel F Ist F erfüllbar ? W eitere N P -vollständige P roblem e T heorem SAT ist N P -vollständig. Stephen A . C ook hat den B egriff der N P-V ollständigkeit entdeckt, und SAT als erstes N P-vollständiges Problem nachgew iesen. c niversity of Toronto P hoto U Das Problem SAT war das erste, das als NP-Vollständig erkannt wurde. Ausgehend davon wurden in der Folge zahlreiche Probleme durch Reduktion als NP-vollständig nachgewiesen. Heute sind Tausende von NP-vollständigen Problemen aus allen Bereichen der Informatik bekannt. Für seine Arbeiten zur NP-Vollständigkeit erhielt Stephen Cook 1982 den Turing-Award. NP-Vollständigkeit von SAT SAT ist in NP: F erfüllbar gdw ∃α : α |= F α |= F kann in Zeit O(|F |) geprüft werden. SAT ist NP-schwer: Sei A in NP, wir werden zeigen A ≤P SAT. Theorie für MI D ie K lassen P und N P N P -V ollständige P roblem e A ussagenlogik N P -V ollständigkeit von SA T Spezialfälle von SA T W eitere N P -vollständige P roblem e Sei M eine DTM, die RA entscheidet, und p() und q() Polynome, so dass für w mit |w | = n: - jede Berechnung von M hält nach p(n) Schritten. es gibt ein Zertifikat z mit |z| ≤ q(n) gdw. x ∈ A Konstruiere Formel FM,w so dass FM,w erfüllbar ist gdw. es ein Zertifikat z gibt, für das die Berechnung von M bei Eingabe w und z im Endzustand hält. FM,w wird in Zeit O(p(|w |)2 ) aus w berechnet. Um zu zeigen, dass SAT NP-vollständig ist, muss ein beliebiges Problem A in NP auf SAT polynomiell reduziert werden. Die einzige Information, die über A zur Verfügung steht, ist die Charakterisierung mittels Existenz von Zertifikaten, und dass RA von einer DTM in polynomieller Zeit erkannt wird. Daher muss die Reduktion ausgehend von dieser Maschine konstruiert werden. Konstruktion der Formel FM,w Theorie für MI D ie K lassen P und N P Sei w = a1 ...an und ` := q(n), t := p(n). Berechnung von M hat t + 1 Konfigurationen K0 , K1 , ... , Kt . N P -V ollständige P roblem e A ussagenlogik N P -V ollständigkeit von SA T Spezialfälle von SA T W eitere N P -vollständige P roblem e Jede Konfiguration Ki hat t + 1 Symbole ai,0 , ai,1 , ... , ai,t . Variablen sind z1 , ..., z` für das Zertifikat, sowie für i, j ≤ t, q ∈ Q und b ∈ Γ I xi,j,b mit der Bedeutung ai,j = b I xi,j,q mit der Bedeutung ai,j = q Für jede Eingabe w mit |w | = n hält die Berechnung von M nach höchstens t = p(n) Schritten, also hat jede Berechnung höchstens t + 1 Konfigurationen. Falls die Berechnung nach weniger als t Schritten hält wird die letzte Konfiguration einfach wiederholt, dass genau sie genau t + 1 Konfigurationen hat Jede Konfiguration kann auch höchstens t + 1 Symbole (Bandsymbole oder Zustand) enthalten. In der Beschreibung wird jede Konfiguration mit Leerzeichen aufgefüllt, so dass sie genau die Länge t + 1 hat. Die Variablen, aus denen die Formel aufgebaut wird, dienen der Beschreibung der Konfigurationen in der Berechnung: für jede Konfiguration i und Stelle j in der Konfiguration gibt es |Γ | + 1 viele Variablen, von denen genau eine wahr ist, je nachdem was an dieser Stelle der Konfiguration steht. Theorie für MI Konstruktion der Formel FM,w Die Formel FM,w ist S ∧ t ^ Ni ∧ D ie K lassen P und N P E , wobei N P -V ollständige P roblem e i=1 I S drückt aus, dass K0 richtige Startkonfiguration ist, I E drückt aus, dass Kt im Endzustand ist I Ni drückt aus, dass Ki−1 `M Ki , oder Ki−1 ist H altekonfiguration und Ki−1 = Ki . S := x0,0,q0 ^ ∧ ∧ x0,1,a1 ∧ ...∧ x0,n,an A ussagenlogik N P -V ollständigkeit von SA T Spezialfälle von SA T W eitere N P -vollständige P roblem e ∧ x0,n+1,# (x0,n+i+1,0 ∧ ¬zi ) ∨ (x0,n+i+1,1 ∧ zi ) 1≤i≤` ∧x0,n+`+2, ∧ E ist _ Eq wobei ...∧ x0,t, Eq = xt,0,q ∨ ...∨ xt,t,q q∈F Die Formel S sagt dass K0 die Anfangskonfiguration q0 w #z ist. Die Formel E drückt aus, dass in der letzten Konfiguration Kt ein Endzustand vorkommt. Die Formeln Ni , die die Übergänge von M von einer Konfiguration in die nächste beschreiben, werden auf den nächsten zwei Folien beschrieben. Theorie für MI Konstruktion der Formel Ni D ie K lassen P und N P Die Formel Ni ist ^ N P -V ollständige P roblem e (Ai,j ∨ Bi,j ), wobei j≤t I Ai,j drückt aus, wie ai,j von ai−1,j−1 ai−1,j ai−1,j+1 abhängt, wobei eines davon der Z ustand in Ki−1 ist. I Bi,j sagt: der Z ustand in Ki−1 ist so weit von ai−1,j entfernt, dass ai,j = ai−1,j . Bi,j ist: _ xi−1,j−1,a a∈Γ ∧ _ xi−1,j+1,a ∧ a∈Γ _ A ussagenlogik N P -V ollständigkeit von SA T Spezialfälle von SA T W eitere N P -vollständige P roblem e (xi−1,j,a ∧ xi,j,a ) a∈Γ Theorie für MI Konstruktion der Formel Ni D ie K lassen P und N P Ai,j ist eine Disjunktion von Teilformeln, die jeweils ai,j für eine Kopfposition j − 1, j oder j + 1 in Ki−1 und einen Übergang von M beschreiben. Ist z.B. δ(q, a) = (p, b, R), dann enthält Ai,j die Teilformeln _ xi−1,j−1,q ∧ xi−1,j,a ∧ xi,j−1,b ∧ xi,j,p ∧ (xi−1,j+1,a ∧ xi,j+1,a ) _ a∈Γ (xi−1,j−1,a ∧ xi,j−1,a ) ∧ xi−1,j,q ∧ xi−1,j+1,a ∧ xi,j,b ∧ xi,j+1,p a∈Γ Ist δ(q, a) = (p 0 , b, L), dann enthält A(i, j) auch die Teilformel _ (xi−1,j,a ∧ xi,j+1,a ) ∧ xi−1,j+1,q ∧ xi−1,j+2,a ∧ xi,j,p 0 ∧ xi,j+2,b a∈Γ N P -V ollständige P roblem e A ussagenlogik N P -V ollständigkeit von SA T Spezialfälle von SA T W eitere N P -vollständige P roblem e Konjunktive Normalform Theorie für MI D ie K lassen P und N P N P -V ollständige P roblem e I Ein Literala ist eine V ariable x oder negierte V ariable ¬x. A bkürzung: x̄ statt ¬x. I Eine K lauselist eine D isjunktion C = a1 ∨ . . . ∨ ak von Literalen. I Eine Form elin K N F ist eine K onjunktion F = C1 ∧ . . . Cm von K lauseln. I Eine Form elin K N F ist in k-K N F, w enn jede K lausel höchstens k Literale enthät. A ussagenlogik N P -V ollständigkeit von SA T Spezialfälle von SA T W eitere N P -vollständige P roblem e K N F-SAT ist das P roblem SAT für Form eln in K N F k-SAT ist das P roblem SAT für Form eln in k-K N F Die Erfülltheit von Formeln in KNF ist besonders einfach zu definieren: α erfüllt F , genau dann wenn α jede Klausel in F erfüllt, und eine Klausel ist genau dann erfüllt, wenn α mindestens eines der Literale darin zu 1 macht. Diese einfache Struktur erlaubt es, KNF-SAT oder 3-SAT auf viele Probleme zu reduzieren. NP-Vollständigkeit Theorie für MI D ie K lassen P und N P Für eine Formel F konstruiere Formel E (F ) mit: I E (F ) ist in 3-K N F I I |E (F )| ≤ O(|F |) E (F ) ist erfüllbar gdw . F erfüllbar ist. N P -V ollständige P roblem e A ussagenlogik N P -V ollständigkeit von SA T Spezialfälle von SA T W eitere N P -vollständige P roblem e E ist polynomielle R eduktion von SAT auf 3-SAT : T heorem SAT ≤P 3-SAT A lso sind K N F-SAT und k-SAT für k ≥ 3 N P -vollständig. D agegen ist 2-SAT in P. Da jede Formel in 3-KNF auch in k-KNF für jedes k ≥ 3, und insbesondere in KNF ist, ist E auch eine Reduktion von SAT auf k-SAT und auf KNF-SAT. Daher sind auch diese allgemeineren Spezialfälle von SAT NP-vollständig. Konstruktion der Formel E (F ) Theorie für MI D ie K lassen P und N P N P -V ollständige P roblem e Für jede Teilformel G von F neue Variable yG , und definierende Formeln DG : I G = a Literal: A ussagenlogik N P -V ollständigkeit von SA T Spezialfälle von SA T W eitere N P -vollständige P roblem e Da = (ya ↔ a) = (ya → a) ∧ (a → ya ) = (ȳa ∨ a) ∧ (ā ∨ ya ) I G = ¬H N egation: D¬H = (y¬H ↔ ȳH ) = (y¬H → ȳH ) ∧ (ȳH → y¬H ) = (ȳ¬H ∨ ȳH ) ∧ (yH ∨ y¬H ) Die definierenden Formeln DG stellen sicher, dass in jeder erfüllenden Bewertung die Variable yG denselben Wert bekommen muss, den die Formel G unter dieser Bewertung hat. Die Äquivalenzen verwenden die Tatsache, dass eine Implikation F → G äquivalent ist zu ¬F ∨ G . Theorie für MI Konstruktion der Formel E (F ) D ie K lassen P und N P N P -V ollständige P roblem e I DG = (yG ↔ (yH1 = (ȳG I A ussagenlogik N P -V ollständigkeit von SA T Spezialfälle von SA T G = H1 ∨ H2 Disjunktion: ∨ yH2 )) ∨ yH1 ∨ yH2 ) ∧ (ȳH1 ∨ yG ) ∧ (ȳH2 ∨ yG ) W eitere N P -vollständige P roblem e G = H1 ∧ H2 K onjunktion: DG = (yG ↔ (yH1 = (ȳG E (F ) = yF ∧ ∧ yH2 )) ∨ y H1 ) ∧ ^ (ȳG ∨ y H2 ) ∧ (ȳH1 ∨ ȳH2 ∨ yG ) DG G Teilform el von F Hier wird für die Äquivalenzen neben der oben genannten Tatsache noch die Regel von DeMorgan ¬(F ∧ G ) = (¬F ∨ ¬G ) und das Distributivgesetz verwendet. E (F ) ist offensichtlich in 3-KNF und von der Größenordnung O(|F |). Bleibt zu zeigen, dass E (F ) genau dann erfüllbar ist, wenn F erfüllbar ist. Sei also α |= F , dann setzen wir α zu einer Belegung α∗ der Variablen von E (F ) fort mittels α∗ (yG ) := α(G ). Dann ist leicht zu sehen, dass die Formeln DG alle erfüllt sind, und da α(F ) = 1 ist, ist auch α∗ (yF ) = 1, somit ist jede Klausel in E (F ) erfüllt. Ist andererseits β |= E (F ), dann definiere β 0 als die Einschränkung von β auf die Variablen von F . Durch Induktion über den Formelaufbau zeigt man leicht, dass wegen der Erfülltheit der Formeln DG für jede Teilformal G von F gilt: β(yG ) = β 0 (G ). Also muss auch β 0 (F ) = 1 sein, somit β 0 |= F .