Kann der Isomorphismus eines Graphen mit einem Quadratwurzel-Nichtdeterminismus bestimmt werden?

30

Der beschränkte Nicht-Determinismus assoziiert eine Funktion mit einer Klasse von Sprachen, die von ressourcenbeschränkten deterministischen Turing-Maschinen akzeptiert werden, um eine neue Klasse - . Diese Klasse besteht aus den Sprachen, die von einer nichtdeterministischen Turing-Maschine akzeptiert werden und dieselben Ressourcengrenzen wie für die Definition von einhalten , wobei jedoch höchstens nichtdeterministische Züge ausführen darf . (Ich benutze die Notation von Goldsmith, Levy und Mundhenk anstelle des Originals von Kintala und Fischer, und ist die Größe der Eingabe.)g(n)CgCMCMg(n)n

Meine Frage:

Gibt es eine Konstante so dass sich GRAPH ISOMORPHISM in - ?c0cnPTIME

( Edit: Joshua Grochow wies darauf hin, dass eine positive Antwort auf diese Frage einen Algorithmus für GI implizieren würde, der bessere asymptotische Laufzeitgrenzen aufweist als derzeit bekannt. Ich würde daher gerne die Grenze lockern und nichtdeterministische Züge.)o(nlogn)


Hintergrund

Für jede feste Konstante ist - , da deterministische Bewegungen höchstens eine polynomielle Anzahl von Konfigurationen erzeugen, die deterministisch untersucht werden müssen. Außerdem kann und durch Auffüllen NP-vollständige Sprachen in - für jedes .c0PTIME=clognPTIMEclognNP=cnc-PTIMEnεPε>0

Kintala und Fischer beobachteten, dass die Entscheidung, ob ein Eingabegraph mit Eckpunkten eine -Klique hat, -vollständig ist, sich jedoch in - . Um dies zu sehen, verwerfen Sie die Eckpunkte, die höchstens Nachbarn haben. Wenn zu wenig Scheitelpunkte übrig sind, lehnen Sie ab. Ansonsten bilden die verbleibenden Eckpunkte einen Graphen der Größe . Dann errate eine Teilmenge von Vertices mit nichtdeterministische Schritte und überprüfe, ob sie in der Polynomzeit eine Clique bilden.V(|V|/3)NPO(n)PTIME|V|/32Ω(|V|2)|V|/3|V|=O(n)

Einige andere Sprachen dichter Graphen in befinden sich ebenfalls in - . Dies ist bei allen Problemen der Fall, bei denen eine Teilmenge der Eckpunkte als Zertifikat dient und die Größe des Eingabegraphen . Beispiele sind die vielversprechenden Versionen von Induced Path oder 3-Coloring für den Fall dichter Grafiken. Andere Probleme scheinen größere Zertifikate zu erfordern, beispielsweise scheint eine Liste von Eckpunkten, die eine Hamilton-Schaltung definieren, Bits zu erfordern . Mir ist nicht klar, ob man ein Maß an Nichtdeterminismus verwenden kann, das zu klein ist, um das Zertifikat zu erraten, um solche Probleme zu entscheiden.LNPO(n)PTIMEΩ(|V|2)Ω(|V|log|V|)

Angesichts der Tatsache, dass - NP-vollständige Sprachen enthalten kann, erscheint es interessant zu fragen, wo in der begrenzten Hierarchie des Nichtdeterminismus möglicherweise einfachere Sprachen liegen. Man könnte erwarten, dass GI als eine Sprache, die nicht NP-vollständig zu sein scheint, in der Hierarchie liegt, die näher an - als an - . Das offensichtliche Zertifikat für GI gibt die Karte jedoch mitbits ist .nεPlognPnP|V|log|V|ω(n)

Eine andere Möglichkeit, über diese Frage nachzudenken: Ist die Angabe einer Karte zwischen den Scheitelpunkten ein kürzestmögliches Zertifikat für GI?

Edit: Einige weitere (korrigierte) Bemerkungen folgen, um die Kommentare von Joshua Grochow anzusprechen.

