Graphentheorie Prof. Dr. Anand Srivastav Wintersemester 2014/15 Inhaltsverzeichnis 1 Grundlagen 5 1.1 Graphen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.2 Einfache Struktureigenschaften . . . . . . . . . . . . . . . . . . . . . . . . . 11 2 Bäume und Wege in Graphen 15 2.1 Minimal aufspannende Bäume . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.2 Kürzeste Wege in Graphen mit Kantengewichten . . . . . . . . . . . . . . . . 18 3 Matching und Vertex-Cover 21 3.1 Matching und Vertex-Cover . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.2 Bipartites Matching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.3 Der Satz von Tutte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4 Flüsse 31 4.1 Gerichtete Graphen und Flüsse . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.2 Das Max-Flow/Min-Cut-Theorem . . . . . . . . . . . . . . . . . . . . . . . . 35 4.3 Schneller Ford-Fulkerson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 4.4 Zusammenhang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 4.5 Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3 Inhaltsverzeichnis 5 Planarität von Graphen 47 5.1 Die Eulerformel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 5.2 Der Satz von Kuratowski und Wagner . . . . . . . . . . . . . . . . . . . . . 51 5.3 Färbbarkeit planarer Graphen . . . . . . . . . . . . . . . . . . . . . . . . . . 52 6 Färbbarkeit 6.1 Der Greedy-Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 6.2 Der Satz von Brooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 6.3 Der Satz von Vizing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 6.4 Das Art-Gallery Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 6.5 Ramseyzahlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 7 Zufällige Graphen 4 55 69 7.1 Das Modell Gpn, pq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 7.2 Einige grundlegende Eigenschaften . . . . . . . . . . . . . . . . . . . . . . . 71 7.3 Existenz isolierter Knoten Gpn, pq . . . . . . . . . . . . . . . . . . . . . . . . 74 7.4 Subgraphen in Gpn, pq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 Kapitel 1 Grundlagen 1.1. Graphen Wir vereinbaren folgende Bezeichnungen. Ź N “ {1, 2, 3, . . .}, N0 :“ N Y {0}, für n P N setzen wir rns :“ {a P N ; a ď n}. Ź Für eine Menge M bezeichne PpM q :“ {T ; T Ď M } die Potenzmenge von M . Für :“ {T Ď M ; |T | “ n} die Menge der n-elementigen eine Menge M und n P N0 sei M n Teilmengen von M . Ist M endlich, so gilt M n ! ! |M | |M |! . “ “ n n!p|M | ´ nq! Ź Sei k P N und seien f, g : Nk Ñ Rě0 Abbildungen. Wir schreiben f pnq “ Opgpnqq, falls es c1 , c2 P Rą0 gibt, so dass für alle n P N gilt: f pnq ď c1 gpnq ` c2 , f pnq “ Ωpgpnqq, falls gpnq “ Opf pnqq, f pnq “ Θpgpnqq, falls f pnq “ Opgpnqq und f pnq “ Ωpgpnqq, f pnq nÑ8 f pnq “ opgpnqq, falls ÝÑ 0. gpnq Beispiel 1.1. Für f : N Ñ Rě0 , n ÞÑ 170n2 ` 13n ´ 21, g : N Ñ Rě0 , n ÞÑ n2 und h : N Ñ Rě0, n ÞÑ log2 n gilt: f pnq “ Opgpnqq, hpnq “ Opgpnqq, gpnq “ Θpf pnqq, hpnq “ opgpnqq, hpnq “ Θpln nq. Definition 1.2 (Graphen und Hypergraphen). (i) Ein Hypergraph oder Mengensystem ist ein Tupel H “ pV, Eq, bestehend aus einer endlichen V , der Knotenmenge und der Menge der Hyperkanten E Ď PpV q. 5 Kapitel 1. Grundlagen (ii) Ein einfacher Graph ist ein Hypergraph, in dem alle Hyperkanten die Kardinalität genau zwei haben. Wir notieren Graphen in der Regel durch das Tupel G “ pV, Eq, wobei E Ă V2 . Eine Kante e hat die Form e “ {v, w}, u, v P V . Für einen Graphen G bezeichnet V pGq die Menge seiner Knoten und EpGq die Menge seiner Kanten. ~ besteht aus einer endlichen Knotenmenge V und (iii) Ein gerichteter Graph G “ pV, Eq ~ Ď V ˆ V . Dabei interpretieren wir für eine Kante pv, wq P E ~ den einer Kantenmenge E Knoten v als Anfangs- und w als Endpunkt der Kante pv, wq. Man zeichnet pv, wq oft als Vektorpfeil mit Anfangspunkt v und Spitze w ein. Beispiel 1.3. (i) Hypergraph H “ p{1, 2, 3, 4, 5}, {{1, 2}, {1, 3, 5}, {2, 3, 4}}q (ii) (einfacher) Graph G “ p{1, 2, 3, 4, 5}, {{1, 2}, {1, 3}, {2, 4}, {3, 4}, {3, 5}, {4, 5}}q 6 1.1. Graphen (iii) gerichteter Graph G “ p{1, 2, 3, 4, 5}, {p1, 2q, p2, 1q, p3, 5q, p4, 5q}q Vereinbarung. Wenn im folgenden von einem Graphen die Rede ist – ohne nähere Angaben, zu welcher Klasse er gehört, so ist stets ein einfacher Graph mit n Knoten und m Kanten gemeint. Sei G “ pV, Eq ein Graph und n :“ |V | ą 0. 7 Kapitel 1. Grundlagen Ź Zwei Knoten v, w P V heißen benachbart, falls {v, w} P E. Für v P V sei Γpvq :“ {w P V ; {v, w} P E} die Nachbarschaft von v und degpvq :“ |Γpvq| der Grad von v. Ź Für V 1 Ď V sei ΓpV 1 q :“ ⋃vPV 1 Γpvq die Nachbarschaft von V 1 . Ź Gibt es r P N mit degpvq “ r für alle v P V , so heißt G r-regulär. Ein Graph G1 “ pV 1 , E 1 q 1 heißt Teilgraph von G, falls V 1 Ď V und E 1 Ď E. Gilt zusätzlich E 1 “ E X V2 , so heißt G1 induzierter Teilgraph von G, und wir schreiben: G1 “ G|V 1 . Beispiele. Ź Für V 1 Ď V und E 1 Ď E sei ! V zV 1 :“ G´V pV zV , E X q und G ´ E 1 :“ pV, EzE 1 q. 2 1 1 Für v P V schreiben wir statt G ´ {v} auch G ´ v, und analog für e P E statt G ´ {e} auch G ´ e. Für eine Menge W mit W X V “ H und eine beliebige Menge F zweielementiger Mengen sei G ` W :“ pV Y W, Eq und G ` F :“ pV Y ⋃ F, E Y F q die Addition der Graphen G und W . Ź Sei H “ pW, F q ein weiterer Graph. G und H heißen isomorph, in Zeichen G » H, wenn es eine bijektive Abbildung ϕ : V Ñ W gibt, so dass für alle v, w P V gilt: {v, w} P E ô {ϕpvq, ϕpwq} P F. Die Abbildung ϕ heißt Isomorphismus. 8 1.1. Graphen Ź Sei v1 , v2 , . . . , vn eine Aufzählung der Knoten von G. Die Matrix A “ paij q P {0, 1}nˆn mit aij :“ 1, falls {vi , vj } P E 0 sonst heißt Adjazenzmatrix von G. Sei e1 , e2 , . . . , em eine Aufzählung der Kanten von G. Die Matrix B “ pbij q P {0, 1}nˆm mit 1, falls vi P ej bij :“ 0 sonst heißt (Knoten-Kanten)-Inzidenzmatrix von G. Die Gestalt der Matrizen A und B hängt von der gewählten Aufzählung der Knoten und Kanten ab. Dies ist jedoch unwesentlich, da A und B den Graphen G (unabhängig von der gewählten Aufzählung) bis auf Isomorphie festlegen. Ź G heißt vollständiger Graph. wenn E “ V2 und wir schreiben: G “ Kn . G heißt leerer Graph, wenn E “ H. Ein vollständiger Teilgraph heißt Clique, ein leerer induzierter Teilgraph heißt unabhängige Menge. ~ ein einfacher Ź Das Komplement von G ist der Graph Ḡ :“ Kn ´ E. Sei G P {pV, Eq, pV, Eq} oder gerichteter Graph und seien v, w P V . Ein Subgraph P heißt Weg von u nach v in G, kurz u-v-Weg, wenn V pP q “ {v1 , . . . , vk } und für alle i P rk ´ 1s gilt: {vi , vi`1 } P E (bzw. ~ P heißt geschlossen, falls v1 “ vk . Einen Weg P notieren wir auch durch pvi , vi`1 q P E). P “ v1 , . . . , v k . Ź Ist P “ pv1 , . . . , vk q ein Weg, so heißt |P | :“ k ´ 1 die Länge des Weges P . Ź Sind P1 “ v1 , . . . , vk und P2 “ w1 , . . . , wl zwei Wege, so bezeichne P1 ˝ P2 den Weg v1 , . . . , vk , w2 , . . . , wl . Ź Ein Pfad ist ein Weg P mit |P | “ |V pP q| ´ 1, d.h. alle Knoten auf P sind verschieden. Achtung: Die Bezeichnung kommt aus der englischsprachigen Literatur, hier wird ein Pfad meist als “path” bezeichnet, während ein Weg “walk” genannt wird. Ź Ein Weg P “ v1 , . . . , vk , v1 heißt Kreis, falls |P | ě 3 und v1 . . . , vk ein Pfad ist. G heißt kreisfrei, wenn es keinen Kreis in G gibt. 9 Kapitel 1. Grundlagen Ź Ein Graph G heißt zusammenhängend, wenn für alle v, w P V ein Weg von v nach w existiert. Ein zusammenhängender induzierter Teilgraph von G, der in keinem anderen zusammenhängenden Teilgraphen von G echt enthalten ist, heißt Zusammenhangskomponente von G. G heißt Baum, wenn G kreisfrei und zusammenhängend ist. G heißt Wald, wenn G kreisfrei ist. Ź Ein Graph G heißt bipartit, wenn es V1 , V2 Ď V gibt mit V1 X V2 “ H, V1 Y V2 “ V und E Ď {{v1 , v2 } ; v1 P V1 , v2 P V2 }. In diesem Fall heißt pV1 , V2 q eine Bipartition von G und wir schreiben G “ pV1 ẎV2 , Eq. Ź Ist E “ {{v1 , v2 } ; v1 P V1 , v2 P V2 } so heißt G vollständig bipartit und wir schreiben G “ Kn1 ,n2 , wobei n1 :“ |V1 |, n2 :“ |V2 |. Ź Sei G “ pV, Eq ein zusammenhängender Graph. Für alle u.v P V heißt dG pu, vq :“ min {|P | ; P ist ein u-w-Weg} der Abstand von v zu w. Ein u-v-Weg P mit |P | “ dG pu, vq heißt kürzester Weg von u nach v in G. Kürzeste Wege lassen sich effizient berechnen. Algorithm 1: Breitensuche Eingabe: Graph G “ pV, Eq, Knoten v0 P V . Ausgabe: Ein Baum, der die kürzesten Wege von v0 zu allen Knoten beschreibt. 1 2 pW, F q Ð p{v0 }, Hq; Q :“ pv0 q; /* Q dient als Warteschlange */ 8 solange Q nicht-leer tue Seien v1 , . . . , vl so dass Q “ pv1 , . . . , vl q; Bestimme w1 , . . . , wk so dass Γpv1 q X pV zW q “ {w1 , . . . , wk }; Q Ð pv2 , . . . , vl , w1 , . . . , wk q; W Ð W Y {w1 , . . . , wk }; F Ð F Y {{v, w} ; w “ w1 , . . . , wk }; 9 Ausgabe pW, F q; 3 4 5 6 7 Proposition 1.4. pW, F q ist ein Baum und enthält die kürzesten Wege in g von v0 nach w für alle w P V . 10 1.2. Einfache Struktureigenschaften 1.2. Einfache Struktureigenschaften Proposition 1.5. Sei G “ pV, Eq ein Graph mit n :“ |V |, m :“ |E|. Dann gilt (i) P vPV degpvq “ 2m. (ii) Die Anzahl der Knoten ungeraden Grades in G ist gerade. (iii) Ist G zusammenhängend, so ist m ě n ´ 1. (iv) Ist G kreisfrei, so ist m ď n ´ 1. Beweis. (i). Wenn man degpvq über alle Knoten v summiert, wird jede Kante genau zweimal P betrachtet. Also gilt vPV degpvq “ 2m. (ii). Es ist P v: degpvq gerade X degpvq eine gerade Zahl, etwa 2p. Mit (i) folgt X degpvq “ v: degpvq ungerade X degpvq ` v: degpvq ungerade degpvq ´ 2p v: degpvq gerade “ 2m ´ 2p “ 2pm ´ pq. P Damit ist v: degpvq ungerade degpvq gerade und somit auch die Anzahl der Summanden (da jeder Summand ungerade ist). (iii). Per Induktion über n. Für n “ 1 ist die Aussage trivial. Sei nun G ein zusammenhängender Graph auf n ě 2 Knoten. Wir wählen einen beliebigen Knoten v und betrachten den Graphen H “ G ´ v. H ist nicht notwendig zusammenhängend. Wir nehmen an, dass H in k Zusammenhangskomponenten Z1 , . . . , Zk zerfällt mit n1 , . . . , nk Knoten, also n1 ` ... ` nk “ n ´ 1. Nach Induktionannahme enthält der von Zi induzierte Untergaph von H mindestens ni ´ 1 Kanten. Da G zusammenhängend ist, muß v mit jeder Komponente Zi durch wenigstens eine Kante verbunden sein. Somit enthält G insgesamt mindestens k` k X k X i“1 i“1 pni ´ 1q “ ni “ n ´ 1 Kanten. (iv). Per Induktion über n. Für n “ 1 ist m “ 0. Sei jetzt n ě 2. Wir wählen eine Kante e P E so, dass H “ G ´ e eine Zusammenhangskomponente mehr als G hat. Also zerfällt H in zusammenhängende, kreisfreie Graphen H1 , . . . , Hk , k ě 2, mit Knotenzahlen n1 , . . . , nk , 11 Kapitel 1. Grundlagen und ni ď n ´ 1 für alle i P rks. Nach Induktionshypothese hat jeder Graph Hi höchstens ni ´ 1 Kanten, und damit hat G höchstens pni ´ 1q ` .. ` pnk ´ 1q ` 1 “ pn1 ` .. ` nk q ´ pk ´ 1q ď n ´ 1 Kanten. Korollar 1.6. Sei G “ pV, Eq ein Baum, n :“ |V |, m :“ |E|. Dann gilt m “ n ´ 1. Beweis. Folgt aus Proposition 1.5 (iii) und (iv). Satz 1.7. Für einen Graph G sind folgende Aussagen äquivalent: (a) G ist ein Baum. (b) G ist ein minimaler zusammenhängender Graph. (c) G ist ein maximaler kreisfreier Graph. Beweis. (a) ùñ (b). Da G kreisfrei ist, zerstört die Entnahme einer Kante den Zusammenhang. (b) ùñ (c). Seien u, v P V . Da G zusammenhängend ist, gibt es einen Weg von u nach v. Fügt man die Kante {u, v} ein, so bildet sie zusammen mit dem Weg einen Kreis. (c) ùñ (a). Angenommen, G ist nicht zusammenhängend. Wähle zwei Zusammenhangskomponenten K1 und K2 . Zwischen diesen kann eine Kante eingefügt werden, ohne dass ein Kreis entsteht. Dies ist ein Widerspruch zu (c). Definition 1.8. Sei G “ pV, Eq ein zusammenhängender Graph. Ein Baum T “ pV, F q mit F Ď E heißt Gerüst oder aufspannender Baum von G. Korollar 1.9. Jeder zusammenhängender Graph enthält einen aufspannenden Baum. Beweis. Betrachte den folgenden Algorithmus. Alternativ wende Breitensuche an, Algorithmus 1. 12 1.2. Einfache Struktureigenschaften Algorithm 2: Aufspannender Baum Eingabe: Graph G “ pV, Eq, E “ {e1 , . . . , em }. Ausgabe: Ein aufspannender Baum von G. 4 T Ð pV, Hq; für i Ð 1 bis n tue wenn T ` ei kreisfrei dann T Ð T ` ei ; 5 Ausgabe T ; 1 2 3 Definition 1.10. Sei G “ pV, Eq ein Graph, k P N. Eine k-Färbung von G ist eine Funktion f : V ÝÑ rks, so dass für je zwei benachbarte Knoten u, v P V gilt f puq ‰ f pvq. Die chromatische Zahl χpGq ist die kleinste Zahl k P existiert. N, so dass eine k-Färbung von G Satz 1.11. Sei G “ pV, Eq ein nicht-leerer Graph. Es sind äquivalent: (a) G ist bipartit, etwa V “ S ẎT , EpSq “ EpT q “ H. (b) χpGq “ 2. (c) G enthält keinen ungeraden Kreis. Beweis. (a) ùñ (b). Wir können alle Knoten in S mit einer ersten Farbe färben und die in T mit einer zweiten Farbe, d.h. χpGq ď 2. Da E ‰ H haben wir χpGq ě 2 (die Enden einer Kante müssen verschieden gefärbt sein). (b) ùñ (c). Sei f eine 2-Färbung von G. Wir zerlegen die Knotenmenge V in zwei Mengen S, T , wobei jede Menge monochromatisch ist, d.h. S :“ f ´1 p1q und T :“ f ´1 p2q. Dann haben wir S ẎT “ V . Es enthalten weder T noch S eine Kante. Sei C “ pv1 , v2 , .., vl , v1 q ein Kreis in G. O.B.d.A. sei v1 P S. Da innerhalb von S (und T ) keine Kante verläuft, gilt v2 P T, v3 P S, . . . , vl P T, v1 P S. Der Index l ist gerade, d.h die Länge des Pfades pv1 , .., vl q ist ungerade und somit hat C gerade Länge. (c) ùñ (a). O.B.d.A. sei G zusammenhängend. Wir wählen einen Knoten v 0 . Mit S bezeichnen wir die Menge aller Knoten, die von v 0 geraden Abstand haben, und mit T das Komplement von S. Angenommen, es gibt eine Kante {v, u} P S. Es seien Pv “ pv1 “ v 0 , v2 , . . . , vk “ vq, 13 Kapitel 1. Grundlagen Pu “ pu1 “ v 0 , u2 , . . . , ul “ uq kürzeste Pfade von v 0 nach v bzw u. Nach Voraussetzung haben Pv und Pu gerade Länge. Sei s der letzte gemeinsame Knoten auf den beiden Pfaden, d.h. s P V pPv q X V pPu q, etwa s “ vi0 “ uj0 , und für alle i ą i0 gilt vi R V pPu q und für alle j ą j0 gilt uj R V pPv q. Dann bildet C :“ ps “ vi0 , vi0 `1 , . . . , v “ vk , u “ ul , ul´1 , . . . , uj0 `1 , uj0 “ sq einen Kreis. Da Pv und Pw jeweils kürzeste Pfade sind, gilt i0 “ j0 . Der Teilweg von s nach v von Pv und der von s nach u von Pu sind somit beide gerade. Damit hat C ungerade Länge, ein Widerspruch. Algorithm 3: Test auf Bipartition Eingabe: Ein Graph G “ pV, Eq. Ausgabe: Ob G bipartit, und falls ja: Bipartition, sonst ein Kreis ungerader Länge. 1 2 3 4 5 6 14 Wähle ein v0 P V ; Führe Breitensuche durch und partitioniere V in S und T , so dass S “ {w ; dpv0 , wq gerade}, und T “ {w ; dpv0 , wq ungerade}; für alle e “ {v, w} P E tue wenn v, w P S oder v, w P T dann Ausgabe Nein, sowie ein Kreis ungerader Länge konstruiert wie im Beweis von Satz 1.11; Ausgabe Ja, sowie Bipartition S, T ; Kapitel 2 Bäume und Wege in Graphen 2.1. Minimal aufspannende Bäume Lemma 2.1. Sei G “ pV, Eq ein Graph. Folgende Aussagen sind äquivalent. (a) G ist ein Baum. (b) Zwischen je zwei Knoten von G existiert genau ein Pfad. (c) G ist zusammenhängend und |E| “ |V | ´ 1. Satz 2.2 (Cayley-Formel). Die Anzahl der aufspannenden Bäume des Kn ist gleich nn´2 (für n ě 2). Beweis. siehe J. Matoušek, J. Nešetřil, Diskrete Mathematik, Seite 249–270. Schreibweise. Sei f : M Ñ P tPT f ptq. R eine Abbildung und T Ď M . Dann schreiben wir f pT q für Problem 2.3 (Minimal aufspannender Baum (MST)). Eingabe Zusammenhängender Graph G “ pV, Eq, Kantengewichtsfunktion c : E Ñ Q. Aufgabe Finde einen aufspannenden Baum T “ pV, F q von G mit minimalem Gewicht, d.h. mit cpF q “ min {cpF 1 q ; T 1 “ pV, F 1 q ist Baum }. Beispiel 2.4. Wir wenden den Kruskal-Algorithmus auf folgenden Graphen an. 15 Kapitel 2. Bäume und Wege in Graphen Algorithm 4: MST (Kruskal) Eingabe: G “ pV, Eq mit n :“ |V |, m :“ |E|, c : E Ñ Q. 5 T Ð pV, Hq; Sortiere die Kanten nach Gewicht: cpe1 q ď cpe2 q ď . . . ď cpem q; für i Ð 1 bis m tue wenn T ` ei kreisfrei dann T Ð T ` ei ; 6 Ausgabe T ; 1 2 3 4 Ein möglicher Ablauf des Algorithmus sieht dann so aus. Satz 2.5 (Kruskal, 1956). Der Kruskal-Algorithmus findet einen MST in Zeit Opmnq. Beweis. Sei T “ pV, F q die Ausgabe des Algorithmus. Angenommen, T ist nicht zusammenhängend. Dann gibt es zwei Zusammenhangskomponenten und eine Kante e1 P EzF , die diese verbindet. Sei e P EzF die leichteste Verbindungskante der beiden Zusammenhangskomponenten. Dann ist T ` e kreisfrei und folglich e P F im Widerspruch zur Wahl von e. Somit ist T zusammenhängend. Nach Konstruktion ist T auch kreisfrei und enthält alle Knoten von G, also ist T ein Gerüst von G. Angenommen, es gibt einen MST T ˚ “ pV, F ˚ q mit cpF ˚ q ă cpF q. Für alle i P rn ´ 1s sei fi P F diejenige Kante, die der Algorithmus als i-te hinzugefügt hat. Wir können T ˚ so wählen, dass der kleinste Index k P rn ´ 1s mit fk R F ˚ maximal ist. T ˚ ` fk besitzt einen Kreis C. Dieser enthält eine Kante g mit 16 2.1. Minimal aufspannende Bäume g R F . Wegen g P F ˚ und {f1 , . . . , fk´1 } P F ˚ ist pV, {f1 , . . . , fk´1 }} Y {g}q kreisfrei. Da g R F gilt, folgt cpgq ě cpfk q. Dann aber ist T 1 “ pV, F 1 q :“ T ˚ ` fk ´ g ein Gerüst von G mit cpF 1 q “ cpF ˚ q ` cpfk q ´ cpgq ď cpF ˚ q, d.h. T 1 ist ein MST mit {f1 , . . . , fk } P F 1 im Widerspruch zur Wahl von T ˚ . Zur Laufzeit: Die Eingabelänge ist Ωpm ` nq. Das Sortieren der Kanten lässt sich in Zeit Opm log mq erledigen. Mit Breitensuche ist der Test auf Kreisfreiheit in Zeit Opnq möglich, also ist die Gesamtlaufzeit Opmnq. Bemerkung 2.6. Durch eine geschicktere Implementierung lässt sich die Laufzeit des KruskalAlgorithmus auf Opm log nq verringern (siehe B. Korte, J. Vygen, Combinatorial Optimization, Seite 120). Algorithm 5: MST (Prim) Eingabe: G “ pV, Eq mit n :“ |V |, m :“ |E|, c : E Ñ Q. 4 Wähle v P V und setze T Ð p{v}, Hq; solange V pT q ­“ V tue Wähle e P E mit minimalem Gewicht unter allen Kanten mit |e X V pT q| “ 1; T Ð T ` e; 5 Ausgabe T ; 1 2 3 Beispiel 2.7. Mit dem Graphen aus Beispiel 2.4 als Eingabe kann der Prim-Algorithmus wie in Abbildung 2.1 dargestellt arbeiten. Abbildung 2.1. Beispiel für den Prim-Algorithmus. Satz 2.8 (Jarnik, 1930; Prim, 1957). Der Prim-Algorithmus bestimmt einen MST in Zeit Opn2 q – bei Verwendung geeigneter Datenstrukturen („Fibonacci-Heaps“, siehe M.L. Fredman, R.E. Tarjan, Fibonacci heaps and their uses in improvemed network optimization problems, Journal of the ACM 34 (1987), Seite 596–615) sogar in Zeit Opm ` n log nq. 17 Kapitel 2. Bäume und Wege in Graphen 2.2. Kürzeste Wege in Graphen mit Kantengewichten Definition 2.9. Sei G “ pV, Eq ein zusammenhängender Graph und c : E Ñ Q eine Kantengewichtsfunktion. Für alle v, w P V sei dG pv, wq :“ min{cpP q | P P {v Ñ w}G }, wobei cpP q :“ cpEpP qq. Ein Weg P P {v Ñ w}G mit cpP q “ dG pv, wq heißt kürzester Weg von v nach w in G. Lemma 2.10 (Optimalitätsprinzip). Ist P “ pv, . . . , x, wq ein kürzester Weg von v nach w mit cpeq ě 0 für alle e P EpP q, so ist P ´ w :“ pv, . . . , xq ein kürzester Weg von v nach x. Beweis. Angenommen, es gibt einen Weg P 1 von v nach x mit cpP 1 q ă cpP ´ wq. Dann gilt cpP 1 ˝ px, wqq “ cpP 1 q ` cp{x, w}q ă cpP ´ wq ` cp{x, w}q “ cpP q. P 1 ˝ px, wq ist ein Pfad von v nach w. Da alle Kantengewichte nichtnegativ sind, enthält P 1 ˝ px, wq einen Weg P ˚ von v nach w mit cpP ˚ q ď cpP 1 ˝ px, wqq ă cpP q im Widerspruch zur Wahl von P . Bemerkung 2.11. Die Voraussetzung nicht-negativer Kantengewichte ist notwendig, wie der Beispielgraph aus Abbildung 2.2 zeigt. Abbildung 2.2. In diesem Graph gilt: dpa, cq “ ´9 “ dpa, bq. Wegen cppa, b, cqq “ ´9 ist pa, b, cq ein kürzester Weg von a nach c. Der Weg pa, bq ist jedoch kein kürzester Weg von a nach b, denn cpa, bq “ 1 ą dpa, bq. Korollar 2.12. Sei G “ pV, Eq ein zusammenhängender Graph und c : E Ñ Qě0 eine Kantengewichtsfunktion. Dann gibt es für jedes v0 P V einen Baum T “ pV, F q, so dass für alle v P V gilt: Der eindeutig bestimmte Weg von v0 nach v in T ist ein kürzester Weg von v0 nach v in G. Beweis. Sei T ein Baum mit maximaler Knotenmenge V 1 , so dass für alle v 1 P V 1 der Weg von v0 nach v 1 in T ein kürzester Weg in G ist. Angenommen, es gibt ein v P V zV 1 . Sei y der erste Knoten auf einem kürzesten Weg von v0 nach v in G, der nicht in T liegt. Nach dem Optimalitätsprinzip ist pv0 , . . . , yq P {v0 Ñ y}T `y ein kürzester Weg in G, und nach Wahl 18 2.2. Kürzeste Wege in Graphen mit Kantengewichten von y liegt der Vorgängerknoten x von y in T . Da T ` y ein Baum ist, erhalten wir einen Widerspruch zur Wahl von T . Problem 2.13 (Kürzeste Wege). Eingabe: Zusammenhängender Graph G “ pV, Eq, c : E Ñ Qě0 , Startknoten v0 . Aufgabe: Finde ein Gerüst T von G, so dass für alle v P V gilt: dT pv0 , vq “ dG pv0 , vq. Algorithm 6: Dijkstra Eingabe: G “ pV, Eq, c : E Ñ Qě0 , v0 P V . 1 2 3 4 5 6 7 8 9 10 für alle v P V tue lpvq Ð 8; v Ð v0 , lpvq Ð 0, V 1 Ð {v}, F Ð H; solange V 1 ­“ V : tue für alle w P ΓpvqzV 1 tue wenn lpwq ą lpvq ` cp{v, w}q dann lpwq Ð lpvq ` cp{v, w}q und ppwq Ð v; Wähle v P V zV 1 mit lpvq “ min {lpwq ; w P V zV 1 }; V 1 Ð V 1 Y {v}, F Ð F Y {v, ppvq}; Ausgabe T :“ pV, F q; Beispiel 2.14. Das Beispiel aus Abbildung 2.3 zeigt einen Ablauf des Dijkstra-Algorithmus. Die umrahmten Felder geben die berechneten Abstände zum Startknoten v0 an. Abbildung 2.3. Beispiel für den Dijkstra-Algorithmus.. 19 Kapitel 2. Bäume und Wege in Graphen Satz 2.15 (Dijkstra, 1959). Der Algorithmus Dijkstra löst das Kürzeste-Wege-Problem in Zeit Opn2 q. Beweis. Der Algorithmus arbeitet analog zum Prim-Algorithmus und konstruiert daher in Zeit Opn2 q ein Gerüst von G. Sei Vi die Knotenmenge V 1 nach der i-ten Ausführung von 3.2 und V0 :“ {v0 }. Vi unterscheidet sich von Vi´1 nur durch den neu hinzugefügten Knoten vi :“ Vi zVi´1 . Wir zeigen per Induktion über i: p˚q Für alle v P Vi gilt: dT pv0 , vq “ lpvq “ dG pv0 , vq. Offenbar gilt p˚q für V0 . Sei v P Vi , und p˚q gelte für i ´ 1. Falls v P Vi´1 ist, gilt p˚q nach Induktionsvoraussetzung. Anderenfalls ist v “ vi , und es gilt: lpvi q “ lpppvi qq ` cp{vi , ppvi q}q “ dT pv0 , ppvi qq ` cp{vi , ppvi q}q nach Induktionsvoraussetzung, da ppvi q P Vi´1 “ dT pv0 , vi q. Sei P “ pv0 “ u0 , u1 , . . . , uk “ vi q ein kürzester Weg in G und sei j P rks minimal mit uj R Vi´1 . Da Vi´1 durch vi vergrößert wird und uj´1 P Vi´1 ist, gilt: lpvi q ď lpuj q ď lpuj´1 q ` cp{uj , uj´1 q}q “ dG pv0 , uj´1 q ` cp{uj , uj´1 }q nach Induktionsvoraussetzung “ dG pv0 , uj q, da P ein kürzester Weg ist ď dG pv0 , vi q. Mit lpvi q “ dT pv0 , vi q folgt dT pv0 , vi q “ dG pv0 , vi q. Bemerkung 2.16. (i) Der Dijkstra-Algorithmus funktioniert analog für das kürzeste-Wege-Problem in gerichteten Graphen. (ii) Der Dijkstra-Algorithmus lässt sich auch mit Laufzeit Opm`n¨log nq implementieren (mit Fibonacci-Heaps, siehe Fredman, Tarjan, 1987). (iii) Für das Kürzeste-Wege-Problem mit beliebigen rationalen Kantengewichten gibt es einen Algorithmus, der in Zeit Opmnq einen Kreis mit negativem Gesamtgewicht findet oder alle kürzesten Wege berechnet (modifizierter Moore-Bellman-Ford-Algorithmus, siehe Korte, Seite 144). 20 Kapitel 3 Matching und Vertex-Cover 3.1. Matching und Vertex-Cover Definition 3.1. Sei G “ pV, Eq ein Graph. (i) Eine Menge M Ď E heißt Matching (Paarung), wenn für alle e1 ­“ e2 P M gilt: e1 X e2 “ H. (ii) Ein Matching M Ď E heißt (kardinalitäts-)maximal, wenn für jedes Matching M 1 Ď E gilt: |M 1 | ď |M |. Die Mächtigkeit eines maximalen Matchings in G bezeichnen wir mit νpGq. (iii) Ein Matching M Ď E heißt perfekt (1-Faktor), wenn |M | “ |V |{2 gilt. Problem 3.2 (Maximales Matching). Eingabe: Graph G “ pV, Eq. Aufgabe: Finde ein maximales Matching in G. Definition 3.3. Sei G “ pV, Eq ein Graph und M Ď E. (i) Ein Knoten v P V wird von M überdeckt, wenn es e P M gibt mit v P e. (ii) Ein Pfad in G heißt M -alternierend, wenn er abwechselnd Kanten aus M und EzM durchläuft (oder Länge 1 hat). (iii) Ein M -alternierender Pfad heißt M -augmentierender Pfad, wenn seine Endknoten nicht von M überdeckt werden. Satz 3.4 (Berge, 1957). Sei G “ pV, Eq ein Graph und M Ď E ein Matching in G. M ist genau dann maximal, wenn G keinen M -augmentierenden Pfad enthält. Beweis. ć: Sei M maximal. Angenommen, es gibt einen M -augmentierenden Pfad P in G. Dann ist M 1 :“ pM zEpP qq Y pEpP qzM q ein Matching mit |M 1 | “ |M | ` 1. „ð“: Sei M ein Matching, so dass G keinen M -augmentierenden Pfad enthält und sei M 1 ein maximales Matching. Wir betrachten den Teilgraphen H :“ p⋃pM Y M 1 q, M Y M 1 q. Alle 21 Kapitel 3. Matching und Vertex-Cover Knoten in H haben Grad höchstens 2. Daher besteht H aus Kreisen und Wegen. Jeder Kreis enthält ebensoviele Kanten aus M wie aus M 1 . Die Wege sind M - und M 1 -alternierend und haben gerade Länge, da es weder M - noch M 1 -augmentierende Pfade gibt. Also enthalten auch die Wege ebensoviele Kanten aus M wie aus M 1 . Es folgt: |M | “ |M 1 |. Definition 3.5. Seien A und B Mengen. Dann ist A∆B :“ pAzBq Y pBzAq die symmetrische Differenz von A und B. Algorithm 7: Bipartites maximales Matching Eingabe: G “ pV1 ẎV2 , Eq. 3 M Ð H; solange es existiert ein M -augmentierender Pfad P in G tue M Ð M ∆EpP q; 4 Ausgabe M 1 2 Satz 3.6. Der Algorithmus 7 Bipartites maximales Matching lässt sich so implementieren, dass er in Zeit Opmnq das Problem Maximales Matching in bipartiten Graphen löst. Beweis. Die Korrektheit folgt aus dem Satz von Berge. Schritt 2 implementieren wir mittels wie folgt modifizierter Tiefensuche: Wir betrachten für jeden Knoten zwei Adjazenzlisten ΓM und ΓEzM , wobei für alle v P V die Liste ΓM pvq alle Nachbarn w mit {v, w} P M enthalte und ΓEzM pvq die Liste der Nachbarn w mit {v, w} P EzM sei. In jeder Iteration von 2 wählen wir einen unmarkierten, nicht durch M überdeckten Startknoten v1 und markieren ihn mit 1. Für mit 1 markierte Knoten werden nur Nachbarn aus ΓEzM betrachtet und mit 2 markiert. Für mit 2 markierte Knoten werden nur Nachbarn aus ΓM betrachtet und mit 1 markiert. Für jeden Knoten v wird ein Vorgängerknoten als ppvq abgespeichert. Die Suche bricht ab, sowie ein nicht von M überdeckter Knoten w mit 2 markiert wurde, mit dem M -augmentierender Pfad P :“ pw, ppwq, ppppwqq, . . . , v1 q als Suchergebnis. Sind alle von v1 erreichbaren Knoten markiert, ohne dass ein M -augmentierender Pfad gefunden wurde, so wird ein neuer unmarkierter, nicht von M überdeckter Startknoten v1 gewählt. Der Algorithmus terminiert, wenn alle Knoten markiert sind. ΓM und ΓEzM lassen sich in Zeit Opmq erzeugen. Die Suche hat ebenfalls Laufzeit Opmq. Da jeder Knoten höchstens einmal als Startknoten einer Suche betrachtet wird, ist die Gesamtlaufzeit Opmnq. Es bleibt zu zeigen, dass die modifizierte Tiefensuche stets einen M -augmentierenden Pfad findet, wenn ein solcher existiert. Angenommen, die Tiefensuche betrachtet überhaupt keinen Anfangsknoten eines 22 3.1. Matching und Vertex-Cover M -augmentierenden Pfades als Startknoten, obwohl ein solcher Anfangsknoten v1 existiert. Dann wird v1 von der Tiefensuche markiert, und zwar auf dem Pfad von einem nicht von M überdeckten Startknoten v0 aus. Da v1 nicht von M -Uberdeckt wird, ist dieser Pfad ein M -augmentierender Pfad im Widerspruch zur Annahme. Sei nun v1 der erste Knoten, den die modifizierte Tiefensuche als Startknoten betrachtet, für den ein M -augmentierender P “ pv1 , . . . , vk q existiert. Zu dem Zeitpunkt, an dem v1 Startknoten wird, ist kein Knoten auf P markiert, denn wäre vi von einem Startknoten v0 aus markiert worden, so gäbe es einen M -alternierenden Weg P 1 von v0 nach vk oder nach v1 mit nicht-überdeckten Endknoten. Da G bipartit ist, enthielte P 1 nur gerade Kreise, so dass durch Weglassen der Kreiskanten ein M -augmentierender Pfad entstünde. Sei i P rks der größte Index, so dass vi von der Tiefensuche mit Startknoten v1 markiert wird. Offenbar ist vi ­“ v1 . Angenommen, vi ­“ vk . Sei P1 “ pv1 “ v11 , v21 , . . . , vl1 “ vi q der alternierende Pfad von v1 nach vi , den die Tiefensuche findet, und P2 P {v1 Ñ vi }G der Teilpfad von P . 1. Fall: {vi´1 , vi } P M . Dann gilt {vi , vi`1 } P EzM . Da die Tiefensuche vi`1 nicht als 1 Nachbarn von vi betrachtet, obwohl vi`1 unmarkiert ist, gilt {vl´1 , vl1 } P EzM . Dann aber ist |P1 | ungerade und |P2 | gerade, und folglich enthält G einen geschlossenen Weg ungerader Länge, im Widerspruch zur Wahl von G als bipartit. 1 2. Fall: {vi´1 , vi } P EzM . Dann folgt analog {vl´1 , vl1 } P M , d.h. |P1 | ist gerade und |P2 | ungerade, im Widerspruch zur Wahl von G als bipartit. Somit gilt vi “ vk , und die Tiefensuche findet einen M -augmentierenden Pfad. Definition 3.7. Sei G “ pV, Eq ein Graph. T Ď V heißt Vertex-Cover (Knotenüberdeckung), wenn für alle e P E gilt: e X T ­“ H. Mit τ pGq bezeichnen wir die Größe einer Knotenüberdeckung minimaler Mächtigkeit. Problem 3.8 (Vertex-Cover). Eingabe: G “ pV, Eq, k P N. Frage: Ist τ pGq ď k? Bemerkung 3.9. τ pGq ě νpGq. Beweis. Seien M ein Matching und T ein Vertex-Cover von G. Dann gibt es für jedes e P M ein v P T mit v P e. Da die Kanten aus M disjunkt sind, folgt |T | ě |M |. 23 Kapitel 3. Matching und Vertex-Cover 3.2. Bipartites Matching Satz 3.10 (Hall 1935;Heiratssatz). Sei G “ pV, Eq ein bipartites Graph mit Bipartition V “ S Y T , S X T “ H. Es gilt νpGq “ |S| genau dann, wenn |N pAq| ě |A| für alle A Ď S. Abbildung 3.1. S sei die Menge der Jungs, T die der Mädchen, Eine kante steht für Sympathie Vollständig Heirat ist möglich, wenn jeder Junge s P S ein Mädchen t P T findet. Der Heiratssatz ist ein Struktursatz. Leider ist es nur in 2|S| Zeit möglich, alle Teilmengen A Ď S auf die Hall-Bedingung|N pAq| ě |A| zu testen. Beweis. (Satz 3.10) Wir benutzen Induktion nach |S|. Induktionsanfang: |S| “ 1. Hier gibt es wegen |N pSq| ě |S| “ 1 einen t P T , das mit dem Knoten s P S gematcht werden kann und die Behauptung gilt. Induktionsschluß: Sei |S| ě 2 and wir nehmen an, daß die Behauptung für Graphen mit Bipartitions-menge der Kardinalität höchstens |S| ´ 1 gilt. Ź Full: |N pAq| ě |A| ` 1 für alle A Ď S, A ‰ S. Sei {a, b} P E beliebig gewählt und betrachte G1 :“ Gz{a, b}. Für jedes A Ď Sz{a} gilt nun. |NG1 pAq| ě |NG pAq| ´ 1 ě |S| ` 1 ´ 1 “ |S| 24 3.2. Bipartites Matching Damit besitzt G1 ein Matching M von S nach T und |M | “ |S| ´ 1 nach Induktionsvoraussetzung. Nun füge man die Kante {a, b} zu M hinzu und erhalte so ein Matching M 1 mit |M 1 | “ |S| ´ 1 ` 1 “ |S|. Ź Full: Es gibt ein A1 Ď S, A1 ‰ S, A1 ‰ H mit |N pA1 q| “ |A1 |. Sei G1 der Graph auf der Knotenmenge A1 Y N pA1 q. Diese erfüllt die Hall-Bedingung und da |A1 | ă |S|, besitzt er nach Induktionsvoraussetzung ein Matching M von A1 nach N pA1 q mit |M | “ |A1 |. Sei G2 “ GzG1 . G2 erfüllt ebenfalls die Hall-Bedingung. Nehmen wir für einen moment an, daß dies nicht der Fall ist. Dann gibt es A Ď SzV pG1 q und NG2 pAq ă |A|. Somit |NG pA Y A1 q| ď |NG pAq| ` |NG pA1 q| “ |NG2 pAq| ` |NG pA1 q| ă |A| ` |A1 | “ |A Y A1 |, ein Widerspruch zu Hall-Bedingung für G. Also enthält G ´ G2 ein Matching F mit |F | “ |SzA1 | “ |S| ´ |A|. Die Mengen M und F sind nach Konstruktion disjunkt Ferner gilt. |M Y F | “ |A1 | ` |S| ´ |A1 | “ |S|, also wird S nach T gematcht. Korollar 3.11 („Heiratssatz“, Frobenius, 1917). Sei G “ pS ẎT, Eq ein bipartiter Graph. Genau dann hat G ein perfektes Matching, wenn |S| “ |T | und |ΓpHq| ě |H| für alle H Ď S. Wie sieht νpGq in einem allgemeinen bipartiten Graphen G “ pS ŸT, Eq aus ? Das Problem ist, daß die Hallbedingung |N pAq| ě |A| für gewisse A Ď S verletzt sein kann. Eine Menge A Ď S mit |A| ą |N pAq| kann nicht vollständig gematcht werden. Die in diesem Sinn nicht matchbaren Knoten definieren den Matchingdefekt. 25 Kapitel 3. Matching und Vertex-Cover Definition 3.12. Sei G “ pS ŸT, Eq ein bipartiter Graph. Der Matchingdefekt von G ist defpGq :“ max{|A| ´ |N pAq| : A Ď S}. Korollar 3.13. (Defektversion des Heiratssatzes) Sei G “ pS ŸT, Eq ein bipartiter Graph. Dann gilt νpGq “ |S| ´ defpGq. Beweis. Sei A Ď S mit |A| ´ |N pAq| “ defpGq. Sei maximales Matching. Es gilt: |A X ⋃ M | “ |NM pAq Ď |N pAq|, folglich νpGq “ |M | “ |S X ⋃ M | “ |pSzAq X ⋃ M | ` |A X ⋃ M | ď |SzA| ` |N pAq| “ |S| ´ |A| ` |N pAq| “ S ´ defpGq. Sei D eine neue Knotenmenge mit |D| “ defpGq. Setze G1 “ pS ŸpT Y Dq, E Y {{s, d}; s P S, d P D}q. Dann gilt für A Ď S: |NG1 pAq| “ |NG pAq Y D| “ |NG pAq| ` defpGq “ |NG pAq| ` max e ´ |N |A| G e A e pAq|; Ď S| ě |NG pAq| ` |A| ´ |NG pAq| “ |A|. Also erfüllt G1 die Heiratsbedingung, und es existiert ein Matching M in G1 mit |S| “ |M |. Sei f “ M X E. Dann gilt |M f | ě |M | ´ |D| “ |S| ´ defpGq und somit auch νpGq ě |S| ´ defpGq. M Ein Vertex-Cover (oder Knotenüberdeckung) in einem Graphen G “ pV, Eq ist eine Teilmenge W Ď V , in der all Kanten sind. τ pGq ist die Größe eines Vertex-Cover minimaler Kardinalität. Es gilt νpGq ď τ pGq für jeden Graphen G. Satz 3.14. (Dualitätssatz für Bipartites Matching / Vertex-Cover) Ist G bipartit, so gilt νpGq “ τ pGq. 26 3.3. Der Satz von Tutte Beweis. Sei A Ď S mit defpGq “ |A| ´ |N pAq|. W :“ pSzAq Y N pAq ist ein Vertex-Cover von G, da es keine Kanten zwischen A und T zN pAq gibt. Es folgt: τ pGq ď |W | “ |S| ´ |A| ` |N pAq| “ |S| ´ defpGq “ νpGq pKorollar 3.13q 3.3. Der Satz von Tutte Tutte gab 1947 ein einfaches Kriterium für die Existenz eines 1-Faktors in allgemeinen Graphen an. Ist G ein Graph, so sei qpGq die Anzahl der ungeraden Zusammenhangskomponenten von G “ pV, Eq. Besitzt G einen 1-Faktor, dann ist offensichtlich |S| ě qpG ´ Sq für alle S Ď V, (3.1) denn jede ungerade Zusammenhangskomponente von G ´ S enthält einen ungematchten Knoten, der durch Hinzunahme von S durch eine Matchingkante mit S verbunden wird. Der Satz von Tutte lehrt, daß diese Bedingung auch hinreichend ist. Die Bedingung (3.1) nennen wir Tutte-Bedingung. Satz 3.15 (Tutte, 1947). Ein Graph G “ pV, Eq besitzt einen 1-Faktor genau dann, wenn |S| ě qpG ´ Sq für alle S Ď V gilt. Beweis. „ñ“ ist nach der obigen Beobachtung klar. „ð“ Annahme 1: G besitzt keinen 1-Faktor. Sei G˚ der Graph, der aus G durch Hinzufügen von Kanten entsteht, derart, daß G˚ kantenmaximal ist und keinen 1-Faktor enthält. G˚ erfüllt die Tutte-Bedingung, denn qpG˚ ´ Sq ď qpG ´ Sq für alle S Ď V. gilt, da durch Hinzufügen von Kanten ungerade Komponenten von G ´ S entweder ungerade bleiben oder zu geraden Komponenten verschmolzen, werden. 27 Kapitel 3. Matching und Vertex-Cover Sei K Ď V , so daß jeder Knoten aus K zu allen Knoten aus V in G˚ adjazent ist. K heißt das Zentrum von G˚ . Sei G1 “ G˚ ´ K. Wir zeigen, daß jede Zusammenhangskomponente von G1 vollständig ist. Dann läßt sich aber folgendermaßen ein 1-Faktor von G˚ konstruieren, im Widerspruch zur Annahme 1: Ist K “ H, so ist mit der Tutte-Bedingung 0 “ |K| ě qpG˚ ´ Kq “ qpG˚ q, also qpG˚ q “ 0 und alle Zusammenhangskomponenten von G˚ sind gerade. Da sie zudem vollständig sind, finden wir einen 1-Faktor in jeder Komponente und somit in G˚ . Sei nun K ‰ H, In jeder geraden Zusammenhangskomponente von G1 finden wir einen 1-Faktor. Aus jeder ungeraden Komponente von G1 verbinden wir genau einen Knoten mit je einem Knoten aus K. Die verbleibenden, gerade viele Knoten in jeder ungeraden Zusammenhangskomponente von G1 werden vollständig gematcht. Sei K0 die Menge der verbleibenden ungematchten Knoten von K. Wegen 0 “ |H| ě qpG˚ ´ Hq “ qpG˚ q ist qpG˚ q “ 0 und alle Zusammenhangskomponenten von G˚ sind gerade, mithin ist |V | gerade. Im Fall, dass qpG˚ ´ Kq gerade ist, ist |KzK0 | gerade, somit ist |K0 | “ |V zpKzK0 q| “ |V | ´ |KzK0 | gerade und in K0 existiert ein perfektes Matching. Falls qpG˚ ´ Kq ungerade ist, ist |KzK0 | ungerade. Sei Vg die Menge der Knoten in geraden und Vu die Menge der Knoten in ungeraden Zusammenhangskomponenten von G˚ ´ K. Wegen qpG˚ ´ Kq ungerade ist |Vg | ungerade und somit |K0 | “ |V zpVg Y Vu Y pKzK0 qq| “ |V | ´ |Vg | ´ |Vu | ´ |KzK0 | |{z} gerade |{z} gerade |{z} ungerade | {z } ungerade ist gerade. In K0 können daher alle Knoten gematcht werden. Annahme 2: Es gibt eine Zusammenhangskomponente von G1 , die nicht vollständig ist. Dann existieren paarweise verschiedene Knoten a, b, c R K mit {a, b}, {b, c} P E, aber {a, c} R E. Außerdem gibt es einen Knoten d P V mit {b, d} R E, denn sonst wäre ja b P K. Da G˚ kanten-maximal ist, besitzen die Graphen G1 “ G˚ ` {a, c} und G2 “ G˚ ` {b, d} jeweils einen 1-Faktor M1 bzw. M2 . Da G˚ keinen 1-Faktor besitzt, gilt {a, c} P M1 und {b, d} P M2 . Sei P “ d . . . yx ein maximaler, pM1 , M2 q-alternierender Pfad in G˚ , der in d mit einer M1 -Kante beginnt. 28 3.3. Der Satz von Tutte Fall 1: Die letzte Kante in P ist eine M1 -Kante. Dann ist x “ b, denn andernfalls läßt sich P mit einer an x anliegenden M2 -Kante verlängern. Wir entfernen aus M2 die M2 -Kanten von P und ersetzen diese durch die M1 -Kanten von P . Dieses neue Matching ist aber ein 1-Faktor in G˚ im Widerspruch zur Wahl von G˚ . M “ pM2 zpM2 X P qq Y pM1 X P q Fall 2: Die letzte Kante von P ist eine M2 -Kante. Dann ist aber x “ a oder x “ c, denn andernfalls ließe sich P mit einer M1 -Kante, fortsetzen. Wir entfernen aus M2 die M2 -Kanten von P und nehmen die M1 -Kanten von P sowie die Kante {a, b} zu M2 hinzu. Dieses modifizierte Matching ist ein 1-Faktor von G˚ , Widerspruch! M “ pM2 zpM2 X P qq Y pM1 X P q Y {a, b} Damit ist Annahme 2 und daher auch Annahme 1 falsch. Korollar 3.16 (Petersen, 1891). Jeder kubische Graph ohne Brücke hat einen 1-Faktor. 29 Kapitel 3. Matching und Vertex-Cover Beweis. Sei G “ pV, Eq ein kubischer Graph ohne Brücke. Wir zeigen, daß G die TutteBedingung erfüllt. Sei S Ď V und sei C eine ungerade Zusammenhangskomponente von G ´ S. Da G kubisch ist, ist die Summe der Grade der Knoten von C somit ungerade. Ist epS, Cq die Anzahl der Kanten zwischen C und S und e1 die Anzahl der Kanten in C, so X gilt degpvq ´epS, Cq “ |2 {z ¨ e}1 , vPC | gerade {z ungerade } also ist epS, Cq ungerade. Weil G kubisch ist, hat G keine Brücke. Daher epS, Cq ě 2, und weil epS, Cq ungerade ist, gilt epS, Cq ě 3. Für die Gesamtzahl der Kanten epG ´ S, Sq, die zwischen S und G ´ S verlaufen, folgt 3qpG ´ Sq ď epG ´ Sq ď 3|S| , also gilt die Tutte-Bedingung |S| ě qpG ´ Sq. Nach dem Satz von Tutte besitzt G einen 1-Faktor. 30 Kapitel 4 Flüsse 4.1. Gerichtete Graphen und Flüsse ~ “ pV, Eq, ~ wobei V eine Menge ist und E ~ Ď V ˆ V . Wir Ein gerichteter Graph ist ein Paar G ~ Kanten. px, yq P E ~ nennt man nennen die Elemente aus V Knoten und die Elemente aus E die Kante von x nach y. Mit px, yq´1 bezeichnen wir die Kante py, xq. Diese Notation wenden ~ ´1 q etwa ist der gerichtete Graph, der aus G ~ durch wir auch auf Mengen von Kanten an. pV, E Umdrehen sämtlicher Kanten hervorgeht. ~ und N ´ pxq :“ {y P V ; py, xq P E} ~ die Für alle x P V seien N ` pxq :“ {y P V ; px, yq P E} Out-Nachbarn bzw. In-Nachbarn von x. Wir definieren Wege in gerichteten Graphen analog zum ungerichteten Fall. Es ist also ~ Manchmal W “ x1 . . . xl ein Weg der Länge l in G, falls für alle i P rl ´ 1s gilt pxi , xi`i q P E. spricht man bei Wegen in gerichteten Graphen zur Verdeutlichung, dass es hier auf die Richtungen der passierten Kanten ankommt, auch von gerichteten Wegen. Es bezeichne EpW q die von W passierten Kanten, also EpW q “ {pxi , xi`1 ; i P rl ´ 1s}. Wenn es der Kontext erlaubt, werden wir auch W mit EpW q identifizieren. Wir nennen einen Weg x1 . . . xl einen Pfad der Länge l, wenn alle Knoten paarweise verschieden sind. ~ ÝÑ Q` ~ Eine Funktion c : E 0 heißt Kapazitätsfunktion. Für eine Kante px, yq P E nennen wir den Wert cpx, yq die Kapazität dieser Kante. ~ cq, wobei G ~ “ pV, Eq ~ ein gerichteter Graph ist, nennt man auch NetzDas Tupel pG, werk. ~ Ñ Rě0 . Für px, yq P E ~ nennen wir f px, yq den Fluss Ein Pseudofluss ist eine Funktion f : E von x nach y, oder auch den Fluss durch die Kante px, yq. Wir sagen auch, die Kante px, yq ist flussführend, wenn f px, yq ą 0. 31 Kapitel 4. Flüsse ~ bezüglich ~ Ñ Rą0 heißt s-t-Fluss in G Definition 4.1. Seien s, t P V . Ein Pseudofluss f : E der Kapazitäten c, falls die folgenden Bedingungen gelten: ~ (i) f peq ď cpeq für alle e P E. (ii) (Kirchhoffbedingung) X X f px, yq “ yPN ` pxq f pz, xq zPN ´ pxq für alle x P V z{s, t}. Der Knoten s heißt in diesem Kontext auch Quelle (source), und t heißt Senke (sink). ~ c, s, tq, wobei G ~ “ pV, Eq ~ ein gerichteter Graph ist, heißt NetzEin solches Tupel pG, werk. Für alle x P V definiere den Nettofluss von x als Bf pxq :“ X yPN ` pxq f px, yq ´ X f pz, xq. (4.1) zPN ´ pxq Bf pxq ist also die Differenz von Einfluss in x und Ausfluss aus x. Die Kirchhoffbedingung lässt sich jetzt auch so formulieren: Bf pxq “ 0 für alle x P V z{s, t}. Proposition 4.2. Sei f ein s-t-Fluss. Dann gilt: Bf psq “ ´Bf ptq. Beweis. TODO: Beweis Der Wert |f | eines s-t-Flusses f ist der gemeinsame Wert von Bf psq und ´Bf ptq. Ein maximaler s-t-Fluss einer Instanz I “ pV, E, c, s, tq ist ein solcher, dessen Wert unter allen s-t-Flüssen von I maximal ist. Den Wert eines maximalen s-t-Flusses einer Instanz I bezeichnen wir mit fmax pIq, oder nur mit fmax , falls die Instanz durch den Kontext festgelegt ist. Problem 4.3 (Max-Flow). 32 4.1. Gerichtete Graphen und Flüsse ~ c, s, tq mit G ~ “ pV, Eq. ~ Eingabe: Ein Netzwerk I “ pG, Gesucht: Ein s-t-Fluss f von I mit |f | “ fmax pIq. Proposition 4.4. Es gibt einen maximalen s-t-Fluss. ~ auffassen. Somit ist die Beweis. Ein s-t-Fluss g lässt sich als Vektor im Rm mit m “ |E| Menge K aller s-t-Flüsse eome Teilmenge des Rm . Wir versehen den Rm mit der k¨k8 -Norm. Mit cmax “ kck8 gilt kgk8 ď cmax , also ist K beschränkt. Für jedes x P V ist die Abbildung f ÞÑ Bf pxq von K nach R stetig. Daraus folgt, dass bei einer konvergenten Folge von s-tFlüssen auch deren Grenzwert die Kirchhoffbedingung erfüllt. Somit ist K auch abgeschlossen, insgesamt also kompakt nach dem Satz von Heine-Borel. Da insbesondere die Abbildung f ÞÑ |f | p“ Bf psqq, die jedem Fluss seinen Wert zuordnet, stetig ist, nimmt sie auf K ihr Maximum an. Es gibt also einen maximalen s-t-Fluss. ~ c, s, tq ein Netzwerk mit G ~ “ pV, Eq, ~ f ein Pseudofluss Definition 4.5 (Schnitte). Sei pG, und S Ď V . ~ ; x P S, y R S} ist der (gerichtete) Schnitt, oder auch (i) Die Menge δpSq :“ {px, yq P E kurz Schnitt, zwischen S und S c “ V zS. ~ ; x R S, y P S} den (gerichteten) Schnitt, oder (ii) Es bezeichnet δ ´1 pSq :“ {px, yq P E auch kurz Schnitt, zwischen S c und S. (iii) Ist s P S und t R S, so heißt δpSq ein s-t-Schnitt. (iv) Der Nettofluss eines s-t-Schnittes δpSq sei Bf pδpSqq :“ X f peq ´ ePδpSq (v) Es ist cpδpSqq :“ P ePδpSq X f peq. ePδ ´1 pSq cpeq die Kapazität des Schnittes δpSq. ~ Wir (vi) Es bezeichne cmin die Kapazität eines kapazitäts-minimalen s-t-Schnittes in G. ~ durch den Kontext festgelegt ist. schreiben meistens cmin , wenn G Wir können nun das Min-Cut-Problem formulieren. Problem 4.6 (Min-Cut). ~ c, s, tq mit G ~ “ pV, Eq. ~ Eingabe: Ein Netzwerk I “ pG, Gesucht: Ein s-t-Schnittf mit minimaler Kapazität. 33 Kapitel 4. Flüsse Lemma 4.7. Für jeden s-t-Fluss f und jeden s-t-Schnitt δpSq gilt Bf pδpSqq “ |f |. Beweis. Beweis. Wir führen Induktion über |S|. Der Anfang S “ {s} ist klar nach Definition von |f |. Sei |S| ě 2 und v P Sz{s}. Wir haben ` δ pSz{v}q “ ´ δ pSz{v}q “ ` ` ` ´ ´ ´ ! δ pSqz δ pvq X δ pSq ´ ´ ´ ` ` ` ! Ÿ δ pvqz δ pSq X δ pvq ! δ pSqz δ pvq X δ pSq , ! Ÿ δ pvqz δ pSq X δ pvq . Dann gilt mit der Induktionsvoraussetzung |f| “ Bf pSz{v}q “ f pδ ` pSz{v}qq ´ f pδ ´ pSz{v}qq ` ` ` ´ ´ ´ ! ´ ´ ` ` ` ! ` f δ pvqz δ pSq X δ pvq “ f δ pSqz δ pvq X δ pSq ´ f δ pSqz δ pvq X δ pSq ´ ! ! ´ f δ pvqz δ pSq X δ pvq “ f pδ ` pSqq ´ f δ ` pvq X δ ` pSq ` f pδ ´ pvq ´ f δ ´ pSq X δ ´ pvq ´ f pδ ´ pSqq ` f δ ´ pvq X δ ´ pSq ´ f pδ ` pvq ` f δ ` pSq X δ ` pvq “ f pδ ` pSqq ´ f pδ ´ pSqq “ Bf pSq . Satz 4.8 (Schwache Dualität). fmax ď cmin . Beweis. Sei f ein maximaler s-t-Fluss, d.h. |f | “ fmax . Sei δpSq ein beliebiger s-t-Schnitt. Mit Lemma 4.7 gilt: fmax “ Bf pδpSqq “ X f peq ´ ePδ ´1 pSq ePδpSq ď X f peq ePδpSq ď X cpeq ePδpSq “ cpδpSqq. Also fmax ď cmin . 34 X f peq 4.2. Das Max-Flow/Min-Cut-Theorem Satz 4.8 beschreibt die schwache Dualität zwischen dem maximalen s-t-Fluss und dem minimalen s-t-Schnitt. Wir zeigen nun, dass sogar fmax “ cmin gilt. 4.2. Das Max-Flow/Min-Cut-Theorem ~ c, s, tq, Aus technischen Gründen ist es hilfreich anzunehmen, dass in einer Instanz I “ pG, ~ “ pV, Eq, ~ keine entgegengesetzten Kanten vorliegen. D.h. wir möchten, dass mit einer G Kante e P E nicht auch die umgekehrte Kante e´1 sich in E befindet. Sollten sich die Kanten e “ pv, wq sowie e´1 “ pw, vq in E befinden, so fügen wir einen zusätzlichen Knoten x ein und ersetzen e durch die beiden Kanten pv, xq und px, wq. Wir erhalten so V 1 und E 1 . Die neue Kapazität c1 setzen wir c1 pv, xq :“ c1 px, wq :“ cpv, wq und c1 peq :“ cpeq für alle e P Ez{pv, wq}. Ein optimaler s-t-Fluss für I 1 führt offenbar sofort auf einen optimalen s-t-Fluss für I. Das Ersetzen aller entgegengesetzter Kanten in I dauert Opmq, und die Größe der Instanz ändert sich nur um einen konstanten Faktor. Somit machen wir ohne Beschränkung der Allgemeinheit folgende Voraussetzung. Konvention 4.9. Für den Rest des Kapitels, soweit nicht explizit anders ausgewiesen, sind ~ c, s, tq frei von entgegengesetzten Kanten. Wenn also e P E gilt, so folgt alle Instanzen pG, e´1 R E. Mit anderen Worten: E X E ´1 “ H. Ist ein ungerichteter Pfad P “ x1 . . . xl in unserer Instanz gegeben, so wird nun damit eindeutig eine Folge von Kanten e1 , . . . , el´1 festgelegt. Wir nennen diejenigen Kanten ei , für die ei “ pxi , xi`1 q gilt, Vorwärtskanten und diejenigen, für die ei “ pxi`1 , xi q gilt, Rückwärtskanten. Die Menge aller dieser Kanten auf P bezeichnen wir mit EpP q und manchmal auch nur mit P , wenn aus dem Kontext ersichtlich ist, dass die Kanten und nicht die Knoten gemeint sind. Sei f ein s-t-Fluss und P “ x1 . . . xl ein ungerichteter s-t-Pfad so, dass folgendes gilt: • f peq ă cpeq, falls e eine Vorwärtskanten auf P ist. • 0 ă f peq, falls e eine Rückwärtskante auf P ist. Dann nennen wir P einen f -augmentierenden Pfad. f -augmentierende Pfade sind wichtig, da sie die Möglichkeit bieten, den Fluss f zu vergrößern. 35 Kapitel 4. Flüsse Definition 4.10. Sei f ein s-t-Fluss und P “ x1 . . . xl ein ungerichteter s-t-Pfad Wir definieren für alle e P EpP q e :“ cpeq ´ f peq falls e eine Vorwärtskante auf P ist f peq und falls e eine Rückwärtskante auf P ist P :“ min e . ePEpP q Es gilt unmittelbar: Proposition 4.11. P ist f -augmentierend genau dann, wenn P ą 0. P ist der Betrag, um den wir den Wert von f einfach vergrößern können. ~ cq, G ~ “ pV, Eq ~ und P “ x1 . . . xl ein f -augmentierender Lemma 4.12. Sei f ein s-t-Fluss in pG, ~ sei Pfad. Für jede Kante e “ px, yq P E 1 , fP peq :“ ´1 , 0 falls e eine Vorwärtskante auf P ist falls e eine Rückwärtskante auf P ist sonst. Dann ist fP ein s-t-Fluss. ~ Ñ Rě0 definiert durch f ˚ peq :“ f peq ` P fP peq. Dann ist auch f ˚ ein Sei ferner f ˚ : E s-t-Fluss, und es gilt |f ˚ | “ |f| ` P . Beweis. f ˚ erfüllt die Kirchhoffbedingung: Sei x P V z{s, t}. Für x R P gilt die Kirchhoffbedingung offensichtlich. Ist hingegen x P P , so kann x zwischen zwei Vorwärtskanten oder zwischen zwei Rückwärtskanten oder zwischen einer Vorwärts- und einer Rückwärtskante liegen. In den ersten beiden Fällen ist der eingehende Fluss gleich dem ausgehenden Fluss. Im dritten 36 4.2. Das Max-Flow/Min-Cut-Theorem Fall gilt f ˚ pe1 q “ f pe1 q ` p und f ˚ pe2 q “ f pe2 q ´ p , somit gilt X yPN ` pxq X f ˚ peq ´ X f ˚ peq “ yPN ´ pxq yPN ` pxq X “ X f peq ´ ´pf ˚ pe1 q ` f ˚ pe2 qq yPN ´ pxqz{u,v} f peq ´ yPN ` pxq X f peq ´ pp ´ p q yPN ´ pxq “0 , ~ da f die Kirchhoffbedingung erfüllt. f ˚ erfüllt dier Kapazitätsbedingung. Für e P EzEpP q ist nichts zu zeigen. Ist e P EpP q eine Vorwärtskante, so gilt f ˚ peq “ f peq ` P ď f peq ` cpeq ´ f peq ď cpeq . Ist e eine Rückwärtskante, so gilt f ˚ peq “ f peq ´ P ď f peq ´ f peq “ 0 ď cpeq . Der Flusswert von f ˚ ist schließlich X |f ˚ | “ Bf ˚ psq “ f ˚ ps, yq ´ yPN ` psq “ X f ps, yq ´ yPN ` psqz{x} X f ˚ pz, sq zPN ´ psq X f pz, sq ` f ps, xq ` P zPN ´ psq “ Bf psq ` P “ |f| ` P , falls ps, xq P EpP q. Analog erhält man für px, sq P EpP q das Gewünschte. Solange es in der Instanz also noch f -augmentierende Pfade gibt, kann man f vergrößern. Das gibt die Idee für einen ersten Algorithmus zur Lösung des Problems Max-Flow: Starte mit dem Fluss f :“ 0 und vergrößere diesen entlang f -augmentierender Pfade. Die effiziente Bestimmung eines f -augmentierenden Pfades (oder der Nachweis, dass es keinen solchen mehr gibt), kann mit dem Residualgraph erfolgen. Zu einem Fluss f in der Instanz ~ c, s, tq mit G ~ “ pV, Eq ~ definieren wir: pG, n o ~ ` :“ e P E ~ ; f peq ă cpeq E f n o ~ ´ :“ e´1 P E ~ ´1 ; f peq ą 0 , E f ~ f :“ E ~ ` YE ~ ´ . Den Graphen G ~ f :“ pV, E ~ f q nennen wir den Residualgraphen von f . und E f f Wir haben unmittelbar: 37 Kapitel 4. Flüsse ~ f ist ein f -augmentierender Pfad für I und umgekehrt. Proposition 4.13. Ein s-t-Pfad in G ~ f können s-t-Pfade mit einer Breitensuche gefunden werden, solange es welche gibt. Es In G folgt: Lemma 4.14. Ein f -augmentierender Pfad kann in Opmq Zeit gefunden, oder aber seine Nichtexistenz nachgewiesen werden. Algorithm 8: Ford-Fulkerson 7 ~ c, s, tq, G ~ “ pV, Eq. ~ Eingabe: Eine Instanz I “ pG, Ausgabe: Ein s-t-Fluss f von I mit |f | “ fmax pIq. Initialisiere f :“ 0; repeat Bestimme Gf ; Ausgehend von s führe eine Graphensuche in Gf durch; ~ f , stoppe; Gibt es keinen s-t-Pfad in G ~ f (welcher somit ein f -augmentierender Pfad für I Gibt es einen s-t-Pfad P in G ist), so berechne P ; Setze f :“ f ` P fP ; 8 until endlos; 1 2 3 4 5 6 Proposition 4.15. Bei rationalen Kantenkapazitäten terminiert der Ford-Fulkerson-Algorithmus in Opmfmax q Zeit. Beweis. Da alle Kantenkapazitäten rationale Zahlen sind, gibt es für sie einen gemeinsamen Nenner N P N. Für jeden f -augmentierenden s-t-Pfad P ist P der Wert des Flusses über eine Kante oder die Differenz aus dem Fluss über eine Kante und einer Kapazität. Ist also f peq für ~ eine rationale Zahl der Form n (n P N), dann ist auch P ein Vielfaches alle Kanten e P E N von N1 . Da der initiale Fluss f “ 0 unsere Annahme erfüllt, erhalten wir induktiv, dass in Algorithmus 8 der Fluss in jedem Schritt um ein Vielfaches von (und damit mindestens um) 1 erhöht wird. Somit werden höchstens fmax {N Schritte benötigt. Mit Lemma 4.14 erhalten N wir die gemischte Laufzeit. Satz 4.16 (Max-Flow/Min-Cut-Theorem). Der Ford-Fulkerson-Algorithmus liefert, falls er terminiert, einen maximalen s-t-Fluss und es gilt fmax “ cmin in Opmfmax q Zeit. Beweis. Nachdem der Algorithmus terminiert ist, gibt es im Netzwerk keine f -augmentierenden s-t-Pfade mehr. Sei U Ď V die Menge aller Knoten, die auf einem f -augmentierenden Pfad 38 4.3. Schneller Ford-Fulkerson mit Startknoten s zu erreichen sind. Es gilt dann s P U und t R U , womit δpU q ein s-t-Schnitt ist. Für alle e “ px, yq P δpU q gilt f peq “ cpeq, da sonst der x-erreichende f -augmentierende ~ s-t-Pfade um e verlöngert werden könnte. Mit demselben Argument gilt für eine Kante e P E, für die e P δ ´1 pU q ist, dass f peq “ 0. Es folgt Bf pδpU qq “ X ePδpU q “ X f peq ´ X f peq ePδ ´1 pU q cpeq “ cpδpU qq. ePδpU q Mit dem Satz4.8 und Lemma 4.7 folgt cmin ě fmax ě |f| “ Bf pδpU qq “ cpδpU qq ě cmin . Wir haben also in dieser Ungleichungskette überall Gleichheit und damit |f | “ fmax . Ferner erhalten wir das folgende Korollar. ~ c, s, tq, G “ pV, Eq ~ eine Instanz so, dass cpeq P N für alle e P E ~ Korollar 4.17. Sei I “ pG, gilt. Dann findet der Algorithmus von Ford und Fulkerson in Opmfmax q Zeit einen ganzzahligen ~ maximalen s-t-Fluss f , d.h. es gilt |f | “ fmax pIq und f peq P N für alle e P E. 4.3. Der Fluss-Algorithmus von Edmonds und Karp Unter Umständen kann der Ford-Fulkerson-Algorithmus sehr lange brauchen, bis er terminiert. Man betrachte zum Beispiel die folgende Instanz: Es gilt hier fmax “ 2 ¨ 10k . Wählt der Algorithmus als f -augmentierende Pfade abwechselnd die Pfade mit den Kanten abe und dbc, so benötigt er 2 ¨ 10k Iterationen, um einen maximalen Fluss zu finden. Dies ist nicht polynomiell in der Eingabelänge. Wir werden sehen, dass die Wahl von einem kürzesten f -augmentierenden Pfad zu folgenden Verbesserungen führen: 39 Kapitel 4. Flüsse • Eine Laufzeit von Opnm2 q, • Die Forderung, dass alle Kantenkapazitäten rational sind, kann fallengelassen werden. ~ c, s, tq, G ~ “ pV, Eq ~ eine Instanz und H ~ “ pV, F~ q ein Graph auf Definition 4.18. Sei I “ pG, V. ~ (i) Sei dst pHqdie Länge eines kürzesten s-t-Pfades in H. ~ bezeichnen wir die Menge aller Kanten e P F~ , für die gilt: Es gibt einen (ii) Mit Eµ pHq ~ der e enthält. s-t-Pfad mit Länge dst pHq, ~ c, s, tq, G ~ “ pV, Eq. ~ Definiere G ~ 1 :“ pV, E ~ Y Eµ pGq ~ ´1 q. Dann gilt Lemma 4.19. Sei I “ pG, ~ “ Est pG ~ 1q (i) Est pGq ~ “ dst pG ~ 1q (ii) dst pGq ~ ist wegen (ii) auch ein s-t-Pfad Beweis. Aussage (ii) folgt aus (i): ein kürzester s-t-Pfad in G ~ 1 , somit gilt dst pG ~ und G ~ 1 vertauschen, folgt ~ 1 q ď dst pGq, ~ und wenn wir die Rollen von G in G ~ ď dst pG ~ 1 q, also (ii). dst pGq ~ 1 keine Kanten aus E ~ st pGq ~ ´1 Für den Beweis von (i) zeigen wir, dass ein kürzester s-t-Pfad in G ~ auch einer in G ~ 1 und umgekehrt, was enthält. Denn dann ist ein kürzester s-t-Pfad in G ~ st pGq ~ “E ~ st pG ~ 1 q impliziert. Annahme: Es gibt einen kürzesten s-t-Pfad P in G ~ 1 , der sofort E ~ st pGq ~ ´1 enthält. Sei e´1 “ pw, vq die erste derartige Kante auf P und sei eine Kante aus E ~ st pGq. ~ Von den Pfaden P1 “ s . . . w und P2 “ v . . . t ist P1 ein Pfad in G. ~ e “ pv, wq P E ~ st pGq, ~ gibt es einen s-t-Pfad Q in G, ~ der e enthält. Die Pfade Q1 “ s . . . v und Da e P E ~ als auch in G ~ 1 . Der Pfad P1 Q2 “ s . . . w . . . t ist ein Q2 “ w . . . t sind sowohl Pfade in G ~ also dst pGq ~ ď lpP1 Q2 q. Andererseits ist Q1 P2 “ s . . . v . . . t ein s-t-Pfad in G, ~ s-t-Pfad in G, ~ 1 q ď lpQ1 P2 q. somit dst pG P : Q: Q1 e´1 w s P1 P2 v t e Q2 40 4.3. Schneller Ford-Fulkerson Der entscheidende Punkt ist, dass die Pfade P1 Q2 und Q1 P2 genau zwei Knoten weniger traversieren als P und Q. Somit gilt ~ ` dst pG ~ 1 q ď lpP1 Q2 q ` lpQ1 P2 q dst pGq “ |V pP1 Q2 q| ` |V pQ1 P2 q| “ |V pP q| ` |V pQq| ´ 2 ~ ` dst pG ~ 1q ´ 2 “ dst pGq ~ ` dst pG ~ 1q , ă dst pGq Widerspruch. Algorithm 9: Edmonds und Karp, 1972 ~ c, s, tq, G ~ “ pV, Eq. ~ Eingabe: Ein Netzwerk pG, 7 Ausgabe: Ein s-t-Fluss f mit |f | “ fmax . Initialisiere f :“ 0; repeat ~f; Erzeuge G ~ f durch. Dies bestimmt einen kürzesten Führe beginnend bei s Breitensuche in G ~ f , falls ein solcher existiert; gerichteten s-t-Pfad in G ~ f , so Abbruch.; Findet die Breitensuche keinen s-t-Pfad in G ~ f , so bestimme P Findet die Breitensuche einen kürzesten s-t-Pfad P in G bezüglich des durch P induzierten f -augmentierenden Pfades.; Setze f :“ f ` P fP ; 8 until endlos; 1 2 3 4 5 6 Satz 4.20. Der Algorithmus von Edmonds und Karp bestimmt einen s-t-Fluss mit maximalem Wert in der Zeit Opnm2 q. Diese Aussage bleibt richtig, selbst wenn die Kantenkapazitäten nicht sämtlich rational sind. Beweis. Wenn wir Gf mit Adjazenzlisten erzeugen, geht die Breitensuche in Opmq. Jeder der Schritte 2 bis 6 braucht dann Opmq. Somit kostet eine Iteration Opmq. Wir zeigen nun, dass es nach spätestens Opmnq Iterationen keinen f -augmentierenden s-tPfad mehr gibt. Wie im Beweis des Max-Flow/Min-Cut-Theorems (Satz 4.16) sieht man dann, dass f ein Fluss maximalen Wertes ist. Dies gibt die Gesamtlaufzeit von Opnm2 q. ~ f für irgendeine Iteration gegeben und P darin ein kürzester s-t-Pfad. Definiere G ~ 1 :“ Sei G f ´1 ~ ~ pV, Ef Y Eµ pGf q q. Sei fP der entlang P augmentierte s-t-Fluss. 41 Kapitel 4. Flüsse ~ f ein Subgraph von G ~ 1f . Ob und in welcher Richtung zwei Knoten in G ~f Es ist dann G P P ~ verbunden sind, hängt alleine vom Fluss auf den Kanten, die diese Knoten in G verbinden, und deren Kapazitäten ab. Beim übergang von f zu fP gab es diesbezüglich nur Veränderungen ~ f q enthalten sind, folgt die Behauptung. entlang von P . Da die Kanten von P in Est pG Wir erhalten mit Lemma 4.19 (ii) ~ 1 q “ µpGf q, µpGf ˚ q ě µpG f (4.2) Die obige Ungleichung gilt in jeder Iteration, also wird die Länge kürzester s-t-Pfade nicht kleiner. Da die Länge eines kürzesten s-t-Pfades höchstens n ist, kann die Ungleichung ~ f q ă dst pG ~ f q in höchstens n Iterationen gelten. In diesem Fall sagen wir, dass ein dst pG P Knoten „verbraucht“ wurde. Was passiert aber, wenn in einer Iteration kein Knoten verbraucht ~ f q “ dst pG ~ f q? wird, also dst pG P ~ f ein Subgraph von ~ f q “ dst pG ~ 1f q. Wir bemerkten bereits, dass G Dann folgt aus (1): dst pG P P ~ ~ ~ 1 , somit Gf ist. Also ist jeder kürzeste s-t-Pfad in GfP auch ein kürzester s-t-Pfad in G f 1 ~ ~ ~ ~ ~ ~ ~ ~ ~ Est pGfP q ď Est pGf q “ Est pGf q. Offenbar gilt aber EpP q ď Est pGf q. Auf jeder Kante von ~f , P , auf der das Minimum der Flussausnutzung P angenommen wird, ist nicht mehr in G P ~ ~ also auch nicht in Est pGf q enthalten. Wir sagen, eine Kante wurde „verbraucht“. Somit wird in jeder Iteration entweder ein Knoten oder eine Kante verbraucht. Wenn eine Kante verbraucht wird, so geschieht dies nacheinander höchstens Opmq mal, denn spätestens dann wird wieder ein Knoten verbraucht. Da nur n Knoten vorhanden sind, kann es höchstens Opnmq Iterationen geben. 4.4. Zusammenhang ~ “ pV, Eq ~ ein gerichteter Graph und C “ x1 . . . xl ein Kreis in G. ~ Wie üblich ist Es sei G ~ V pCq die Knotenmenge und EpCq “ {pxi , xi`1 q, pxl , x1 q ; i P rl ´ 1s} die Kantenmenge von C. Anders als im ungerichteten Fall können unter Umständen Kreise in gerichteten Graphen bereits auf nur zwei Knoten realisiert werden. Wie aber auch schon im ungerichteten Fall gibt es hier keine Kreise der Länge Null (und auch nicht der Länge 1). ~ c, s, tq ~ “ pV, Eq ~ ein gerichteter Graph. Ein s-t-Fluss einer Instanz pG, Definition 4.21. Sei G ~ derart gibt, dass jede Kante des Kreises flussführend heißt kreisfrei, wenn es keinen Kreis in G ist. 42 4.4. Zusammenhang ~ “ pV, Eq ~ ein gerichteter Graph und pG, ~ c, s, tq eine Instanz. Zu Proposition 4.22. Sei G ~ gibt es einen kreisfreien s-t-Fluss f 1 so, dass |f | “ |f 1 |. Ist f ganzzahlig, jedem s-t-Fluss f in G so kann auch f 1 ganzzahlig gewählt werden. ~ Beweis. Wir eliminieren sukzessive die flussführenden Kreise. Sei x1 . . . xl ein Kreis in G, e1 , . . . , el die Kanten dieses Kreises und f pei q ą 0 für alle i P rls. Setze δ :“ min{f pei q ; i P rls}. Dann ist δ ą 0, und im Falle eines ganzzahligen Flusses ist δ P N. Ferner ist f pej q “ δ für ein j P rns. Definiere den neuen Fluss f˜ f˜peq :“ falls e P {e1 , . . . , el } f peq sonst f peq ´ δ . Dann ist f˜ wieder ein s-t-Fluss, denn für keinen Knoten hat sich der Nettofluss verändert. Aus diesem Grunde ist auch |f˜| “ |f |. Aber der Kreis x1 , ¨ ¨ ¨ , xl ist nicht mehr flussführend für f˜. Wir iterieren dieses Verfahren. Ist f ganzzahlig, so ist wegen δ P N auch f˜ ganzzahlig. ~ c, s, tq, G ~ “ pV, Eq. ~ Ist eine Funktion Sei PpIq die Menge aller s-t-Pfade in einer Instanz pG, g : PpIq ÝÑ Rě0 gegeben, so erhalten wir durch ~ ÝÑ Rě0 , e ÞÑ f :E X gpP q P PPpGq ~ q ePEpP einen Fluss. Sofern dieser die Kapazitätsbedingungen erfüllt, ist es auch ein s-t-Fluss, da die Kirchhoffbedingung automatisch erfüllt ist. Die folgende Proposition beschreibt, dass man jeden kreisfreien Fluss und damit nach Proposition 4.22 im wesentlichen jeden Fluss auf diese Weise ausdrücken kann. ~ “ pV, Eq ~ ein gerichteter Graph und pG, ~ c, s, tq eine Instanz des Proposition 4.23. Sei G ~ so, dass |f | ě 0. Dann gibt es g : PpIq ÝÑ Flussproblems. Sei f ein kreisfreier s-t-Fluss in G P Rě0 so, dass für alle e P E gilt f peq “ P PPpIq,ePP gpP q. Ist f ganzzahlig, so kann auch gpP q P Z für alle P P PpIq erreicht werden. Beweis. Übungsaufgabe 4.4. Für kreisfreie Flüsse mit nichtnegativem Wert werden wir im folgenden je nach Anwendung eine passende der beiden Darstellungen wählen. Wir wenden uns nun dem Zusammenhang zu. Definition 4.24. 43 Kapitel 4. Flüsse (i) Sei k P N. Ein Graph G “ pV, Eq heißt k-zusammenhängend, falls |V | ě k ` 1 und G ´ W für jede Menge W Ď V mit |W | ď k ´ 1 zusammenhängend ist. (ii) G heißt k-kantenzusammenhängend, falls |V | ě 2 und GzF für jede Menge F Ď E mit |F | ď k ´ 1 zusammenhängend ist. (iii) Definiere die Zusammenhangszahl von G als κpGq :“ max{k ; G ist k-zusammenhängend}, und die Kantenzusammenhangszahl von G als λpGq :“ max{k ; G ist k-kantenzusammenhängend}. Satz 4.25 (Menger 1932). Sei G “ pV, Eq ein Graph und s, t P V . (i) Die minimale Anzahl1 der Kanten, die s und t trennen, ist gleich der maximalen Anzahl kantendisjunkter s-t-Pfade in G. (ii) Es seien s, t P V nicht benachbart. Die minimale Anzahl der Knoten, die s und t trennen, ist gleich der maximalen Anzahl knotendisjunkter s-t-Pfade in G. Beweis. Zu (i) Seien λ die Kardinalität einer kardinalitäts-minimalen s-t-trennenden Kantenmenge und sei p die Kardinalität einer kardinalitäts-maximalen Menge kantendisjunkter s-t-Pfade in G. Zu zeigen ist λ “ p. Entfernt man aus jedem dieser Pfade eine Kante, so ist die Menge dieser Kanten ein s-t-Kantenschnitt. Daher gilt λ ě p. Für die anderen Abschätzung wenden wir das Max-Flow/Min-Cut-Theorem (Satz 4.16) an. ~ c, s, tq folgendermaßen: für x, y P V gilt Wir definieren die Instanz I “ pV, E, ~ : ðñ {s, x} P E ps, xq P E ~ : ðñ {x, t} P E px, tq P E ~ : ðñ {x, y} P E und x, y P V z{s, t} py, xq, px, yq P E ~ cpeq :“ 1 @e P E ~ “ pV, Eq. ~ Jede s und t trennende Menge von Kanten in G definiert einen sSchreibe G ~ im Sinne des Max-Flow/Min-Cut-Theorems. Ist cmin die Kapazität eines t-Schnitt in G ~ cq, so haben wir λ “ cmin . minimalen s-t-Schnitts in pG, 1 Gemeint ist die Kardinalität einer kardinalitäts-minimalen Menge von Kanten, deren Herausnahme aus dem Graphen s und t trennt. Die später gebrauchte Bezeichnung „maximale Anzahl“ ist auch in diesem Sinne zu verstehen. 44 4.5. Aufgaben ~ cq, den wir nach Proposition Nach 4.17 gibt es einen ganzzahligen maximalen s-t-Fluss f in pG, 4.22 kreisfrei wählen können. f sei als Funktion auf PpIq beschrieben. Dann gilt f pP q P {0, 1} für alle P P PpIq. Da die Kapazitäten sämtlich 1 sind, ist somit die Menge aller flussführenden Pfade, deren Kardinalität k sei, kantendisjunkt. Wegen der Kreisfreiheit führen keine zwei Kanten px, yq und py, xq Fluss. Somit definieren die flussführenden Pfade auch im ungerichteten Graphen G eine Menge von k kantendisjunkten Pfaden, womit p ě k gilt. Nach Definition von k ist k “ |f |. Es folgt p ě k “ |f| “ fmax “ cmin “ λ. ~ wie in (i). In dieser Instanz ersetze jeden Knoten v P V z{s, t} durch zwei Zu (ii). Seien I und G Knoten v` , v´ . Die In-Kanten von v werden zu In-Kanten von v` und die Out-Kanten von v zu Out-Kanten von v´ . Dazu gibt es die Kante pv` , v´ q. Wende das Max-Flow/Min-Cut-Theorem auf das entstandene Netzwerk an. Aus dem Mengerschen Satz erhalten wir den Satz von Whitney. Korollar 4.26 (Whitney). Sei G “ pV, Eq ein Graph mit |V | ě 2. (i) G ist k-kantenzusammenhängend genau dann, wenn je zwei Knoten durch k kantendisjunkte Wege verbunden werden können. (ii) G ist k-knotenzusammenhängend genau dann, wenn je zwei Knoten durch k knotendisjunkte Pfade verbunden werden können. 4.5. Aufgaben 4.1. Sei f ein s-t-Fluss. Dann gilt: Bf psq “ ´Bf ptq. 4.2. Für jeden s-t-Fluss f und jeden s-t-Schnitt δpSq gilt Bf pδpSqq “ |f |. ~ c, s, tq, G ~ “ pV, Eq. ~ Definiere G ~ 1 :“ pV, E ~ Y Eµ pGq ~ ´1 q. Dann gilt 4.3. Sei I “ pG, ~ “ Est pG ~ 1q (i) Est pGq ~ “ dst pG ~ 1q (ii) dst pGq 45 Kapitel 4. Flüsse ~ “ pV, Eq ~ ein gerichteter Graph und pG, ~ c, s, tq eine Instanz des Flussproblems. 4.4. Sei G ~ so, dass |f | ě 0. Dann gibt es g : PpIq ÝÑ Rě0 so, dass Sei f ein kreisfreier s-t-Fluss in G P für alle e P E gilt f peq “ P PPpIq,ePP gpP q. Ist f ganzzahlig, so kann auch gpP q P Z für alle P P PpIq erreicht werden. 4.5. Man zeige, dass es in jedem Netzwerk, welches nur ganzzahlige Kantenkapazitäten hat, einen optimalen Fluss mit ganzzahligen Werten gibt. Ferner verdeutliche man sich an einem Beispiel, dass dies im Falle mehrerer Güter nicht so zu sein braucht. 4.6. Konstruiere mit dem Flussalgorithmus von Ford-Fulkerson ein Maximum-Matching in einem bipartiten Graphen. 4.7. Konstruiere (direkt) mit dem Flussalgorithmus von Ford-Fulkerson ein Vertex-Cover minimaler Kardinalität in einem bipartiten Graphen. 4.8. Zeige mit dem Max-Flow/Min-Cut Theorem die Dualität von Matching und Vertex-Cover im bipartiten Fall. 4.9. Jeder zusammenhängende Graph besitzt einen Knoten, dessen Herausnahme den Zusammenhang nicht zerstört. 4.10. Sei k ě 2 eine natürliche Zahl. Ein zusammenhängender, k-regulärer bipartiter Graph ist 2-zusammenhängend. 4.11. Sei cpGq die Anzahl der Zusammenhangskomponenten eines Graphen G “ pV, Eq (n “ |V |, m “ |E|). Dann gilt cpGq ` m ě n. 4.12. a) Für jeden Graphen G gilt κpGq ď λpGq. b) λpGq ď δpGq (Hinweis zu a): Betrachte die Fälle λpGq “ 0, 1 gesondert und führe dann den Beweis für den Fall λpGq ě 2.) 4.13. Ein 3-regulärer Graph heißt kubisch. Zeige κpGq “ λpGq für kubische Graphen G. 4.14. Sei G “ Qd der d´dimensionale Würfelgraph. Bestimme κpGq und λpGq. 46 Kapitel 5 Planarität von Graphen 5.1. Die Eulerformel Anschaulich heißt ein Graph planar, wenn er sich in der Ebene so zeichnen lässt, dass sich Kanten nur dort überschneiden, wo sie gemeinsam in einem Knoten inzidieren. Die Kanten können dabei Kurvenstücke im R2 sein. Ein solche Darstellung nennt man eine kreuzungsfreie Einbettung in der Ebene. Wir präzisieren dies mit Hilfe von Jordankurven. Definition 5.1. Sei γ : r0, 1s ÝÑ R2 eine stetige Abbildung. Dann heißt γ ein Jordanbogen, wenn γ injektiv ist. γ heißt eine Jordankurve, wenn γ|r0,1q injektiv ist und γp0q “ γp1q gilt. Wir bezeichnen jeweils auch das Bild γpr0, 1sq Ă R2 als Jordanbogen oder -kurve. Aus dem Zusammenhang wird immer klar sein, ob mit „Jordanbogen“ oder „Jordankurve“ eine Funktion oder eine Teilmenge des R2 gemeint ist. Sind a, b P R, a ă b und γ̃ : ra, bs ÝÑ R stetig, so ist offenbar J :“ γ̃pra, bsq ein Jordanbogen, wenn γ̃ injektiv ist und J eine Jordankurve, wenn γ̃|ra,bq injektiv und γ̃paq “ γ̃pbq ist. Wir zitieren ohne Beweis ein fundamentales Ergebnis über Jordankurven, das in Vorlesungen zur komplexen Analysis bewiesen wird. Satz 5.2 (Jordanscher Kurvensatz (1905)). Sei J eine Jordankurve. Dann hat R2 zJ genau zwei Zusammenhangskomponenten K1 , K2 , und es gilt BK1 “ J “ BK2 . Definition 5.3. Sei G “ pV, Eq ein Graph. (i) Seien φV , φE zwei Abbildungen φV : V ÝÑ R2 und φE von E in die Menge aller Jordanbögen. Es gelten die folgenden Bedingungen: • φV ist injektiv. • φE peq X φV pV q “ φE peqp{0, 1}q für alle e P E. 47 Kapitel 5. Planarität von Graphen • φE peqp{0, 1}q “ φV peq. • φE peq X φE pf q “ φV pe X f q für alle e, f P E, e ‰ f . Dann nennen wir das Paar pφV , φE q eine Einbettung von G. (ii) Das Bild pφV pV q, φE pEqq in R2 nennen wir den eingebetteten Graphen oder auch ebenen Graphen G. (iii) G heißt planar, wenn er eine Einbettung in R2 besitzt. Abbildung 5.1. Planare Graphen. Im folgenden identifizieren wir bei planaren Graphen den (abstrakten) Graphen mit dem eingebetteten Graphen (zu irgendeiner Einbettung). G steht also abhängig vom Zusammenhang für ein Paar pV, Eq oder für eine Menge aus Punkten und Jordanbögen oder auch für eine Teilmenge des R2 . Wir sprechen auch von Knoten und Kanten, wenn eigentlich Punkte oder Jordanbögen im R2 gemeint sind. Durch den Begriff der Einbettung wird eine Darstellung, eine Zeichnung des Graphen in der Ebene formalisiert, bei der gilt: • Jeder Knoten wird durch einen anderen Punkt in der Ebene dargestellt. • Jede gezeichnete Kante überschneidet die Menge dieser Punkte genau mit ihren Enden. • Jede gezeichnete Kante verbindet die Punkte ihrer Endknoten miteinander. 48 5.1. Die Eulerformel Abbildung 5.2. Nicht-planare Graphen. • Gezeichnete Kanten schneiden sich genau in den Punkten, die zu Knoten gehören, in denen diese Kanten inzident sind. Definition 5.4. Sei G ein planarer Graph. Dann heißen die Zusammenhangskomponenten von R2 zG die Gebiete von G. Man kann zeigen, dass die Ränder der Gebiete Vereinigung von Kanten sind. Da ein eingebetteter Graph beschränkt ist, hat er genau ein unbeschränktes Gebiet. Proposition 5.5. Sei G ein planarer Graph. Dann hat G genau dann genau ein Gebiet, wenn G ein Wald ist. Beweis. Ist G ein Wald, so gibt es nur das eine Gebiet von G, nämlich das unbeschränkte Gebiet. Umgekehrt, wenn G einen Kreis enthält, so besitzt G mit dem Jordanschen Kurvensatz mindestens zwei Gebiete. Satz 5.6 (Eulerformel). Sei G “ pV, Eq ein planarer, zusammenhängender Graph mit Gebietsmenge R. Dann gilt |V | ´ |E| ` |R| “ 2. Beweis. Wir führen eine Induktion nach |R| durch. Ist |R| “ 1, so besitzt G keinen Kreis und ist, weil zusammenhängend, ein Baum, also |V | ´ |E| ` |R| “ |V | ´ p|V | ´ 1q ` 1 “ 2. 49 Kapitel 5. Planarität von Graphen Sei nun |R| ě 2. Dann besitzt G einen Kreis und ist kein Baum. Sei C ein solcher Kreis. Sei e P C eine Kante. Dann gilt: G1 :“ G ´ e hat |R1 | “ |R| ´ 1 Gebiete. Mit G1 “ pV 1 , E 1 q und der Induktionsvoraussetzung erhalten wir 2 “ |V 1 | ´ |E 1 | ` |R1 | “ |V | ´ p|E| ´ 1q ` p|R| ´ 1q “ |V | ´ |E| ` |R|. Definition 5.7. Unter der Taillenweite (oder auch Girth) eines Graphen G verstehen wir die Länge eines kürzesten Kreises in G. Hat G keine Kreise, so setzen wir 8 als seine Taillenweite. Satz 5.8. Sei G “ pV, Eq ein planarer, zusammenhängender Graph mit n :“ |V | ě 3, g m :“ |E| und Taillenweite g. Dann gilt m ď max{ g´2 pn ´ 2q, n ´ 1}, falls g ‰ 8 und sonst m “ n ´ 1. Beweis. Es gilt 3 ď g ď 8. Fall 1: g “ 8, dann ist G ein Baum, also m “ n ´ 1. Fall 2: g ă 8, dann gilt g ď n. Induktion über n: Induktionsanfang: Sei n “ 3. Dann ist G “ K3 und g “ 3 und die Behauptung gilt mit pg{pg ´ 2qqpn ´ 2q “ 3. Induktionsschluss: Fall a: G besitzt eine Brücke e P E. G ´ e besitzt zwei Zusammenhangskomponenten G1 “ pV1 , E1 q, G2 “ pV2 , E2 q. Sei ni “ |Vi |, mi “ |Ei |, i “ 1, 2. Dann gilt m “ m1 ` m2 ` 1 g g ď max{ pn1 ´ 2q, n1 ´ 1} ` max{ pn2 ´ 2q, n2 ´ 1} ` 1 g´2 g´2 g ď max{ pn ´ 2q, n ´ 1}. g´2 Fall b: G besitzt keine Brücken. Dann liegt jede Kante im Rand von genau 2 Gebieten von G. Sei ri die Anzahl der Gebiete von G mit genau i begrenzenden Kanten. Dann ist 2m “ X iri “ i also Es folgt m ď 50 m`2 g pn g´2 ´ 2q. X iěg Satz 5.6 “ iri ě g X ri “ g|R|, i n ` |R| ď n ` 2m . g 5.2. Der Satz von Kuratowski und Wagner Korollar 5.9. Sei G “ pV, Eq planar und n :“ |V | ě 3, m :“ |E|. Dann gilt m ď 3n ´ 6 und, falls der Graph dreiecksfrei ist, m ď 2n ´ 4. Korollar 5.10. K5 und K3,3 sind nicht planar. Beweis. |EpK5 q| “ 5 2 “ 10, aber 3|V pK5 q| ´ 6 “ 9, mit Korollar 5.9 ist K5 nicht planar. |EpK3,3 q| “ 9, aber 2|V pK3,3 q| ´ 4 “ 8. Wiederum mit Korollar 5.9 ist K3,3 nicht planar. 5.2. Der Satz von Kuratowski und Wagner Definition 5.11. (i) Seien v, w Knoten des Graphen G. Wir sagen, H gehe aus G durch Verschmelzen der Knoten v und w hervor, wenn sich in H anstelle von v und w ein neuer Knoten befindet, mit dem alle Kanten inzident sind, die vorher mit v oder w inzident waren. Alle übrigen Knoten und Kanten sind in H wie in G. (ii) Der Graph H gehe aus dem Graphen G dadurch hervor, dass zunächst Knoten oder Kanten gelöscht und dann Knoten verschmolzen werden. Dann nennen wir H einen Minor von G. Wir sagen auch, G enthalte H als Minor. (iii) Der Graph G gehe aus dem Graphen H durch sukzessives Einfügen neuer Knoten vom Grad 2 auf Kanten hervor, d.h. die Kanten von H werden durch Pfade der Länge ě 1 ersetzt. Dann heißt G Unterteilung von H. (iv) Wir sagen, G enthalte H als Unterteilung (oder als topologischen Minor), wenn G einen Subgraphen besitzt, der eine Unterteilung von H ist. Wir zitieren ohne Beweis: Satz 5.12 (Kuratowski und Wagner). Sei G ein Graph. Dann sind äquivalent: (i) G ist planar. (ii) G enthält weder K5 noch K3,3 als Minor. (iii) G enthält weder K5 noch K3,3 als topologischen Minor. 51 Kapitel 5. Planarität von Graphen 5.3. Färbbarkeit planarer Graphen In diesem Abschnitt geht es um die Färbbarkeit planarer Graphen. Diese lassen sich mit „wenigen“ Farben färben. Kenneth Appel, Wolfgang Haken (in Zusammenarbeit mit John Koch) zeigten durch einen computergestützten Beweis 1976, dass jeder planare Graph mit vier Farben gefärbt werden kann. Der Beweis besteht aus einer Fallunterscheidung mit mehereren tausend Fällen. Der heutzutage kürzeste Beweis hat immerhin nur noch 633 Fallunterscheidungen (Seymour et al, 1996). Hier führen wir nur Beweise für die 6- und anschließend die 5-Färbbarkeit von planaren Graphen, um einen Einblick in das Thema zu geben. Lemma 5.13. Ein planarer Graph G “ pV, Eq besitzt einen Knoten mit Grad höchstens 5. Beweis. Angenommen die Aussage ist falsch. Dann gilt deg v ě 6 für alle v P V , insbesondere P n ě 3. Es folgt 2m “ vPV deg v ě 6n, also m ě 3n. Dies ist ein Widerspruch zu Korollar 5.9. Satz 5.14. Jeder planare Graph G ist mit sechs Farben färbbar. Beweis. Wir führen Induktion über die Anzahl der Knoten. Nach Lemma 5.13 gibt es einen Knoten v mit Grad höchstens 5. G ´ v ist planar und besitzt nach Induktionsvoraussetzung eine 6-Färbung. Wähle diese und setze sie auf v fort, indem für v eine der 6 Farben ausgesucht wird, die nicht unter den Nachbarn von v vorkommt. Da v höchstens 5 Nachbarn hat, ist dies möglich. Satz 5.15. Jeder planare Graph G ist mit fünf Farben färbbar. Beweis. Induktion über die Anzahl der Knoten : Besitzt G nur einen Knoten so ist nichts zu zeigen und der Induktionsanfang ist gegeben und wir können zum Induktionsschluss gehen. Annahme: G sei nicht mit fünf Farben färbbar. Wir wählen unter diesen Graphen den Graph G so, dass die Anzahl der Kanten minimal ist. Wir identifizieren G mit einer ebenen Einbettung. Gibt es einen Knoten mit Grad höchstens 4, so können wir wie im Beweis von Satz 5.14 zeigen, dass G 5-färbbar ist. Widerspruch! O.B.d.A habe nun also jeder Knoten mindestens Grad 5. Dann gibt es nach Lemma 5.13 einen Knoten v so, dass deg v “ 5 ist. Seien v1 , . . . , v5 die Nachbarn von v und so nummeriert, dass sie in der Einbettung im Uhrzeigersinn liegen (siehe Abbildung 5.3). 52 5.3. Färbbarkeit planarer Graphen Abbildung 5.3. v und seine Nachbarn. Nach Induktionsvoraussetzung gibt es eine 5-Färbung von G ´ v. Ohne Beschränkung der Allgemeinheit habe vi die Farbe i. Bezeichne Hpi, jq den von den Knoten der Farben i und j induzierten Subgraphen von G. Wir zeigen: Für alle i, j P r5s, i ‰ j, liegen vi und vj in der selben Zusammenhangskomponente von Hpi, jq. (5.1) Angenommen, vi und vj liegen für eine Wahl von i, j P r5s, i ‰ j, in verschiedenen Zusammenhangskomponenten von Hpi, jq. In der Komponente von vi können wir die Farben i und j vertauschen und haben weiterhin eine zulässige Färbung vorliegen. In dieser Färbung haben vi und vj beide die Farbe j. Unter den 5 Nachbarn von v kommen also nur noch vier Farben vor, womit eine der fünf Farben für v übrig bleibt. Wir färben v mit dieser Farbe und erhalten eine 5-Färbung von G. Widerspruch. Damit gilt 5.1. Es liegen also insbesondere v1 und v3 zusammen in einer Komponente von Hp1, 3q und v2 53 Kapitel 5. Planarität von Graphen und v4 zusammen in einer Komponente von Hp2, 4q. Somit gibt es einen Pfad P1,3 in Hp1, 3q bestehend abwechselnd aus Knoten der Farben 1 und 3 (weil er in Hp1, 3q verläuft) von v1 nach v3 . Ebenso gibt es einen Pfad P2,4 in Hp2, 4q der v2 mit v4 verbindet und abwechselnd aus Knoten der Farben 2 und 4 besteht. Abbildung 5.4. P1,3 und P2,4 schneiden sich. Aufgrund der Lage der Knoten in der Einbettung kreuzen sich P1,3 und P2,4 , (siehe in Abbildung 5.4). Dies kann aber nicht in einem Knoten passieren, da die Farbe der Knoten eindeutig ist. Also kreuzen sich die Pfade außerhalb von Knoten und es liegt keine ebene Einbettung vor, im Widerspruch zur Planarität von G. 54 Kapitel 6 Färbbarkeit 6.1. Der Greedy-Algorithmus Eine k-Knotenfärbung eines Graphen G “ pV, Eq ist eine Abbildung f : V Ñ {1, . . . , k} mit f puq ‰ f pvq, falls pu, vq P E. χpGq :“ min {k ; G ist k-färbbar.} ist die chromatische Zahl von G. Proposition 6.1. Es gelten die folgenden Aussagen: (i) χpGq ě ωpGq. (ii) χpGq “ 2 genau dann, wenn G bipartit ist. (iii) χpGq ě 3 genau dann, wenn G einen ungeraden Kreis enthält. (iv) χpGq ě n . αpGq Beweis. (i) und (ii) sind unmittelbar klar. Zu (iii): „ð“ ist klar. „ñ“ Angenommen, G enthält keinen ungeraden Kreis. Dann wäre G bipartit und somit χpGq “ 2, ein Widerspruch. Zu (iv): Sei Si :“ χ´1 piq, die i-te Farbklasse in V pGq. |Si | ď αpGq, da in Si keine Kanten verlaufen. Also gilt: n “ PχpGq i“1 |Si | ď χpGqαpGq. Ist eine Reihenfolge der Knoten vorgegeben, so läßt sich eine Färbung mit einem GreedyAlgorithmus finden. Algorithm 10: Greedy-Color Eingabe: Graph G “ pV, Eq, eine Reihenfolge v1 , . . . , vn der Knoten die wir mit einer Permutation σ P Sn identifizieren. 1 for i “ 1, . . . , n do: Färbe vi wenn möglich, mit einer der bisher verwendeten Farben. Ist dies nicht möglich, färbe vi mit einer neuen Farbe. 2 Ausgabe Eine Knotenfärbung von G. 55 Kapitel 6. Färbbarkeit Erstaunlicherweise konstruiert der Greedy-Algorithmus eine gute Färbung für nicht-reguläre Graphen mit Maximalgrad ∆. Proposition 6.2. Sei G “ pV, Eq ein nicht regulärer Graph mit Maximalgrad ∆. Dann findet der Greedy-Algorithmus eine Färbung mit höchstens ∆ Farben. Beweis. Es gibt einen Knoten v1 mit degpv1 q ď ∆ ´ 1. Wir numerieren die Knoten durch Breitensuche beginnend mit v1 . Sei v1 , . . . , vn diese Numerierung. Mit dem Greedy-Algorithmus färben wir die Knoten in der Reihenfolge vn , . . . , v1 . Da die Knoten nach Breitensuche numeriert werden, hat jeder Knoten v P {vn , . . . , v2 } hat einen Nachbarn mit kleinerer Nummer. Wenn also der Greedy-Algorithmus v erreicht, so sind höchstens ∆ ´ 1 Nachbarn von v gefärbt worden, also wurden höchstens ∆ ´ 1 Farben gebraucht. Es bleibt also eine Farbe für v übrig. Färbe v mit dieser Farbe. Die Knoten vn , . . . , v2 können daher mit ∆ Farben gefärbt werden. Da aber degpv1 q ď ∆ ´ 1 ist, können höchstens ∆ ´ 1 Farben für die Nachbarn von v1 verwendet worden sein. Es bleibt eine der ∆´Farben für die Färbung von v1 übrig. Insgesamt haben wir daher höchstens ∆ Farben verwendet. Wie kann man überhaupt eine Färbung mit χpGq Farben finden? Eine (triviale) Möglichkeit ist die vollständige Enumeration. Man wende den Greedy-Algorithmus für alle n! verschiedenen Knotenpermutationen an. n √ Die Komplexität ist Opn!q “ Op2nplog n´log eq q, mit der Stirlingformel n! „ 2πn ne . Daß ein solches Verfahren funktioniert, liegt an der folgenden Beobachtung: Proposition 6.3. Sei G “ pV, Eq ein Graph mit Knotenmenge pv1 , . . . , vn q. Sei σ eine Permutation der Knoten, d.h. σ P Sn . Dann gilt: χpGq “ min Greedy-ColorpG, σq. σPSn Beweis. Seien V1 , . . . , VχpGq die Farbklassen in V einer χ-Färbung von G. σ ˚ sei die folgende Anordnung σ ˚ “ {V1 , . . . , VχpGq }, d.h. erst kommen die Knoten von V1 , in beliebiger Reihenfolge, dann die Knoten von V2 , ebenfalls in beliebiger Reihenfolge, u.s.w.. Greedy-Color färbt alle Knoten von Vi mit derselben Farbe, für alle i, denn gäbe es ein k, so daß Greedy-Color Vk mit zwei oder mehr Farben färbt wäre das ein Widerspruch dazu, daß die Vi unabhängige Mengen bilden. 56 6.2. Der Satz von Brooks Man kann Beispiele angeben, für die der Greedy-Algorithmus beliebig schlechte Färbungen liefert, er färbt sogar Bäume schlecht: Es gibt Bäume pTk qkPN mit |Tk | Ñ 8, so daß der GreedyAlgorithmus bei einer bestimmten Anordnung der Knoten von Tk sogar 1 ` logp|Tk |q Farben benötigt. Es gibt sogar Graphen für die der Greedy-Algorithmus bei fast allen Anordnungen der Knoten eine schlechte Färbung liefert. Satz 6.4 (Kucera 1991). Seien , δ ą 0 und c ă 1 Konstanten. Für n ě n0 gibt es Graphen Gn mit χpGn q ď n , für die der Anteil der Knotenmengen, für die Greedy-Color höchstens cn Farben benötigt, Opn´δ q ist. log n 6.2. Der Satz von Brooks Der Beweis, daß der Greedyalgorithmus auch für reguläre Graphen eine Färbung mit höchstens ∆ Farben findet, ist ein schönes und klassisches Resultat, das als Satz von Brooks bekannt ist. Dazu benötigen wir die folgenden beiden Lemmata. Das erste Lemma besagt, daß wir uns auf den Fall eines zweifach zusammenhängenden Graphen zurückziehen können, da jeder einfach zusammenhängende Graph als ein Baum aufgefaßt werden kann, dessen Knoten zusammenhängenden Subgraphen entsprechen. Ein Block B in einem Graphen G ist ein inklusions-maximaler, zusammenhängender, nichttrivialer Subgraph von G ohne Artikulation. Der Block-Artikulations-Graph bcpGq ist der folgende Graph. Sei B die Menge der verschiedenen Blöcke von G. Die Blöcke bilden eine Partition der Kanten von G und je zwei verschiedene Blöcke haben höchstens einen Knoten gemeinsam. Sei A die Menge der Artikulationsknoten von G. bcpGq hat A Y B als Knotenmenge und zwei Knoten B, a sind genau dann durch eine Kante verbunden, falls B P B, d.h. B ist ein Block und a P A gilt. Satz 6.5 (Galil 1964, Hardy, Preuss 1966). Ist G zusammenhängend, so ist bcpGq ein Baum. Wir geben einen sehr eleganten Beweis von Lovasz. Lemma 6.6. Sei G “ pV, Eq, |V | “ n ein 2-fach zusammenhängender Graph und G R {Cn , Kn }. Dann existieren x, y P V mit (i) distpx, yq “ 2, (ii) G ´ x ´ y ist zusammenhängend. 57 Kapitel 6. Färbbarkeit ' $ u u u ' $ u u J B2 J u ' $ J J Ju & % A & B1 A % Au u A A A u B3 & % Abbildung 6.1. So sieht bcpGq aus. Beweis. Sei ∆ der Maximalgrad von G und sei v P V mit degpvq “ ∆. Behauptung 1: Dann gibt es x̂, ŷ P Γpvq mit distpx̂, ŷq “ 2. Annahme: Die Behauptung ist falsch. Dann ist der induzierte Subgraph H :“ Γpvq Y {v} vollständig. Fall a) G “ H. Das kann nicht sein, denn G ist nicht vollständig. Fall b) H ‰ G. Da degpxq “ ∆ für alle x P Γpvq Y {v} ist, ist H eine echte Zusammenhangskomponente von G. Also ist G nicht zusammenhängend, im Widerspruch zur Voraussetzung und Behauptung 1 ist bewiesen. Wir betrachten nun zwei Fälle: Fall a) G ´ x̂ ´ ŷ ist zusammenhängend. Dann sind wir fertig. Fall b) G ´ x̂ ´ ŷ ist nicht zusammenhängend. G ist 2-fach zusammenhängend, aber kein Kreis, also dpvq “ ∆ ě 3. Sei C die Zusammenhangskomponente von G ´ x̂ ´ ŷ, die v enthält. Wegen dpvq ě 3 enthält C mindestens einen weiteren Knoten neben v. Ferner enthält C ´ v einen Knoten x, der zu x̂ oder ŷ benachbart ist. Denn andernfalls wäre v eine Artikulation. x̂ u ŷ u p pp ppp pp pp p p pp p pp pp ppp ppp p p p pp pp p p p p p ' pp p p p v u @ @r r r & C 58 pp pp pp pp ppp pp pp pp ux $ % 6.2. Der Satz von Brooks Da G ´ x̂ ´ ŷ in mindestens zwei Zusammenhangskomponenten zerfällt, gibt es eine weitere Komponente C 1 mit C 1 ‰ C. In G haben sowohl x̂ als auch ŷ Nachbarn in C 1 , denn andernfalls wäre x̂ oder ŷ schon eine Artikulation in G. x ist Nachbar von x̂ oder ŷ, also gibt es y P C 1 mit distpx, yq “ 2. Behauptung 2: G ´ x ´ y ist zusammenhängend. Beweis: G ´ x ist zusammenhängend (sonst wäre x eine Artikulation). Sei a P C ´ x ein beliebiger Knoten. a ist in G ´ x mit x̂ und ŷ durch einen Pfad verbunden. Sei Px̂ bzw. Pŷ der Pfad von a nach x̂ bzw. ŷ. O.B.d.A. nehmen wir an, dass Px̂ den Knoten ŷ nicht enthält. Dieser Pfad enthält y nicht, denn andernfalls wären C und C 1 in G ´ x̂ ´ ŷ durch einen Pfad verbunden, im Widerspruch dazu, daß C und C 1 verschiedene Zusammenhangskomponenten von G ´ x̂ ´ ŷ sind. G ´ y ist zusammenhängend (sonst wäre y eine Artikulation).Sei b P V zpC Y {x̂, ŷ, y}q ein beliebiger Knoten. b ist in G ´ y mit x̂ bzw. ŷ durch einen Pfad Px̂1 bzw. Pŷ1 verbunden. Sei o.B.d.A. Pŷ1 der Pfad, der x̂ nicht enthält (andernfalls enthält Px̂1 den Knoten ŷ nicht und wir nehmen Px̂1 ). Pŷ1 enthält auch x nicht, denn andernfalls wäre C mit einem Knoten aus einer anderen Zusammenhangskomponente von G ´ x̂ ´ ŷ verbunden. Pŷ1 u u ub '$ r r r Px̂ r r x̂ u pp pp ppp ppp pp pp p p p pp ppp ppp pp p p p p p ' pp p p p pp v u @r r r ua @ & ŷ up p p p p p p p p p p p p p p p p p p p p p p p p p p u y p p p pp ppp pp pp pp pp pp pp ux & % 1 $ C % C Über den Teilpfad {x̂, v, ŷ} sind also a und b in G ´ x ´ y untereinander verbunden, und G ´ x ´ y ist zusammenhängend. Satz 6.7 (Brooks 1941). Ist G ein zusammenhängender Graph mit Maximalgrad ∆ ě 3 und G R {Cn , Kn }, dann gilt χpGq ď ∆pGq. Beweis. Fall 1: G ist nicht ∆-regulär. Die Behauptung ist gerade die Proposition 6.2. Fall 2: G ist ∆-regulär. 59 Kapitel 6. Färbbarkeit Fall 2 a: G ist 2-zusammenhängend. Nach Lemma 6.6 gibt es x, y P V mit distpx, yq “ 2, so daß G ´ x ´ y zusammenhängend ist. Sei v1 der Verbindungsknoten zwischen x und y. Betrachte H :“ G ´ x ´ y. Beginnend mit v1 nummerieren wir die Knoten von H. Sei v1 , . . . , vn´2 eine solche Nummerierung. Setze vn´1 “ x und vn “ y. Wir färben wie folgt: 1.) vn und vn´1 erhalten dieselbe Farbe. 2.) Färbe die Knoten vn´2 , ..., v2 mit dem Greedy-Algorithmus. 3.) Wenn v1 an der Reihe ist, so wissen wir, daß die beiden Nachbarn vn “ x und vn´1 “ y von v1 mit derselben Farbe gefärbt wurden. Die restlichen ∆ ´ 2 Nachbarn haben also höchstens ∆ ´ 2 Farben verbraucht, also wurden für die Nachbarn von v1 höchstens ∆ ´ 1 Farben verbraucht. v1 wird nun mit der verbleibenden Farbe gefärbt. Insgesamt werden so höchstens ∆ Farben benutzt. Fall 2 b: G ist einfach zusammenhängend. Nach Satz 6.5 ist der Block-Artikulationsgraph bcpGq von G ein Baum. Dann gilt χpGq “ max {χpBq ; B P B}. (Dies ist klar; man färbe die Blöcke nacheinander.) Nach Definition ist jeder Block 2-zusammenhängend. Mit Fall 2 a folgt nun χpGq ď max χpBq ď ∆pGq. BPB Man überzeugt sich leicht, daß der Beweis des Satzes von Brooks nicht nur konstruktiv ist, sondern sogar in polynomieler Zeit eine Färbung mit ∆´Farben liefert. 6.3. Der Satz von Vizing Eine Kantenfärbung eines Graphen G “ pV, Eq ist eine Abbildung f : E Ñ {1, . . . , k}, so daß k-gleichfarbige Kanten nicht inzidieren. Wir bezeichnen mit χ1 pGq “ min {k ; G ist k´kantenfärbbar} den chromatischen Index von G. 60 6.3. Der Satz von Vizing Kreise haben χ1 P {2, 3}. Sei LpGq der Linegraph von G, das ist der Graph mit der Knotenmenge E und der Kantenmenge {{e, f } ; e, f P E, |e X f | “ 1}. Proposition 6.8. Es gelten die folgenden Beziehungen: (i) χ1 pGq “ χpLpGqq ě ωpLpGqq ě ∆pGq. 1 (ii) χ pGq ě (iii) χ1 pKn q “ m νpGq , νpGq “ Matchingzahl von G. n ´ 1 : n gerade : n ungerade. n Beweis. (i) Ist unmittelbar klar. (ii) Jede Farbklasse einer Kantenfärbung von G ist ein Matching in G. Seien S1 , . . . , Sχ1 pGq diese Farbklassen. Wir haben χ1 pGq m“ X |Si | ď νpGqχ1 pGq. i“1 (iii) Ist n ungerade, so gilt mit (ii): & ' & ' m npn ´ 1q{2 χ pKn q ě “ “ n. νpKn q pn ´ 1q{2 1 Der Fall n gerade geht analog. Satz 6.9 (Vizing 1964). Sei ∆ der Maximalgrad in einem Graphen G “ pV, Eq. Dann gilt ∆ ď χ1 pGq ď ∆ ` 1 und eine Kantenfärbung mit höchstens ∆ ` 1 Farben kann in Opmn∆q Zeit konstruiert werden. Beweis. Wir führen Induktion nach |E|. Für |E| “ 0 ist nichts zu beweisen. Die Behauptung gelte für alle Graphen mit höchstens |E| ´ 1 Kanten. Es sei e “ {x, y0 } P E eine beliebige Kante. Nach Induktionsvoraussetzung existiert für G ´ e eine Kantenfärbung c mit höchstens ∆ ` 1 Farben. ∆ Farben ě ď ∆Farben y0 x 61 Kapitel 6. Färbbarkeit Da der Maximalgrad ∆ ist, fehlt an x sowie y0 jeweils eine der ∆ ` 1 Farben. Fehlt an x und y0 dieselbe Farbe, dann lässt sich e mit genau dieser Farbe färben und dies ist eine p∆ ` 1q-Färbung von G. Leider tritt dieser Fall nicht notwendigerweise ein. Die Idee des Beweises besteht darin, durch Umfärben eine der ∆ ` 1 Farben „freizusetzen“, so dass diese Farbe weder an x noch an y0 anliegt und e mit dieser Färbung zu färben. Zur Vereinfachung der Notation sei F “ {1, . . . , ∆ ` 1} die Menge der p∆ ` 1q vielen Farben und sei für v P V Fv die Menge der Farben, deren Kanten in v inzidieren. Für f P Fv sagen wir, dass die Farbe f an v anliegt. Eine q P F gefärbte Kante nennen wir eine q-Kante. Ein Nachbar von v, der mit v durch eine q-Kante verbunden ist, heisse f -Nachbar. Wie bereits gesagt fehlt an x eine Farbe, sagen wir a, und an y0 fehlt eine Farbe, sagen wir b1 . Wir können annehmen, dass b1 P Fx , denn anderenfalls ließe sich e mit b1 färben und wir wären fertig. Sei y1 ein b1 -Nachbar von x. An y1 fehlt eine Farbe, sagen wir b2 . c “? c “ b1 b1 R F y 0 b2 R F y 1 y0 y1 x Wir können weiter b2 P Fx annehmen. Denn anderenfalls können wir {x, y1 } mit b2 färben, wodurch b1 freigesetzt wird und für die Färbung von e “ {x, y0 } zur Verfügung steht. Sonst existiert ein b2 -Nachbar von x, den wir y2 nennen. Dies liefert eine Folge pyi , bi`1 q, i “ 1, 2, . . ., wobei yi nicht anliegt. y1 y2 b 1 R F y0 y0 bi`1 R Fyi x yi Bei dieser Folge dürfen wir stets annehmen, dass bi`1 an x anliegt. Denn anderenfalls färben wir {x, yi } mit bi`1 , {x, yi`1 } mit bi , . . . , {x, y1 } mit b2 . Nun wird b1 freigesetzt und steht für die Färbung von {x, y0 } zur Verfügung. Diesen Umfärbungsprozess bezeichnen wir mit Farbshiftpi, bi`1 q. Wir halten fest: solange bi`1 an x anliegt, wird die Konstruktion der Folge pyi , bi`1 q fortgesetzt. Aber nach spätestens p∆ ` 1q Schritten wiederholt sich eine Farbe. Sei l 62 6.3. Der Satz von Vizing der kleinste Index, wo dies geschieht, l ď ∆ ` 1. Hier gilt bl`1 P {b1 , . . . , bl }. Es ist bl`1 “ bk für ein k P {1, . . . , l}. bk fehltz an yk´1 , aber {x, yk } hat Farbe bk . y1 b1 bk´1 y0 x bk R Fyk´1 yk´1 bk yk yl bk “ bl`1 R Fyl Wir wissen, a liegt an x nicht an. 1. Fall: a R Fyl . Dann färben wir {x, yl } mit a und Farbshiftpl ´ 1, bl q vollendet die Färbung. 2. Fall: a P Fyl . Dies ist der wesentlich komplexe Fall. Die Idee ist, druch Umfärben a an yl freizugeben. Dann ist man im Fall 1 und somit fertig. Das geht so: wegen a P Fyl liegt an yl eine a-Kante an. Inzidiert in dieser a-Kante keine bk -Kante, dann färben wir diese a-Kante mit bk um, die Kante {x, yl } erhält Farbe a und Farbshiftpl ´ 1, bl q vollendet die Färbung. Somit können wir annehmen, dass ein yl ein a-bk -alternierender Pfad P beginnt, dessen Länge maximal ist und der schließlich einen Knoten z P V z{x, yl } terminiert. Fall a): z R {yk´1 , yk }. Auf P vertauschen wir die Farben a und bk , {x, yl } wird mit a gefärbt und Farbshiftpl ´ 1, bl q vollendet die Färbung. Fall b): z “ yk . Wir wissen, bk P Fyk , also erreicht P yk mit einer a-Kante. yk a bk bk a P x bk yl a {x, yk } ist eine bk -Kante, somit ist wegen der Maximalität von P auch diese in P und da a R Fx , endet P in x. Wir vertauschen a und bk auf P und Farbshiftpk ´ 1, bk q vollendet die Färbung. 63 Kapitel 6. Färbbarkeit Fall c): z “ yk´1 . Da bk R Fyk´1 , erreicht P yk´1 mit einer a-Kante und endet hier. Wir vertauschen auf P die Farben a und bk , färben {x, yk´1 } mit a und vollenden die Färbung durch Farbshiftpk ´ 2, bk´1 q. 6.4. Das Art-Gallery Theorem Wir geben nun eine schöne und vielleicht auch amüsante Anwendung der Färbungstheorie. Wie bewacht man ein Museum? Viktor Klee formulierte 1973 das museum guard problem: Gegeben sei ein Museum mit n Wänden. Wieviele Wärter benötigt man, um jeden Punkt des Museums zu bewachen? Wir präzisieren dahingehend, dass die Wände Ebenenstücke sind und die Wächter in alle Richtungen gleichzeitig blicken können, aber natürlich nicht durch Wände hindurch. Hier sind einige Beispiele. 2 PICTURES! Die bemerkenswerte Erkenntnis ist: Satz 6.10. Für jedes Museum mit n “ 3m Wänden, m P N, sind m “ n 3 Wächter ausreichend. Dies ist das berühmte Art-Gallery-Theorem, das erstmals durch Vašek Chvátal 1975 bewiesen wurde. Wir geben einen Beweis von Steve Fisk (1975), der Färbungen benutzt. Ein ebener Graph ist eine vollständige Triangulierung, wenn alle beschränkten Gebiete Dreiecke sind. Aus jedem ebenen Graphen läßt sich eine vollständige Triangulierung angeben, die aber nicht eindeutig ist. Lemma 6.11. Sei G eine vollständige Triangulierung. Dann ist χpGq “ 3. Beweis. Für n “ 3 ist die Aussage offensichtlich, was insbesondere χpGq ě 3 zeigt. Sei nun n ě 4 und χpHq “ 3 für alle vollständigen Triangulierungen mit höchstens n ´ 1 Knoten. Wir wählen eine Kante {u, v} P EpGq, so dass das dazugehörige Dreieck C an das unbeschränkte Gebiet grenzt. Diese Kante zerteilt G in zwei vollständige Triangulierungen, nämlich G1 und C. Nach Induktionsvoraussetzung läßt sich G1 mit 3 Farben färben, in der die Knoten u und 64 6.5. Ramseyzahlen v mit den Farben, sagen wir 1 und 2, gefärbt sind. Den verbliebenden Knoten von C färbt man mit Farbe 3 und dies ist eine 3-Färbung von G. Beweis des Satzes: Die Projektion der Museumswände auf die Bodenfläche ist ein ebener Graph den wir vollständig triangulieren. Nach Lemma besitzt diese Triangulierung eine 3-Färbung. Sei Si die i-te Farbklasse, i “ 1, 2, 3. Es gilt |S1 | ` |S2 | ` |S3 | “ n, also gibt es ein i0 mit |Si0 | ď n3 “ m. Wir plazieren jeweils einen Wächter auf den Knoten aus Si0 . Da jedes Dreieck einen i0 -gefärbten Knoten besitzt, werden alle Dreiecke überwacht und insbesondere alle Räume des Originalmuseums. 6.5. Ramseyzahlen Im Jahr 1927 bewies B. L. van der Waerden in seiner berühmten Arbeit „Beweis einer Baudetschen Vermutung“, dass jede Färbung der natürlichen Zahlen mit endlich vielen Zahlen eine Farbklasse enthält, die eine arithmetische Progression beliebig großer Länge enthält. Dies ist heute bekannt als der Satz von Waerden. Er ist Ausgangspunkt für sehr viele Entwicklungen in der Kombinatorik, aber auch der Logik. I. Schur zeigte 1916, dass jede endliche Färbung der natürlichen Zahlen eine Farbklasse enthält, in der die Gleichung x ` y “ z lösbar ist. Frank Ramsey zeigte 1930, dass ein Graph, der genügend viele Knoten als Funktion eines Parameters k, k P N, enthält, entweder eine Clique oder eine unabhängige Menge der Größe k enthalten muss. In einer anderen Formulierung besagt der Satz von Ramsey, dass für alle l, r, k P N ein n0 P N existiert, so dass für alle n ą n0 in jeder Färbung von rnsk mit r Farben ein monochromatisches rlsk existiert. In einer dritten Formulierung besagt der Satz von Ramsey, dass ein Graph genügend vieler Knoten als Funktion von k die Eigenschaft besitzt, dass in jeder Färbung der Kanten entweder ein monochromatischer vollständiger Subgraph auf k Knoten existiert, insbesondere ist die Knotenanzahl endlich. Diese Sätze haben ein gemeinsames Charakteristikum: sie sichern in einem genügend großen Grundraum die Existenz monochromatischer Strukturen in jeder endlichen Färbung, oder wie können auch sagen endlicher Partitionen, des Grundraumes. In diesem Abschnitt geben wir 65 Kapitel 6. Färbbarkeit eine erste Einführung in das Thema, das heute als Ramsey-Theorie ein klassisches und grundlegendes Gebiet der Kombinatorik, aber auch der Gruppentheorie darstellt. Definition 6.12 (Ramseyzahl). Es seien k, l P N. Die Ramseyzahl Rpk, lq ist eine kleinste Zahl n P N, so dass in jeder 2-Färbung (rot, blau) der Kanten des Kn entweder ein roter Kk oder ein blauer Kl existiert. Erdös und Szekeres bewiesen folgenden Spezialfall des Satzes von Ramsey und gaben auch eine Schranke für Rpk, lq an, die wesentlich besser ist als Ramseys Originalschranke. Offenbar gilt: Rpk, lq “ Rpl, kq und für k, l ě 2 : Rpk, 2q “ l. Satz 6.13. Für k, l ą 2 gilt: i) Rpk, lq ist endlich für alle k, l P N. ii) Rpk, lq ď Rpk ´ 1, lq ` Rpk, l ´ 1q iii) Rpk, lq ď iv) Rpk, kq ď k`l´2 k´1 22k´2 √ k Beweis. (i) Wir führen eine Induktion über k für festes l und für l bei festem k aus. Der Induktionsanfang ist klar, denn Rpk, 2q “ k und Rp2, lq “ l. Nach Induktionshypthese sind Rpk ´ 1, lq und Rpk, l ´ 1q endlich. Wir beweisen nun (ii), dann daraus folgt (i). Sei n “ Rpk ´ 1, lq ` Rpk, l ´ 1q und betrachte eine beliebige 2-Färbung der Kanten von Kn mit den Farben rot und blau. Jeder Knoten x des Kn hat Grad n ´ 1 “ Rpk ´ 1, lq ` Rpk, l ´ 1q ´ 1. Das Schubfachprinzip garantiert uns die Existenz von entweder mindestens n1 :“ Rpk ´ 1, lq roten Kanten, oder mindestens n2 “ Rpk, l ´ 1q blauen Kanten, die in x inzidieren. Wegen Symmetrie nehmen wir an, dass das erstgenannte gilt. Sei Kn1 ein Subgraph von Kn , der durch n1 Knoten aufgespannt wird, die mit x durch rote Kante verbunden sind. Falls Kn1 einen blauen Kl enthält, sind wir fertig. Andernfalls enthält Kn1 , weil ja n1 “ Rpk ´ 1, lq ist, einen roten Kk´1 , der zusammen mit x einen roten Kk bildet. Also Rpk, lq ď n “ Rpk ´ 1, lq ` Rpk, l ´ 1q. Das beweist (ii) und mit Induktionshypothese auch (i). 66 6.5. Ramseyzahlen (iii) Wir führen wieder eine Induktion nach l bei festem k und nach k bei festem l aus. Die Induktionsverankerung gilt, denn k`2´2 Rpk, 2q “ k “ k´1 und mit Symmetrie 2`l´2 Rp2, lq “ Rpl, 2q “ l “ 2´1 Die Induktionshypothese besagt, dass die Ungleichung für jedes Paar pk 1 , l1 q P 2 ď k 1 ` l1 ă k ` l gilt. Mit (ii) erhalten wir: N ˆ N mit RpK, lq ď Rpk ´ 1, lq ` Rpk, l ´ 1q k`l´3 k`l´3 “ ` k´2 k´1 k`l´2 “ k´1 (iv) 2k ´ 2 22k´2 Rpk, kq ď ď √ k k´1 wobei die letzte Ungleichung durch eine einfache Induktion folgt. Um einen Einblick über die Güte dieser oberen Schranke n zu erhalten, schauen wir uns untere Schranken an. Satz 6.14. i) Rpk, kq ě b2k{2 c für k ě 3 ii) Rpk, kq ě n ´ iii) Rpk, kq ě 1 e n k 21´p 2 q für jedes n P N. k ¨ p1 ` op1qqk ¨ 2k{2 für jedes k ě 3. Bemerkung 6.15. Für k ě 3 haben wir 1 22k´2 √ k ¨ 2k{2 ď Rpk, kq ď √ , k`1 e 2 d.h. obere und untere Schranke weisen einen exponentiellen Gap in k auf. Beweis. (i) zur Übung. (ii) Wir betrachten eine zufällige 2-Färbung der Kanten von Kn . Sei R eine beliebige Menge von k Knoten des Kn und sei XR die Indikatorvariable, die Eins genau dann ist, wenn der 67 Kapitel 6. Färbbarkeit induzierte Subgraph auf R monochromatisch ist. Wir nennen R eine monochromatische P |R|-Menge. Sei X :“ R XR . Mit der Linearität des Erwartungswertes gilt EpXq “ X EpXR q “ n 1´p k q 2 2 k R ñ Es gibt eine 2-Färbung mit X ď m. Sei χ eine solche Färbung. Entferne aus jeder monochromatischen k-Kantenmenge des Kn einen Knoten. Es werden höchstens m Knoten entfernt, es bleiben also mindestens n1 ě n ´ m Knoten übrig. Sei S die Menge der übrig gebliebenen Knoten. Der Subgraph des Kn auf S ist ein Kn1 und enthält in der Färbung χ{Kn1 keine monochromatischen Kk mehr, also Rpk, kq ě n1 . (iii) Mit n „ 1e p1 ´ op1qqk2k{2 folgt die Behauptung. Schließlich beweisen wir den Satz von van der Waerden in einer schwächeren Form als das Originalresultat. Sei W pr, kq die kleinste Zahl n P N, so dass in jeder Färbung von {1, . . . , n} mit r Farben eine monochromatische arithmetische Progression mit k Termen existiert, d.h. es gibt a, b P {1, . . . , n}, so dass die Zahlen a, a ` b, a ` 2b, . . . , a ` pk ´ 1qb die selbe Farbe haben. Satz 6.16. W p2, kq ě 2k{2 . D.h. für {1, . . . , n} existiert eine 2-Färbung, so dass keine arithmetische Progression der Länge 2 logpnq monochromatisch ist. Beweis. Wir färben {1, . . . , n} zufällig, d.h. für jedes i P {1, . . . , n} werfen wir eine faire Münze, die i die Farbe rot oder blau zuweist, unabhängig für alle i “ 1, . . . , n. Sei S eine arithmetische Progression mit k Termen und sei AS das Ergebnis, dass S monochromatisch ist. Dann gilt PrAS s “ 2 ¨ 2´|S| “ 2´k`1 Damit gilt PrDS : S monochromatischs “ ď pr⋃ AS s S X PrAS s S ´k`1 ď 2 n 2 p‹q p‹q ă 1, wenn n2 ď 2k , also n ď 2k{2 . Damit ist die Wahrscheinlichkeit, dass für eine zufällige Färbung kein S monochromatisch ist, strikt größer als Null, d.h. es gilt eine solche Färbung. Also W p2, kq ą 2k{2 . 68 Kapitel 7 Zufällige Graphen 7.1. Das Modell Gpn, pq Sei p P rt, ss und betrachte V “ {v1 , ..., vn }. Wir identifizieren V mit {1, ..., n} und einen Knoten vj mit seinem Index j. Für jede Kante e “ {i, j} werfen wir eine p-gefälschte Münze, und nehmen die Kante e zu der Kantenmenge E hinzu, wenn die Münze „Kopf“ zeigt. Andernfalls wird e nicht zu E aufgenommen. „Kopf“ identifizieren wir mit 1 und „Zahl“ mit 0. Somit erhalten wir nach N “ n2 “ npn´1q 2 Würfen der p-gefälschten Münze einen Graphen. Man spricht auch vom Zufallsgraph-Modell Gpn, pq. Skizze: FIGURE Wahrscheinlichkeit, dass eine Kante im Graphen ist: Ppe P Eq “ p und Ppe R Eq “ 1 ´ p 69 Kapitel 7. Zufällige Graphen das Zufallsexperiment zur Erzeugung eines Graphen aus Gpn, pq wird durch N unabhängige Bernoulli Zufallsvariable, X1 , ..., Xn beschrieben, wobei PpXi “ 1q “ p, PpXi “ 0q “ 1 ´ p, @i. Der Index i P rN s steht für die entsprechende Kante. Gpn, pq kann man natürlich auch als einen endlichen Wahrscheinlichkeitsraum auffassen. Ω sei die Menge aller Graphen V , PpΩq die Potenzmenge und für einen Graphen G “ pV, Eq P Ω mit epGq “ |E| definiert Pp{G}q :“ pepGq p1 ´ pqN ´epGq einen stochastischen Vektor und ein Wahrscheinlichkeitsmaß auf Ω. Somit identifizieren wir Gpn, pq mit pΩ, PpΩq, Pq. Beim Studium von Gpn, pq gibt es zwei Aspekte: p ist konstant oder p “ ppnq ist eine Funktion von n. Der interessanteste Aspekt ist die Entwicklung der Kantenwahrscheinlichkeit p “ ppnq von 0 zu 1. Diesen Prozess nennt wan Evolution von Gpn, pq. In dieser Evolution gibt es wie in der statischen Physik sogenannte Phasenübergänge. Diese treten für gewisse ppnq plötzlich auf, d.h. vorher passiert kaum etwas und danach auch nicht für eine gewisse Zeit. Wir interessieren uns dafür, wann in der Evolution ein typischer Graph aus Gpn, pq gewisse graphentheoretische Merkmale aufweist, z.B. Zusammenhang oder daß ein fester Subgraph H auftritt. Eine Jahrzehnte lang studierte Frage war (ist): Was passiert bevor der Graph zusammenhängend wird? Die Evolution einer Giant Component: FIGURE (D. Knuth et al.) Erdös, Rényi (1957) haben das Gebiet der zufälligen Graphen eingeführt. 70 7.2. Einige grundlegende Eigenschaften 7.2. Einige grundlegende Eigenschaften Proposition 7.1. Sei G “ pV, Eq ein Gpn, pq-Graph. Dann gilt Ep|E|q “ N p und Varp|E|q “ N pp1 ´ pq “ N pq. Beweis. |E| “ PN i“1 Xi . Dabei EpXi q “ p ¨ 1 ` p1 ´ pq ¨ 0 “ p für alle i. Somit E(|E|) “ E N X ! Xi “ i“1 Var(|E|) “ Var N X i“1 ! Xi “ N X E(Xi ) “ i“1 N X N X p “ Np i“1 Var(Xi ) “ i“1 N X pq “ N pq, i“1 denn Var(Xi ) “ E(Xi2 ) ´ E(Xi )2 “ E(Xi ) ´ E(Xi )2 “ E(Xi )p1 ´ E(Xi )q “ pp1 ´ pq “ pq. Wenn p konstant ist, haben Graphen aus Gpn, pq typischerweise sehr viele Kanten, nämlich pN „ Θpn2 q. Wie sieht die Verteilung von |E| aus? Dazu sei X :“ PN i“1 Xi . Mit des Chebyshev-Ungleichung Pp|X ´ E(X)| ą tq ď VarpXq für jedes t ą 0, t2 EpXq “ N p, VarpXq “ N pq (Prop. 7.1) gilt 1 Pp|X ´ N p| ě tq ď N pq N ď 2 “ op1q, falls 2 t t t “ N 2 ` , ą 0. D.h. die Verteilung sieht skizzenhaft so aus: FIGURE Somit ist X um den Erwartungswert EpXq “ N p konzentriert. Viel bessere Konzentrationen kann man mit der Chernoff-Ungleichung beweisen. 71 Kapitel 7. Zufällige Graphen Wann ist ein Gpn, pq´Graph ein Baum? Eine notwendige Bedingung ist, dass die Kantenzahl n´1 ist. Das ist der Fall, wenn Ep|E|q “ n´1 ðñ N p “ n´1 ðñ p “ n2 . Wir betrachten ωpGq “ max{k; G enhält eine Clique der Größe k} die Cliquenzahl von G. 3 Satz 7.2. Sei p “ ppnq “ n´ 4 . Dann gilt PpωpGq ą 4q Ñ 0, wenn n Ñ 8. Beweis. Sei S Ď V. S ist ein K4 , wenn |S| “ 4 und alle 6 Kanten vorhanden sind. Sei XS die Indikatorvariable mit XS :“ 1, S eine Clique in G, d.h. S ist ein K4 0 sonst, Es gilt EpXS q “ PpXS “ 1q “ p6 . P Nun betrachte X “ S,|S|“4 XS . X zählt die Anzahl der K4 ’s. Wir haben Also EpXq “ P P Ep S,|S|“4 XS q “ S,|S|“4 EpXS q “ p6 ¨ n4 ď c ¨ p6 n4 ,wobei c ą 0 eine geeignete Konstante 6 c¨p ¨n ď PpωpGq ě 4q ď PpX ě 1q ď EpXq 1 1 4 c 18 “ c ¨ n´ 4 `4 “ √ ÝÝÝÑ 0. n nÑ8 Typisches Vorgehen bei Random-Graph-Beweisen: 1. Modelliere die betrachtete Eigenschaft durch eine geeignete Zufallsvariable X; 2. Berechne EpXq; 3. Betrachte große Abweichung der Form PpX ě E(X) ` tq bzw. PpX ď E(X) ´ tq und schätze mit Konzentrationsgleichungen (Markov, Chebyshev, Chernoff) ab und wähle t geeignet. Seien X1 , ..., Xk Zufallsvariable. Wir definieren ∆1 “ k X i,j“1 E(Xi Xj ) und ∆2 “ k X E(Xi Xj ). i,j“1 i„j Die Notation i „ j bedeutet, dass Xi und Xj nicht unabhängig sind. 72 7.2. Einige grundlegende Eigenschaften Beachte: EpXi Xj q ‰ EpXi qEpXj q im Allgemeinen ∆1 und ∆2 messen im gewissen Sinne die Abhängigkeit der Xi ’s. Proposition 7.3. X1 , ..., Xk seien Zufallsvariable und sei X “ Pk i“1 Xi . Dann gilt 1. VarpXq “ Pk i“1 VarpXi q ` Pk i,j“1 i‰j CovpXi , Xj q, 2. Wenn die Xi ’s 0{1 Zufallsvariablen sind, dann ist (a) VarpXq “ EpXq ´ EpXq 2 ` ∆1 , (b) VarpXq ď EpXq ` ∆2 , 3. 1 PpX “ 0q ď EpXq ´1` 4. 1 PpX “ 0q ď EpXq ` ∆1 , EpXq 2 ∆2 . EpXq 2 5. Sind pAi qi Ereignisse und pXi qi die zugehörigen Indikator-Zufallsvariablen, so definieren P 1 ∆˚ wir ∆˚ :“ i„j PpAj |Ai q. Es gilt PpX “ 0q ď EpXq ` EpXq . Beweis. 1. Ist klar. 2. Benutze EpXi2 q “ EpXi q, für alle i, 3. PpX “ 0q ď Pp|X ´ EpXq| “ EpXqq ď Pp|X ´ EpXq| ě EpXqq ď VarpXq2 . EpXq Benutze Teil 2b. 4. Wie Teil 3 mit 2b. 5. Es ist ∆2 “ X E(Xi Xj ) “ i„j X i„j “ X PpAi X Aj q PpAiq i X PpAj |Aiq j “ ∆˚ E(X), und die Behauptung folgt aus H. 73 Kapitel 7. Zufällige Graphen 7.3. Existenz isolierter Knoten Gpn, pq Definition 7.4. Sei Q eine Grapheneigenschaft. Wir sagen, dass Graphen aus Gpn, pq die Eigenschaft Q fast sicher (asymptotically almost surely (a.a.s.)) haben, falls PpGpn, pq hat Eigenschaft Qq Ñ 1 für n Ñ 8. 3 Satz 7.2 besagt, dass in Gpn, pq für p “ n´ 4 a.a.s ωpGq ď 3. Proposition 7.5. Sei p P r0, 1s. Gpn, pq´Graphen haben a.a.s keine isolierten Knoten. Beweis. Für v P V “ {1, ..., n} sei Xv die 0, 1 Zufallsvariable, die 1 ist, wenn v isolierter P Knoten ist und ansonsten 0 ist, dann ist X “ vPV Xv die Anzahl der isolierten Knoten. Wir interessieren uns für das Ereignis X “ 0. PpX “ 0q Ñ 1 für n Ñ 8 Bew: EpXv q “ PpXv “ 1q “ p1 ´ pqn´1 . Beh: Somit PpX ě 1q X EpXq “ E(X) “ E( Xv ) 1 v ď Markov X “ E(Xv ) “ p1 ´ pqn´1 n v ´ppn´1q`lnpnq ď e “ e´pn`p`lnpnq nÑ8 ÝÝÝÑ 0. Des Beweis klappte, weil p konstant war! Für welche p “ ppnq würde er ebenfalls funktionieren? Für p “ ppnq “ 2 lnpnq gilt immer noch n PpX ě 1q Ñ 0, für n Ñ 8. Was passiert unterhalb bzw. oberhalb von Kann es sein, dass bei 2 lnpnq n 2 lnpnq ? n für isoliert Knoten ein Phasenübergang erfolgt? Dazu benötigen wir den Begriff der Schwellwert-Funktion (Threshold-Funktion). Definition 7.6. Sei Q eine Grapheneigenschaft und seien α, s, t : N Ñ R Funktionen. 74 7.3. Existenz isolierter Knoten Gpn, pq 1. s ist eine untere Schwellwertfunktion (lower threshold function (LTF)), falls für alle p ď s, Gpn, pq die Eigenschaft Q nicht besitzt a.a.s. 2. t ist eine obere Schwellwertfunktion (upper threshold Funktion (UTF)), falls für alle p ě t, Gpn, pq die Eigenschaft Q a. a. s besitzt. Dann spricht man auch davon, daß in r0, 1s ein Phasenübergang für die Eigenschaft Q stattfindet. Eine perfekte Lokalisation des Phasenübergangs ist dann gegeben, wenn s ´ t möglichst klein wird, idealerweise asymptotisch gegen 0 konvergiert, wenn n Ñ 8. Satz 7.7. spnq “ lnpnq´αpnq ist eine LTF und tpnq “ lnpnq´αpnq ist eine UTF für die Eigenschaft, n n dass Gpn, pq-Graphen isolierte Knoten besitzen, wobei αpnq ď lnpnq und αpnq Ñ 8 für n Ñ 8. Beweis. Oberer Schwellwert. Sei p ě t. Es wurde bereits bewiesen, dass die Wahrscheinlichkeit, dass Gpn, pq´ Graphen isolierte Knoten haben, höchstens np1 ´ pqn´1 ist. Wir haben p ě t, ferner benutzen wir in den folgenden Abschätzungen 1 ` x ď ex , @x P R. Dann gilt n ¨ p1 ´ pqn´1 ď n ¨ p1 ´ tqn´1 ď 1´tďe´t n ¨ e´t¨n ¨ 1 1´t n “ ¨ e´ lnpnq´αpnq 1´t 1 “ ¨ elnpnq´lnpnq´αpnq 1´t 1 “ ¨ e´αpnq 1´t nÑ8 ÝÝÝÑ 0. Unterer Schwellwert. Sei p ď s. Sei X die Zufallsvariable, die die Anzahl der isolierten Knoten P in einem Gpn, pq Gaphen Zählt, X “ vPV Xv . Wir wollen zeigen, dass isolierte Knoten vorhanden sind. Somit ist das Gegenereignis „X “ 0“ und wir zeigen, dass PpX “ 0q Ñ 0, n Ñ 8. Hieraus folgt die Behauptung. Dazu 1 PpX “ 0q ď EpXq ´1` ∆1 EpXq 2 (Prop. 7.3) 75 Kapitel 7. Zufällige Graphen Wir schätzen EpXq mit Hilfe von s und ∆1 nach oben ab. Es ist ja ∆1 “ P v,wPV PpXv “ 1 ^ Xw “ 1q Beachte, dass Xv und Xw nicht unabhängig sind. v‰w 1 2 Wir benötigen 1 ´ x ď e´x´x , @x P r0, s. Es gilt 3 n p1 ´ sqn 1´s 1 αpnq´βpnq “ e 1´s E(X) “ n ¨ p1 ´ pqn´1 ě n ¨ p1 ´ sqn´1 “ ě n ´nps`s2 q e 1´s ln2 pnq ´ 2 lnpnqαpnq ` αpnq2 . Es gilt n βpnq Ñ 0, αpnq Ñ 8, somit αpnq ` βpnq Ñ 8, Da spnq Ñ 0, folgt EpXq Ý ÝÝÑ 8 nÑ8 mit βpnq “ EpXq “ n ¨ p1 ´ pqn´1 , also EpXq 2 “ n2 p1 ´ pq2pn´1q , ∆1 “ X PpXv “ 1 ^ Xw “ 1q “ v,wPV v,wPV v‰w “ p1 ´ pq Somit p1 ´ pq2pn´2q`1 X v‰w 2pn´2q`1 ¨ npn ´ 1q “ p1 ´ pq2n´3 ¨ npn ´ 1q. 1 p1 ´ pq2n´3 npn ´ 1q 1 ∆1 “ p1 ´ q “ ¨ Ñ 1. 2 n2 p1 ´ pq2pn´1q n 1 ´ p EpXq | {z } | {z } Ñ1 | Ñ1 {z Ñ1 } ñ PpX “ 0q Ñ 0 für n Ñ 8. Satz 7.8. Sei α “ αpnq eine Funktion mit αpnq Ñ 8. Sei αpnq ď lnpnq. Dann ist spnq :“ lnpnq´αpnq eine LTF und tpnq :“ n eines Gpn, pq Graphen. lnpnq´αpnq n eine UTF für den Zusammenhang Beweis. LTF: Satz 7.7 sagt, dass für p ď s a.a.s. isolierte Knoten existieren. Somit ist der Graph a.a.s. nicht zusammenhängend. UTF: Sei p ě t. Satz 7.7 ist hier leider nicht anwendbar, weil der Zusammenhang eine stärkere Eigenschaft als die Existenz isolierter Knoten ist. Sei für k ď n, Xk die 1{0 Zufallsvariable, die genau dann 1 ist, wenn eine ZusammenhangsP P komponente der Größe k existiert. Sei X :“ kďb k c Xk , Y :“ kăn Xk . 2 76 7.3. Existenz isolierter Knoten Gpn, pq Das für uns schlechte Ereignis ist, dass für irgendein k ă n, Xk “ 1. Das gute Ereignis ist Y “ 0. z.z.: PpY “ 0q Ñ 1 für n Ñ 8. Es gilt Y ě 1 ñ X ě 1. Denn für Y ě 1 ist ein Xk ě 1 ist Xk “ 1 und mit k ă n, d.h. es gibt eine Zusammenhangskomponente auf k Knoten. Falls k ď n2 , dann X ě 1. Falls k ą n2 , dann gibt es eine Zusammenhangskomponente mit ď n2 Knoten, also gibt es ein k0 ď b n2 c, so dass Xk0 “ 1, somit X ě 1. Wir haben mit der Markov-Ungleichung PpY ě 1q ď PpX ě 1q ď EpXq “ EpXq. 1 Behauptung: EpXq Ñ 0 für n Ñ 8. Beweis: Sei S Ď V. ď PpS induziert eine Zusammenhangskomponente q Pp kein Knoten aus S ist mit einem Knoten aus S c verbunden q “ p1 ´ pq|s|pn´|s|q ď e´p|s|pn´|s|q ď e´t|s|pn´|s|q pět ! ñ kďb n c 2 “ ´pk¨pn´kq E(Xk ) ď e e ´αpnq e1´p1´ k1 q¨αpnq` nk ¨plnpnq`αpnqq k k {z | “ Problem: Wie verhält sich e ´αpnq Pr n2 s k“1 n ¨ e k n ¨ e´tkpn´kq ¨ ď k k Bk :“Bk (7.1) } k Bk k ? 3 Fall 1: k ď bn 4 c. Dann k 1 ¨ plnpnq ` αpnqq ď 1 plnpnq ` αpnqq ÝÝÝÑ 0. nÑ8 n n4 Somit ist der Zähler in dem Bk Term ă Konstante, c ą 0. 1. c ă k ñ Bk ď ñ P 3 bn 4 c k“1 Bkk ď c k “: θ ă 1. Pbn 34 c k θ k“1 ď P8 k“1 θk “ 1 “ Op1q und aus (7.1) folgt die Behauptung. 1´θ 77 Kapitel 7. Zufällige Graphen 2. c ě k. Dann ist Bkk “ Op1q für alle k und aus (7.1) folgt die Behauptung. 3 Fall 2: bn 4 c ď k ď b n2 c. Dann ist Bk ď expp1 ´ 14 lnpnq ´ p 12 ´ k1 qαpnqq, damit konvergiert der Exponent gegen ´8. Somit gilt für hinreichend große n, dass Bk ă θ ă 1 für ein Konstante θ. Daraus folgt 3 rn 4 s X k“b n c 2 Bk k ď θk ď X 3 c rn 4 sďkďb n 2 8 X θk “ k“0 1 “ Op1q. 1´θ Somit gilt EpXq ď e´αpnq ¨ pOp1q ` Op1qq ÝÝÝÑ 0. nÑ8 7.4. Subgraphen in Gpn, pq Wir sagen f pnq ď gpnq, falls f pnq{gpnq Ñ 0 für n Ñ 8. Definition 7.9. Sei A eine Grapheneigenschaft. r “ rpnq ist eine Treshold-Funktion für A in Gpn, pq, falls: 1. ppnq ! rpnq, dann limnÑ8 PrGpn, pq hat Eigenschaft As “ 0 2. ppnq " rpnq, dann limnÑ8 PrGpn, pq hat Eigenschaft As “ 1. Satz 7.10. Sei H ein balanzierter Graph mit v Knoten und e Kanten. Sei A die Eigenschaft v daß Gpn, pq-Graph G H als Subgraphen enthält. Dann ist p “ ppnq “ n´ e eine TresholdFunktion für A. Beweis. Sei S Ď V , |S| “ v und AS das Ereignis, daß G{S, H als Subgraphen enthält. Dann pe ď PrAs s ď v ¨ pe . (7.2) Sei XS die Indikatorvariable für AS und X :“ S,|S|“v XS . A gilt genau dann, wenn X ą 0. Das schlechte Ereignis ist also X “ 0. Wir haben mit (7.2), wobei v als Konstante angesehen wird, P n E(X) “ E(XS ) “ v S,|S|“v X 78 ! PrAS s “ θpnv peq. 7.4. Subgraphen in Gpn, pq v 1. Fall p ! n´ e . Dann ist ja nv pe ! nv n´v “ 1, also nv pe Ñ 0 für n Ñ 8. Somit EpXq “ θpnv pe q Ñ 0 für n Ñ 8. Also PpX ě 1q ď EpXq Ñ 0 für n Ñ 8, somit PpX “ 0q Ñ 1 für n Ñ 8, d. h. X “ 0 a. a. s und A gilt nicht a. a. s. v 2. Fall p " n´ e . Somit EpXq “ θpnv pe q Ñ 0 für n Ñ 8. Betrachte ∆˚ aus der Proposition 7.3, Teil 5.Wir haben für zwei Mengen S, T Ď V , XS „ XT genau dann, wenn S ‰ T und S und T in Gpn, pq gesemeisame Kanten haben können, d. h. |S X T | “ i mit 2 ď i ď v ´ 1. Sei S fest. Nun gilt ∆˚ “ X PrAT |AS s “ v´1 X PrAT |AS s. X i“2 |SXT |“i XS „XT Für jedes i “ |T X S| gibt es Opnv´i q Möglichkeiten, T zu wählen. Betrachte PrAT |AS s. Es i¨e gibt Op1q mögliche Kopien von H auf T . Jede dieser Kopien hat höchstens Kanten, v e die ganz in S liegen, denn die Dichte von H ist und H ist balanziert. Somit hat jede v i¨e andere Kanten. dieser Kopien mindestens e ´ v Also PrAT |AS s “ Oppe´ i¨ev q, und weiter ˚ ∆ “ v´1 X Opn v´i ¨p e´ i¨e v q“ i“2 ˚ ñ ∆ {E(X) “ v´1 X i Oppnv ¨ pe q1´ v q i“2 v´1 X v e 1´ vi ´1 Oppn ¨ p q q“ i“2 v´1 X i Oppnv ¨ pe q´ v q. i“2 Somit wegen nv pe Ñ 8 für n Ñ 8, und v Konstant, haben nur ∆˚ {EpXq Ñ 0 für n Ñ 8. Mit Proposition 7.3 folgt ∆ 1 PpX “ 0q ď EpXq ` ÝÝÝÑ 0. EpXq nÑ8 ˚ 79