Est-ce que «une permutation p est un automorphisme d'un graphe dans mon ensemble?» NP-complet?

13

Supposons que nous ayons un ensemble S de graphes (graphes finis, mais un nombre infini d'entre eux) et un groupe P de permutations qui agit sur S.

Instance: Une permutation p dans P.

Question: Existe-t-il un graphe g dans S qui admette l'automorphisme p?

Ce problème est-il NP-complet pour certains ensembles S?

Il serait facile de vérifier qu'un graphe admet la permutation p (ie certificat). De plus, il est facile de trouver des exemples de S où le problème n'est pas NP-complet, comme S étant l'ensemble de graphes complets, d'où la réponse est toujours oui.

Remarque: je ne suis pas vraiment intéressé par le type de graphiques qu'il s'agit; si vous le souhaitez, ils peuvent être non simples, dirigés, colorés, etc.

ADDENDA: Le problème que je regarde actuellement est de classer quels isotopismes sont des autotopismes de carrés latins (qui peuvent également être interprétés comme un type spécial d'automorphisme de graphe).

Étant donné un carré latin L (i, j), nous pouvons construire un graphique de la manière suivante:

  • L'ensemble des sommets est l'ensemble des cellules (i, j) de la matrice et
  • Il y a un bord entre distinct (i, j) et (i ', j') chaque fois que i = i 'ou j = j' ou L (i, j) = L (i ', j').

Un tel graphique est appelé un graphique carré latin (voir par exemple cet article de Bailey et Cameron http://designtheory.org/library/encyc/topics/lsee.pdf ). Nous pouvons interpréter un autotopisme d'un carré latin comme un automorphisme du graphe carré latin. Soit donc S l'ensemble des graphes latins carrés formés à partir des carrés latins d'ordre n. Donc la question qui m'intéresse est:

Étant donné une permutation p, p est-il un automorphisme d'un (ou plusieurs) des graphes de S?

Mon sentiment est que c'est une question difficile à répondre en général - j'écris actuellement un article de plus de 30 pages sur le sujet (avec 2 co-auteurs). En fait, la plupart du temps, c'est facile (la plupart du temps c'est "non"), mais il y a des cas difficiles.

Je suis donc intéressé à trouver des problèmes de décision qui seraient liés à la "classification de symétrie". Ils n'ont pas vraiment besoin d'être liés aux carrés latins, j'espère simplement utiliser ces techniques pour répondre à la question des carrés latins.

Douglas S. Stones
la source
Je ne sais pas si je comprends bien le problème. Pouvez-vous donner un exemple de S et P (et l'action de groupe de P sur S)? Un exemple qui rend le problème non trivial (ni tout oui ou tout non) aidera à comprendre le problème.
Tsuyoshi Ito
2
Dans l'exemple des graphes complets, ce que je ne comprends pas, c'est comment une permutation sur k points agit sur le graphe complet sur n points, où k ≠ n (surtout si k> n).
Tsuyoshi Ito
J'ai réussi à me tromper en pensant que je comprenais le problème, mais j'ai décidé que non. Le groupe de permutations S agit-il sur les graphes de la famille P, ou n'agit-il que potentiellement sur les graphes de la famille P?
Niel de Beaudrap
1
Un problème ici est que nous devons choisir un ensemble pour lequel le test d'appartenance est dans NP. S
Emil
1
J'ai ajouté un peu plus de contexte dans la réponse. En fait, en général, je ne me soucie pas vraiment de savoir si le groupe agit sur S, aussi longtemps que nous pouvons répondre "cette permutation est-elle un automorphisme de ce graphique?" Dans le cas des carrés latins, nous pouvons l'interpréter comme une action de groupe.
Douglas S. Stones

Réponses:

14

Prenez n'importe quel langage (qui se compose de chaînes binaires). Construisez l'ensemble S de graphiques comme suit:LS

  • Pour chaque chaîne avec | x | = N , on a la courbe G x = ( V x , E x ) en S , avec l'ensemble de noeuds V x = { 1 , 2 , . . . , 3 n } et les fronts suivants: si le bit i de x vaut 0 , alors les nœuds 3 i - 2 et 3xL|x|=nGx=(Vx,Ex)SVx={1,2,...,3n}ix03i2 sont adjacents, sinon 3 i - 2 et 3 i sont adjacents. Il n'y a pas d'autres bords.3i13i23i

Maintenant , nous allons une permutation de { 1 , 2 , . . . , 3 n } . On suppose que p est un automorphismes d'un graphe dans S . C'est, p est un automorphisme de G y pour certains y L . Laissez i { 1 , 2 , . . . , n } . Considérons les deux cas suivants:p{1,2,...,3n}pSpGyyLi{1,2,...,n}

  • , p ( 3 i - 1 ) = 3 i - 2 , p ( 3 i ) = 3 i . Ensuite, nous devons avoir le bit i de y égal à 0 .p(3i2)=3i1p(3i1)=3i2p(3i)=3iiy0
  • , p ( 3 i - 1 ) = 3 i - 1 , p ( 3 i ) = 3 i - 2 . Ensuite, nous devons avoir le bit i de y égal à 1 .p(3i2)=3ip(3i1)=3i1p(3i)=3i2iy1

Donc, si nous pouvons résoudre la question "est un automorphisme donné de certains G S ", nous pouvons également résoudre la question "est une chaîne donnée y dans L ". De plus, si nous pouvons faire le premier en, disons, le temps polynomial dans | p | , on peut faire ce dernier en temps polynomial en | y | ainsi que.pGSyL|p||y|

Maintenant, vous pouvez simplement laisser être votre problème NP-hard préféré. Ou le problème de l'arrêt ...L

Jukka Suomela
la source
Et pour répondre à la question d'origine: Soit un problème NP-complet, et vous aurez un S tel que le problème d'automorphisme soit NP-complet. Le certificat pour une réponse « oui » est un G yS tel que p est le automorphisme de G y , ainsi que le certificat pour y L . LSGySpGyyL
Jukka Suomela
5
@Jukka: Une façon de rapprocher la question de la motivation d'origine des graphes carrés latins est d'exiger que l'ensemble des graphes soit fermé sous isomorphisme. Il s'agit également d'une restriction tout à fait naturelle. L'ensemble S que vous construisez à partir d'un langage arbitraire L n'est pas fermé sous isomorphisme et, dans ce sens très spécifique, est un peu contre nature. Je ne vois pas comment modifier votre construction pour satisfaire cette contrainte, mais je pense que ce serait très intéressant si cela pouvait être fait. SSL
Joshua Grochow
1
@Joshua: Je pense qu'il est possible de modifier la construction, par exemple comme suit: les graphes et les permutations que nous utilisons dans les requêtes sont constitués de cycles disjoints . Plus en détail, contient un cycle de longueur 2 i + a + 1 si le bit i de x est égal à a . De même, pour déterminer si y L , construisons une permutation p qui contient un cycle de longueur 2 i + a + 1 ssi bit i aGx2i+a+1ixayLp2i+a+1i de est égal àya . (J'ai peut-être négligé certains détails, mais je pense que l'idée de base devrait fonctionner ...)
Jukka Suomela
@Jukka: Nice. Je crois que la nouvelle construction fonctionne comme écrite (en supposant que nous ne permettons à d'agir que sur des graphiques avec exactement n sommets, et non sur des graphiques avec plus de n sommets). pSnnn
Joshua Grochow du
pSnnL