Wenn ein Zertifikat Bits verwendet und in Polynomzeit überprüft werden kann, gibt Brute Force einen Algorithmus für die GI an, der Zeit. Mit einem Zertifikat der Größe gibt Brute Force einen Algorithmus an, der Zeit in , während ein Zertifikat der Größe ergibt einen Brute-Force-Ansatz, der Zeit benötigt. Die langjährige Obergrenze von Luks ist die -Zeit, die zwischen diesen beiden Grenzen bis zu konstanten Exponenten liegt.f(n)=Ω(logn)poly(n)2O(f(n))=2O(f(n))O(n)2O(n)O(nlogn)2O(nlogn)2O(nlogn)

Diese Überlegungen deuten darauf hin, dass es einen alternativen Ansatz zu GI geben könnte. Der Ansatz von Luks scheint im Kern auf der Identifizierung einer Teilmenge von Generatoren einer assoziierten Gruppe zu beruhen. Eine nicht deterministische Maschine könnte daher eine Teilmenge der Gruppe erraten. Diese Teilmengen könnten dann eingehend geprüft werden, um einen deterministischen Algorithmus zu erhalten. Wenn die Liste der Elemente in Kürze angegeben werden kann, entweder weil die zugeordnete Gruppe nie viel größer als die Größe des Diagramms ist oder weil die Anzahl der erforderlichen Generatoren immer klein ist und die Überprüfung jeder Kandidaten-Teilmenge nicht zu lange dauert, ist dies der Fall könnte einen alternativen Ansatz zu GI ergeben.

  • Chandra MR Kintala und Patrick C. Fischer, Verfeinerung des Nichtdeterminismus in der relativierten polynomzeitbegrenzten Berechnung , SIAM Journal on Computing 9 (1), 46–53, 1980. doi: 10.1137 / 0209003
  • Judy Goldsmith, Matthew A. Levy, Martin Mundhenk, Begrenzter Nichtdeterminismus , SIGACT News 27 (2), 20–29, 1996. doi: 10.1145 / 235767.235769
  • László Babai und Eugene M. Luks, Canonical Labeling of Graphs , STOC 1983, 171–183. doi: 10.1145 / 800061.808746
András Salamon
quelle
Wenn also der Graph als Adjazenzmatrix der Größe wird, heißt das, dass ich eine lineare Anzahl nicht deterministischer Bewegungen in Bezug auf die Scheitelpunktmenge der Größe ausführen kann ? n2n
John D.
@ user17410: Ja, die Darstellung sollte keine Rolle spielen, solange die Größe einer Instanz . (Wenn sie unangemessen gepolstert sind, um die Größe dann ist natürlich die Quadratwurzelgrenze ausreichend.)O(|V|2)Ω((|V|log|V|)2)
András Salamon
4
Ich denke, Sie könnten nach einem Algorithmus fragen, der besser ist als der bekannteste ... Wenn ich das verstehe, würde ein -Algorithmus einen deterministischer Algorithmus. Der derzeit bekannteste deterministische Algorithmus benötigt Zeit . O(n)PTIME2O(n)2O(nlog2n)
Joshua Grochow
@ AndrásSalamon: Brute Force = NICHT ... Auch ich ziehe an ‚t sehen , warum eine Bescheinigung über die Größe führt zu einem Brute - Force - Algorithmus von Zeit eher als - können Sie erarbeiten? Vielleicht fehlt mir etwas in der Definition der "PTIME" -Notation? n!poly(n)2O(nlogn)2O(nlog2n)n2nlogn2O(n)
Joshua Grochow
1
@ MohammadAl-Turkistany: Vielleicht, aber ich muss ein bisschen darüber nachdenken. In Babais Algorithmus gibt es Punkte, an denen, sobald der Farbgrad unter dem Polylog liegt, der GI-Test für den begrenzten Grad angewendet wird, wie im vorigen besten Algorithmus, und es ist nicht klar, ob man den GI-Test für den Polylog in einen GI-Test für den begrenzten Grad umwandeln kann Nichtdeterminismus, oder ob man Babais Rekursion fortsetzen kann, um den Grad auf einen konstanten Farbgrad zu bringen. Wenn und wann ich das herausfinde, aktualisiere ich meine Antwort. Wenn Sie darüber nachdenken, unterhalte ich mich gerne, aber dies ist wahrscheinlich nicht der richtige Ort, um es durchzuarbeiten.
Joshua Grochow

