200 likes | 273 Views
3-Färbbarkeit von planaren Graphen mit Maximalgrad 4 ist NP-vollständig. Marco Barz Seminar über Algorithmen SoSe2007. Gliederung. 1. Einleitung 2. Wiederholung 3. Beweis 3SAT ≤ 3C 3C ≤ P3C P3C ≤ P3C4. 1. Wiederholung. Was ist ein planarer Graph ?
E N D
3-Färbbarkeit von planaren Graphen mit Maximalgrad 4 ist NP-vollständig Marco Barz Seminar über Algorithmen SoSe2007
Gliederung • 1. Einleitung • 2. Wiederholung • 3. Beweis • 3SAT ≤ 3C • 3C ≤ P3C • P3C ≤ P3C4
1. Wiederholung • Was ist ein planarer Graph? • Ein Graph, der auf einer Ebene mit Punkten für die Knoten und Linien für die Kanten dargestellt werden kann, ohne dass die Kanten sich kreuzen
Wiederholung • Was ist 3-Färbbarkeit? • G=(N,A) ungerichteter Graph ohne Mehrfachkanten • f Abbildung N -> {1,2,3} • f ist gültige 3-Färbung von G, falls für je zwei beliebige benachbarte Knoten v1 und v2 von G gilt: • f(v1)≠f(v2) • für alle v aus N gilt: f(v)≤3
Beweis • Beweisführung in 3 Schritten mittels 3er Reduktionen 1. 3SAT ≤ 3-Färbbarkeit von Graphen 2. 3-Färbbarkeit von Graphen ≤ 3-Färbbarkeit von planaren Graphen 3. 3-Färbbarkeit von planaren Graphen ≤ 3-Färbbarkeit von planaren Graphen mit Maximalgrad 4
1. 3SAT ≤ 3C • Konstruktion des Graphen H a y1 y4 y5 b y6 y2 y3 c Wenn die Knoten a,b,c gleich gefärbt sind, muss y6 bei einer gültigen 3-Färbung von H ebenfalls die gleiche Farbe annehmen
Eigenschaften von H • 1.1 Jede Färbung der Knoten a,b,c, so dass 1{f(a),f(b),f(c)} kann zu einer gültigen 3-Färbung erweitert werden, so dass f(y6)=1 • 1.2 wenn f(a)=f(b)=f(c)=i, dann ist auch f(y6)=i
1. 3SAT ≤ 3C • Menge C von p Klauseln in n Variablen x1,x2,...,xn als Eingabe für 3SAT • Annahme: Jede Klausel hat 3 Literale (Beweis siehe Quellen) Ci=(aibici) • Ziel: Konstruktion eines Graphen G, der genau dann 3-färbbar ist, wenn C erfüllbar ist
1. 3SAT ≤ 3C a1 y11 x1 x2 y14 y15 b1 y16 y12 v3 c1 y13 y21 a2 y24 v2 v1 y25 b2 y26 y22 c2 y23
1. 3SAT ≤ 3C • „=>“ • C hat erfüllende Belegung • Definiere f:N->{yij:1ip,1j6} durch: • f(v1)=1, f(v2)=2, f(v3)=3 • f(xi)=1, f( )=2 falls xi=true • f(xi)=2, f( )=1 falls xi=false • f weist benachbarten Knoten verschiedene Werte zu • Weil C erfüllt, gilt: 1=f(v1){f(ai), f(bi), f(ci)} für alle i, 1ip. • Nach Eigenschaft 1.1 kann f zu einer gültigen 3-Färbung erweitert werden
1. 3SAT ≤ 3C • „<=„ • f:N->{1,2,3} ist gültige 3-Färbung von G • Kanten in A erzwingen Eigenschaften: • {f(xi),f( ):1in}={f(v1),f(v2)} • {f(yi6):1ip}={f(v1)} • Es folgt aus Eigenschaft 1.2 dass f(v1){f(ai), f(bi), f(ci)}, 1ip • Ausserdem: f(xi)!=f( ) • Setzen von x genau dann auf true (f(x)=1), wenn f(xi)=f(v1), ergibt erfüllende Belegung für C Also ist C dann und nur dann erfüllbar, wenn G 3-färbbar ist .
u v v‘ u‘ 2. 3C ≤ P3C • Schlüsselkonstruktion für den 2. Teil des Beweises ist dieser Graph H (Kreuzung) • Eigenschaften: • 2.1 Jede gültige 3-Färbung von H ergibt die gleichen Farben jeweils für u,u‘ und v,v‘ • 2.2 Es existiert immer eine 3-Färbung, bei der u und v verschiedene Farben haben
2. 3C ≤ P3C • Konstruktion des planaren Graphen G‘=(N‘,A‘) aus einem Graphen G=(N,A) 1. Platziere G in der Ebene, mit Kreuzungen, aber so, dass nicht mehr als 2 Kanten sich an einem Punkt treffen (abgesehen von ihrem Endpunkt) und so, dass keine Kante einen anderen Knoten als ihren eigenen Endpunkt berührt. 3. Ersetze jede Kreuzung im Graphen durch eine Kopie vom Graph H, wobei seine Ausgänge u,u‘ die nächstliegenden neuen Punkte auf der einen an der Kreuzung beteiligten Linie ersetzen und v,v‘ die nächstliegenden neuen Punkte auf der anderen an der Kreuzung beteiligten Linie. 4. Für jedes {x,y} A: wähle einen Endpunkt als besonderen Endpunkt und verschmelze ihn mit dem nächstliegenden neuen Punkt auf der {x,y}-Linie. Die Kante zwischen dem anderen Endpunkt und seinem nächstliegenden neuen Punkt auf der {x,y}-Linie wird operante Kante der {x,y}-Linie genannt. 2. Für jede Kante {x,y} A bezeichne ihre Darstellung in der Ebene: {x,y}-Linie. Füge zu jeder solchen Linie, die von anderen Linien gekreuzt wird, neue Punkte hinzu: einen zwischen jedem Endpunkt und der nächstliegenden Kreuzung und einen zwischen jedem Paar nebeneinander liegender Kreuzungen. y x
2. 3C ≤ P3C • Angenommen, G‘ ist 3-färbbar und f:N‘->{1,2,3} ist gültige 3-Färbung • Dann: f beschränkt auf N N‘ ist gültige 3-Färbung von G • Beweis durch Widerspruch: falls nicht, dann würde ein {x,y}A existieren, so dass f(x)=f(y). • Betrachte {x,y}-Linie in G‘: o.B.d.A x ist besonderer Endpunkt für diese Linie. Nach Eigenschaft 2.2 haben alle neuen Punkte auf der Linie die gleiche Farbe wie x. Also müssen beide Endpunkte der operanten Kante die gleiche Farbe haben. Widerspruch!
2. 3C ≤ P3C • Umgekehrt, f:N->{1,2,3} ist gültige 3-Färbung für G: Erweiterung zu 3-Färbung für G‘ wie folgt: • Für jedes {x,y} A: färbe jeden neuen Punkt auf der {x,y}-Linie mit Farbe f(x) (x=besonderer Endpunkt) -> alle operanten Kanten sind gültig gefärbt • Nach Eigenschaft 2.2 kann diese 3-Färbung auf die inneren Knoten der Kreuzungen erweitert werden -> gültige 3-Färbung für G‘ Also ist G‘ dann und nur dann 3-färbbar, wenn G 3-färbbar ist. √
3. P3C ≤ P3C4 • Idee: Verwenden von Knoten-Substituten HK, die Knoten mit Grad>4 ersetzen. • Ziel: Konstruktion eines planaren Graphen G‘ aus G, der höchstens Knotengrad 4 hat, und der 3-färbbar genau dann ist, wenn G 3-färbbar ist. 2 3 4 2 5 1 3 1 H3 H5
3. P3C ≤ P3C4 • Eigenschaften von HK • 3.1 HK hat 7(k-2)+1 Knoten, inklusive der Ausgänge (Outlets) • 3.2 Kein Knoten von HK hat den Grad>4 • 3.3 HK ist planar • 3.4 HK ist 3-färbbar, aber nicht 2-färbbar, und jede gültige 3-Färbung von HK weist jedem Ausgangsknoten die gleiche Farbe zu
3. P3C ≤ P3C4 • Konstruktion von G‘ • Fixiere planare Einbettung von G und benenne willkürlich die r Knoten mit Grad>4 als v1,v2,...,vr • Konstruiere Folge von Graphen G0,...,Gr wie folgt: • Gi entsteht aus Gi-1 • Sei d der Grad von vi in Gi-1 und {u1,vi},...,{ur,vi} die zu vi gehörigen Kanten im Uhrzeigersinn: Erstelle Gi durch Ersetzen von vi mit Hd und ersetze jede Kante {uj,vi} durch eine Kante, die uj mit dem Ausgangsknoten j des Knotensubstituts verbindet.
3. P3C ≤ P3C4 • Es folgt aus den Eigenschaften von HK und der Konstruktion des Graphen G‘: • GK ist planar für 0kr • GK hat r-k Knoten mit Grad>4 • GK ist 3-färbbar genau dann, wenn G 3-färbbar ist G‘ erfüllt alle Voraussetzungen -> √