Theoretische Informatik SS 03 Übung 11

Ähnliche Dokumente
Satz 227 3SAT ist N P-vollständig. Info IV 2 N P-Vollständigkeit 375/388 c Ernst W. Mayr

NP-Vollständigkeit einiger Zahlprobleme

Das SAT Problem oder Erfüllbarkeitsproblem. Formale Systeme. Teilklassen. Satz von Cook. SAT Instanz: Eine aussagenlogische Formel F For 0

Aufgaben aus den Übungsgruppen 8(Lösungsvorschläge)

Lösungen zur Vorlesung Berechenbarkeit und Komplexität

Kochrezept für NP-Vollständigkeitsbeweise

Formale Grundlagen der Informatik 1 Kapitel 16 Normalformen und Hornformeln

Logik für Informatiker

Syntax. 1 Jedes A AS AL ist eine (atomare) Formel. 2 Ist F eine Formel, so ist auch F eine Formel. 3 Sind F und G Formeln, so sind auch

Resolutionskalkül. wird t als eine Menge K t von Klauseln geschrieben, welche die einzelnen Maxterme repräsentieren:

Theorie der Informatik Übersicht. Theorie der Informatik SAT Graphenprobleme Routing-Probleme. 21.

Theoretische Grundlagen der Informatik

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung

Logische und funktionale Programmierung

Kapitel 1.3. Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln

Logische und funktionale Programmierung

Einführung in die theoretische Informatik Sommersemester 2017 Übungsblatt Lösungsskizze 13

Übungsblatt 4. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18

Theoretische Grundlagen der Informatik

Ersetzbarkeitstheorem

Theoretische Grundlagen der Informatik

Übungsblatt Nr. 5. Lösungsvorschlag

Theoretische Grundlagen der Informatik. Vorlesung am 27. November INSTITUT FÜR THEORETISCHE INFORMATIK

Übung Theoretische Grundlagen

Knoten-Partitionierung in feste Eigenschaften ist NP-schwer

Logik für Informatiker Logic for Computer Scientists

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik

