L'isomorphisme du graphe peut-il être décidé avec un non-déterminisme lié à la racine carrée?


30

Non - déterminisme Borné associe une fonction avec une classe C des langues acceptées par les machines de Turing déterministe borné ressources, pour former une nouvelle classe g - C . Cette classe se compose des langages acceptés par une machine de Turing non déterministe M obéissant aux mêmes limites de ressources que celles utilisées pour définir C , mais où M est autorisé à effectuer au plus g ( n ) mouvements non déterministes. (J'utilise la notation de Goldsmith, Levy et Mundhenk, au lieu de l'original de Kintala et Fischer, et ng(n)CgCMCMg(n)n est la taille de l'entrée.)

Ma question:

Y a-t-il une constante telle que l'ISOMORPHISME GRAPHIQUE est en c c0 -PTIME?cnPTIME

( Edit: Joshua Grochow a souligné qu'une réponse positive à cette question impliquerait un algorithme pour GI qui a de meilleures limites d'exécution asymptotiques que celles actuellement connues. Je serais donc heureux de relâcher la limite, permettant mouvements non déterministes.)o(nlogn)


Contexte

Pour chaque constante fixe , P T I M E = c log n - P T I M E , car c log n les mouvements non déterministes créent au plus un nombre polynomial de configurations à explorer de façon déterministe. De plus N P = c n c - P T I M E , et au moyen du remplissage, on peut afficher des langages NP-complets dans n ε - P pour chaque εc0PTIME=clognPTIMEclognNP=cnc-PTIMEnεP .ε>0

Kintala et Fischer ont observé que décider si un graphe d'entrée avec des sommets a une ( | V | / 3 ) -clique est N P -complet, mais est dans O ( V(|V|/3)NP-PTIME. Pour voir cela, jetez les sommets qui ont au plus| V| /3-2voisins. S'il reste trop peu de sommets, rejetez-le. Sinon, les sommets restants forment un graphe de tailleΩ(|V | 2). Alors devinez un| V| /3-sous-ensemble de sommets utilisant| V| =O(O(n)PTIME|V|/32Ω(|V|2)|V|/3étapes non déterministes et vérifier qu'elles forment une clique en temps polynomial.|V|=O(n)

Certaines autres langues des graphes denses de N P sont également en O ( LNP-PTIME. C'est le cas pour tout problème où un sous-ensemble des sommets sert de certificat et la taille du graphe d'entrée estΩ(|V | 2). Les exemples sont les versions prometteuses de Induced Path ou 3-Coloring pour le cas de graphiques denses. D'autres problèmes semblent nécessiter des certificats plus importants, par exemple une liste de sommets définissant un circuit hamiltonien semble nécessiterΩ(|V|log|V|)O(n)PTIMEΩ(|V|2)Ω(|V|log|V|)morceaux. Il n'est pas clair pour moi si l'on pourrait utiliser une quantité de non-déterminisme qui est trop petite pour deviner le certificat pour décider de tels problèmes.

Étant donné que - P peut contenir des langages NP-complets, il semble alors intéressant de se demander où dans la hiérarchie non déterministe bornée les langages potentiellement plus faciles se situent. On pourrait s'attendre GI, comme une langue qui ne semble pas être NP-complet, être dans la hiérarchie plus proche de log n - P que de n - P . Cependant, le certificat évident pour GI spécifie la carte en utilisant | V | journal | V | bits, qui est ω ( nεPlognPnP|V|log|V|.ω(n)

Une autre façon de penser à cette question: la spécification d'une carte entre les ensembles de sommets est-elle un certificat le plus court possible pour l'IG?

Edit: Quelques remarques supplémentaires (corrigées) suivent, pour répondre aux commentaires de Joshua Grochow.

Si un certificat utilise bits et peut être vérifié en temps polynomial, alors la force brute donne un algorithme pour GI prenant p o l y ( n ) 2 O ( f ( n ) ) = 2 O ( f ( n ) ) heure. Avec un certificat de taille O ( f(n)=Ω(logn)poly(n)2O(f(n))=2O(f(n)), la force brute donne un algorithme prenant2 O ( O(n)heure, tandis qu'un certificat de tailleO(2O(n)donne une approche en force brute prenant2 O ( O(nlogn)heure. La limite supérieure de longue date de Luks est de2O(2O(nlogn)temps, qui se situe entre ces deux bornes jusqu'à des exposants constants.2O(nlogn)

Ces considérations suggèrent qu'il pourrait y avoir une approche alternative à l'IG. L'approche de Luks semble reposer essentiellement sur l'identification d'un sous-ensemble de générateurs d'un groupe associé. Une machine non déterministe pourrait donc deviner un sous-ensemble du groupe. Ces sous-ensembles pourraient ensuite être vérifiés de manière exhaustive pour produire un algorithme déterministe. Si la liste des éléments peut être spécifiée de manière succincte, soit parce que le groupe associé n'est jamais beaucoup plus grand que la taille du graphe, soit parce que le nombre de générateurs requis est toujours petit, et vérifier chaque sous-ensemble candidat ne prend pas trop de temps, alors ceci pourrait conduire à une approche alternative de l'IG.

  • Chandra MR Kintala et Patrick C. Fischer, Refining Nondeterminism in Relativized Polynomial-Time Bounded Computation , SIAM Journal on Computing 9 (1), 46-53, 1980. doi: 10.1137 / 0209003
  • Judy Goldsmith, Matthew A. Levy, Martin Mundhenk, Limited non- determinism, SIGACT News 27 (2), 20-29, 1996. doi: 10.1145 / 235767.235769
  • László Babai et Eugene M. Luks, Étiquetage canonique des graphiques , STOC 1983, 171–183. doi: 10.1145 / 800061.808746

Donc, si le graphique est donné en tant que matrice d'adjacence de taille cela signifie-t-il que je peux effectuer un nombre linéaire de mouvements non déterministes par rapport à la taille de sommet définie n ? n2n
John D.

@ user17410: Oui, la représentation ne devrait pas trop d'importance, tant que la taille d'une instance est . (Si elles sont déraisonnablement rembourrées pour avoir la taille Ω ( ( | V | log | V | ) 2 ) alors bien sûr, la racine carrée est suffisante.)O(|V|2)Ω((|V|log|V|)2)
András Salamon

4
Je pense que vous demandez peut-être un algorithme meilleur que le plus connu ... Si je comprends bien, un algorithmePTIMEdonnerait un2 O ( O(n)PTIMEalgorithme déterministe. L'algorithme déterministe le plus connu actuellement prend du temps2O(2O(n). 2O(nlog2n)
Joshua Grochow

@ AndrásSalamon: Force brute = PAS 2 O ( n!poly(n)2O(nlogn)... De plus, je ne vois pas pourquoi un certificat de taille2O(nlog2n) conduit à un algorithme de force brute de temps2nplutôt que2O(2nlogn- pouvez-vous élaborer? Peut-être que je manque quelque chose dans la définition de la notation "PTIME"? 2O(n)
Joshua Grochow

1
@ MohammadAl-Turkistany: Peut-être, mais je vais devoir y réfléchir un peu. Il y a des points dans l'algorithme de Babai où, une fois que le degré de couleur est en dessous du polylogue, il applique le test GI borné-deg, comme dans le meilleur algorithme précédent, et il n'est pas clair si on peut faire le test GI deg polylog en borné polylog le non-déterminisme, ou si l'on peut continuer la récursivité de Babai plus loin pour obtenir le degré jusqu'à, disons, un degré de couleur constant. Si et quand je le comprendrai, je mettrai à jour ma réponse - si vous avez des réflexions à ce sujet, je suis heureux de discuter, mais ce n'est probablement pas le bon endroit pour y travailler.
Joshua Grochow

Réponses:


8

Tout d'abord, (comme cela a été modifié dans l'énoncé de question), une réponse positive à votre question améliorerait immédiatement l'état de l'art dans les pires cas pour l'isomorphisme des graphes. Pour un algorithmePTIMEdonne un2 O ( O(n)PTIMEalgorithme déterministe temporel, mais le courant le plus connu pour GI n'est que de2O(2O(n)2O(nlogn)

Deuxièmement, il n'est même pas immédiatement clair pour moi si le meilleur algorithme actuel est en fait un algorithmePTIME, bien que la première partie soit clairement, dans un certain sens. L'algorithme devine d'abord un ensemble de sommets de tailleO(nlogn)PTIME pour individualiser (astuce de Zemlyachenko - voiricipour une exposition en anglais), ce qui peut être fait en devinantn/logn bits de façon non déterministe. Cependant, après avoir deviné ceux-ci et individualisé (en temps poly déterministe), il applique le test d'isomorphisme à degré borné le plus connu, qui prend le tempsn O ( d / log d ) (Théorème 9.1 decet article), et l'applique dans le cas ded=O(nlognnO(d/logd). Je devrais réfléchir soigneusement à la possibilité de transformer ce dernier algorithme enO(d=O(nlogn)AlgorithmePTIME(semble une question intéressante ...)O(nlogn)PTIME


Avez-vous des liens vers des versions qui ne sont pas derrière un mur payant? Je n'ai jamais vu une implémentation réelle de l'astuce de Zemlyachenko ou du test d'isomorphisme de degré borné. Le partitionnement des sommets par degré comme NAUTY accélère les choses, mais ceux avec le même degré, vous devez toujours vérifier toutes les permutations de cycle primaire sur eux AFIK.
Chad Brewbaker

@Chad: Je ne suis malheureusement pas au courant des versions non paywall de ces articles. Cependant, l'astuce de Zemlyachenko est assez simple à mettre en œuvre dans la pratique et réduit essentiellement le degré. Pour la mise en œuvre pratique de l'astuce de Zemlyachenko, je pense que la seule question est le compromis entre l'énumération des ensembles de sommets à individualiser (exponentielle dans la taille de l'ensemble) et les gains potentiels réalisés en réduisant efficacement le degré. Je ne sais pas s'il est réellement implémenté dans NAUTY ou dans d'autres algorithmes d'isomorphisme pratiques.
Joshua Grochow

@Chad: Soit dit en passant, tester les permutations du cycle primaire ne suffit que pour détecter un automorphisme non trivial; il ne suffit pas pour tester l'isomorphisme. Par exemple, si est un graphique sans triviaux automorphismes, laissez π soit une permutation - pas nécessairement un cycle de premier choix. Alors π ( G ) est isomorphe à G , et π est le seul isomorphisme entre G et π ( G ) . Mais cet isomorphisme ne serait pas détecté en considérant uniquement les cycles premiers. Gππ(G)GπGπ(G)
Joshua Grochow

Au prix du doublement de , l'ISO peut être calculé avec AUT en plaçant les deux graphiques dans une matrice d'adjacence. n
Chad Brewbaker

@Chad: Si vous faites cela, alors il y en a déjà permutations de premier cycle de l'ordre 2, vous avez donc perdu toutes les économies potentielles. Cela est lié au fait que la réduction que vous décrivez est de l'ISO au calcul d'un groupe électrogène pour le groupe d'automorphisme. Il n'y a pas de réduction de poly-temps connue de l'ISO au problème de simplement décider si un graphique a un automorphisme non trivial. n!
Joshua Grochow
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.