Graphen der Separabilität höchstens 2 Eine Ausarbeitung zu: Graphs of separability at most 2 von Ferdinando Cicalese und Martin Milanic Oliver Weinreiß 07.07.2011 1 Einleitung Definition 1. Sei G = (V, E) ein Graph. Die Separabilität sepG (x, y) zweier nichtbenachbarter Knoten x, y in G ist definiert als die kleinstmögliche Menge S ⊆ V an Knoten, so dass x und y in unterschiedlichen Zusammenhangskomponenten von G−S liegen. Die Separabilität eines Graphen G (sep(G)) ist definiert als das Maximum über alle Separabilitäten von nichtbenachbarten Knotenpaaren. Für vollständige Graphen G definiert man sep(G) = 0. Ein Graph G der Separabilität k ist somit ein Graph, in dem alle nichtbenachbarten Knotenpaare durch die Entfernung von höchstens k Knoten getrennt werden können. Oder nach Menger’s Theorem: die Separabilität von G ist gleich der maximalen Anzahl von knotendisjunkten Pfaden, die zwei nichtbenachbarte Knoten verbinden. Es sei Gk die Menge der Graphen mit Separabilität höchstens k. Dann ist Gk abgeschlossen unter der Entfernung von Knoten. Das heißt zu jedem Graph G ∈ Gk , enthält Gk auch alle induzierten Subgraphen von G. Man nennt Gk vererbende Klasse. Diese Graphenklassen sind interessant, da sie es ermöglichen, eine Beschreibung in Form von verbotenen Subgraphen zu geben. Für eine Menge F von Graphen sagen wir, dass G F-frei ist, wenn G keinen Subgraphen enthält, der isomorph zu einem Element aus F ist. Für eine vererbende Klasse G nennen wir F die Menge aller Graphen G, so dass G ∈ / G aber H ∈ G für alle echten induzierten Subgraphen H von G. Wir nennen F die Menge der verbotenen induzierten Subgraphen von G und G ist genau die Menge der F-freien Graphen. Wir betrachten im Folgenden die Klasse G2 , welche wir nach Aufbau und durch verbotene induzierte Subgraphen charakterisieren werden. 2 Verkleben entlang einer k-Clique Wir werden im Beweis von Theorem 1 den Algorithmus Verkleben entlang einer ” k-Clique“ verwenden. Dieser soll nun erklärt werden: Ein Graph G entsteht aus den Graphen G1 und G2 mittels des Algorithmus Verkleben entlang einer k-Clique“, wenn es für ein r ≤ k zwei r-Cliquen K1 = ” {x1 , ..., xr } ⊆ V (G1 ) und K2 = {y1 , ..., yr } ⊆ V (G2 ) gibt, so dass der Graph G isomorph ist zu dem Graph, der aus der disjunkten Vereinigung von G1 und G2 entsteht, bei der die xi und die yi für i = 1, ..., r miteinander identifiziert werden. Wir schreiben dies als G = G1 ⊕k G2 . Für k = 0 ist G1 ⊕k G2 die disjunkte Vereinigung von G1 und G2 . G1 G = G1 ⊕4 G2 G2 1 3 Charakterisierung von G2 durch Aufbau Theorem 1. Sei G ein Graph. Dann gilt sep(G) ≤ 2 genau dann, wenn G mittels Verkleben entlang einer 2-Clique“ aus Kreisen und vollständigen Graphen ” erzeugt werden kann. Beweis. Wir beweisen zunächst zwei Lemmata: Lemma 1. Die Klasse G2 ist abgeschlossen unter dem Algorithmus Verkleben ” entlang einer 2-Clique“. Beweis. Seien G1 , G2 , G Graphen mit G1 , G2 ∈ G2 und G = G1 ⊕2 G2 . Zu zeigen ist G ∈ G2 . Es gilt V (G) = V (G1 ) ∪ V (G2 ), wobei K := V (G1 ) ∩ V (G2 ) eine Clique der Größe ≤ 2 ist. Annahme: Sei sep(G) ≥ 3. Wähle zwei Knoten x und y, so dass sepG (x, y) ≥ 3. Alle Paare x und y mit x ∈ V (G1 )\V (G2 ) und y ∈ V (G2 )\V (G1 ) sind durch die beiden Knoten aus K trennbar. Ohne Einschränkung seien daher x, y ∈ V (G1 ). Wegen sepG (x, y) ≥ 3 existieren nach Menger’s Theorem drei knotendisjunkte Pfade zwischen x und y. Da G1 jedoch von Separabilität 2 ist, kann mindestens einer dieser Pfade nicht vollständig in G1 liegen. Wähle einen dieser Pfade. Dieser Pfad P hat nun einen Knoten in V (G2 ) \ V (G1 ) und verläuft durch beide Knoten von K. Sei P 0 der Pfad der entsteht, wenn man den Teil des Pfades, der in G2 verläuft, durch die Kante ersetzt, welche die beiden Knoten aus K verbindet. Die Ersetzung von P durch P 0 liefert jedoch drei knotendisjunkte Pfade von x nach y in G1 . Dies ist ein Widerspruch zu der Annahme dass sep(G1 ) ≤ 2. Daraus folgt das Lemma. Lemma 2. Sei G ∈ G2 . Dann ist G vollständig, oder ein Kreis, oder G hat eine trennende Clique aus höchstens 2 Knoten. Beweis. Sei G ∈ G2 aber weder vollständig noch ein Kreis. Annahme: G hat keine trennende Clique aus höchstens 2 Knoten. Wir zeigen zuerst, dass G dann chordal sein muß. Annahme: G ist nicht chordal, enthalte also einen speichenfreien Kreis C mit mindestens 4 Knoten. Sei K eine zusammenhängende Komponente von G − V (C). Dann bildet die Menge NC (K) (also die Nachbarn von K in C) eine Clique, da ansonsten je zwei nicht benachbarte Knoten x und y in NC (K) durch drei knotendisjunkte Pfade in G verbunden wären (zwei entlang des Kreises C, einer entlang der Knoten in K). Da G nicht chordal ist, kann NC (K) aus höchstens 2 Knoten bestehen. Damit ist NC (K) aber eine trennende Clique aus höchstens zwei Knoten, ein Widerspruch zur Annahme. G muß also chordal sein. Nach Dirac ist jeder zusammenhängende, chordale Graph ohne trennende Clique ein vollständiger Graph. Da G chordal aber nicht vollständig ist, enthält G eine kleinstmöglich gewählte trennende Clique K aus mindestens 3 Knoten. Seien {x1 , x2 , x3 } ∈ K. Seien C1 und C2 zwei zusammenhängende Komponenten von G−K. Da K kleinstmöglich ist, hat jeder Knoten aus K sowohl einen Nachbarn in C1 als auch in C2 . Sei vji ∈ N (xi ) ∩ Cj mit i ∈ {1, 2, 3} und j ∈ {1, 2} und sei Tj ein minimaler zusammenhängender Subgraph von Cj , der vj1 , vj2 und vj3 enthält. 0 0 0 0 Sei V (T1 ) ∪ {x1 , x2 , x3 } ∪ V (T2 ) und E 0 = E(T1 ) ∪ Gi = (V , E ) mit V = xi vj : i ∈ {1, 2, 3} , j ∈ {1, 2} ∪ E(T2 ). Dann ist G0 ein Subgraph von G, der aus drei knotendisjunkten Pfaden besteht, die zwei nichtbenachbarte Knoten verbinden. Ein Widerspruch zu G ∈ G2 . 2 Beweis des Theorems 1. Sei H die kleinstmögliche Klasse von Graphen, die alle vollständigen Graphen und Kreise enthält, und die abgeschlossen ist unter dem Algorithmus Verkleben entlang einer 2-Clique“. Dann gilt H = G2 . ” Zeige zunächst H ⊆ G2 . Sei G ∈ H. Ist G vollständig, so gilt sep(G) = 0, ist G ein Kreis, so gilt sep(G) = 2. In beiden Fällen also G ∈ G2 . Da G2 nach Lemma 1 ebenfalls abgeschlossen ist unter Verkleben entlang einer 2-Clique“ , ” folgt H ⊆ G2 . Zeige nun G2 ⊆ H. Sei G ∈ G2 \ H ein kleinstmögliches Gegenbeispiel. Nach Lemma 2 ist G vollständig, oder ein Kreis, oder besitzt eine trennende Clique aus höchstens zwei Knoten. Daraus folgt, es existieren zwei Graphen G1 und G2 so dass G = G1 ⊕2 G2 . Sowohl G1 als auch G2 sind Subgraphen von G, daher gilt G1 , G2 ∈ G2 . Da G jedoch ein kleinstmögliches Gegenbeispiel war, gilt ebenso G1 , G2 ∈ H. Aber da H abgeschlossen ist unter Verkleben entlang einer ” 2-Clique“ folgt, dass G = G1 ⊕G2 ebenfalls Element aus H ist. Widerspruch. 4 Charakterisierung von G2 durch verbotene Unterstrukturen Wir wollen nun die Klasse G2 durch verbotene induzierte Subgraphen charakterisieren. Diese sind genau der K5− , 3P Cs und Räder. K5− ist K5 minus eine Kante. 3P C ist eine Abkürzung für 3-path-configuration. Man unterscheidet zwischen H0 , H1 und H2 (siehe Abbildung). Graphen vom Typ H0 nennt man 3P C(x, y). Hierbei sind zwei Knoten x und y durch drei knotendisjunkte Pfade P1 , P2 und P3 verbunden. Graphen vom Typ H1 nennt man 3P C(xyz, u), wobei xyz ein Dreieck in G ist und P1 , P2 und P3 drei knotendisjunkte Pfade mit den Endpunkten x, y und z, sowie dem gemeinsamen Endpunkt u sind. Graphen vom Typ H2 nennt man 3P C(xyz, uvw). Er besteht aus zwei knotendisjunkten Dreiecken und drei knotendisjunkten Pfaden P1 , P2 und P3 mit den Endpunkten x und u, y und v sowie z und w. Außerdem müssen die Knoten von Pi ∪ Pj (i 6= j) in allen drei Fällen einen speichenfreien Kreis der Länge mindestens 4 bilden. Daraus folgt, dass alle drei Pfade von H0 eine Länge größer als 1 haben. Außerdem hat höchstens einer der Pfade von H1 die Länge 1. Räder sind schließlich die Graphen H3 in der Abbildung. Sie bestehen aus einem Kreis sowie einem weiteren Knoten, der mindestens drei Nachbarn im Kreis hat. K5− H0 H1 H2 H3 Eine gestrichelte Linie ist ein Pfad, der eine oder mehrere Kanten enthält. 3 Theorem 2. Sei G ein Graph. Dann gilt sep(G) ≤ 2 genau dann wenn G keinen induzierten K5− , keinen induzierten 3P C und kein induziertes Rad enthält. Beweis. Sei F die Menge der Graphen bestehend aus K5− , allen 3P Cs und allen Rädern. Sei F0 die Menge der kleinstmöglichen verbotenen induzierten Subgraphen von G2 . Wir zeigen, dass F = F0 . Sei F ∈ F. Man sieht sofort, dass sep(F ) = 3 und jeder induzierte Subgraph von F ist 2-separabel. Daher gilt F ∈ F0 und damit auch F ⊆ F0 . Noch zu zeigen ist F0 ⊆ F. Äquivalent dazu können wir auch zeigen: wenn G Ffrei ist, dann gilt sep(G) ≤ 2. Angenommen es gäbe einen F-freien Graphen G mit sep(G) ≥ 3. Wähle unter allen Knotenpaaren {x, y} mit sepG (x, y) ≥ 3 ein Paar {x, y} aus, so dass die Gesamtlänge von drei knotendisjunkten Pfaden zwischen x und y so klein wird wie möglich. Seien P, Q, R ebendiese Pfade mit kleinstmöglicher Gesamtlänge und sei X der Subgraph von G, der aus V (P ∪ Q ∪ R) besteht. Mindestens einer der Pfade P, Q, R enthält mindestens drei Kanten, andererseits wäre X ein 3P C(x, y) (wenn keine Kanten interne Knoten der Pfade verbinden), ein Rad (wenn mindestens eine und höchstens zwei Kanten interne Knoten der Pfade verbinden), oder ein K5− (sonst). Ein Widerspruch dazu, dass G F-frei ist. Nenne von nun an eine Kante, die einen internen Knoten p ∈ V (P ) mit einem internen Knoten q ∈ V (Q) verbindet, eine P Q-Speiche. Analog definieren wir P R-Speichen und QR-Speichen. Eine P Q-, P R- oder QR-Speiche nennen wir einfach Speiche. Mindestens eine Speiche muß vorhanden sein, da G andernfalls einen induzierten 3P C enthalten würde. Die folgende Behauptung beschränkt die Menge der möglichen Speichen. Behauptung. Sei pq eine P Q-Speiche. Dann ist entweder p ∈ N (x) oder q ∈ N (y). Außerdem entweder p ∈ N (y) oder q ∈ N (x). Beweis der Behauptung. Wenn pq eine P Q-Speiche mit p ∈ / N (x) und q ∈ / N (y), dann würde {x, p} ein Paar nichtbenachbarter Knoten in G bilden mit sepG (x, p) ≥ 3, so dass drei knotendisjunkte Pfade zwischen x und p existieren, deren Gesamtlänge kürzer ist als die Gesamtlänge von {P, Q, R}, ein Widerspruch zur Wahl von {x, y}. Die zweite Aussage der Behauptung folgt analog. Seien p, q, r, und p0 , q 0 , r0 jeweils die Nachbarn von x und y auf den Pfaden P, Q, R. Aus obigen Behauptung folgt, dass wenn P und Q beide mindestens drei Kanten enthalten, alle P Q-Speichen in der Menge {pq, p0 q 0 } enthalten sind. Analog gilt dies auch für die anderen Speichen. Den Rest des Beweises teilen wir in zwei Fälle auf: Fall 1: Alle drei Pfade P, Q, R haben mindestens drei Kanten. Sei C die Menge der Speichen. Wir wissen nun, ∅ = 6 C ⊆ {pq, pr, qr, p0 q 0 , p0 r0 , q 0 r0 }. Wenn C = {pq}, dann enthält G ein 3P C(xpq, y), ein Widerspruch. Wenn C = {pq, p0 q 0 }, dann enthält G ein 3P C(xpq, yp0 q 0 ), ein Widerspruch. Wenn C = {pq, p0 r0 }, dann enthält G ein 3P C(xpq, r0 p0 y), ein Widerspruch. Wenn |C ∩ {pq, pr, qr}| ≥ 2 z.B. {pq, pr} ⊆ C, dann bildet {p, y} ein paar nichtbenachbarter Knoten in G mit sepG (p, y) ≥ 3, so dass es drei knotendisjunkte Pfade von p nach y gibt deren Gesamtlänge kürzer ist als die Gesamtlänge von {P, Q, R}, ein Widerspruch. 4 Alle verbleibenden Teilfälle sind symmetrisch zu einem der vorhergehenden Teilfälle. Fall 1 ist damit abgeschlossen. Fall 2: P hat nur zwei Kanten. Es muß eine QR-Speiche existieren, da G ansonsten entweder einen 3P C(x, y) oder ein Rad enthalten würde. Wir betrachten zwei weitere Teilfälle: Fall 2.1: Sowohl Q als auch R haben mindestens drei Kanten. Sei C die Menge der Speichen. Ohne Einschränkung sei qr ∈ C. Nun muß auch p (als einziger interner Knoten von P ) in einer Speiche enthalten sein, da G ansonsten entweder ein 3P C(xqr, y) oder ein 3P C(xqr, yq 0 r0 ) enthalten würde. Die einzigen beiden möglichen Speichen, die p enthalten sind pq 0 und pr0 , denn wenn pz eine P Q-Speiche wäre mit z 6= q 0 , dann würde {z, y} ein Paar nichtbenachbarter Knoten in G bilden mit sepG (z, y) ≥ 3, so dass drei knotendisjunkte Pfade zwischen z und y existieren, deren Gesamtlänge kürzer ist als die Gesamtlänge von {P, Q, R}, ein Widerspruch zur Wahl von {x, y}. Falls q 0 r0 ∈ C, dann müßte analog folgen, dass p nur in pq oder pr enthalten sein kann. Dies ist ein Widerspruch, da {q, r} ∩ {q 0 , r0 } = ∅. Also q 0 r0 ∈ / C. Im Fall dass {pq 0 , pr0 } ⊆ C, bildet {q 0 , r0 } ein nichtbenachbartes Knotenpaar in G im Widerspruch zur Wahl von {x, y}. Wir können also annehmen, dass C ∩ {pq 0 , pr0 } = {pq 0 }. Dann enthält G jedoch ein 3P C(xqr, pq 0 y). Damit ist Fall 2.1 beendet. Fall 2.2: Q hat nur zwei Kanten. Es gibt mindestens eine QR-Speiche (siehe oben). Aus Symmetriegründen gibt es ebenfalls eine P R-Speiche. Es gebe nun eine P R-Speiche pw mit w ∈ / {r, r0 }. Zusammen mit einer beliebigen QR-Speiche qz bildet nun entweder {w, x} oder {w, y} ein nichtbenachbartes Knotenpaar in G im Widerspruch zur Wahl von {x, y}. Aus demselben Argument folgt, dass für alle w ∈ {r, r0 } nicht möglich ist, dass sowohl pw als auch qw Speichen sind. Wir können also annehmen, dass die einzigen P R- und QR-Speichen die Speichen pr und qr0 sind. Falls pq ebenfalls eine Speiche ist, dann bildet {p, r0 } ein nichtbenachbartes Knotenpaar in G im Widerspruch zur Wahl von {x, y}. Ist pq aber keine Speiche, dann enthält G einen 3P C(xpr, qyr0 ). Dieser Widerspruch vervollständigt den Beweis. Bemerkung. Die Klasse Gk ist abgeschlossen unter induzierten Minoren genau dann wenn k ≤ 2. 5 Graphen der Separabilität höchstens k Es folgen einige Resultate für Graphen der Separabilität höchstens k. Die Beweise finden sich im Paper. 1. Für jeden Graph G gilt sep(G) ≤ ∆(G). 2. Für einen paarweise k-separablen Graphen G gilt sep(G) ≤ k. 3. Für jedes k existiert ein polynomieller Algorithmus zur Erkennung von Graphen der Separabilität höchstens k. 4. Das Stabile Mengen Problem ist polynomiell lösbar für Graphen der Separabilität höchstens 2, aber NP-vollständig für Graphen der Separabilität größer gleich 3. 5 5. Das bestimmen der chromatischen Zahl eines Graphen mit Separabilität höchstens 2 ist polynomiell zu bewerkstelligen, aber NP-vollständig für Graphen der Separabilität größer gleich 3. Noch offen ist zum Beispiel die Frage, ob sich auch Graphen der Separabilität größer gleich 2 durch verbotene Untergraphen charakterisieren lassen. 6 Parsimony Haplotyping Parsimony Haplotyping ist ein Problem aus der biologischen Informatik, das eng verbunden ist mit Graphen von beschränkter Separabilität. Das Problem besteht darin, aus den Genotyp-Daten einer Population biologisch bedeutende Haplotyp-Daten zu erhalten. Hierbei ist ein Genotyp das gemischte Ergebnis der beiden Chromosomen (von Mutter und Vater), während der Haplotyp die Beschreibung eines einzelnen Chromosoms ist. Um einen Genotyp g aufzulösen (oder zu erklären), benötigt man zwei Haplotypen, so dass ihre gemischte Form exakt den Genotyp g ergibt. Formal gesagt, ist ein Haplotyp ein 0-1-Vektor n n h ∈ {0, 1} und ein Genotyp ein Vektor g ∈ {0, 1, 2} . Man sagt ein Haplotyp h ist konsistent mit einem Genotyp g, falls gilt h(i) = g(i) an allen Stellen wo g(i) ∈ {0, 1}. Man sagt zwei Haplotypen h1 und h2 lösen (oder parsen) einen Genotyp g, falls gilt: ( h1 (i), wenn h1 (i) = h2 (i); g(i) = 2, sonst. Wir schreiben dann g = h1 + h2 . Wir sagen, eine Menge von Haplotypen H löst eine Menge von Genotypen G, wenn es für jeden Genotypen g ∈ G zwei Haplotypen h1 , h2 ∈ H gibt mit g = h1 + h2 . Im Parsimony Haplotyping Problem ist eine Matrix G mit Einträgen aus {0, 1, 2} gegeben, deren Zeilen die Genotypen darstellen. Die Aufgabe ist es, eine Menge H von Haplotypen zu finden, die G lösen. Man sagt die Genotyp-Matrix ist k-beschränkt, wenn sie höchstens k 2en pro Spalte enthält. Das Problem ist im allgemeinen NP-vollständig, für 2-beschränkte Matrizen ist die Komplexität jedoch noch nicht bestimmt. Wir nennen zwei Genotypen kompatibel, wenn es einen Haplotypen gibt, der mit beiden konsistent ist. Für eine gegebene Menge G wird ein Kompatibilitätsgraph G = (V (G), E(G)) mit V (G) = {g : g ∈ G} und E(G) = {{g, g 0 } : g und g 0 sind kompatibel} definiert. Wir nennen einen Graphen einen k-beschränkten Kompatibilitätsgraphen, wenn er isomorph zu einer k-beschränkten Genotyp-Matrix ist. Der Zusammenhang von Graphen der Separabilität k und dem Haplotyping Problem ist nun der Folgende (der Beweis des Theorems findet sich im Paper): Theorem 3. Für alle k ≥ 0 ist ein Graph ein k-beschränkter Kompatibilitätsgraph genau dann wenn G von Separabilität höchstens k ist. 6