Erfüllbarkeitstests. Im folgenden: Ein sehr effizienter Erfüllbarkeitstest für eine spezielle Klasse von Formeln in KNF, sogenannte Hornformeln (vgl.

Was bisher geschah: klassische Aussagenlogik

ADS: Algorithmen und Datenstrukturen 2

Formale Grundlagen der Informatik 1 Kapitel 15 Normalformen und Hornformeln

Allgemeingültige Aussagen

Zusammenfassung Syntax: Formale Grundlagen der Informatik 1 Kapitel 15 Normalformen und Hornformeln. Zusammenfassung

Dank. Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Reduktion. Komplexitätsklassen.

Wissenschaftliche Arbeitstechniken und Präsentation. NP-Vollständigkeit

Aussagenlogik. Übersicht: 1 Teil 1: Syntax und Semantik. 2 Teil 2: Modellierung und Beweise. Aussagenlogik H. Kleine Büning 1/25

Musterlösung der Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2012/13

Algorithmische Methoden für schwere Optimierungsprobleme

Logik für Informatiker

Weitere NP-vollständige Probleme

Lösungsvorschläge Blatt Z1

Erfüllbarkeitsprobleme. Begriffe. Varianten von SAT

Vorlesung 3: Logik und Mengenlehre

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung

Theorie der Informatik. Theorie der Informatik. 2.1 Äquivalenzen. 2.2 Vereinfachte Schreibweise. 2.3 Normalformen. 2.

Logik für Informatiker Logic for computer scientists

TU5 Aussagenlogik II

1. Klausur zur Vorlesung Informatik III Wintersemester 2003/2004. Mit Lösung!

Grundlagen Theoretischer Informatik 3 SoSe 2010 in Trier. Henning Fernau Universität Trier

Einführung in die Theoretische Informatik

Mathematische Grundlagen

NP-vollständige Probleme. Michael Budahn - Theoretische Informatik 1

Berechenbarkeitstheorie 24. Vorlesung

Logik für Informatiker

Willkommen zur Vorlesung Komplexitätstheorie

Aufgabe. Gelten die folgenden Äquivalenzen?. 2/??

Maike Buchin 18. Februar 2016 Stef Sijben. Probeklausur. Theoretische Informatik. Bearbeitungszeit: 3 Stunden

Die Klasse NP und die polynomielle Reduktion

Das Rucksackproblem. Definition Sprache Rucksack. Satz

Klausur zur Vorlesung Mathematische Logik

Abbildung 1: Reduktion: CLIQUE zu VERTEX-COVER. links: Clique V = {u, v, x, y}. rechts:der Graph Ḡ mit VC V \ V = {w, z}

Einführung in die Logik (Vorkurs)

Prof. Dr. Elmar Grosse-Klönne Institut für Mathematik

NP-vollst. u. NP-äquiv. Probleme

Formale Grundlagen der Informatik 1 Kapitel 23 NP-Vollständigkeit (Teil 2)

Einführung in die Logik

Theoretische Grundlagen der Informatik

Klausur zur Vorlesung Mathematische Logik

Dank. Theoretische Informatik II. Teil VI. Vorlesung

Formale Systeme, WS 2011/2012 Lösungen zu Übungsblatt 1

Logische und funktionale Programmierung

1 Aussagenlogischer Kalkül

Informatik III - WS07/08

Vorsemesterkurs Informatik

Erfüllbarkeit und Allgemeingültigkeit

Die Klasse NP und die polynomielle Reduktion. Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen

Übungsblatt 5. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18

4.2 Grenzen Effizienter Schaltkreise

Was bisher geschah: klassische Aussagenlogik

Probleme aus NP und die polynomielle Reduktion

Vorsemesterkurs Informatik

Formale Systeme. Das Erfu llbarkeitsproblem. Prof. Dr. Bernhard Beckert, WS 2017/2018

Theoretische Grundlagen der Informatik

Beschreibungskomplexität von Grammatiken Definitionen

Grundlagen der Theoretischen Informatik

Normalformen. Wie bei der Aussagenlogik lassen sich Formeln wieder in dazu äquivalente umwandeln, die eine bestimmte Form haben.

DisMod-Repetitorium Tag 1

NP-Vollständigkeit des Erfüllbarkeitsproblems

Beispiel Aussagenlogik nach Schöning: Logik...

Komplexität von Algorithmen Musterlösungen zu ausgewählten Übungsaufgaben

WS 2008/09. Diskrete Strukturen

23. Vorlesung: Logisches Schließen Markus Kr otzsch Professur f ur Wissensbasierte Systeme Normalformen

Formale Methoden 2. Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2015/2016

Formale Systeme, WS 2008/2009 Lösungen zum Übungsblatt 2

Algorithmen und Datenstrukturen 2. Stefan Florian Palkovits, BSc Juni 2016

Syntax der Aussagenlogik. Vorlesung Logik Sommersemester 2012 Universität Duisburg-Essen. Formel als Syntaxbaum. Teilformel A 3 A 1 A 4

Transkript:

Theoretische Informatik SS 03 Übung 11 Aufgabe 1 Zeigen Sie, dass es eine einfachere Reduktion (als die in der Vorlesung durchgeführte) von SAT auf 3KNF-SAT gibt, wenn man annimmt, dass die Formel des SAT-Problems bereits in konjunktiver Normalform vorliegt. Beweis: Wir stellen jede Disjuktion von Variablen in der gegebenen SAT-Instanz durch eine Gruppe von Disjunktionen dar, die zu dieser äquivalent sind und je drei Literale enthalten. Dazu führen wir zusätzliche Variablen ein. Die gegebene SAT-Instanz liegt in der Form F = D 1 D 2... D n vor. Im folgenden wird jede Klausel D i einzeln betrachtet. Alle dabei entstehenden Klauseln D i weisen drei Literale auf und bilden dann eine 3KNF-SAT-Formel F = D 1 D 2... D m, die genau dann erfüllbar ist, wenn F erfüllbar ist. Sei D i = z 1 z 2... z k eine Disjunktion der gegebenen SAT-Instanz, wobei z j = u j oder u j ist. Es wird eine Fallunterscheidung für verschiedene Werte von k durchgeführt. k = 3: Die gegebene Klausel wird unverändert übernommen. z 1 z 2 z 3 k = 2: Es wird eine neue Variable, u l eingeführt: = Es entstehen zwei neue Klauseln aus der gegebenen Klausel z 1 z 2 : z 1 z 2 u l z 1 z 2 u l k = 1: Es werden zwei neue Variablen, u l1 und u l2, eingeführt: = Es entstehen vier neue Klauseln aus der gegebenen Klausel z 1 : k = 4: Es wird eine neue Variable, u l, eingeführt: = Es entstehen zwei neue Klauseln aus der gegebenen Klausel z 1 z 2 z 3 z 4 : 1

z 1 z 2 u l u l z 3 z 4 k > 4: Es werden k 3 neue Variablen, u l1,..., u l(k 3), eingeführt: = Es entstehen k 2 neue Klauseln aus der gegebenen Klausel z 1 z 2... z k : Aufgabe 2 z 1 z 2 u l1 u l1 z 3 u l2... u l(k 3) z k 1 z k Zeigen Sie durch Reduktion von 3KNF-SAT, dass das Problem MENGENÜBERDECKUNG NP-vollständig ist. MENGENÜBERDECKUNG: gegeben: Ein Mengensystem über einer endlichen Grundmenge M, also T 1,..., T k M, sowie eine Zahl n k. gefragt: Gibt es eine Auswahl aus n Mengen T i1,..., T in, bei der bereits alle Elemente aus M vorkommen? Beweis: Sei F = K 1... K m die Eingabe für 3KNF-SAT (K i ist Disjunktion dreier Literale, echt oder negiert). F enthalte n Variablen und besteht aus m Klauseln. Sei weiterhin M = {1, 2,..., m, m + 1,..., m + n} und das Mengensystem enthalte die folgenden Mengen i {1, 2,..., n}. T i = {j x i kommt in Klausel K j vor} {m + i} i {1, 2,..., n}. T i = {j x i kommt in Klausel K j vor} {m + i} = Gegeben sei eine erfüllende Belegung von F, also gibt es in jeder Klausel ein erfüllendes Literal. Wir wählen nun die Menge T i als eine der n zu wählenden Mengen, falls x i = 1, andernfalls T i, für alle i = 1,..., n (Auswahlkriterium). 2

Dann gilt folgendes: Wir haben n Mengen ausgewählt, wie gefordert. Die Elemente {m+i i = 1,..., n} sind in diesen Mengen enthalten, da immer entweder T i oder T i gewählt wurden ( i = 1,..., n). Die Elemente {1, 2,..., m} sind ebenfalls in den gewählten Mengen enthalten, denn: Ann.: Das Element j, j beliebig aus j = 1, 2,..., m, ist in keiner der gewählten Mengen enthalten. = Kommen in K j die Literale x l, x m und x n vor (die anderen 7 Fälle können analog betrachtet werden), so wurden folglich T l, T m und T n gewählt. (sonst wäre Element j in einer der gewälten Mengen enthalten). = In der vorliegenden erfüllenden Belegung gilt x l = 1, x m = 1 und x n = 1, da die ungestrichenen Mengen, also hier T l, T m und T n, genau dann ausgewählt werden, wenn die zugehörige Variable (hier also x l, x m bzw. x n ) in der vorliegenden, erfüllenden Belegung 1 ist (Auswahlkriterium). = Widerspuch, da dann K j nicht erfüllt ist (also keine erfüllende Belegung vorliegt). = Element j ist also in einer der gewählten Mengen enthalten und folglich, da j beliebig gewählt war, alle Elemente {1, 2,..., n}. Es liegt also eine Teilmenge des Mengensystems aus n Mengen vor und jedes Element von M ist in einer dieser Mengen enthalten. Ist also F erfüllbar, so ist auch die nach obiger Vorschrift gebildete Instanz von MENGENÜBERDECKUNG erfüllbar. = Sei nun umgekehrt {U 1,..., U n } {T 1,..., T n, T 1,..., T n} eine n-elementige Menge des Mengensystems, die alle Elemente aus M erfasst. = i = 1,..., n ist genau eine Menge U j enthalten, die das Element m + i enthält, also folglich entweder T i oder T i, i = 1,..., n. O.B.d.A. gelte U 1 {T 1, T 1 }, U 2 {T 2, T 2 },..., U n {T n, T n }. Weiterhin kommen in U 1,..., U n alle Elemente {1,..., m} vor. Wir setzen in der zu bildenden Belegung für 3KNF-SAT x i genau dann auf 1, wenn U i = T i = {j x i kommt in Klausel K j vor} {m + i} (Belegungskriterium) Damit entspricht U i genau der Menge der Elemente j, wobei x i in Klausel K j vorkommt. Bei dieser Wahl der Belegung werden alle Klauseln K j, j {1,..., m} wahr, denn 3

Ann.: Die Klausel K j (j 1,..., m) wird durch diese Wahl der Belegung nicht erfüllt. = Kommen in K j die Literale x l, x m und x n vor (die anderen 7 Fälle lassen sich analog abhandeln), so wurden also die Belegungen x l = 0, x m = 0 und x n = 0 gewählt (denn sonst wäre K j wahr). = Dann muss aber gelten U l = T l, U m = T m und U n = T n, da sonst x l, x m bzw. x n auf 1 gesetzt worden wären (Belegungskriterium). = Element j für unsere beliebig gewählte Klausel K j kommt in U l, U m und U n also nicht vor, da die gestrichenen Mengen (T i ) nach Definition die Klauseln aufzählen, in denen die jeweiligen negierten Variablen auftreten, K j jedoch nur nicht negierte Literale enthält. In einer anderen der gewählten Mengen kann Element j jedoch ebenfalls nicht enthalten sein, da K j nur aus den genannten drei Literalen besteht (3KNF-SAT). = Die Vereinigung der n gewählten Mengen des Mengensystems enthält Element j nicht. Dies ist ein Widerspruch zur Annahme, dass U 1, U 2,..., U n Lösung von MENGENÜBERDE- CKUNG ist. = Also werden alle Klauseln durch diese Belegungswahl wahr, da Klausel j beliebig gewählt wurde. Es gilt folglich 3KNF-SAT p MENGENÜBERDECKUNG. 4

Aufgabe 3 Zeigen Sie durch Reduktion von RUCKSACK, dass das Problem PARTITION NP-vollständig ist. PARTITION: gegeben: natürliche Zahlen a 1, a 2,..., a k gefragt: Gibt es eine Teilmenge J {1, 2,..., k} mit i J a i = i J a i? Beweis: Gegeben sei eine RUCKSACK-Eingabe durch die Gewichtswerte a 1, a 2,..., a k und die Konstante b. Gefragt ist beim Problem RUCKSACK, ob es eine Teilmenge I {1, 2,..., k} gibt, für die gilt: i I a i = b. Zunächst wird die Zahl M = k i=1 a i berechnet. Aus der RUCKSACK-Eingabe (a 1, a 2,..., a k, b) wird die PARTITION-Eingabe (a 1, a 2,..., a k, M b + 1, b + 1) gebildet. = Angenommen eine RUCKSACK-Instanz hat eine Lösung I {1, 2,..., k}. Dann gilt folglich i I a i = b. I {k + 1} ist dann jedoch eine Lösung für die nach obiger Vorschrift gebildete PARTITION-Instanz, denn: b }{{} i I a i + M b + 1 }{{} k+1-tes Element = M + 1 = b + 1 }{{} k+2-tes Element + M b }{{} i I a i = Sei J Lösung von PARTITION. Dann können M b + 1 und b + 1 nicht in der gleichen Partition liegen, da gilt, jedoch die Gesamtsumme aller Elemente (M b + 1) + (b + 1) = M + 2 M + (M b + 1) + (b + 1) = 2 M + 2 beträgt, so dass die Partitionen einer Lösung die Größe M + 1 aufweisen müssen. Sei o.b.d.a. (k + 1) J (sonst wird die andere Menge der Partition betrachtet), also das Element M b + 1 in der betrachteten Partition. Dann gibt es Elemente a i mit i J a i = b, die M b + 1 zu M + 1 auffüllen. Diese Elemente stellen folglich eine Lösung der ursprünglichen RUCKSACK-Instanz dar. 5

Aufgabe 4 Zeigen Sie durch Reduktion von PARTITION, dass das Problem BIN-PACKING NP-vollständig ist. BIN-PACKING: gegeben: Eine Behältergröße b, die Anzahl der Behälter k, Objekte a 1, a 2,..., a n b. gefragt: Können die Objekte so auf die k Behälter verteilt werden, dass kein Behälter überläuft? (Das heisst: Gefragt ist, ob eine Abbildung f : {1,..., n} {1,..., k} existiert, so dass für alle j = 1,..., k gilt: f(i)=j a i b). Beweis: Aus der gegebenen PARTITION-Eingabe (a 1, a 2,..., a k ) wird eine Instanz des Problem BIN-PACKING erzeugt, indem die Behältergröße b auf b = k i=1 a i 2 und die Anzahl der Behälter k mit gewählt werden und die Objekte k = 2 (a 1, a 2,..., a k ) von der gegebenen PARTITION-Instanz übernommen werden. Es ist offensichtlich, dass beide Behälter komplett gefüllt werden müssen, um alle Objekte unterzubringen. Genau dann wird aber die Menge der Objekte a i in zwei Mengen gleichen Gewichts eingeteilt, so dass dies eine Lösung für PARTITION ist. 6