Antworten:

8

Erstens würde eine positive Antwort auf Ihre Frage (wie bereits in der Fragestellung beschrieben) den Stand der Technik im schlimmsten Fall für den Graph-Isomorphismus sofort verbessern. Für einen -Algorithmus ergibt sich ein -Zeit-Algorithmus, aber der derzeit bekannteste für GI ist nurO(n)PTIME2O(n)2O(nlogn)

Zweitens ist mir nicht einmal sofort klar, ob der derzeit beste Algorithmus tatsächlich ein -Algorithmus ist oder nicht, obwohl der erste Teil davon klar ist, in Etwas Sinn. Der Algorithmus zuerst errät eine Reihe von Eckpunkten Größe zu individualisieren (Zemlyachenko Trick - siehe hier für eine Ausstellung in englischer Sprache), die durch Erraten getan werden kann Bits nichtdeterministisch . Nach dem Erraten dieser Werte und dem Individualisieren (in deterministischer Polyzeit) wird jedoch der bekannteste Isomorphismustest mit beschränktem Grad angewendet, für den die Zeit (Satz 9.1 dieser Arbeit ) gilt es im Falle vonO(nlogn)PTIMEn/lognnlognnO(d/logd)d=O(nlogn) . Ich muss mir ob der letztgenannte Algorithmus in einen -Algorithmus umgewandelt werden kann (scheint eine interessante Frage zu sein ...)O(nlogn)PTIME

Joshua Grochow
quelle
Haben Sie Links zu Versionen, die sich nicht hinter einer Paywall befinden? Ich habe noch nie eine tatsächliche Implementierung von Zemlyachenkos Trick oder des Isomorphismustests mit beschränktem Grad gesehen. Das graduelle Partitionieren von Vertices wie NAUTY beschleunigt die Arbeit, aber bei Vertices mit gleichem Grad müssen Sie immer noch alle Prim-Cycle-Permutationen auf AFIK überprüfen.
Chad Brewbaker
@Chad: Mir sind leider keine Versionen dieser Artikel ohne Paywall bekannt. Der Trick von Zemlyachenko ist jedoch recht einfach in der Praxis umzusetzen und verringert den Grad wesentlich. Für die praktische Umsetzung von Zemlyachenkos Trick denke ich, ist die einzige Frage der Kompromiss zwischen der Aufzählung der zu individualisierenden Scheitelpunktmengen (exponentiell in der Größe der Menge) und den potenziellen Gewinnen, die durch eine effektive Reduzierung des Grades erzielt werden. Ich weiß nicht, ob es tatsächlich in NAUTY oder anderen praktischen Isomorphismus-Algorithmen implementiert ist.
Joshua Grochow
@Chad: Übrigens reicht das Testen von Permutationen im Primärzyklus nur zum Erkennen eines nichttrivialen Automorphismus aus; es reicht nicht aus, um den Isomorphismus zu testen. Zum Beispiel, wenn ein Graph , ohne nicht - triviale automorphisms ist, lassen sein jede Permutation - nicht unbedingt ein Hauptzyklus. Dann ist isomorph zu und ist der einzige Isomorphismus zwischen und . Dieser Isomorphismus würde jedoch nicht nur durch die Berücksichtigung von Primzyklen erkannt. Gππ(G)GπGπ(G)
Joshua Grochow
Auf Kosten der Verdopplung von kann ISO mit AUT berechnet werden, indem beide Graphen in eine Adjazenzmatrix eingefügt werden. n
Chad Brewbaker
@Chad: Wenn du das machst, dann gibt es schonHauptzyklus-Permutationen in der Größenordnung 2, sodass Sie potenzielle Einsparungen verloren haben. Dies hängt mit der Tatsache zusammen, dass die von Ihnen beschriebene Reduzierung von der ISO zur Berechnung eines Generatorsatzes für die Automorphismusgruppe erfolgt. Es ist keine Poly-Time-Reduktion von ISO zu dem Problem bekannt, lediglich zu entscheiden, ob ein Graph einen nichttrivialen Automorphismus aufweist. n!
Joshua Grochow