Wir beweisen, dass das Problem auch in seiner Entscheidungsform NP-schwer ist, dh '' Ist der Eingabegraph bereits eine akkordlose Vollendung eines ungeraden Zyklus? '', Indem wir das folgende Problem reduzieren:G
Aufgabe P : Gibt es bei einem Graphen und einer Kante e ∈ E ( G ) einen akkordlosen ungeraden Zyklus mit einer Länge von mehr als 3, der durch e verläuft ?Ge∈E(G)e
Es ist bekannt, dass dieses Problem NP-schwer ist, wenn man die akkordlosen geraden Zyklen, die durch einen bestimmten Knoten verlaufen, in der in einem Ihrer Kommentare angegebenen Referenz , die in dem Abschnitt vor Abschnitt 3 angegeben ist, erkennt, indem man und q lässt = 2 :p=0q= 2
Im Übrigen sei und p ≥ 0 beliebige feste ganze Zahlen. Die folgenden Probleme sind NP-vollständig: Enthält ein Graph G einen induzierten Zyklus durch einen vorgeschriebenen Scheitelpunkt u mit der Länge p (mod q )? ...q> 1p ≥ 0Gupq
(Es kann eine Karp-Reduktion geben, aber wenn wir eine Cook-Reduktion zulassen, ziehen Sie die folgende Reduktion in Betracht: Ersetzen Sie den Knoten mit dem gegebenen Grad d in einen vollständigen Teilgraphen der Größe d mit richtigen ausgehenden Kanten. Dann können wir für jede Kante im vollständigen Graphen eine Abfrage durchführen das Orakel, das das Problem P löst. Beachten Sie, dass ein akkordloser gerader Zyklus, der durch den angegebenen Knoten verläuft, einem akkordlosen ungeraden Zyklus mit einer Länge von mehr als 3 entspricht, der durch eine der Kanten im vollständigen Diagramm verläuft.)
Nun zur Hauptverkleinerung. Bei einer gegebenen Instanz von Problem P stellen wir zuerst fest, ob Dreiecke durch . Wenn ja, löschen Sie jeden Knoten, der mit e ein Dreieck bildet . Beachten Sie, dass das Löschen von Knoten, die mit e ein Dreieck bilden , keine akkordlosen ungeraden Zyklen entfernt, die durch e verlaufen (durch die Eigenschaft akkordlos).eeee
Als nächstes wird für jede Kante andere als e = ( u , v ) man einen Hilfsknoten hinzu , v f und zwei Kanten ( v f , u ) und ( v f , v ) . Beachten Sie, dass der neue Graph G ' die folgende Eigenschaft hat:fe = ( u , v )vf( vf, U )( vf, v )G′
hat einen akkordlosen ungeraden Zyklus mit einer Länge von mehr als 3, dergenau danndurch e geht, wenn G ' eine akkordlose ungeraden Zyklus-Vollendung ist.GeG′
Für die einzige if-Richtung kann dies durch Berücksichtigung verschiedener Kantentypen in bewiesen werden . Jede andere Kante als e (einschließlich der neu hinzugefügten Kanten) befindet sich in mindestens einem Dreieck (dem, das den Hilfsknoten enthält). und e wird in einem ungeradzahligen Zyklus in sehnenloser seine G ' , da es ein sehnenloser ungeradeen Zyklus ist , die durch e in G , und der Zyklus wird während des Knoten-Prozesses zum Löschen entfernt.G′eeG 'eG
Für die if-Richtung müssen wir uns nur um die Kante e kümmern , da sich alle Kanten außer in mindestens einem Dreieck befinden müssen . Es gibt einen akkordlosen ungeraden Zyklus, der durch e in G 'verläuft ( G ' ist eine akkordlose ungeraden Zyklus-Vollendung). Der Zyklus kann durch die Konstruktion von G ' keine Länge 3 haben , und da der Zyklus keine Hilfsknoten enthalten kann (durch die akkordlose Eigenschaft), wird er auch in Graph G sein . Damit ist der Beweis vollständig.eeeG′G′G′G