Henneberg-Konstruktion in O(n²) Konstruktion von Laman-Graphen mittels Rot-Schwarz-Hierarchien Marko Walther WS 07/08 Überblick 1. 2. 3. 4. Grundlagen und Definitionen Die Rot-Schwarz-Hierarchie (RSH) Charakterisierung von Laman-Graphen mittels der RSH Berechnung der Henneberg-Konstruktion mittels der RSH in O(n²) 1. Grundlagen Theorem 1 (Charakterisierung von Laman-Graphen): Ein Graph G(V,E) heißt Laman-Graph genau dann, wenn: I. II. E 2V 3 E 2 V 3 für jeden Untergraphen G V , E von G Theorem 2 (Henneberg): Ein Graph ist genau dann ein Laman-Graph, wenn für ihn eine Henneberg-Konstruktion existiert. Theorem 3 (Lovász und Yemini): Ein Graph G(V,E) mit n Ecken und 2n-3 Kanten ist ein Laman-Graph genau dann, wenn für jede Kante e aus E der Multigraph G+e, der durch Hinzufügen einer Kante parallel zu e entsteht, die Vereinigung von zwei kantendisjunkten Spannbäumen ist. Definition 1: 3tree2-Partition Eine zulässige 3tree2 - Partition eines Graphen G V , E ist eine Partition von E in drei Bäume T1,T2 ,T3 so dass jede Ecke von G zu genau 2 dieser Bäume gehört und kein Teilbaum zweier verschiedener Ti dieselbe Eckenmenge besitzt. Beispiel für 3tree2-Partition: v6 v3 v5 v4 v2 V T1 v1,v 2 ,v 3 ,v 4 , v 5 , v 6 v1 V T2 v 3 ,v 4 ,v 5 , v 6 V T3 v1, v 2 Theorem 4: Ein Graph G(V,E) ist ein Laman-Graph genau dann, wenn er eine 3tree2-Partition zulässt. 2. Die Rot-Schwarz-Hierarchie (RSH) Definitionen: - Sei T ein Baum und sei L T die Menge der Blätter von T. - Sei G V , E ein Graph und T= VT ,ET ein Baum mit ausgezeichneter Wurzel. Zwischen L T und V soll eine 1:1-Abbildung existieren. - Sei :V VT und :E VT VT Definition: Hierarchie Eine Hierarchie H G,T,α,β ist ein Graph mit Eckenmenge VT und Kantenmenge ET e . Definition: Hierarchie Sei e= u,v aus E. bildet die Kante e auf e 1 e , 2 e ab, so dass 1 e und 2 e Vorfahren in T von jeweils u und v jedoch keine gemeinsamen Vorfahren von u und v sind. Definition: Hierarchie Die Knotentiefen von 1 e und 2 e seien in T gleich. Daraus folgt sofort, dass e keine Kante in T sein kann. Man nennt e Querkante von H. Beispiel: Hierarchie G V , E H G,T , , v6 e v3 v5 e v1,v 5 v4 v2 v1 v1 v2 v1 v3 v4 v5 v6 Definition: Rot-Schwarz-Hierarchie Eine Rot-Schwarz-Hierarchie ist eine Hierarchie welche folgenden 4 Regeln genügt: 1. Wurzel-Regel: Die Wurzel von T hat genau zwei Kinder. 2. Blatt-Regel: Eine Ecke v von T ist genau dann das einzige Kind seines Elternknotens, wenn v ein Blatt ist. 3. Querkanten-Regel: Die Endecken jeder Querkante haben denselben Großelternknoten, jedoch unterschiedliche Elternknoten. 4. Baum-Regel: Für jede Ecke v aus T bilden die Querkanten, die inzident zu Enkelknoten von v sind einen Baum, der alle Enkel von v verbindet. Färbung der RSH: Ecken gerader/ungerader Tiefe werden rot/schwarz eingefärbt. Kanten können rot oder schwarz gefärbt sein. Querkanten haben die Farbe ihrer Endpunkte. Beispiel: Rot-Schwarz-Hierarchie Hierarchie H v1 v1 v2 v3 v2 v3 v4 v5 v6 v4 v5 v6 3. Charakterisierung von LamanGraphen mittels der RSH Die RSH als Charakterisierung von Laman-Graphen. Bezeichnungen: Sei im Folgenden n= V und m= E . Lemma 5: Sei G V,E ein Graph für den eine RSH existiert. Dann ist m 2n - 3. Beweis: Lemma 5 Sei H= VH ,EH eine RSH für G V ,E . Sei L die Menge der Blätter und sei GP die Menge der Großelternknoten in VH . Sei P = VH - L GP die Menge der restlichen Elternknoten. Daraus folgt sofort: VH = L + P + GP . Sei GCv die Menge der Enkel des Knotens v in H. Sei E GCv die Menge der Kanten von G GCv in H. Beweis: Lemma 5 Nach der Blatt-Regel ist P L n. Durch Aufsummierung der GCv ergibt sich: GCv GCv v GP v GP E GC 1 v GP v E GC v GP v + 1 v GP #Querkanten + GP GC = m + GP Es gibt nur 3 Ecken, die keine Enkel sind (die Wurzel und ihre beiden Kinder). VH = GC + 3 m GC GP VH 3 GP L P GP 3 GP n n 3 2n - 3 Beweis: Lemma 5 Lemma 5 impliziert auch, dass nicht für jeden Graphen eine RSH existiert. Lemma 6: Sei G V,E ein Graph, für den eine RSH existiert. Sei G V ein durch V V ( V 2 ) induzierter Untergraph von G mit Kantenmenge E . Dann besitzt G V höchstens 2k - 3 Kanten. Beweis(Skizze): Lemma 6 Die Eckenmenge V definiert einen Teilbaum T in H, dessen Blätter L den Ecken in V entsprechen. Eine Ecke v aus H gehört genau dann zu T , wenn sie auf einem Pfad zwischen zwei Ecken aus L liegt. Sei H= VH ,EH nun die durch T induzierte Hierarchie. Für H lässt sich nun analog zum Beweis von Lemma 5 zeigen, dass E 2V 3. Dabei ist zu beachten, dass für H nur noch schwächere Versionen der vier RSH-Regeln gelten. Für einen ausführlichen Beweis, siehe [2]. Folgerung aus Lemma 5,6: Graphen, für die eine RSH existiert sind Laman-Graphen. Theorem 7: Sei G= V,E ein Laman-Graph. Dann existiert für G eine RSH und diese Zeit konstruiert werden. kann in O n 2 Beweis: Theorem 7 Der Beweis wird hier nicht geführt. Nur soviel: Die RSH wird konstruiert, indem der Graph G in eine 3tree2-Partition zerlegt wird und aus dieser rekursiv die Unterbäume der Knoten in H sowie die Querkanten erzeugt werden. Für einen ausführlichen Beweis, siehe [2]. Laufzeit: Die 3tree2-Zerlegung kann in O(n²) Zeit konstruiert werden (siehe [3]). Die Knoten in H der selben Tiefe werden in O(n) Schritten bearbeitet. Da die Höhe der RSH O(n) beträgt, folgt eine Laufzeit von O(n²). Folgerung: Ein Graph ist genau dann ein Laman-Graph, wenn für ihn eine RSH existiert. Damit ist die RSH eine weitere Charakterisierung von Laman-Graphen neben der 3tree2-Partitionierung z.B. . Lemma 8 (Validierung der RSH): Sei H eine Hierarchie für den Graph G. Es kann in O(n) Schritten überprüft werden, ob H eine Rot-Schwarz-Hierarchie ist. Beweis: Lemma 8 Sei H G,T,, die Hierarchie für G V,E . Als Erstes wird geprüft, ob m 2n - 3. Ansonsten existiert für G keine RSH nach Lemma 5. Beweis: Lemma 8 Nun wird überprüft, ob H allen 4 Regeln für RSH genügt. Beweis: Lemma 8 Die Wurzel-Regel kann in O(1) Zeit überprüft werden. Beweis: Lemma 8 Die Blatt-Regel kann für jedes Blatt und jeden inneren Knoten von H überprüft werden. Dafür sind O(n) Schritte notwendig. Beweis: Lemma 8 Die Querkanten-Regel kann in O m Zeit überprüft werden, indem die Großelternknoten von 1 e und 2 e für jede Kante e aus G verglichen werden. Beweis: Lemma 8 Die Baum-Regel kann in O(m+n) Zeit überprüft werden. Es folgt eine Gesamtlaufzeit von O(n). 4. Berechnung der Henneberg-Konstruktion mittels der RSH in O(n²) Henneberg-Operationen: a a v b b Henneberg-Einfüge-Operation vom Typ I Henneberg-Operationen: a a v b b Henneberg-Einfüge-Operation vom Typ II Henneberg-Operationen: Die inversen Operationen werden Henneberg-Lösch-Operationen vom Typ I bzw. Typ II genannt. Theorem 9: Sei G V,E ein Laman-Graph mit mindestens 3 Ecken und sei H eine RSH für G. Durch Ausführung einer Henneberg Lösch Operation wird G in G V ,E überführt. Für G kann eine RSH aus H konstruiert werden, indem höchstens konstant viele Ecken und Kanten aus H gelöscht bzw. zu H hinzugefügt werden. Beweis(Vorbemerkungen): Theorem 9 Sei H G,T, , eine RSH. Sei Tx der Teilbaum von T mit Wurzel x T. Sei GCx die Menge der Enkel eines Knotens x T und der Baum, der durch die GC x in H induziert wird, sei GTx . Beweis(Vorbemerkungen): Theorem 9 Nach [1] enthält G eine Ecke vom Grad 2 oder 3. Beweis: Theorem 9 Der Beweis unterscheidet 4 Fälle. Fall 1 und Fall 3 werden ausführlich bewiesen, um die Vorgehensweise aufzuzeigen. Fall 1, 2 entsprechen einer Typ I Lösch-Operation, Fall 3, 4 einer Typ II Lösch-Operation. Fall 1, 2: Sei v eine Ecke vom Grad 2 und seien a, b die zwei zu v adjazenten Ecken. b v a Fall 1: Nach Definition der RSH besitzt v einen Großelternknoten w. Sei u der Elternknoten von v. Nach der Querkanten-Regel ist weder w noch u adjazent zu einer Querkante in H. w Sei w nun die Wurzel von T. u Ausschnitt aus H: v Fall 1: v ist nun inzident zu genau 2 Querkanten v,a und v,b , welche den Kanten v,a und v,b in G entsprechen. Sei s nun der zweite Kindknoten von w. (er existiert nach der Wurzel-Regel) Nach der Querkanten-Regel ist u nicht der Elternknoten von a und b. Dieser kann also nur s sein. Fall 1: w u s a b v Ta a Tb b Fall 1: Durch eine Henneberg-Lösch-Operation vom Typ I wird die Ecke v sowie die Kanten v,a und v,b aus G gelöscht. In H entspricht das dem Löschen der Knoten u,v und w sowie der zu ihnen inzidenten Kanten. Die resultierende RSH H erfüllt danach immer noch alle 4 Regeln. Fall 1: b b a a v w s s u a a b b Ta v Ta Tb a a Tb b b Fall 2: w ist nicht die Wurzel von T. Für einen Beweis siehe [2]. Fall 3,4: Sei v eine Ecke vom Grad 3 und seien a, b, c die drei zu v adjazenten Ecken. b c v a Fall 3,4: Es wird nun immer die Kante e ermittelt, die bei der LöschOperation vom Typ II hinzugefügt werden soll: a a c e b c v b Fall 3: w (der Großelternknoten von v) hat zwei Kinder. Fall 3: Seien im Folgenden die Knoten a, b und c aus T Vorfahren der Ecken a,b und c aus G. V habe einen Ur-Ur-Großelternknoten x. Sei v ,c die Querkante in H, die der Kante v,c in G entspricht. Nach der Baum-Regel ist a inzident zu mindestens einer Querkante. Sei diese v,a . Fall 3: Es werden ansonsten die selben Bezeichnungen wie in Fall 1 benutzt. Nach der Baum-Regel ist u(Elternknoten von v) inzident zu mindestens einer Querkante, z.B. u,b in T, welche der Kante u,b in G entspricht. Fall 3: 3 Spezialfälle werden unterschieden: 3a: s habe zwei Kinder a und c . 3b: s habe ein Kind a und v = u. 3c: s habe ein Kind a und v ist ein anderer Vorfahr von v. Fall 3a: S habe nun 2 Kinder: a und c . Daraus folgt, dass v auch inzident zur Querkante v,c in T sein muss. x w u Ausschnitt aus H für Fall 3: b‘ s Tb v=v‘ a‘ Ta c‘ Tc Fall 3a: Sei nun der Pfad von s nach b in GTx . Sei s,y die erste Kante auf diesem Pfad und (z,y) die zugehörige Kante in G. y liegt nun entweder in Ta oder Tc . x Liegt y in Ta , so ist e a,b . w Liegt y in Tc , so ist e b,c . u y‘ s b‘ Ty Tc v a‘ Ta c‘ Tc y Fall 3a: Diese Prozedur wird als „Vervollständigung des Baumes vom Typ I“ genannt. Fall 3a: 2. u und v und alle zu ihnen inzidenten Kanten werden entfernt. 3. a‘ und c‘ werden zu Kindern von w. x x w u w b‘ s Tb v a‘ Ta c‘ Tc a‘ Ta c‘ Tc b‘ Tb Fall 3: 4. Für jede Querkante s,y und zugehörige Kante z,y in G wird eine neue Querkante, entweder a,y oder c ,y erstellt. Um zu entscheiden, welche von beiden, wird das Blatt z in einen der beiden Bäume Ta oder Tc gesucht. Fall 3a: 5. Füge e in G und die zugehörige Querkante e in H ein. Ist e a,b , dann e a,b , sonst e b,c . Fall 3b: s habe ein Kind a und v = u. x w u=v‘ s b‘ Tb v a‘=a c‘ Tc Fall 3b: 1. u und v und alle zu ihnen inzidenten Kanten werden entfernt. 2. s wird durch das Blatt a ersetzt. Fall 3b: 3. u wird aus GT entfernt. Durch Entfernen von u zerfällt GTx in zwei Bäume b und c , so dass b in b und c in c enthalten sind. s muss in einer dieser Bäume enthalten sein. w u=v‘ b c b‘ s Tb v a=a‘ c‘ Tc Fall 3b: Ist s b dann wird e auf a,c gesetzt. Sonst auf a,b . Diese Prozedur wird "Vervollständigung des Baumes vom Typ II" genannt. x x w u w s b‘ Tb v a c‘ Tc a b‘ Tb c‘ Tc Fall 3c: s habe ein Kind a und v sei ein Vorfahr von v u. x w=v‘ c‘ Tc s u b‘ Tb v a‘=a Fall 3c: 1. u und v und alle zu ihnen inzidenten Kanten werden entfernt. 2. s wird durch das Blatt a ersetzt. Fall 3c: 3. Die Kante e a,c wird in G eingefügt, welche der Kante v ,c in T entspricht. x x w=v‘ c‘ w c‘ Tc Tc s u b‘ Tb v a‘=a a b‘ Tb Fall 3: In den Fällen 3a, 3b und 3c genügt die resultierende RSH wieder allen 4 Regeln. Fall 4: w hat mehr als zwei Kinder. Für einen Beweis siehe [2]. Theorem 9: Die vorherigen 4 Fälle reichen aus. Theorem 9: Denn angenommen, keiner der vorherigen 4 Fälle kann angewendet werden. Dann beträgt der Grad jeder Ecke aus G mindestens 3. Da es 2n-3 Kanten gibt, existieren mind. 6 Ecken in H mit Grad 3. (sieht man durch Konstruktion eines solchen Graphen). Nach der Wurzel-Regel existiert ein Kindknoten u der Wurzel von T, so dass mind. 3 Ecken vom Grad 3 Nachfahren von u sind. Der Großelternknoten kann nach der Blatt-Regel nicht die Wurzel sein. Also greift hier Fall 3 oder 4. Theorem 10: Die Henneberg-Konstruktion eines LamanGraphen mit n Ecken kann in O(n²) Zeit Berechnet werden. Beweis: Theorem 10 Es wird eine RSH für den Graphen mit dem Algorithmus aus Theorem 7 in O(n²) Zeit konstruiert. Mit dem Algorithmus aus Theorem 9 kann eine Lösch-Operation in O(n) Zeit berechnet werden. Da O(n) Lösch-Operationen nötig sind, folgt daraus die Behauptung. Quellen: [1] R. Haas, D. Orden, G. Rote, F. Santos, B. Servatius, H. Servatius, I. Streinu, D. Souvaine and W. Whiteley. Planar minimally rigid graphs and pseudo-triangulations. Comput. Geom. Theory Appl., 31(1-2):31-61, 2005, http://dx.doi.org/10.1016/j.comgeo.2004.07.003. [2] Henneberg-Aufbau in O(n²) Schritten: S. Bereg. Certifying and constructing minimally rigid graphs in the plane. In Proc. 21st Annu. Sympos. Comput. Geom., pages 73-80, 2005. [3] A.R.Berg und T.Jordan. Algorithms for graph rigidity and scene analysis. In 11th European Symp. on Algorithms, LNCS 2832, pp. 78-89. Springer-Verlag, 2003.