Gibt es einen effizienten Algorithmus, um festzustellen, ob ein Graph einen nicht trivialen Automorphismus aufweist oder nicht?

9

Ich arbeite an einem Problem im Zusammenhang mit lateinischen Quadraten und möchte eine Methode für das, was im Wesentlichen auf das Entscheidungsproblem hinausläuft:

Eingabe : Ein endlicher, einfacher Graph G.
Ausgabe : YESWenn G NOansonsten einen nicht trivialen Automorphismus hat .

Daher...

Frage : Gibt es einen effizienten Algorithmus, um festzustellen, ob ein Graph einen nicht trivialen Automorphismus aufweist oder nicht?

Wir könnten Nauty oder Bliss (und möglicherweise einige andere Pakete) verwenden, um die gesamte Automorphismusgruppe zu berechnen, aber ich brauche sie nicht. Ich muss nur feststellen, ob es trivial ist oder nicht.

Es ist möglich, dass dieses Entscheidungsproblem in seiner Komplexität theoretisch gleichwertig ist, um "die gesamte Automorphismusgruppe zu berechnen". Ich bin mir nicht sicher.

Für meinen Zweck bedeutet "effizient" im Grunde "schneller in der Praxis als die Berechnung der gesamten Automorphismusgruppe", aber ich interessiere mich auch für die Theorie dahinter.

Rebecca J. Stones
quelle
Dies entspricht dem Graphisomorphismus.
Yuval Filmus
2
@YuvalFilmus Soweit mir bekannt ist, ist keine Reduktion von "Ist isomorph zu G 2 " auf "Hat G einen nichttrivialen Automorphismus?" Bekannt. Wenn G 1G 2 ist, dann hat ihre disjunkte Vereinigung offensichtlich einen nichttrivialen Automorphismus (Swap G 1 und G 2 ), aber jeder nichttriviale Automorphismus von G 1 wäre auch ein nichttrivialer Automorphismus von G 1 + G 2 . G1G2GG1G2G1G2G1G1+G2
David Richerby
In Bezug auf Ihre letzte Frage, wenn man GA ein Orakel gibt, kann man in Polynomzeit einen Generatorsatz der Automorphismusgruppe finden, dann ist GI Turing auf GA reduzierbar, was ich nicht sicher bin, ist bekannt.
Ariel
@ DavidRicherby Was ist mit dem folgenden Papier? sciencedirect.com/science/article/pii/…
Yuval Filmus
@YuvalFilmus OK, Sie verwenden also Turing-Reduzierungen und ich verwende viele Reduzierungen. Und ich denke, Turing-Reduzierungen sind für jemanden relevanter, der tatsächlich versucht, das Problem zu lösen.
David Richerby

Antworten:

2

Da Sie sich auch für die Theorie dahinter interessieren, würde ich Ihnen einen quasi-polynomiellen Zeitalgorithmus für Ihr Problem geben.

Für jedes Paar von Eckpunkten uv (gleichen Grades) in G versuchen wir zu sehen, ob es möglich ist, u und v zu tauschen .uv

Machen Sie dazu eine Kopie von G und nennen Sie es G . Löschen Sie nun u aus G , löschen Sie (Kopie von) v aus G .

wN(u)

wN(copy of v)

Alle oben genannten sehr langen, aber polynomiell langen Wege sollten gleich lang sein.

Rufen Sie Babais Algorithmus für die Eingabe dieses neu erstellten Diagrammpaars auf.

(u,v)YESYES

YESNO

N(u)N(v)N(u)N(v)YESuvGGG

Die Laufzeitkomplexität ist immer noch quasi-poly.

Thinh D. Nguyen
quelle