Friedhelm Meyer auf der Heide Annika Bölte, Matthias Fischer, Martin Meeser, Norbert Sondag, Tim Süß, Klaus Volbert Paderborn, den 14. Juli Abgabe erfolgt nicht Hausaufgaben zur Vorlesung Algorithmen und Komplexität SS 2003/04 Blatt 8 Alle Aufgaben auf diesem Zettel sind in Klausuren zu entsprechenden Vorlesungen von Prof. Blömer gestellt worden (nur Teil “Algorithmen und Komplexität”). Sie sind im Schwierigkeitsgrad und Umfang vergleichbar zu den Aufgaben unserer Klausur. Teilweise haben Sie die Aufgaben schon auf Ihren Übungszetteln während der Vorlesung erhalten. AUFGABE 29 (5 Punkte): Sei G = (V, E) ein ungerichteter Graph. G heisst zweifärbbar, wenn es eine Färbung der Knoten von G mit den Farben rot und blau gibt, so dass je zwei Knoten u, v ∈ V mit {u, v} ∈ E unterschiedliche Farben haben. Betrachten Sie nun die folgende Sprache. Zweifärbbar := hGi G = (V, E) ist ein ungerichteter Graph, der zweifärbbar ist. . Zeigen Sie, dass Zweifärbbar in P liegt. AUFGABE 30 (5 Punkte): Sei L ∈ NP. Ist L dann entscheidbar? Begründen Sie Ihre Antwort! AUFGABE 31 (5 Punkte): Beim Problem Lange-Wege ist ein ungerichteter Graph G = (V, E) gegeben, wobei V = {1, . . . , n}. Ausserdem ist zu jeder Kante e ∈ E eine Länge le ∈ N gegeben. Schliesslich gibt es noch eine Schranke B ∈ N. Zu entscheiden ist, ob es in G einen Pfad vom Knoten 1 zum Knoten n gibt, der jeden Knoten aus V höchstens einmal besucht und der Gesamtlänge mindestens B hat. Dabei ist die Gesamtlänge eines Pfades in G die Summe der Längen der Kanten, die sich auf dem Pfad befinden. Zeigen Sie, dass die Sprache Lange-Wege NP-vollständig ist. Zeigen Sie hierzu, (i) Lange-Wege liegt in NP. (ii) Eine der folgenden drei NP-vollständigen Sprachen lässt sich polynomiell auf LangeWege reduzieren. φ ist eine erfüllbare Formel in 3-konjunktiver – 3SAT := hφi Normalform k ∈ N und G ist ein ungerichteter Graph – Clique := hG, ki mit einer k-Clique G ist ein ungerichteter Graph mit einem Pfad, der – H-Pfad := hGi jeden Knoten von G genau einmal enthält. AUFGABE 32 (5 Punkte): Wir betrachten das Optimierungsproblem Knotenüberdeckung. Hierbei soll in einem ungerichteten Graphen G = (V, E) eine möglichst kleine Teilmenge U ⊆ V der Knoten gefunden werden, so dass jede Kante e ∈ E mindestens einen Knoten in U besitzt. Betrachten Sie den folgenden Algorithmus zur Berechnung einer Knotenüberdeckung. Sparsame Überdeckung Eingabe : Ein ungerichteter Graph G = (V, E). 1. Setze U := ∅. 2. Solange es eine Kante {i, j} ∈ E gibt mit {i, j} ∩ U = ∅. 3. Setze U := U ∪ {i, j}. 4. Gib U aus. Zeigen Sie (i) Sparsame Überdeckung berechnet bei jeder Eingabe eine Knotenüberdeckung. (ii) Konstruieren Sie für alle n ∈ N einen Graphen Gn mit 2n Knoten, so dass Sparsame Überdeckung bei Eingabe Gn eine Knotenüberdeckung der Grösse 2n berechnet, eine optimale Knotenüberdeckung von Gn jedoch nur Grösse n hat. Begründen Sie die Korrektheit Ihrer Konstruktion! AUFGABE 33 (5 Punkte): Sei G = (V, E) ein ungerichteter, zusammenhängender Graph. Eine Kante e ∈ E heisst Brücke in G, falls der Graph, der aus G durch Entfernen von e entsteht, nicht zusammenhängend ist. Ein Beispiel für eine Brücke in einem Graphen ist in der Abbildung dargestellt. Beispiel für eine Brücke in einem Graphen: Brücke Betrachten Sie nun die folgende Sprache. G = (V, E) ist ein ungerichteter, zusammenhängender Brücke := hGi . Graph mit einer Brücke Zeigen Sie, dass Brücke in P liegt. AUFGABE 34 (5 Punkte): L, L0 seien zwei Sprachen. Die Sprache L sei NP-vollständig und es gelte L ⊆ L0 . Ist dann auch L0 NP-vollständig? Begründen Sie Ihre Antwort! AUFGABE 35 (5 Punkte): Beim Problem BinPacking sind n Gegenstände 1, . . . , n mit Gewichten g1 , g2 , . . . , gn , sowie m Behälter mit Kapazitäten k1 , . . . , km gegeben. Zu entscheiden ist, ob die n Gegenstände so auf die Behälter verteilt werden können, dass jeder Behälter vollständig gefüllt ist, also der j-te Behälter Gegenstände vom Gesamtgewicht exakt kj enthält und jeder Gegenstand in genau einem Behälter ist. Zeigen Sie, dass die Sprache BinPacking NP-vollständig ist. Zeigen Sie hierzu, (i) BinPacking liegt in NP. (ii) Eine der folgenden drei NP-vollständigen Sprachen lässt sich polynomiell auf BinPacking reduzieren. φ ist eine erfüllbare Formel in 3-konjunktiver – 3SAT := hφi Normalform k ∈ N und G ist ein ungerichteter Graph – Clique := hG, ki mit einer k-Clique S = {s1 , . . . , sn } ⊂ N, t ∈ N, X so dass ein – SubsetSum := hS, ti T ⊆ {1, . . . , n} existiert mit si = t i∈T