Ein üblicher Ansatz, um zu entscheiden, ob zwei gegebene Graphen isomorph sind, besteht darin, die sogenannte kanonische Bezeichnung (alternativ kanonischer Graph) jedes Graphen zu berechnen und zu überprüfen, ob diese übereinstimmen oder nicht.
Tools wie Nauty berechnen den kanonischen Graphen über Suchbäume, die mit einigen cleveren Ideen beschnitten werden, die sich unter anderem auf Graph-Automorphismen stützen. Aus diesem Grund ermöglicht Nauty die Berechnung eines Generators der Graph Automorphism Group. Soweit ich die Idee hinter Nauty verstanden habe, erfordert die Berechnung des kanonischen Graphen jedoch nicht die Berechnung eines Generators der Graph-Automorphismus-Gruppe im Allgemeinen.
Meine Frage lautet daher: Gibt es eine formale komplexitätstheoretische Beziehung zwischen GI und der Berechnung eines Generatorsatzes der Graph-Automorphismus-Gruppe?
Danke vielmals.
quelle
Antworten:
Wie aus den Kommentaren hervorgeht, kann es zu Verwirrung darüber kommen, was Sie "GI" nennen. Aber die Idee hier ist richtig. Es ist Polynom-Zeit-Äquivalent, Generatoren einer Automorphismusgruppe zu finden, wie es ist, einen Isomorphismus zwischen zwei Gruppen zu finden. Die Idee ist insofern "klassisch", als sie in frühen Arbeiten wie Luks 'Gruppenisomorphismus in begrenzter Valenz in der Polynomzeit vorkommt, und selbst dort denke ich, dass die Idee als "bekannt" angesehen wurde.
Anspruch. Lassen Sie und H sein verbundenen Graphen. Dann G ≅ H , wenn, und nur wenn, jeder Generatorsatz S von A u t ( G ⊔ H ) enthält ein Element g ∈ S , so dass G g = H .G H G≅H S Aut(G⊔H) g∈S Gg=H
Aber jetzt muss klar sein, dass von der Entscheidung (Ist ?) Zur Suche (Gib mir oder ein Zertifikat, dass ) noch zu streiten ist ( und kann sein). Auch von einem Isomorphismus zu Generatoren von Automorphismen ist ein weiteres Argument (individualisieren Sie die Graphen und wiederholen Sie den Isomorphismustest). Alles in allem haben Sie also ein paar Seiten mit Argumenten, um diese Äquivalenzen herzustellen. Keiner zeigt jedoch eine kanonische Kennzeichnung. Das ist viel schwieriger (NP-schwer, wenn ich mich recht erinnere). Obwohl NAutY und Traces viele Beispiele schnell verarbeiten.ϕ : G → H G ≇ H.G≅H ϕ:G→H G≆H
quelle