Ma question est la suivante. Supposons que est un problème NP-difficile. Étant donné une instance arbitraire de et supposant qu'un adversaire sait que cette instance est facile à résoudre, est-il possible de trouver un algorithme déterministe en temps polynomial pour résoudre cette instance particulière ?
Par exemple: Supposons que soit GRAPH COLORING. L'adversaire vous donne un graphe à sommets.
- L'adversaire sait que est complet mais pas vous. Pouvez-vous trouver un algorithme à temps polynomial qui dit "Ce graphique est colorable avec des couleurs "?
- L'adversaire sait que a une propriété mais pas vous. Pouvez-vous trouver un algorithme polynomial qui dit "Ce graphique est colorable avec des couleurs "?
- ...
Réponses:
Le problème n'est pas vraiment bien posé. Pour tout cas particulier, il y a une seule solution, par exemple . Par conséquent, on peut imaginer un algorithme qui a la réponse définitivement dans: quel que soit l' entrée que vous lui donnez, tout ce qu'il fait est juste imprimer . Cette réponse compte comme un algorithme déterministe polynomial qui permet de résoudre ce cas particulier .S S S I
Par conséquent, la réponse à votre question est "Oui", mais pour des raisons sans intérêt. Il est possible que vous deviez réfléchir davantage à la manière de formuler votre question en fonction de ce que vous voulez vraiment savoir.
La dernière partie de votre question est en fait un peu différente. Il ne s'agit pas d'une seule instance que . Au contraire, il pose des questions sur un cas particulier du problème, c'est-à-dire une famille infinie d'instances qui est un sous-ensemble approprié de toutes les instances possibles pour . Dans ce cas, la réponse est "cela dépend"; certains cas particuliers peuvent rester durs en NP et d'autres peuvent être en P.I Π
Enfin, je ne sais pas ce que cela signifie de dire "L'adversaire connaît X mais vous ne le savez pas". Je suis libre d'écrire un algorithme qui suppose que X est vrai et ne fonctionne que lorsque X est vrai. La «connaissance» est une chose amusante et mal modélisée par les types d'outils dont vous semblez parler; la théorie de la complexité concerne davantage «l'existence» que la «connaissance».
la source
Dans un certain sens, la réponse à votre question est affirmative, en raison de l'algorithme de recherche universel de Levin. Tenez compte de la coloration des graphes de concrétisation et d'une classe particulière d'instances faciles. En tant que témoin que cette classe est facile, vous avez un algorithme qui, étant donné un graphique dans cette classe, produit (en temps polynomial) une coloration légale avec une taille polynomiale prouvant que la coloration est optimale.
L'algorithme de recherche universel de Levin exécute tous les algorithmes de temps polynomiaux sur son instance (ceci est réalisé en essayant toutes les limites de temps polynomiales possibles pour chaque algorithme), en vérifiant s'ils fournissent une coloration légale avec une preuve d'optimalité. Sur n'importe quelle classe d'instances faciles, cet algorithme s'exécute en temps polynomial. Malheureusement, les constantes seront énormes, donc ces algorithmes ne sont pas pratiques.
la source