Complexité du comptage des endomorphismes des graphes

9

Un homomorphisme d'un graphe à un graphe est un mappage de à tel que si et sont adjacents dans alors et sont adjacents dans . Un endomorphisme d'un graphe est un homomorphisme de à lui-même; il est sans virgule fixe s'il n'y a pas de tel que et il n'est pas trivial si ce n'est l'identité.G=(V,E)G=(V,E)fVVxyEf(x)f(y)EGGxf(x)=x

J'ai récemment posé une question relative aux automorphismes de posets (et de graphes) , c'est-à-dire les endomorphismes bijectifs dont l'inverse est également un endomorphisme. J'ai trouvé des travaux sur le comptage (et la détermination de l'existence) des automorphismes, mais en cherchant, je n'ai trouvé aucun résultat lié aux endomorphismes.

D'où ma question: quelle est la complexité, compte tenu d'un graphe , de décider de l'existence d'un endomorphisme non trivial de , ou de compter le nombre d'endomorphismes? Même question avec les endomorphismes sans point fixe.GG

Je pense que l'argument donné dans cette réponse s'étend aux endomorphismes et justifie que le cas des graphes bipartis dirigés, ou posets, n'est pas plus facile que le problème des graphes généraux (le problème des graphes généraux se réduit à ce cas), mais sa complexité ne fait pas semblent simples à déterminer. On sait que décider de l'existence d'un homomorphisme d'un graphique à un autre est NP-difficile (cela est clair car il généralise la coloration des graphiques), mais il semble que restreindre la recherche aux homomorphismes d'un graphique à lui - même pourrait rendre le problème plus facile, donc cela ne m'aide pas à déterminer la complexité de ces problèmes.

a3nm
la source

Réponses:

6

Le comptage des endomorphismes ou des endomorphismes sans point fixe est terminé pour : étant donné un graphe connecté , considérons le graphe qui est l'union disjointe de et d'un triangle. Alors , donc peut être calculé en utilisant deux endomorphismes compte (et par un résultat général, même un seul suffit) et un certain post-traitement poly-temps. Notez que le nombre de triangles peut être compté en temps cubique (ou même multiplication matricielle). La même équation s'applique aux endomorphismes libres à point fixe, car les 3 coloriages et les triangles sont des endomorphismes libres à point fixe deFP#PGGG|End(G)|=(|End(G)|+#3COL(G))(#{triangles in G}+33)#3COLG.

Si vous souhaitez que soit connecté, vous pouvez procéder comme suit. Notez d'abord que le comptage des endomorphismes de graphes de couleur vertex (où les sommets de couleur ne peuvent être mappés qu'à d'autres sommets de couleur ) équivaut à compter les endomorphismes de graphes, comme suit. Soit les couleurs . Pour chaque sommet de couleur , ajoutez un nouveau cycle impair disjoint de taille au moins ( ), et connectez un sommet de à . Chaque endomorphisme de correspond àGcc{1,...,C}vcCvn+2cn=|V(G)|CvvG2nles endomorphismes du nouveau graphique (pour chaque cycle, vous avez deux choix pour le mapper). Notez qu'aucun sommet de ne peut correspondre à des sommets de n'importe quel , car les cycles sont trop grands (vous devez pouvoir adapter un cycle à l'intérieur d'un autre, ce que vous ne pouvez pas faire pour des cycles impairs).GCv

Maintenant, pour créer une version de qui est connectée, nous commençons avec une version colorée, puis appliquons la transformation ci-dessus. Commencez comme avant, en ajoutant à un triangle disjoint . Ajoutez maintenant un seul nouveau sommet qui est connecté à chaque sommet dans . Couleur rouge et tous les autres sommets bleus.GGΔv0GΔv0

Joshua Grochow
la source
Merci! Je ne suis pas sûr de votre formule exacte pour( , et quelque chose de similaire pour les fixes) mais l'argument tient toujours. La deuxième partie de votre argument montre la dureté même en supposant la connectivité, je pense que c'est vrai mais je pense que cela ne s'applique pas directement aux endomorphismes sans point fixe (il y a des points fixes dans les mappages de cycle), mais ce n'est pas si important. Je serais plus curieux de savoir: le problème de décision est-il NP-difficile (pour les endomorphismes non triviaux et sans points fixes)? Merci encore! |End(G)|(|End(G)|+#3COL(G))(#triangles+33)
a3nm
Vous avez raison sur la formule - je l'ai mise à jour. Pour que la deuxième partie s'applique à sans point fixe, placez une arête de chacun des deux sommets les plus éloignés de à . Le nombre de points fixes sera légèrement différent, mais je pense que cela fonctionne toujours. (Vous devrez peut-être également augmenter la taille des cycles ...). Pour les paires de graphiques rigides (pas de Endos non triviaux) , décider l' existence d'endos de (Union disjoint) est équivalent à déterminer l' existence d'un morphisme ou . Presque tous les graphiques sont rigides, donc il est tout à fait possible que la décision soit difficile à NP ...CvvG,HGHGHHG
Joshua Grochow
OK, je pense que j'achète votre argument pour un compte sans virgule fixe. Pour décision, en fait, je remarque maintenant que "Le cœur d'un graphique", Hell, p. 8-9, semble prouver que décider de l'existence d'un endomorphisme non trivial est NP-complet. (La question des endomorphismes sans virgule fixe demeure mais il y a peu de raisons de croire que ce ne serait pas difficile non plus.)
a3nm