Prof. Dr. E. Wanke S. Hoffmann, M.Sc. Düsseldorf, 26. Juni 2015 Übungen zur Vorlesung Graphenalgorithmen 2 Die Übungen finden Freitags von 14:30 bis 16:00 Uhr in Raum 25.13.O2.28 statt. Lösungen zu den Aufgaben können bis zum jeweils angegebenen Termin im entsprechenden Briefkasten auf 25.13.O2 oder per E-Mail an [email protected] abgegeben werden. Die Abgaben werden korrigiert und an dem Übungstermin zurückgegeben, wo die Aufgaben besprochen werden. Korrigiert werden nur leserliche Abgaben, bei Abgaben per E-Mail nur solche im PDF Dateiformat. Übungstermin Abgabe bis Aufgaben 13.04. 16:30 Uhr 13.04. 13:00 Uhr 1-4 24.04. 14:30 Uhr 22.04. 15:00 Uhr 5-9 01.05 - 08.05 15.05 22.05 29.05 05.06 12.06 19.06 26.06 03.07 06.05. 13.05. 20.05. 27.05. 03.06. 17.06. 24.06. 01.07. Uhr Uhr Uhr Uhr 10-15 16-21 22-26 27-31 32-36 37-41 42-46 47-49 10.07 08.07. 15:00 Uhr 50-51 15:00 15:00 15:00 15:00 15:00 15:00 15:00 15:00 Uhr Uhr Uhr Uhr Kommentar Übungen wie in der Vorlesung besprochen ab dieser Woche Freitags, Raum 25.13.O2.28 Übungstermin entfällt; bisher wurden viele Themen aus Teil 1 der Veranstaltung im Schnelldurchlauf besprochen, überlegen Sie sich welche davon genauer in der nächsten Übung thematisiert werden sollen Termin entfällt Überlegen Sie sich Fragen und Themen, die wiederholt werden sollen letzter Übungstermin: Überlegen Sie sich Fragen und Themen, die wiederholt werden sollen Aufgabe 1: Gegeben sind folgende Aussagen: 1. Jeder Frosch ist glücklich, wenn alle seine Kinder quaken können. 2. Alle grünen Frösche können quaken. 3. Ein Frosch ist grün, wenn er Kind mindestens eines grünen Frosches ist. Formalisieren Sie diese Aussagen mit Hilfe geeigneter Prädikate in Prädikatenlogik. Aufgabe 2: Betrachten Sie die folgenden sechs Funktionen fi : N0 → N0 , i ∈ {1, . . . , 6}. (Dabei verstehen wir unter f (n) immer max{0, df (n)e}.) f1 (n) = n2 f4 (n) = 2n f2 (n) = n3 f5 (n) = log (n) f3 (n) = n2 log (n) f6 (n) = 2n2 + 3n + 4 Füllen Sie folgende Tabelle aus, indem Sie für jedes Paar (fi , fj ) entweder O, Ω oder Θ eintragen. Tragen Sie Θ ein, genau dann wenn fi ∈ Θ(fj ) gilt. Ansonsten tragen Sie O bzw. Ω ein, wenn fi ∈ O(fj ) bzw. fi ∈ Ω(fj ) gilt. j i 1 2 3 4 5 6 1 2 3 4 5 6 Aufgabe 3: Zeigen Sie: 1. In einem ungerichteten Graphen ist die Anzahl der Knoten mit ungeradem Grad eine gerade Zahl. 2. Jeder ungerichtete Graph G = (V, E) mit |V | ≥ 2 hat mindestens zwei Knoten vom gleichen Grad. 3. Die Anzahl der Knoten in einem ungerichteten Graphen, bei dem jeder Knoten den Grad 3 hat, ist eine gerade Zahl. 4. Für jedes gerade n ≥ 4 gibt es einen zusammenhängenden ungerichteten Graphen mit n Knoten, die alle den Grad 3 haben. Aufgabe 4: Zeichnen Sie alle (paarweise nicht isomorphen) ungerichteten Graphen mit 4 Knoten. Aufgabe 5: Sei G = (V, E) ein ungerichteter Graph. Definiere den Komplementgraph G = (V, E) durch E = {{u, v} | u, v ∈ V ∧ u 6= v ∧ {u, v} ∈ / E}. G ist selbstkomplementär, wenn G und G isomorph sind. Bestimmen Sie die Anzahl der Kanten in einem selbstkomplementären Graphen mit n Knoten. Aufgabe 6: Geben Sie einen Graphen mit 6 Knoten und 8 Kanten an, sodass die Anzahl der verschiedenen topologischen Sortierungen möglichst groß ist. Aufgabe 7: Sei G = (V, E) ein gerichteter, stark zusammenhängender Graph und n := |V |. Wie viele Kanten enthält der transitive Abschluss von G? Aufgabe 8: Führen Sie in Graphen G in Abbildung 1 eine 1. Tiefensuche 2. Breitensuche 9 3 4 7 1 6 2 5 8 11 10 Abbildung 1: Graph G durch, beginnend bei Knoten 9. Geben Sie jeweils die Reihenfolge an, in der die Knoten besucht werden. Bei Wahlmöglichkeiten soll immer derjenige Knoten mit der kleinsten Knotennummer gewählt werden. Geben Sie bei der Tiefensuche ebenfalls für jeden Knoten den DFE-Index an und klassifizieren Sie jede Kante als Baum-, Vorwärts-, Quer- oder Rückwärtskante. Aufgabe 9: Sei G = (V, E) ein ungerichteter Graph. G ist bipartit, wenn es eine Partition der Knotenmenge V in zwei Mengen U1 , U2 gibt (d.h. V = U1 ∪ U2 und U1 ∩ U2 = ∅), so dass für alle Kanten e ∈ E gilt: e ∩ U1 6= ∅ und e ∩ U2 6= ∅. Entwerfen Sie einen möglichst effizienten Algorithmus, der entscheidet, ob ein gegebener Graph bipartit ist und schätzen Sie seine Laufzeit ab. Aufgabe 10: Sei G = (V, E) ein 2-fach zusammenhängender, planarer Graph, dessen kürzester Kreis die Länge k hat. Zeigen Sie: k (|V | − 2) |E| ≤ k−2 Aufgabe 11: Zeigen Sie, dass der K5 und der K3,3 nicht planar sind. Aufgabe 12: Seien G = (V, E) ein ungerichteter Graph und H1 = (V1 , E1 ) sowie H2 = (V2 , E2 ) zwei Erweiterungen von G. Zeigen Sie: |E1 | − |V1 | = |E2 | − |V2 | Aufgabe 13: Sei G = (V, E) ein planarer Graph und p ∈ R, 0 ≤ p < 100. Zeigen Sie: Mindestens p Prozent der Knoten in G haben einen Knotengrad kleiner als 600 . 100 − p Aufgabe 14: Zeigen Sie, dass die Graphen in Abbildung 2 nicht planar sind. Abbildung 2: Graphen zur Aufgabe 14 Aufgabe 15: Zeigen Sie, dass es keine planaren, 6-fach zusammenhängenden Graphen gibt. Aufgabe 16: Geben Sie einen ungerichteten Graphen G = (V, E) und drei zu G duale Graphen an, die paarweise nicht isomorph sind. Begründen Sie die Korrektheit Ihrer Lösung. Aufgabe 17: Wir verallgemeinern Aufgabe 16: Geben Sie für ein beliebiges n ∈ N einen ungerichteten Graphen G = (V, E) und n zu G duale Graphen an, die paarweise nicht isomorph sind. Begründen Sie die Korrektheit Ihrer Lösung. Aufgabe 18: Ein ungerichteter, eingebetteter Graph G = (V, E) heißt geometrisch selbstdual, wenn G isomorph zu seinem geometrischen Dualgraphen ist. 1. Geben Sie für ein beliebiges n ∈ N einen geometrisch selbstdualen Graphen mit n Knoten an. 2. Zeigen Sie: |E| = 2|V | − 2 Abbildung 3: Graphen Abbildung 4: Graphen Aufgabe 19: Bestimmen Sie die Färbungszahl χ der folgenden Graphklassen: 1. Bäume 2. Cn (Kreis mit n Knoten) 3. Kn (vollständiger Graph mit n Knoten) 4. Kn,m (vollständig bipartite Graphen) 5. Wn (Wheel mit n + 1 Knoten: Ein Cn mit einem zusätzlichen Knoten, der mit allen anderen adjazent ist) Aufgabe 20: Zeigen Sie, dass die Graphen K2,3 und K4 nicht außenplanar sind. Aufgabe 21: Wenden Sie den Algorithmus zum Test auf 2-Reduzierbarkeit aus der Vorlesung auf die Graphen in Abbildung 3 an. Aufgabe 22: Wenden Sie den Algorithmus zum Test auf Außenplanrität aus der Vorlesung auf die Graphen in Abbildung 4 an. Abbildung 5: 4 × 5 Gitter Graph Aufgabe 23: Zeigen Sie: Jeder außenplanare Graph mit mindestens 8 Knoten hat ein nicht außenplanares Komplement. Untersuchen Sie ebenfalls, ob diese Schranke scharf ist. Aufgabe 24: Geben Sie die Definition der Baumweite wieder, ohne abzuschreiben. Aufgabe 25: Geben Sie für die Graphen in den Abbildungen 3 und 4 jeweils eine Baumdekomposition mit minimaler Weite an. Aufgabe 26: Bestimmen Sie die Baumweite der folgenden Graphen: • Kn • Km,n • Cn • Wn • n × m Gitter (in Abbildung 5 ist ein 4 × 5 Gitter dargestellt) Aufgabe 27: Mit bw(G) bezeichnen wir die Baumweite eines Graphen G. Sei G ein Graph mit bw(G) ≤ k. Zeigen Sie, dass es in G einen Knoten vom Grad ≤ k gibt. Sei k ≥ 1 und G = (V, E) ein k-fach zusammenhängender Graph mit |V | ≥ k + 1. Zeigen Sie: bw(G) ≥ k. Aufgabe 28: Sei G = (VG , EG ) ein ungerichteter Graph und H = (VH , EH ) eine Erweiterung von G. Zeigen Sie: bw(G) = bw(H) Aufgabe 29: Sei G = (VG , EG ) ein ungerichteter Graph. Der Graph G0 = (V 0 , E 0 ) entsteht aus G durch Kontraktion einer Kante {u, v} ∈ E, indem u und v durch einen Knoten w ersetzt werden, der adjazent zu aller Nachbarn von u und v ist, d.h. V 0 = V \ {u, v} ∪ {w} und E 0 = E \ {u, v} ∪ {{w, z} | z ∈ V \ {u, v} ∧ ({u, z} ∈ E ∨ {v, z} ∈ E)} Sei H = (VH , EH ) ein Graph der aus G durch eine Folge von Kantenkontraktionen hervorgeht. Zeigen Sie: bw(G) ≥ bw(H) Aufgabe 30: Sei P die Eigenschaft, die beschreibt, ob ein Graph G einen Kreis der Länge genau 3 besitzt. Bestimmen Sie die Äquivalenzklassen der Äquivalenzrelation ∼2,P durch Angabe je eines Repräsentanten. Aufgabe 31: Zeigen oder widerlegen Sie, dass für jedes t ≥ 1 die Äquivalenzrelation ∼t,P für die folgenden Grapheigenschaften P endlich viele Äquivalenzklassen hat: 1. P ((V, E)) = 1 ⇔ |V | = |E| 2. P ((V, E)) = 1 ⇔ |V | ist ohne Rest durch 5 teilbar Aufgabe 32: Beweisen Sie, dass der vollständige Graph Kn die Baumweite n − 1 hat. Abbildung 6: Graph zu Aufgabe 35 Aufgabe 33: Bestimmen Sie für t = 3 und die Eigenschaft P = Kreisfreiheit die Äquivalenzklassen der Relation ∼t,P durch Angabe je eines Repräsentanten. Aufgabe 34: Eine dominierende Menge in einem ungerichteten Graphen G = (V, E) ist eine Teilmenge der Knoten U ⊆ V , so dass ∀v ∈ V : (v ∈ U ) ∨ (∃u ∈ U : {u, v} ∈ E). Anders ausgedrückt: Jeder Knoten ist selbst in der dominierenden Menge oder hat einen Nachbarn in der dominierenden Menge. Für allgemeine Graphen ist die Berechnung einer dominierenden Mengen mit möglichst wenigen Knoten schwer (NP-vollständig). Skizzieren Sie ein Verfahren, das dieses Problem für baumweitebeschränkte Graphen (mit gegebener Baumdekomposition) effizient löst. Aufgabe 35: Bestimmen Sie die Cliquenweite und die NLC-Weite des Graphen in Abbildung 6. Aufgabe 36: Sei k ∈ N eine natürliche Zahl. Bestimmen Sie die kleinste natürliche Zahl k 0 ∈ N, so dass für alle markierten Graphen G ∈ CWk gilt, dass G ∈ CWk0 . Begründen Sie die Korrektheit Ihrer Lösung. Aufgabe 37: Zeigen Sie: 1. Der Weg mit 9 Knoten P9 ist in N LC2 2. Der Kreis mit 6 Knoten C6 ist in N LC2 3. Der Weg mit 5 Knoten P5 , bei dem ein Endknoten mit 1 und alle anderen Knoten mit 2 markiert sind, ist nicht in N LC2 4. Alle Bäume liegen in N LC3 5. Alle Wheels liegen in N LC4 6. Alle Bäume liegen in CW3 7. Alle Wheels liegen in CW4 Aufgabe 38: Geben Sie ein möglichst großes k ∈ N an, so dass der Kreis Ck mit k Knoten 1. in N LC3 2. in CW3 liegt. Aufgabe 39: Sei G ein beliebiger, knotenmarkierter Graph mit n Knoten. Zeigen Sie: G ∈ N LCd n2 e Aufgabe 40: Wir wollen für knotenmarkierte Graphen, analog zu baumweitebeschränkten Graphen, Techniken den dynamischen Programmierung nutzen, um anhand eines Ausdrucksbaum Grapheigenschaften effizient zu entscheiden. Definieren Sie hierfür den Begriff der Ersetzbarkeit von zwei knotenmarkierten Graphen G1 und G2 mit Markierungen aus {1, . . . , k} bzgl. einer Grapheigenschaft P . Anders ausgedrückt: Definieren Sie die Äquivalenzrelation ∼P,k für k-knotenmarkierte Graphen. Wir wollen uns dabei auf solche Grapheigenschaften beschränken, die unabhängig von den Knotenmarkierungen sind. a c b d i e f g h Abbildung 7: Graph Aufgabe 41: Bestimmen Sie die Äquivalenzklassen der Äquivalenzrelation ∼P,2 für die Grapheigenschaft P (G) = 1 ⇔ G ist kreisfrei Aufgabe 42: Geben Sie für den Graphen aus Abbildung 7 eine perfekte Eliminationsordnung an. Aufgabe 43: Führen Sie mit dem Graphen aus Abbildung 7 beginnend mit dem Knoten a eine MaximumCardinality-Search und ein LexBFS durch und bestimmen Sie damit eine MCS- und eine LexBFS-Ordnung der Knoten. Im Falle einer Wahlmöglichkeit, soll der alphabetisch kleinste Knoten zuerst gewählt werden. Aufgabe 44: (a) Zeigen Sie, dass LexBFS tatsächlich eine Breitensuche ist, d.h. falls ein Knoten x eine kürzere Distanz zum Startknoten hat als ein Knoten y, so wird x vor y besucht. (b) Zeigen Sie, dass Maximum-Cardinality-Search keine Breitensuche sein muss. Aufgabe 45: Berechnen Sie für den Graphen aus Abbildung 7 das Fill-In F (σ1 ), F (σ2 ) und F (σ3 ) für die Knotenordnungen (a) σ1 = (a, b, c, d, e, f, g, h, i) (b) σ2 = (i, h, g, f, e, d, c, b, a) (c) σ3 = MCS-Ordnung aus Aufgabe 43 Aufgabe 46: Ein ungerichteter Graph G = (V, E) heißt stark perfekt, wenn jeder induzierte Teilgraph H von G eine unabhängige Menge besitzt, die aus jeder nicht vergrößerbaren Clique von H einen Knoten enthält (ein vollständiger Teilgraph ist nicht vergrößerbar, wenn kein Knoten mehr hinzugenommen werden kann ohne die Vollständigkeit zu verlieren). Zeigen Sie: Stark perfekte Graphen sind perfekt. Aufgabe 47: Zeigen Sie: Transitiv orientierbare Graphen sind perfekt. Aufgabe 48: Sei G = (V, E) ein chordaler Graph. Zeigen Sie: G hat Baumweite ω(G) − 1. Aufgabe 49: Gegeben sei eine Menge von Intervallen I = {I1 , I2 , . . . , Ik }, Ii = (ai , bi ). Geben Sie einen effizienten Algorithmus an, der eine kardinalitätsmaximale Clique in dem Intervalgraphen GI bestimmt. Aufgabe 50: Versuchen Sie die folgenden Eigenschaften für einen Graph G = (V, E) in monadischer Logik 2. Ordnung auszudrücken: 1. G ist ein Wald. 2. G ist ein Baum. 3. G hat einen Kreis ungerader Länge. 4. G ist 3-fach zusammenhängend. 5. G hat ein perfektes Matching. (Ein perfektes Matching ist eine Teilmenge der Kantenmenge, so dass jeder Knoten in genau einer dieser Kanten enthalten ist) 6. G ist planar. 7. G ist chordal. Aufgabe 51: Welche der folgenden Graphklassen sind abgeschlossen bezüglich der Minorenoperation? (Eine Graphklasse G ist abgeschlossen bezüglich der Minorenoperation, falls mit einem Graphen G auch jeder Minor von G in G liegt.) 1. die Menge aller Graphen ohne Kreise der Länge ≤ 5, 2. die Menge aller Graphen ohne Kreise der Länge ≥ 5, 3. die Menge aller Graphen ohne Kreise, 4. die Menge aller Bäume, 5. die Menge aller Graphen mit maximalem Knotengrad ≤ 4, 6. die Menge aller 3-färbbaren Graphen, 7. die Menge aller planaren Graphen, 8. die Menge aller Graphen, die keinen Teilgraphen enthalten, der eine Erweiterung des K5 ist.