Graphentheorie Zusammenhang Rainer Schrader Zentrum für Angewandte Informatik Köln 13. November 2007 1 / 84 2 / 84 Zusammenhang Zusammenhang Wir betrachten eine Variante des Durchmusterns, die den Zusammenhang eines Graphen testet Gliederung (0) (1) (2) (3) (4) • Zusammenhangstest • Zusammenhang und Schnittkanten • Wälder und Bäume • minimal aufspannende Bäume • Der Satz von Menger • 2-zusammenhängende Graphen • Kreise und Schnitte setze E 0 = E , F = ∅ wähle e ∈ E 0 und setze F = F ∪ {e}, E 0 = E 0 r {e} wähle e ∈ E 0 , die mit mindestens einem Knoten in V (F ) inzidiert setze F = F ∪ {e}, E 0 = E 0 r {e} wiederhole (2)–(3), bis E 0 keine solche Kante mehr enthält Satz 1 Der obige Algorithmus hält genau dann mit E = F und V = V (F ), wenn G zusammenhängend ist. 3 / 84 4 / 84 Zusammenhang Zusammenhang Beweis: Dieser einfache Algorithmus folgt dem einfachen Prinzip der Dekomposition • die erzeugten Teilgraphen (V (F ), F ) sind zusammenhängend • daher ist G zusammenhängend, wenn der Algorithmus mit Ohren- (1) wähle Basisgraph (Knoten, Kante, Weg, Kreis) E = F und V = V (F ) hält, (2) füge „Ohren“ zu dem bisher konstruierten Graph hinzu (etwa Kanten, Wege, die mit den bisher konstruierten Knoten inzidieren) • sei umgekehrt G zusammenhängend und |V | ≥ 2 • nach Schritt (1) existiert ein Knoten u ∈ V (F ) • in unserem Algorithmus sind sowohl der Basisgraph als auch die Ohren • da G zusammenhängend ist, existiert zu jedem beliebigen Knoten Kanten v ∈ V ein Weg u = v1 , v2 , . . . , vk = v in G • das Vorgehen ist im Allgemeinen nicht eindeutig • da v1 ∈ V (F ), muss die Kante v1 v2 im Schritt (2) zu F hinzugefügt worden sein • wir werden für einige strukturelle Eigenschaften zeigen, dass sie eine charakteristische Ohrendekomposition haben • ebenso die Kanten (v2 , v3 ), . . . , (vk −1 , vk ), d.h. v ∈ V (F ) • somit V = V (F ), und wegen Schritt (2) gilt dann auch F = E . 5 / 84 6 / 84 Zusammenhang Zusammenhang Als Folgerung ergibt sich: Gliederung Korollar 2 • Zusammenhangstest • Zusammenhang und Schnittkanten • Wälder und Bäume • minimal aufspannende Bäume Jeder zusammenhängende Graph mit n Knoten hat mindestens n − 1 Kanten. Beweis: • der Basisgraph besteht aus einer Kante und zwei Knoten • Der Satz von Menger • 2-zusammenhängende Graphen • Kreise und Schnitte • in jedem Schritt (2) wird eine Kante und höchstens ein neuer Knoten hinzugefügt • somit gilt stets |F | ≥ |V (F )| − 1. 7 / 84 8 / 84 Zusammenhang Zusammenhang Eine Kante e heißt Schnittkante, falls G r e mehr Zusammenhangskomponenten hat als G (genauer: eine mehr) Beweis: Wir können o.B.d.A. annehmen, dass G zusammenhängend ist. Satz 3 (i) e ist Schnittkante ⇒ Für eine Kante e ∈ E sind folgende Aussagen äquivalent: (ii) für zwei Knoten u, v ∈ V liegt e auf jedem (u, v )-Weg: (i) e ist Schnittkante, • seien u und v zwei Knoten aus verschiedenen (ii) es existieren Knoten u, v ∈ V , so dass e auf jedem (u, v )-Weg liegt, Zusammenhangskomponenten von G r e (iii) e liegt in keinem Kreis von G, • dann existiert kein (u, v )-Weg in G r e und jeder (u, v )-Weg in G muss e enthalten (iv) in jeder Ohrendekomposition ist genau ein Endknoten von e in V (F ), wenn e zu F hinzugefügt wird. 9 / 84 10 / 84 Zusammenhang Zusammenhang (ii) für zwei Knoten u, v ∈ V liegt e auf jedem (u, v )-Weg ⇒ (iii) e liegt in keinem Kreis von G: ⇒ (iii) e liegt in keinem Kreis von G (iv) in jeder Ohrendekomposition ist genau ein Endknoten von e in V (F ), wenn e zu F hinzugefügt wird. • sei W ein (u, v )-Weg, der e enthält • angenommen es existiert eine Ohren-Dekomposition von G, in der • angenommen e liegt auf einem Kreis C beide Endknoten konstruiert worden sind, bevor e zu F hinzugefügt wird • wir ersetzen in W e durch C r e • dann existiert ein Weg W in G r e, der die Endknoten von e verbindet • dadurch erhalten wir einen (u, v )-Pfad P • der Pfad P enthält einen (u, v )-Weg W 0 , der e nicht enthält • W ∪ {e} ist dann ein Kreis 11 / 84 12 / 84 Zusammenhang (iv) in jeder Ohrendekomposition ist genau ein Endknoten von e in V (F ), • zur Erinnerung: ⇒ wenn e zu F hinzugefügt wird (i) Zusammenhang • für W ⊆ V ist der induzierte Schnitt die Kantenmenge e ist Schnittkante E (W , V r W ) = {(x , y ) : x ∈ W , y ∈ / W} • ein Schnitt heißt minimal, wenn er nicht leer ist und per Inklusion • ist e keine Schnittkante, so ist G r e zusammenhängend minimal ist, • betrachte eine beliebige Ohren-Dekomposition von G r e • d.h. er enthält keine keine echte, nichtleere Teilmenge, die selbst wieder • füge am Schluss e hinzu ein Schnitt ist • nach Satz 1 liefert dies eine Ohren-Dekomposition von G • (ein minimaler Schnitt wird oft auch als Kozyklus bezeichnet) • in ihr sind beide Endknoten von e bereits vor Hinzufügen von • insbesondere ist jede Schnittkante {e} ein minimaler Schnitt e konstruiert worden 13 / 84 14 / 84 Zusammenhang Zusammenhang Lemma 4 Beispiel: 1 Sei G zusammenhängend und E (W , V r W ) ein nichtleerer Schnitt. E (W , V r W ) ist minimal ⇐⇒ die Graphen G(W ) und G(V r W ) sind zusammenhängend. 4 2 Beweis: 6 • sei E (W , V r W ) ein minimaler Schnitt • angenommen G(W ) hat k ≥ 2 Komponenten Gi = (Wi , Ei ), 5 i = 1, . . . , k 3 W1 W2 W3 W • sei W = {1, 2, 3} • der von W induzierte Schnitt ist nicht minimal, V−W • denn {6} und {4, 5} induzieren Schnitte, die in dem von W induzierten enthalten sind • da G zusammenhängend ist, ist jedes Gi mit G r Wi durch mindestens eine Kante verbunden 15 / 84 16 / 84 Zusammenhang Zusammenhang Lemma 5 W1 W2 W3 W Jeder nichtleere Schnitt eines zusammenhängenden Graphen ist disjunkte Vereinigung von minimalen Schnitten. V−W Beweis: • sei E (W , V r W ) ein nichtleerer Schnitt • dann sind die Mengen E (Wi , V r Wi ) nichtleere Schnitte, die in E (W , V r W ) echt enthalten sind • seien Gi = (Wi , Ei ), i = 1, . . . , k die Zusammenhangskomponenten von G(W ) • seien umgekehrt G(W ) und G(V r W ) zusammenhängend und sei E (W , V r W ) 6= ∅, W1 W3 W2 W • dann kann die Entfernung einer echten Teilmenge von E (W , V r W ) den Graphen G nicht unzusammenhängend machen V−W • damit ist E (W , V r W ) minimaler Schnitt. • offensichtlich sind die Schnitte E (Wi , V r Wi ) paarweise kantendisjunkt • weiter ist E (W , V r W ) = Sk i =1 E (Wi , V r Wi ) 18 / 84 17 / 84 Zusammenhang W1 W2 W V V k Zusammenhang W Gliederung V1 2 • es ist E (W , V r W ) = l Sk i =1 V-W • Zusammenhangstest • Zusammenhang und Schnittkanten • Wälder und Bäume • minimal aufspannende Bäume E (Wi , V r Wi ) • ist V r W zusammenhängend, so auch V r Wi für alle i • Der Satz von Menger • 2-zusammenhängende Graphen • Kreise und Schnitte • nach Lemma 4 sind dann die E (Wi , V r Wi ) minimale Schnitte • andernfalls seien V1 , . . . , V` die Komponenten von V r W • betrachte die von W ∪ Vi induzierten Graphen • per Induktion ist E (W , Vi ) disjunkte Vereinigung von minimalen Schnitten • da E (W , V ) = S` i =1 E (W , Vi ), folgt die Behauptung. 19 / 84 20 / 84 Zusammenhang Zusammenhang Lemma 6 Die Endknoten längster Wege in einem Baum haben Grad eins. • wir betrachten jetzt Graphen, in denen jede Kante Schnittkante ist Beweis: • äquivalent dazu ist, dass der Graph keine Kreise enthält • sei W ein Weg maximaler Länge, u ein Endknoten von W und v der Nachbar von u auf W • ein Graph ohne Kreise heißt Wald • angenommen u hat einen weiteren Nachbarn w • ein zusammenhängender Wald ist ein Baum • wenn w nicht auf W liegt, so ist W , w oder w , W ein längerer Weg • ein Blatt in einem Wald ist ein Knoten vom Grad eins als W • falls w auf W liegt, so induzieren der Weg von w nach u und die • Bäume haben immer mindestens zwei Blätter: Kante (w , u) einen Kreis. Diese einfache Beobachtung führt uns zu den folgenden Charakterisierungen von Bäumen: 21 / 84 22 / 84 Zusammenhang Zusammenhang Satz 7 Sei G = (V , E ). Die folgenden Aussagen sind äquivalent: Beweis: (i) G ist zusammenhängend und hat n − 1 Kanten, (i) G ist zusammenhängend und hat n − 1 Kanten ⇒ (ii) G ist kreisfrei und hat n − 1 Kanten, (ii) G ist kreisfrei und hat n − 1 Kanten: (iii) G ist zusammenhängend und kreisfrei, (iv) G ist zusammenhängend und jede Kante von G ist Schnittkante, • angenommen G hat einen Kreis C (v) je zwei Knoten sind durch genau einen Weg verbunden, • dann kann nach Satz 3 keine Kante e ∈ C Schnittkante sein (vi) G ist kreisfrei und das Hinzufügen einer Kante mit Endknoten in G erzeugt genau einen Kreis, • d.h. für alle e ∈ C ist G r e zusammenhängend, hat n Knoten und n − 2 Kanten, im Widerspruch zu Korollar 2. (vii) G ist bipartit, je zwei Knoten sind durch genau einen kürzesten Weg verbunden, (viii) G besitzt die folgenden Ohrendekomposition: (a) der Basisgraph ist eine Kante e ∈ E , die nicht Schleife ist, (b) die Ohren sind Kanten e = (u, v ) ∈ E mit u ∈ V (F ), v ∈ V r V (F ). 23 / 84 24 / 84 Zusammenhang Zusammenhang (ii) G ist kreisfrei und hat n − 1 Kanten ⇒ (iii) G ist zusammenhängend und kreisfrei ⇒ (iii) G ist kreisfrei und zusammenhängend: (iv) G ist zusammenhängend und jede Kante von G ist Schnittkante • folgt aus Satz 3. • Induktion über |V | • die Aussage ist richtig für n = 2 (iv) G ist zusammenhängend und jede Kante von G ist Schnittkante ⇒ • sei G ein kreisfreier Graph mit n + 1 Knoten und n Kanten (v) je zwei Knoten sind durch genau einen Weg verbunden • dann ist G ein Wald und enthält nach Lemma 6 einen Knoten v vom • da G zusammenhängend ist, sind je zwei Knoten durch einen Weg Grad eins verbunden • G r v hat n Knoten, n − 1 Kanten und ist kreisfrei • angenommen zwei Knoten sind durch zwei Wege verbunden • nach Induktionsannahme ist G r v zusammenhängend und damit auch G. • diese beiden Wege enthalten dann einen Kreis 25 / 84 26 / 84 Zusammenhang (v) (vi) Zusammenhang je zwei Knoten sind durch genau einen Weg verbunden ⇒ (vi) G ist kreisfrei, für (u, v ) ∈ / E enthält G + (u, v ) genau einen Kreis ⇒ G ist kreisfrei und das Hinzufügen einer Kante mit Endknoten in G (viii) G besitzt eine Ohrendekomposition mit einer Kante e ∈ E als Basisgraph, Kanten e = (u, v ) ∈ E mit u ∈ V (F ), v ∈ V r V (F ) als Ohren erzeugt genau einen Kreis: • G ist kreisfrei, da sonst zwei Knoten durch 2 Wege verbunden wären • für (u, v ) ∈ / E enthält G + (u, v ) genau einen Kreis • das Hinzufügen einer Kante e kann somit auch nur genau einen Kreis • d.h. G enthält einen (u, v )-Weg und ist damit zusammenhängend erzeugen: • der Algorithmus erzeugt einen zusammenhängenden Untergraphen G 0 = (V (F ), F ) • seien C1 und C2 zwei Kreise • sei e ∈ C1 ∩ C2 ` ´ • dann existiert ein Kreis C ⊆ C1 ∪ C2 r e • damit enthält G einen Kreis • da G zusammenhängend ist, ist G 0 aufspannend, d.h. es gilt V (F ) = V • angenommen am Ende des Algorithmus existiert eine Kante (u, v ) ∈ E r F • da G 0 = (V , F ) zusammenhängend ist, existiert in G 0 ein (u, v )-Weg • damit existiert in G 0 + (u, v ) ⊆ G ein Kreis 27 / 84 28 / 84 Zusammenhang (viii) (i) Zusammenhang G besitzt eine Ohrendekomposition mit einer Kante e ∈ E als Basisgraph, (v) Kanten e = (u, v ) ∈ E mit u ∈ V (F ), v ∈ V r V (F ) als Ohren ⇒ (vi) G ist zusammenhängend und hat n − 1 Kanten je zwei Knoten sind durch genau eine Weg verbunden und G ist kreisfrei und das Hinzufügen einer Kante mit Endknoten in G erzeugt genau einen Kreis ⇒ (vii) • der Algorithmus erzeugt in jedem Schritt zusammenhängende Graphen G ist bipartit, je zwei Knoten sind durch genau einen kürzesten Weg verbunden (V (F ), F ) mit |F | = |V (F )| − 1 • da G kreisfrei ist, ist G bipartit (Lemma 1.7) • da am Ende V (F ) = V und F = E gilt, ist G zusammenhängend und hat n − 1 Kanten • da G genau einen (u, v )-Weg enthält, existiert auch genau ein kürzester (u, v )-Weg 29 / 84 30 / 84 Zusammenhang Zusammenhang (vii) G ist bipartit, zwischen je zwei Knoten existiert genau ein kürzester Weg ⇒ (iii) G ist zusammenhängend und kreisfrei Korollar 8 Ein Graph ist genau dann zusammenhängend, wenn er einen aufspannenden Baum enthält. • da die Wege existieren, ist G zusammenhängend Beweis: • angenommen G enthält einen Kreis • sei C ein Kreis kürzester Länge • sei T ein aufspannender Baum eines Graphen G • da G bipartit ist, hat C gerade Länge, C = [v1 , . . . , v2k ] • da T zusammenhängend ist, ist auch der Obergraph G zusammenhängend • die (v1 , vk +1 )-Wege W1 = v1 , v2 , . . . , vk +1 und • sei umgekehrt G zusammenhängend W2 = v1 , v2k , . . . , vk +1 haben beide die Länge k • dann enthält G einen minimal zusammenhängenden Teilgraphen T , • nach Voraussetzung existiert dann ein kürzerer (v1 , vk +1 )-Weg bei dem jede Kante Schnittkante ist v1 = w1 , w2 , . . . , wj = vk +1 mit j ≤ k • nach Satz 7 (iv) ist T ein Baum. • dann enthält aber v1 , v2 , . . . , vk +1 , wj −1 , wj −2 , . . . , w2 einen Kreis, der kürzer als C ist. 31 / 84 32 / 84 Zusammenhang Zusammenhang Ein Wald F ⊆ G heißt maximal, wenn für jede Komponente G 0 von G der Teilgraph F ∩ G 0 ein aufspannender Baum ist. • die aufspannenden Bäume in einem zusammenhängenden Graphen Beispiel: • sie erinnert an die Eigenschaften linear unabhängiger Vektoren haben sehr viel Struktur • jede Kante eines aufspannenden Baums kann durch eine geeignete Die blauen Kanten bilden einen aufspannenden, nicht-maximalen Wald. Kante eines anderen aufspannenden Baumes ersetzt werden: Korollar 10 Seien T , T 0 zwei aufspannende Bäume eines zusammenhängenden Graphen. Dann existiert zu jedem e ∈ E (T ) r E (T 0 ) ein e 0 ∈ E (T 0 ) r E (T ), so dass T r e ∪ e 0 wieder ein aufspannender Baum ist. Korollar 9 Seien G ein Graph mit k Komponenten und F ⊆ G. F ist genau dann ein maximaler Wald, wenn F k Komponenten und n − k Kanten hat. Beweis: folgt aus Satz 7 und Korollar 8. 34 / 84 33 / 84 Zusammenhang Zusammenhang Korollar 11 Beweis: Seien T , T 0 zwei aufspannende Bäume eines zusammenhängenden Graphen. Zu jedem e 0 ∈ E (T 0 ) r E (T ) existiert dann ein e ∈ E (T ) r E (T 0 ), so dass T ∪ e 0 r e wieder ein aufspannender Baum ist. • nach Satz 7 ist e Schnittkante von T • damit zerfällt der Graph (V , E (T ) r e) in zwei Zusammenhangskomponenten U und W Beweis: • da T 0 ein aufspannender Baum ist, existiert in T 0 ein Weg, der die • nach Satz 7 enthält T ∪ e 0 genau einen Kreis Endknoten von e verbindet • die Kanten dieses Kreises können nicht alle in E (T 0 ) liegen, da • dieser Weg enthält mindestens eine Kante e 0 , die U mit W verbindet T 0 kreisfrei ist • per Konstruktion ist e 0 ∈ E (T 0 ) r E (T ) und T r e ∪ e 0 ist wieder ein • dieser Kreis enthält somit mindestens eine Kante e ∈ E (T ) r E (T 0 ). aufspannender Baum. • wenn wir e entfernen, erhalten wir wieder einen kreisfreien und zusammenhängenden Graphen Umgekehrt können wir auch beliebige „fremde“ Kanten in einen Baum zwin- • nach Satz 7 ist also T ∪ e 0 r e wieder ein aufspannender Baum. gen: 35 / 84 36 / 84 Zusammenhang Zusammenhang • die Struktureigenschaften aufspannender Bäume ermöglichen es, Bäume mit möglichst geringem Gewicht zu bestimmen Gliederung • sei dazu G = (V , E ) ein zusammenhängender Graph • Zusammenhangstest • Zusammenhang und Schnittkanten • Wälder und Bäume • minimal aufspannende Bäume • auf den Kanten seien Gewichte c(e) gegeben • wir suchen einen aufspannenden Baum T = (V , F ) von G, so dass c(T ) = • Der Satz von Menger • 2-zusammenhängende Graphen X c(e) e∈F minimal ist unter allen aufspannenden Bäumen • Kreise und Schnitte • wir können dieses Problem mit einer der Variante der Ohren-Dekomposition lösen: 38 / 84 37 / 84 Zusammenhang Zusammenhang Algorithmus von Prim Algorithmus von Kruskal (1) wähle v ∈ V beliebig und setzte U = {v }, T = ∅ (2) wähle eine minimal-gewichtete Kante e = (u, v ) ∈ E mit u ∈ U, v ∈ V r U (3) setze U = U ∪ v und T = T ∪ e (4) wiederhole (2)–(3) so lange, bis keine solche Kante mehr existiert (1) Setze F = ∅ (2) for i = 1 to |V | − 1 do (3) wähle eine minimal-gewichtete Kante e ∈ E r F , die keinen Kreis in F schließt. (4) setze F = F ∪ e, E = E r e end do • wir zeigen nicht die Korrektheit dieses Verfahrens • und betrachten eine zweites Verfahren Satz 12 Der Algorithmus von Kruskal berechnet einen minimalen aufspannenden Baum. 39 / 84 40 / 84 Zusammenhang Zusammenhang Beweis: • Kruskals Algorithmus lässt sich mit geeigneten Datenstrukturen so • offensichtlich bildet der erzeugte Teilgraph T = (V , F ) einen implementieren, dass er eine Laufzeit von O(m log m) = O(m log n) hat aufspannenden Baum • wir beenden damit den Abschnitt über Bäume und wenden uns wieder • angenommen T hat nicht minimales Gewicht Fragen des Zusammenhangs zu • sei T 0 ein minimal-aufspannender Baum mit |E (T 0 ) ∩ E (T )| maximal • betrachte eine minimal-gewichtete Kante e 0 ∈ E (T 0 ) r E (T ) • nach Korollar 11 existiert eine Kante e ∈ E (T ) r E (T 0 ), so dass S = T 0 ∪ e r e 0 ein aufspannender Baum ist • da der Algorithmus die Kante e der Kante e 0 vorgezogen hat, gilt c(e) ≤ c(e 0 ) und somit c(S) ≤ c(T 0 ) • dann ist S ein minimal-aufspannender Baum, der mehr Kanten mit T gemeinsam hat als T 0 . 42 / 84 41 / 84 Zusammenhang Zusammenhang • seien s, t ∈ V zwei beliebige Knoten in einem (gerichteten) Graphen • wieviele Kanten bzw. Knoten müssen mindestens entfernt werden, um Gliederung alle Wege von s nach t zu zerstören ? • Zusammenhangstest • Zusammenhang und Schnittkanten • Wälder und Bäume • minimal aufspannende Bäume • für den Fall gerichteter Graphen und Kanten kennen wir die Antwort schon • die Frage ist äquivalent zu einem Fluss-Problem mit Kantenkapazität 1. • Der Satz von Menger • 2-zusammenhängende Graphen • Kreise und Schnitte 43 / 84 44 / 84 Zusammenhang Zusammenhang • zwei (s, t )-Wege heißen knotendisjunkt, wenn sie keine anderen • sei G = (V , A) ein gerichteter Graph und s, t ∈ V Knoten als s und t gemeinsam haben • eine Teilmenge S ⊆ V trennt s und t , falls G(V r S) keinen • wir wollen eine maximale Anzahl kantendisjunkter (s, t )-Wege gerichteten (s, t )-Weg enthält konstruieren • eine Teilmenge X ⊆ A von Kanten trennt s und t , falls in G(V , A r X ) kein gerichteter (s, t )-Weg existiert Korollar 14 (Menger, Knoten, gerichtet) Sei G = (V , A) ein zusammenhängender, gerichteter Graph und s, t zwei nichtbenachbarte Knoten. Die maximale Anzahl von knotendisjunkten Korollar 13 (Menger, Kanten, gerichtet) (s, t )-Wegen ist gleich der kleinsten Anzahl von Knoten, die s und t trennen. In einem zusammenhängenden, gerichteten Graphen ist die maximale Anzahl von kantendisjunkten (s, t )-Wegen gleich der kleinsten Anzahl von Kanten, die s und t trennen. Beweis: • wir erzeugen einen zweiten gerichteten Graphen G 0 Wir stellen die gleiche Frage jetzt für Knotenmengen: • dazu ersetzen wir jeden Knoten in u ∈ V r {s, t } durch eine gerichtete Kante (u1 , u2 ) wie folgt: 45 / 84 46 / 84 Zusammenhang Zusammenhang Analoge Ergebnisse gelten in ungerichteten Graphen: u u u 1 Korollar 15 (Menger, Kanten, ungerichtet) 2 In einem zusammenhängenden ungerichteten Graphen ist die maximale Anzahl von kantendisjunkten (s, t )-Wegen gleich der kleinsten Anzahl von Kanten, die s und t trennen. • knotendisjunkte (s, t )-Wege in G entsprechen kantendisjunkten Wegen in G 0 • sei A(S, T ) ein minimaler Kantenschnitt in G 0 Beweis: • angenommen beide Knotenkopien u1 und u2 liegen in S • wir konstruieren einen gerichteten Graphen G 0 = (V , A), indem wir jede Kante in E durch ein Paar antiparalleler Kanten in A ersetzen • ist |A(u2 , T )| ≥ 1, so können wir u2 nach T verschieben, ohne den Schnitt zu erhöhen • offensichtlich bilden kantendisjunkte Wege in G Wege in G 0 , die keine gerichteten Kanten und keine antiparallelen Kanten gemeinsam haben • also ist |A(u2 , T )| = 0 und u2 trägt nicht zum Schnittwert bei • damit bilden die Knoten u ∈ V für die u1 ∈ S und u2 ∈ T oder |A(u2 , T )| = 0 einen Knotenschnitt in G, dessen Kardinalität mit dem minimalen Kantenschnitt in G 0 übereinstimmt 47 / 84 48 / 84 Zusammenhang Zusammenhang • umgekehrt können wir gerichtete kantendisjunkte Wege, die Entsprechend gilt der Satz von Menger für ungerichtete Graphen und Knoten: antiparallele Kanten gemeinsam haben wie folgt „entkreuzen“: Korollar 16 (Menger, Knoten, ungerichtet) Sei G = (V , E ) ein zusammenhängender ungerichteter Graph und s, t zwei nichtbenachbarte Knoten. Die maximale Anzahl von knotendisjunkten (s, t )-Wegen ist gleich der kleinsten Anzahl von Knoten, die s und t trennen. Beweis: • weiter wird ein minimaler Kantenschnitt A(S, T ) in G 0 durch die • wie vorher konstruieren wir den gerichteten Graphen G 0 = (V , A), Menge von Kanten definiert, die von S nach T führen. indem wir jede Kante in E durch ein Paar antiparalleler Kanten in A ersetzen • damit enthält der Schnitt höchstens eine der beiden antiparallelen Kanten und definiert somit einen ungerichteten Schnitt in G gleicher Kardinalität. • dann entsprechen knotendisjunkte Wege in G 0 knotendisjunkten Wege in G und trennende Knotenmengen in G 0 trennenden Knotenmengen in G. 49 / 84 50 / 84 Zusammenhang Zusammenhang Sei G = (V , E ) ein ungerichteter Graph Sei G = (V , E ) ein ungerichteter Graph • sei G k -, aber nicht (k + 1)-zusammenhängend • für u, v ∈ V bezeichne • dann ist κG = k die Zusammenhangszahl oder der • λG (u, v ) die Anzahl der knotendisjunkten (u, v )-Wege Zusammenhang von G • κG (u, v ) die Größe einer kleinsten (u, v )-trennenden Knotenmenge • damit gilt: • die Entfernung von k − 1 Knoten zerstört den Zusammenhang nicht • G heißt k -zusammenhängend, wenn mindestens k Knoten entfernt werden müssen, um den Graph unzusammenhängend zu machen • es gibt eine k -elementige Teilmenge S von Knoten, so dass G r S unzusammenhängend ist Zur Beachtung: • weiter ist κG = min{κG (u, v ) : (u, v ) ∈ / E }. • für einen k -zusammenhängenden Graphen gilt: • er ist auch (k − 1)-zusammenhängend • er kann auch (k + 1)-zusammenhängend sein • entsprechend ist λG durch das größte k gegeben, so dass je zwei Knoten durch mindestens k knotendisjunkte Wege verbunden sind 51 / 84 52 / 84 Zusammenhang Zusammenhang Sei G = (V , E ) ein ungerichteter Graph Als Zusammenfassung der bisherigen Resultate folgt dann der eigentliche: • G heißt k -kantenzusammenhängend, falls jeder Schnitt E (W , V r W ), der den Graph unzusammenhängend macht, mindestens k Kanten enthält Korollar 17 (Satz von Menger) Sei G ein gerichteter oder ungerichteter Graph. Dann gilt: • wieder gilt für einen k -kantenzusammenhängenden Graphen: (i) der Zusammenhang von G ist das größte k , so dass zu je zwei Knoten u, v mindestens k knotendisjunkte (u, v )-Wege existieren • er ist auch (k − 1)-kantenzusammenhängend • er kann auch (k + 1)-kantenzusammenhängend sein (ii) der Kantenzusammenhang ist das größte k , so dass zu je zwei Knoten u, v mindestens k kantendisjunkte (u, v )-Wege existieren. • der Kanten-Zusammenhang ist das größte k , so dass G k -kantenzusammenhängend ist • die zugehörigen Größen werden mit λ0 bzw. κ0 bezeichnet • für gerichtete Graphen ist der Zusammenhang die kleinste Anzahl von Kanten bzw. Knoten, deren Entfernung den Graphen nicht stark zusammenhängend macht 54 / 84 53 / 84 Zusammenhang Zusammenhang Beweis: (ii) folgt unmittelbar aus den Korollaren 13 und 15 Gliederung (i) für (u, v ) ∈ / E bzw. (u, v ) ∈ / A gilt nach den Korollaren 14 und 16, dass λG (u, v ) = κG (u, v ). • Zusammenhangstest • Zusammenhang und Schnittkanten • Wälder und Bäume • minimal aufspannende Bäume • ist (u, v ) ∈ E bzw. (u, v ) ∈ A, so betrachte G 0 = G − (u, v ) • in G 0 folgt aus den Korollaren 14 und 16: λG (u, v ) = λG 0 (u, v ) + 1 • Der Satz von Menger • 2-zusammenhängende Graphen • Kreise und Schnitte = κG 0 (u, v ) + 1 ≥ κG 0 + 1 ≥ κG , • die letzte Ungleichung folgt, da die Zusammenhangszahl nicht um mehr als eins fallen kann, wenn eine Kante entfernt wird. 55 / 84 56 / 84 Zusammenhang Zusammenhang Lemma 18 • wir wollen zeigen, dass jeder 2-zusammenhängende Graph eine Sei G ein k -zusammenhängender Graph und G 0 der Graph, der dadurch entsteht, dass wir einen neuen Knoten x hinzufügen, den wir mit mindestens k Knoten von G verbinden. Dann ist G 0 ebenfalls k -zusammenhängend. spezielle Ohrendekomposition hat • zur Vorbereitung betrachten wir zwei Operationen, die den 2-Zusammenhang erhalten S S G G x x G x Beweis: • sei S eine trennende Menge in G 0 • liegt x ∈ S, so ist S r x trennende Menge in G und somit |S| ≥ k + 1 • ist x ∈ / S, aber N (x ) ⊆ S, so folgt |S| ≥ k • andernfalls ist S auch trennende Menge in G und daher |S| ≥ k . 57 / 84 58 / 84 Zusammenhang Zusammenhang • wir wissen bereits, dass in einem 2-zusammenhängenden Graphen je • sei umgekehrt G 2-zusammenhängend zwei Knoten auf einem Kreis liegen • betrachte zwei Kanten (u, v ), (x , y ) ∈ E • als Folgerung ergibt sich, dass diese Aussage auch für je zwei Kanten • füge zwei neue Knoten a, b hinzu mit N (a) = {u, v }, N (b) = {x , y } gilt: v Korollar 19 y b a Ein Graph ist genau dann 2-zusammenhängend, wenn d (v ) ≥ 2 für alle Knoten v ∈ V und je zwei Kanten auf einem gemeinsamen Kreis liegen. u x • der neue Graph G 0 ist nach Lemma 18 wieder 2-zusammenhängend Beweis: • betrachte zwei Knoten u, v ∈ V • daher liegen die Knoten a, b auf einem gemeinsamen Kreis in G 0 • da beide Knoten Grad mindestens 2 haben, existieren Kanten • da a und b genau zwei Nachbarn haben, enthält dieser Kreis die (u, x ), (v , y ) ∈ E Knoten {u, v , x , y }, aber nicht die Kanten (u, v ), (x , y ) • nach Voraussetzung liegen beide Kanten auf einem gemeinsamen • wenn wir die Pfade u, a, v und x , b, y durch die Kanten Kreis und damit auch die beiden Knoten u und v (u, v ), (x , y ) ersetzen, erhalten wir den gesuchten Kreis in G. 59 / 84 60 / 84 Zusammenhang Zusammenhang • Als zweite Operation betrachten wir eine Unterteilung einer Kante Satz 21 (u, v ), bei der wir die Kante durch einen Pfad (u, w , v ) der Länge 2 ersetzen. Ein Graph G ist genau dann 2-zusammenhängend, wenn er folgende Ohrenkomposition besitzt: • starte mit einem Kreis Lemma 20 • auf dem bereits konstruierten Graphen wähle iterativ zwei Knoten Sei G eine 2-zusammenhängender Graph und G 0 der Graph, der durch Unterteilung einer Kante entsteht. Dann ist auch G 0 2-zusammenhängend. u 6= v und füge einen (u, v )-Weg hinzu W2 Beweis: W W • Man macht sich leicht klar, dass in G 0 wieder je zwei Kanten auf einem 1 gemeinsamen Kreis liegen. 3 W4 Damit können wir eine Ohren(de)komposition für 2-zusammenhängende Graphen formulieren: C 62 / 84 61 / 84 Zusammenhang Zusammenhang W2 W 1 W • sei umgekehrt G 2-zusammenhängend 3 • wähle einen beliebigen Kreis C ⊆ G als Startkreis W4 • angenommen wir haben bereits einen Teilgraph Gi ⊆ G durch Hinzufügen von Ohren aufgebaut C • falls E (Gi ) 6= E (G), so wähle eine Kante (u, v ) ∈ E (G) r E (Gi ) und Beweis: eine Kante (x , y ) ∈ E (Gi ) • sei G ein Graph mit Ohrendekomposition C, W1 , . . . , Wk • nach Lemma 19 liegen beide auf einem gemeinsamen Kreis von G • wir zeigen induktiv, dass die dabei entstehenden Graphen • sei W der Weg, der in diesem Kreis enthalten ist und die Kante 2-zusammenhängend sind: (u, v ) sowie genau zwei Knoten von Gi enthält • dies gilt sicherlich für den Startkreis C • wenn wir zu einem 2-zusammenhängenden Graphen eine Kante hinzufügen, so bleibt er offensichtlich 2-zusammenhängend • dieser Weg ist das gesuchte nächste Ohr. • nach Lemma 20 gilt dies auch, wenn wir die Kante unterteilen, d.h. einen Weg hinzufügen. 63 / 84 64 / 84 Zusammenhang Zusammenhang • ein ähnliches Resultat gilt für den 2-Kantenzusammenhang • hierzu müssen wir zusätzlich fordern, dass der neue Weg mit nur einem Gliederung Knoten im alten Graph inzidiert • Zusammenhangstest • Zusammenhang und Schnittkanten • Wälder und Bäume • Wälder und Bäume • im Kapitel über planare Graphen werden wir eine Dekomposition von 3-zusammenhängenden Graphen betrachten • ebenfalls dort spielen Kreise und Schnitte eine wichtige Rolle • wir werden daher als nächstes die Beziehung zwischen ihnen • Der Satz von Menger • 2-zusammenhängende Graphen untersuchen • Kreise und Schnitte 65 / 84 66 / 84 Zusammenhang Zusammenhang • dieses Ergebnis lässt sich auch so formulieren: Lemma 22 • die Inzidenzvektoren von Kreisen und Schnitten stehen im Vektorraum Sei C ein Kreis und B ein inklusionsminimaler Schnitt eines Graphen G. Dann ist |E (C) ∩ B| gerade. über F2 senkrecht aufeinander • wir kommen auf ein ähnliches Resultat zurück Beweis: • o.B.d.A. sei G zusammenhängend Satz 23 • sei B = E (W , V r W ) ein inklusionsminimaler Schnitt Sei G = (V , E ) ein zusammenhängender Graph und e ∈ E . Färbe die Kanten in E r e beliebig mit den Farben rot und gelb. Dann gilt genau eine der folgenden Aussagen: • nach Lemma 4 zerfällt G r B in zwei Komponenten G(W ) und G(V r W ) (i) G enthält einen Kreis aus roten Kanten und e • sei C = (v1 , v2 , . . . , vk ) ein Kreis mit E (C) ∩ B 6= ∅ (ii) G enthält einen inklusionsminimalen Schnitt aus gelben Kanten und e • sei o.B.d.A. v1 ∈ W , vk ∈ V r W und (vk v1 ) ∈ E (C) ∩ B • dann ist P = v1 , . . . , vk ein (v1 , vk )-Pfad, der W mit V r W verbindet • E (P ) ∩ B muss dann ungerade sein und somit |E (C) ∩ B| gerade. 67 / 84 68 / 84 Zusammenhang Zusammenhang Beweis: Wir übertragen die Ergebnisse über Kreise und Schnitte auf gerichtete Graphen: • angenommen (i) und (ii) gelten • dann enthält G einen Kreis C und einen inklusionsminimalen Schnitt B mit C ∩ B = {e} • wir betrachten zuerst den zugrunde liegenden ungerichteten Graphen zu Lemma 22 • sei G = (V , A) ein gerichteter Graph und G 0 der zugrunde liegende • sei e = (u, v ) und (ii) gelte nicht ungerichtete Graph • dann sind u und v in G r {E g ∪ e} verbunden, wobei E g die • ein Kreis von G ist ein Kreis in G 0 Menge der gelben Kanten ist • ein (minimaler) Schnitt ist ein (minimaler) Schnitt in G’ • damit existiert ein roter (u, v )-Weg, der zusammen mit e den Kreis • Schnitte A(W , V r W ) in G zerfallen in G 0 in zwei Teilmengen bildet. A+ (W , V r W ) und A− (W , V r W ) Auf den engen Zusammenhang zwischen Kreisen und Schnitten werden wir • analog zu Lemma 5 gilt, dass jeder Schnitt eines gerichteten Graphen im Kapitel über planare Graphen zurückkommen. Vereinigung von kantendisjunkten inklusionsminimalen Schnitten ist 69 / 84 70 / 84 Zusammenhang Zusammenhang Beweis: Lemma 24 (Lemma von Minty) • (i) und (ii) können nicht gleichzeitig gelten: Sei G = (V , A) ein gerichteter Graph und e ∈ A • sei C ein solcher rot/schwarzer Kreis • färbe die Kante e schwarz • färbe alle anderen Kanten beliebig in den Farben rot, grün und schwarz. Dann gilt genau eine der folgenden Aussagen: (i) es existiert ein Kreis aus roten und schwarzen Kanten, der e enthält und in dem alle schwarze Kanten die gleiche Richtung haben, V\W e W • sei A(W , V r W ) ein grün/schwarzer Schnitt mit e ∈ A− (W , V r W ) (ii) es existiert ein minimaler Schnitt aus grünen und schwarzen Kanten, der e enthält und in dem alle schwarzen Kanten die gleiche Richtung haben. • A(W , V r W ) muss entweder eine rote Kreiskante enthalten oder eine schwarze Kreiskante in A+ (W , V r W ) • sei e = (u, v ) • wir markieren die Knoten in folgender Weise: 71 / 84 72 / 84 Zusammenhang Zusammenhang • markiere Knoten v a) u ist markiert: • ist Knoten x markiert und y nicht, so markiere y , falls • eine schwarze Kante (x , y ) existiert, oder • eine rote Kante (x , y ) oder (y , x ) existiert. • per Induktion zeigt man: • im zugrunde liegenden ungerichteten Graphen gibt es zu jedem markierten Knoten z einen (v , z )-Weg v = z0 , z1 , . . . , zk = z mit e V\W (zi −1 , zi ) ∈ E , schwarz (zi −1 , z ) ∈ E , rot r =⇒ =⇒ s (zi −1 , zi ) ∈ A (zi −1 , zi ) ∈ A oder (zi , zi −1 ) ∈ A s W • der (v , u)-Weg zusammen mit e bildet einen rot/schwarzen Kreis, in dem alle schwarzen Kanten gleichgerichtet sind r v • d.h. es gilt (i) • nach Beendigung des Verfahrens unterscheiden wir 2 Fälle: 73 / 84 74 / 84 Zusammenhang Zusammenhang b) u ist nicht markiert: • sei G = (V , A) ein gerichteter Graph • sei W ⊆ V die Menge der markierten Knoten • ein Kreis in G heißt gerichteter Kreis, wenn alle Kanten • per Konstruktion enthält A(W , V r W ) die Kante e und nur schwarze gleichgerichtet sind Kanten, die nach W hineingehen, oder grüne Kanten • ein Schnitt heißt gerichteter Schnitt, wenn alle Kanten gleichgerichtet sind, d.h. A+ (W , V r W ) = ∅ oder A− (W , V r W ) = ∅ • (in der Literatur werden gerichtete Kreise auch als circuit und gerichtete Schnitte als cocircuit bezeichnet) W e Korollar 25 In einem gerichteten Graphen liegt jede Kante entweder in einem gerichteten Kreis oder einem gerichteten Schnitt, aber nicht in beiden. • dann existiert auch ein minimaler Schnitt mit diesen Eigenschaften Beweis: • d.h. es gilt (ii). folgt aus Lemma 24, indem alle Kanten schwarz gefärbt werden. 75 / 84 76 / 84 Zusammenhang Zusammenhang Lemma 26 Korollar 27 Sei G = (V , A) ein gerichteter Graph und s ∈ V . Dann gibt es (s, v )-Wege für alle v ∈ V genau dann, wenn A+ (S, V r S) 6= ∅ für alle S V mit s ∈ S. Für einen gerichteten Graphen G = (V , A) sind die folgenden Aussagen äquivalent: (i) G ist stark zusammenhängend, (ii) G enthält keinen gerichteten Schnitt A− (W , V r W ), Beweis: • sei S die Menge der Knoten, die von s aus auf einem gerichteten (iii) G ist zusammenhängend und jede Kante liegt in einem gerichteten Kreis. Weg erreicht werden können • dann ist S 6= V ⇐⇒ A+ (S, V r S) = ∅. Beweis: • (i) ⇒ (ii) folgt aus Lemma 26 • (ii) ⇒ (iii) ergibt sich Korollar 25 77 / 84 78 / 84 Zusammenhang Zusammenhang (i) G ist stark zusammenhängend, • im nächsten Kapitel werden wir Graphen untersuchen, die so in der (ii) G enthält keinen gerichteten Schnitt A− (W , V r W ), Ebene dargestellt werden können, dass sich keine zwei Kanten schneiden (iii) G ist zusammenhängend und jede Kante liegt in einem gerichteten Kreis. • im Vorgriff auf dieses Kapitel ordnen wir Kreisen und Schnitten Größen der linearen Algebra zu Beweis: • sei G = (V , A) ein gerichteter Graph mit A = {a1 , . . . , am } • (iii) ⇒ (i): sei s ∈ V ein beliebiger Knoten • jeder Kreis C ⊆ A von G zerfällt in zwei Teilmengen C + und C − (wobei wir vorher eine beliebige Orientierung gewählt haben) • angenommen zu einem v ∈ V existiert kein (s, v )-Weg • wir können dann C einen Vektor ζ(C) ∈ Rm wie folgt zuordnen: • nach Lemma 26 existiert ein gerichteter Schnitt S mit s ∈ S und + A (S, V r S) = ∅ 8 < 0, 1, ζi (C) = : −1, • da G einfach zusammenhängend ist, folgt A(S, V r S) 6= ∅ • eine Kante e ∈ A− (S, V r S) kann aber auf keinem gerichteten Kreis falls i ∈ / C+ ∪ C− falls i ∈ C + falls i ∈ C − liegen, da keine Kante diesen Schnitt wieder verlässt. 79 / 84 80 / 84 Zusammenhang Zusammenhang • analog für Schnitte und minimale Schnitte E (W , V r W ): 8 < 0, 1, ζi (W ) = : −1, Lemma 28 Sei G = (V , A) ein gerichteter Graph. Dann stehen die ζ-Vektoren über F2 von Kreisen und Schnitten senkrecht aufeinander. falls i ∈ / A(W , V r W ) falls i ∈ A+ (W , V r W ) falls i ∈ A− (W , V r W ) Beweis: • beide Vektoren sind sicherlich bis auf das Vorzeichen eindeutig definiert • das Skalarprodukt ändert sich nicht, wenn wir eine Kante umorientieren • in jedem Fall sind aber die Vekorräume, die von den Kreis- bzw. • wir können somit annehmen, dass der von einer Menge W induzierte Schnittvektoren erzeugt werden, eindeutig definiert Schnitt ein gerichteter Schnitt ist • jeder Kreis, der W berührt, muss aus W genau so oft herausführen, wie er hineinführt. 82 / 84 81 / 84 Zusammenhang Zusammenhang • sei K eine Menge von Kreisen Satz 29 • K heißt Kreisbasis, falls gilt: Sei G = (V , A) ein gerichteter Graph und T ein maximaler Wald im zugrunde liegenden ungerichteten Graphen. Dann bilden die |A r A(T )| Kreise, die durch Hinzufügen der fehlenden Kanten entstehen, eine Kreisbasis und die |A(T )| Schnittkanten eine Schnittbasis. • ihre ζ-Vektoren sind linear unabängig • sie spannen den von allen ζ-Vektoren erzeugten Raum auf Beweis: • entsprechend sei S eine Menge von minimalen Schnitten • die Kreise sind linear unabhängig, da sie sich mindestens um eine • S heißt Schnittbasis , falls gilt: Kante unterscheiden • ihre ζ-Vektoren sind linear unabängig • das gleiche gilt für die Schnitte • sie spannen den von allen Schnitten erzeugten Raum auf • da die insgesamt |A| ζ-Vektoren nach Lemma 28 orthogonal sind, sind sie maximal linear unabhängig und bilden damit eine Basis. 83 / 84 84 / 84