Co-Graph

In der Informatik ist ein Co-Graph ein ungerichteter Graph , welcher sich mit bestimmten elementaren Operationen konstruieren lässt. Auf Co-Graphen lassen sich viele schwere Probleme wie z. B. CLIQUE und das damit eng verwandte UNABHÄNGIGE MENGE sowie KNOTENÜBERDECKUNG in Linearzeit lösen.

Definition

Abbildung eines Co-Graphen. Wie man sieht, ist kein induzierter enthalten.
Dieser Graph ist kein Co-Graph, da ein induzierter enthalten ist.

Ein Graph ist ein Co-Graph, falls er sich mit den folgenden drei Operationen konstruieren lässt:

  1. Der Graph mit genau einem Knoten ist ein Co-Graph (in Zeichen ).
  2. Für zwei Co-Graphen und ist die disjunkte Vereinigung ein Co-Graph.
  3. Für zwei Co-Graphen und ist die disjunkte Summe ein Co-Graph.

Äquivalente Charakterisierungen

Für einen Graphen sind folgende Aussagen äquivalent:

  • ist ein Co-Graph.
  • enthält keinen induzierten , wobei den ungerichteten Weg mit vier Knoten bezeichnet.
  • Der Komplementgraph jedes zusammenhängenden induzierten Teilgraphen von mit mindestens zwei Knoten ist unzusammenhängend.
  • lässt sich mit den folgenden drei Regeln konstruieren:
  1. Jeder Graph mit genau einem Knoten ist ein Co-Graph.
  2. Für zwei Co-Graphen und ist die disjunkte Vereinigung ein Co-Graph.
  3. Für einen Co-Graphen ist auch der Komplementgraph ein Co-Graph.

Co-Baum

Um auf Co-Graphen effizient schwere Probleme lösen zu können, kann man sie mithilfe von Co-Bäumen darstellen. Ein Co-Baum ist ein binärer Baum, dessen Blätter mit und dessen innere Knoten mit bzw. markiert sind.

Ein Co-Baum ist wie folgt definiert:

  1. Der Co-Baum zu dem Co-Graphen ist der Baum mit einem Knoten, der mit markiert ist.
  2. Seien und Co-Graphen mit den Co-Bäumen und . Der Co-Baum zu der disjunkten Vereinigung von und besteht aus einem mit markierten Wurzelknoten mit den Kindern und .
  3. Seien und Co-Graphen mit den Co-Bäumen und . Der Co-Baum zu der disjunkten Summe von und besteht aus einem mit markierten Wurzelknoten mit den Kindern und .

Beispiel

Das nachfolgende Beispiel skizziert die Konstruktion eines Co-Graphen mit zugehörigem Co-Baum :

Co-GraphDarstellung des Co-GraphenDarstellung des Co-BaumesCo-Baum

Weitere Beispiele für Co-Graphen sind vollständige Graphen und vollständig unzusammenhängende Graphen.

Eigenschaften von Co-Graphen

Es ist leicht einzusehen, dass Co-Graphen unter Komplementbildung abgeschlossen sind. Um den Komplementgraphen zu erzeugen, müssen im zugehörigen Co-Baum lediglich die Operationen und vertauscht werden.

Weiterhin ist die Menge der Co-Graphen unter Bildung induzierter Teilgraphen abgeschlossen.

Ebenfalls ist bekannt, dass jeder Co-Graph ein perfekter Graph ist.

Anwendung in der Algorithmik

Einige schwere Graphenprobleme lassen sich auf Co-Graphen in Linearzeit lösen. Dazu zählen u. a. die Probleme UNABHÄNGIGE MENGE, CLIQUE und KNOTENÜBERDECKUNG.

Mithilfe von dynamischer Programmierung auf den zugehörigen Co-Bäumen lassen sich einfach und elegant Lösungen für die genannten Probleme finden.

Literatur

  • Frank Gurski, Irene Rothe, Jörg Rothe, Egon Wanke: Exakte Algorithmen für schwere Graphenprobleme, Springer-Verlag, Berlin Heidelberg, 2010, ISBN 978-3-642-04499-1

Auf dieser Seite verwendete Medien

Cograph g4.png
Autor/Urheber: Shager, Lizenz: CC BY-SA 3.0
g4
Cograph g5.png
Autor/Urheber: Shager, Lizenz: CC BY-SA 3.0
g5
Cotree t4.png
Autor/Urheber: Shager, Lizenz: CC BY-SA 3.0
t4
Cograph example 1.png
Autor/Urheber: Shager, Lizenz: CC BY-SA 3.0
Cograph Beispiel
Cotree t3.png
Autor/Urheber: Shager, Lizenz: CC BY-SA 3.0
t3
Cograph g1.png
Autor/Urheber: Shager, Lizenz: CC BY-SA 3.0
g1
Cotree t5.png
Autor/Urheber: Shager, Lizenz: CC BY-SA 3.0
t5
Cograph example 2.png
Autor/Urheber: Shager, Lizenz: CC BY-SA 3.0
Cograph Beispiel
Cotree t2.png
Autor/Urheber: Shager, Lizenz: CC BY-SA 3.0
t2
Cotree t1.png
Autor/Urheber: Shager, Lizenz: CC BY-SA 3.0
t1
Cograph g2.png
Autor/Urheber: Shager, Lizenz: CC BY-SA 3.0
g2
Cograph g3.png
Autor/Urheber: Shager, Lizenz: CC BY-SA 3.0
g3