Existe-t-il un algorithme efficace pour déterminer si un graphe a un automorphisme non trivial?

9

Je travaille sur un problème lié aux carrés latins, et je veux une méthode pour ce qui se résume essentiellement au problème de décision:

Entrée : Un graphe fini et simple G.
Sortie : YESsi G a un automorphisme non trivial, NOsinon.

Par conséquent...

Question : Existe-t-il un algorithme efficace pour déterminer si un graphe présente ou non un automorphisme non trivial?

Nous pourrions utiliser Nauty ou Bliss (et éventuellement d'autres packages) pour calculer l'ensemble du groupe d'automorphisme, mais je n'en ai pas besoin; tout ce que je dois déterminer, c'est si c'est trivial ou non.

Il est possible que ce problème de décision soit théoriquement équivalent en complexité pour «calculer l'ensemble du groupe d'automorphisme» d'une manière ou d'une autre. Je ne suis pas sûr.

Dans mon but, «efficace» signifie essentiellement «plus vite dans la pratique que le calcul de l'ensemble du groupe d'automorphisme», mais je m'intéresse également à la théorie derrière.

Rebecca J. Stones
la source
Cela équivaut à l'isomorphisme du graphe.
Yuval Filmus
2
@YuvalFilmus Pour autant que je sache, il n'y a pas de réduction connue de "Is isomorphic to " to "Does have a nontrivial automorphism." Évidemment, si alors leur union disjointe a un automorphisme non trivial (échange et ) mais tout automorphisme non trivial de serait également un automorphisme non trivial de . G 2 G G 1G 2 G 1 G 2 G 1 G 1 + G 2g1g2gg1g2g1g2g1g1+g2
David Richerby
Concernant votre dernière question, si on donne un oracle à GA, on peut, en temps polynomial, trouver un groupe électrogène du groupe d'automorphisme, alors GI est Turing réductible à GA, dont je ne suis pas sûr.
Ariel
@DavidRicherby Qu'en est-il de l'article suivant? sciencedirect.com/science/article/pii/…
Yuval Filmus
@YuvalFilmus OK, vous utilisez donc des réductions de Turing et j'utilise plusieurs réductions. Et je suppose que les réductions de Turing sont plus pertinentes pour quelqu'un qui essaie réellement de résoudre le problème.
David Richerby

Réponses:

2

Puisque vous êtes également intéressé par la théorie derrière elle, je vous donnerais un algorithme de temps quasi-polynomial pour votre problème.

Pour chaque paire de sommets (de même degré) dans , nous essayons de voir s'il est possible d' échanger et .uvgu v uv

Pour ce faire, faites une copie de , appelez-la . Maintenant, supprimez de , supprimez (copie de) de .ggugvg

Ensuite, pour chaque attachez-lui un chemin très long, mais seulement polynomialement long .wN(u)

Ensuite, pour chaque (copie de) attachez-lui un chemin très long, mais uniquement polynomial .wN(copy oF v)

Tout le chemin très long mentionné ci-dessus, mais polynomialement long , devrait être de la même longueur.

Appelez l'algorithme de Babai sur l'entrée de cette nouvelle paire de graphiques.

Si pour n'importe quelle paire , nous avons une réponse de Babai, répondez et arrêtez.(u,v)OuiESOuiES

Si aucun ne renvoie une réponse , répondez et arrêtez.OuiESNO

Clairement, l'attachement à tous les sommets de et force l'isomorphisme graphique du mécanisme de fonctionnement interne de Babai de son algorithme à mapper uniquement les sommets de à . Ainsi, si la réponse est Babai nous pouvons brancher en toute sécurité dans le dos et d'avoir un automorphisme non trivial de , puisque est une copie de .N(u)N(v)N(u)N(v)OuiESuvggg

La complexité d'exécution est encore quasi-poly.

Thinh D. Nguyen
la source