1 Grundlagen der Theoretischen Informatik Till Mossakowski Fakultät für Informatik Otto-von-Guericke-Universität Magdeburg Sommersemester 2015 2 Wir betrachten nun bezüglich Knotenfärbbarkeit Einschränkungen auf planare Graphen, gradbeschränkte Graphen und planare, gradbeschränkte Graphen, sowie außenplanare Graphen. A B 3 planar-3-colorability = {hGi | G ist ein 3-knotenfärbbarer, planarer Graph} Satz: planar-3-colorability ist NP-vollständig. Beweisskizze: Planarität kann in polynomieller Zeit getestet werden, eine gegebene 3-Färbung in polynomieller Zeit verifiziert werden. Also ist planar-3-colorability in NP. 4 Wir zeigen 3-färbbarkeit P planar-3-colorability Zu gegebenem G konstruieren wir einen planaren Graphen G0 , der genau dann 3-färbbar ist, wenn G 3-färbbar ist, und zu gegebenem G in polynomieller Zeit konstruiert werden kann. 5 Wir betrachten eine Einbettung von G, die alle Knoten auf unterschiedliche Punkte auf dem Einheitskreis abbildet und alle Kanten geradlinig, so dass keine drei oder mehr Kanten sich in einem Punkt schneiden. 6 Crossover Gadget mit Portalknoten x, x0 , y und y0 (links) und seine Symboldarstellung (rechts): x x y0 y y0 y x0 x0 7 x x y0 y x0 y0 y x0 In jeder 3-Färbung des Crossover Gadgets haben sowohl x und x0 als auch y und y0 jeweils die gleiche Farbe. Dabei können x und y alle 9 Farbkombinationen annehmen. 8 Jede Kreuzung in der Einbettung von G wird durch ein Crossover Gadget ersetzt, entlang der Einbettung einer Kante benachbarte Portalknoten werden zu einem Knoten verschmolzen. Ferner wird bei jeder nicht kreuzungsfrei eingebetteten Kante einer der beiden Endknoten der Kante mit dem benachbarten Portalknoten auf der Kante verschmolzen. u v u Der resultierende planare Graph ist G0 . v 9 Lemma: G ist genau dann 3-färbbar, wenn G0 3-färbbar ist. Beweisskizze: Eine 3-Färbung c von G0 liefert eine 3-Färbung von G und umgekehrt, denn die Crossover Gadgets entlang einer Kante propagieren die Farbe des verschmolzenen Endknotens zu dem zum nicht verschmolzenen Endknoten benachbarten Portalknoten. u v 10 Definition: Ein Graph heißt außenplanar, wenn er so kreuzungsfrei in die Ebene eingebettet werden kann, dass alle Knoten auf dem Rand des äußeren unbeschränkten Gebietes liegen. outerplanar-3-colorability = {hGi | G ist ein 3-knotenfärbbarer, außenplanarer Graph} Satz: outerplanar-3-colorability ist in P. 11 Im Folgenden bezeichne ∆(G) den maximalen Grad eines Knotens in einem Graphen G. Satz: [Brooks] Ein Graph G, der weder vollständig noch ein Kreis ungerader Länge ist, ist ∆(G)-knotenfärbbar, d.h. χ0 (G) ≤ ∆(G) 12 degree-restricted-3-colorability = {hG, `i | G ist ein Graph mit maximalem Knotengrad ` und G ist mit 3 Farben knotenfärbbar} Satz: degree-restricted-3-colorability ist NP-vollständig. Beweisskizze: Der maximale Knotengrad kann in polynomieller Zeit getestet werden, eine gegebene 3-Färbung in polynomieller Zeit verifiziert werden. Also ist degree-restricted-3-colorability in NP. 13 Wir zeigen 3-färbbarkeit P degree-restricted-3-colorability Zu gegebenem G konstruieren wir einen Graphen G0 mit maximalem Knotengrad ` = 4, der genau dann 3-färbbar ist, wenn G 3-färbbar ist, und zu gegebenem G in polynomieller Zeit konstruiert werden kann. 14 Gradreduktionsgadget mit 3 Portalknoten: 2 1 2 3 1 Das Gadget hat Maximalgrad 4. Bei allen 3-Färbungen des Gadgets haben alle Portalknoten die gleiche Farbe. 3 15 Ein Gadget mit k Portalknoten lässt sich durch Kombination von k − 2 Kopien des Gadget mit 3 Portalknoten erzeugen: 2 1 3 4 5 16 Jeden Knoten v in G mit Grad d > 4 ersetzen wir durch ein Gadget mit d Portalknoten, die d inzidenten Kanten verbinden wir dabei mit unterschiedlichen Portalknoten. Der resultierende Graph G0 hat Maximalgrad höchstens 4. Lemma: G ist genau dann 3-färbbar, wenn G0 3-färbbar ist. Beweisskizze: Da stets alle Portalknoten eines Gadgets bei einer 3-Färbung die gleiche Farbe haben, liefert eine 3-Färbung von G0 eine 3-Färbung von G und umgekehrt. 17 degree-4-restricted-planar-3-colorability = {hGi | G ist ein mit 3 Farben knotenfärbbarer, planarer Graph, dessen Knoten maximal Grad 4 haben} Satz: degree-4-restricted-planar-3-colorability ist NP-vollständig. Beweisskizze: Zunächst wird Planarität forciert, dann der Grad reduziert. Letzteres ist möglich, ohne die Planarität zu zerstören, da die Gradreduktionsgadgets selbst planar sind und eine passende Zuordnung der Portalknoten aus einer Einbettung abgeleitet werden kann. 18 Eine Färbung der Kanten eines Graphen G heißt zulässig, falls für jeden Knoten alle zu ihm inzidenten Kanten verschiedene Farben haben. Ein Graph ist k-kantenfärbbar, falls es eine zulässige Kantenfärbung mit k Farben gibt. Das kleinste k, für das es eine zulässige Kantenfärbung von G mit k Farben gibt, heißt der chromatische Index von G und wird mit χ1 (G) bezeichnet. kantenfärbbarkeit = {hG, ki | G ist k-kantenfärbbar} Satz: [Vizing] Sei G ein einfacher Graph. Dann gilt χ1 (G) ∈ {∆(G), ∆(G) + 1} 19 Satz: [Holyer] kantenfärbbarkeit ist NP-vollständig. Zum Beweis des obigen Satzes zeigt man Lemma: 3-sat P kantenfärbbarkeit. 20 Starke NP-Vollständigkeit Zur Erinnerung: Beim Problem partition sind a1 , a2 , . . . , an ∈ N gegeben und es ist zu entscheiden, ob es I ⊆ {1, 2, . . . , n} gibt, so dass ∑ ai = ∑ ai i∈I i6∈I partition = {bin(a1 )# · · · #bin(an ) | ∃ I ⊆ {1, 2, . . . , n} so dass ∑ ai = ∑ ai } i∈I i6∈I 21 n H= 1 2 ∑ aj j=1 B(i) = {b ≤ H | ∃ Ii ⊆ {1, 2, . . . , i} so dass ∑ aj = b} j∈Ii 1 2 3 4 5 6 B(0) ← {0} for i ← 1 to n do B(i) ← B(i − 1) for j ← ai , ai + 1, ai + 2, . . . , H do if (j − ai ∈ B(i − 1)) then B(i) ← B(i) ∪ {j} 22 Die Laufzeit des Algorithmus ist polynomiell in n und H, aber nicht polynomiell in der Länge der Eingabe, in der die ganzzahligen Größen binär dargestellt sind! Algorithmen für Probleme, die Zahlen beinhalten, nennen wir pseudopolynomiell, wenn ihre Laufzeit bei unärer Kodierung der Zahlen in der Eingabe polynomiell ist. Für n ∈ N0 bezeichne un(n) die unäre Kodierung von n. unary-partition = {un(a1 )# · · · #un(an ) | ∃ I ⊆ {1, 2, . . . , n} so dass ∑ ai = ∑ ai } i∈I unary-partition ∈ P i6∈I 23 Definition: Ein Entscheidungsproblem heißt stark NP-vollständig, wenn es auch dann noch NP-vollständig ist, wenn wir nur Probleminstanzen betrachten, in denen die Größe der vorkommenden Zahlen polynomiell in der Länge der Eingabe ist. 24 Beispiele für stark NP-vollständige Probleme: • sat • 3-sat • nae-3-sat • vertex-cover • hamilton-kreis • knotenfärbbarkeit 25 Parametrisierte Komplexität O(nk ) O(22k · n) Definition: Eine Parametrisierung der Wörter über einem Alphabet Σ ist eine in polynomieller Zeit berechenbare Abbildung κ : Σ∗ → N. Definition: Ein parametrisiertes Problem ist gegeben durch eine Sprache L ⊆ Σ∗ und eine Parametrisierung κ : Σ∗ → N. 26 3-cnf = {hφ i | φ ist eine Boolesche Formel in konjunktiver Normalform, in der alle Klauseln aus drei Literalen bestehen} 3-sat ⊆ 3-cnf ⊆ Σ∗ k falls x = hφ i ∈ 3-cnf und in φ kommen k Variablen vor κ(x) = 1 sonst (3-sat, κ) 27 Fixed-Parameter Tractability Definition: Ein parametrisiertes Problem (L, κ) ist festparameterhandhabbar (fixed-parameter tractable), falls es einen Algorithmus A, ein Polynom p(n) und eine berechenbare Funktion f (n) gibt, so dass A für alle x ∈ Σ∗ in Zeit f (κ(x)) · p(|x|) entscheidet, ob x ∈ L. Satz: (3-sat, κ) ist festparameterhandhabbar. 28 Beweisskizze: Für jede der 2k möglichen Belegungen der k Variablen können wir jeweils in Linearzeit testen, ob die Formel bei der Belegung erfüllt ist. X1 = 0 X1 = 1 29 knotenfärbbarkeit ( κ(x) = ⊆ Σ∗ k falls x = hG, ki 1 sonst Satz: Falls P 6= NP, so ist das parametrisierte Problem (knotenfärbbarkeit, κ) nicht festparameterhandhabbar.