Complexité de «est un graphique un produit»

25

Cette question se pose par pure curiosité (elle est venue en pensant à décompresser une chaîne , mais je ne sais pas si elle est réellement liée), donc j'espère que c'est approprié.

Il existe différents produits graphiques, et je suis intéressé par l'un d'eux ici. Quelle est la complexité de déterminer si un graphe est isomorphe à un produit non trivial? (Certainement pour le produit cartésien, où est le graphique avec un sommet.)K = K 1KK=K11

J'ai regardé les pages "factor factor" et "graph factorization" sur Wikipedia, mais aucune ne semble liée. Ce problème est-il connu sous un autre nom?

Max
la source

Réponses:

15

Plusieurs produits graphiques peuvent être reconnus en temps polynomial. Comme d'habitude, le produit cartésien est le plus simple, et le cas cartésien est également la base des algorithmes pour plusieurs autres produits. La reconnaissance du produit lexicographique (composition) équivaut à l'isomorphisme graphique.


Plus en détail:

Soit Γ la classe des graphes simples finis, et Γ0 la classe des graphes simples finis qui peuvent avoir des auto-boucles. (Clairement ΓΓ0 .)

Décider si un graphe d'entrée connecté a des facteurs dans peut être fait en temps polynomial pour les produits cartésiens et forts, et aussi pour le produit direct lorsque n'est pas bipartite. Décider si a des facteurs dans est en temps polynomial pour le produit cartésien, mais il est peu probable qu'il soit en temps polynomial pour le produit lexicographique. Je ne connais pas l'état de décider si a des facteurs dans pour les produits directs et forts.GΓ0GGΓGΓ

Résultats pertinents d'Imrich et Klavžar:

Théorème 4.10. Pour un graphe connecté sur sommets et arêtes, on peut trouver la factorisation première par rapport au produit cartésien en temps utilisant l' espace .GnmO(mn)O(m)

Théorème 5.43. La décomposition en facteurs premiers des graphes non bipartites connectés dans par rapport au produit direct et des graphes simples connectés par rapport au produit fort peut être déterminée en temps polynomial.Γ0

Le résultat pour le produit cartésien est ensuite amélioré en temps et en espace dans le chapitre 7. Comme indiqué dans d'autres réponses, cela a depuis été amélioré en temps linéaire.O(mlogn)O(m)

Pour le produit lexicographique:

Théorème 6.20. Le problème de la décision de savoir si un graphe connexe donné est premier par rapport au produit lexicographique est au moins aussi difficile que le problème d'isomorphisme du graphe.

Théorème 6.21. Le problème de décision de savoir si un graphe connexe donné est premier par rapport au produit lexicographique n'est pas plus difficile que la solution d'un nombre polynomial (en ) de problèmes d'isomorphisme de graphe, dont la taille de chacun est également polynomiale en .nn

Donc, décider si un graphique est premier par rapport au produit lexicographique équivaut à GRAPH ISOMORPHISM, en ce qui concerne les réductions de Turing.

Le cas du produit direct et fort ayant des facteurs sans auto-boucles semble être absent des références que j'ai examinées. J'apprécierais toute indication sur des articles qui traitent de cette affaire, ou un indice pourquoi elle est sans intérêt.

  • Wilfried Imrich et Sandi Klavžar, Graphiques de produit: structure et reconnaissance . Wiley, 2000. ISBN 0-471-37039-8.
András Salamon
la source
J'ai accepté la réponse de @ quelqu'un, mais merci pour les informations supplémentaires.
Max
12

Il existe un algorithme à temps linéaire pour déterminer les facteurs premiers des graphes connectés par rapport au produit cartésien. Voir l' article d'Imrich et Peterin.

Yota Otachi
la source