Taquin
Étant donné que le problème est assez long, voici un cas spécial qui capture son essence.
Problème: Soit A un algorithme detrministique pour 3-SAT. Est le problème de la simulation complète de l'algorithme A (sur chaque instance du problème). P-Space dur?
(Plus précisément, y a-t-il des raisons de croire que cette tâche est difficile pour P-Space, est-ce que quelque chose dans ce sens découle des conjectures CC standard et espère-t-on prouver que cette tâche est difficile pour une classe de complexité X qui est présumée être strictement supérieur à NP.)
Questions connexes : problèmes -d'espace-complet-problèmes-intrinsèquement moins faciles à résoudre que-np-problèmes-complets ;
MISE À JOUR ÉDITÉE : Il existe différentes interprétations pour "Simuler complètement A". Et il peut y avoir différentes réponses intéressantes selon l'interprétation. (Ryan Williams a également proposé une interprétation pour simuler un algorithme non déterministe.) Pour une certaine façon d'associer un problème de décision à la tâche de calcul "Simuler complètement A", Joe Fitzsimons a trouvé un algorithme A pour lequel ce problème de décision associé est toujours dans NP . Si "simuler complètement" se réfère à la possibilité de produire le registre entier de l'ordinateur à une étape donnée alors pour l'algorithme de Joe, il semble que soit ce qui est nécessaire. Pour cette version (je pense, mais je ne suis pas sûr), la réponse de Ryan esquisse un - argument de dureté. Joe a fait remarquer que si vous êtes tenus de fournir l'intégralité des registres (ce qui n'est plus un problème de décision), il n'est pas surprenant que vous deviez passer à l'étape suivante et les classes de complexité ne sont pas les mêmes.
Quoi qu'il en soit, si nous avons besoin pour sortir de l'état des registres à une étape prescrite alors les réponses de Ruan et Joe suggère (mais encore une fois, je ne suis pas sûr à ce sujet) que est essentiellement . Nous pouvons spaculate que par cette interprétation de l'opération pousse une étape ultérieure dans le hiearachy polynôme, et en ce que .
En tout cas, par ces interprétations, la réponse à ma question teaser est NON .
J'avais une interprétation plus drastique pour "simuler complètement un algorithme A" à l'esprit. (Mais l'interprétation de Joe et Ryan est peut-être plus intéressante.) Mon interprétation par "l'algorithme A complètement simulé" est que vous supprimez l'état des registres à chaque étape . En particulier, si l'algorithme n'est pas polynomial, votre sortie n'est pas non plus polynomiale. Sous cette interprétation drastique, je me demandais si nous devions croire que pour chaque algorithme A, C A est dur pour P-SPACE, et que pouvons-nous prouver.
Motivation:
Cette question était motivée par une conférence de Paul Goldberg ( diapositives , vidéo , papier ) décrivant un papier avec Papadimitriou et Savani. Ils ont montré que l'espace P était complet pour trouver les équilibres calculés par l'algorithme de Lemke-Howson. Le problème pour trouver un point d'équilibre n'est que PPAD-complet. Cet écart est assez étonnant et des résultats similaires sont déjà décrits dans l'article bien connu de Papadimitriu: La complexité de l'argument de la parité et d'autres preuves d'existence inefficaces (1991) . (Il est connu que les problèmes complets de PPAD ne peuvent même pas être difficiles à NP (à moins que des choses terribles ne se produisent, c'est donc loin dans le monde de la complexité par rapport à l'espace P).
Quelle est la question
Ma question porte sur des lacunes similaires pour des problèmes de complexité informatique encore plus anciens et plus classiques. (Peut-être que cela est déjà familier.)
Étant donné un problème de calcul, nous pouvons distinguer trois problèmes
a) Résoudre le problème de manière algorithmique
b) Atteindre la même solution qu'un algorithme spécifique A
c) Simuler l'ensemble de l'algorithme A
Bien sûr, c) est au moins aussi dur que b) qui est au moins aussi dur que a). Les résultats mentionnés ci-dessus montrent un écart entre la difficulté de calcul des tâches a) et b) pour le problème du calcul des équilibres. Nous aimerions comprendre la situation (et principalement l'écart entre a) et c)) pour d'autres problèmes de calcul.
La question:
La forme de base de la question avec un exemple
Nous commençons par un problème de calcul, le problème X
Un exemple peut être
Problème X: résoudre une instance de SAT avec n variables
nous précisons également
A: un algorithme qui exécute le problème X
et nous posons un nouveau problème
Problème Y: simuler exactement l'algorithme A
et nous nous intéressons à la difficulté de calcul du problème Y. Nous souhaitons comprendre la classe de ces problèmes Y pour tous les algorithmes A qui résolvent le problème X d'origine. be) si nous sommes autorisés à choisir l'algorithme A à volonté.
L'opération proposée sur les classes de complexité
Commencez avec une classe de complexité qui est décrite par une tâche de calcul. Étant donné un algorithme A pour effectuer chaque instance de cette tâche de calcul, considérons une nouvelle classe de complexité C A qui est décrit par la tâche de calcul de simulation completly . Ensuite, nous pouvons (espérons-le) définir un «idéal» de classes de complexité
pour tous les algorithmes A}.
Si nous laissons décrire tout ce qu'un ordinateur numérique peut faire en temps polynomial (donc je ne veux pas restreindre l'attention par exemple aux problèmes de décision), alors P est l'idéal couvert par P lui-même.
Enfin, mes questions
Mes questions sont:
1) La définition a-t-elle du sens (au sens large du mot sens). Est-ce bien connu ou identique (ou similaire à) quelque chose de bien connu. (Ma formulation était informelle et en particulier lorsque nous passons de problèmes spécifiques comme SAT à une classe de complexité comme NP, nous devons nous soucier de diverses choses que j'ai négligées.)
Les deux questions suivantes supposent que la définition peut avoir du sens ou être récupérée pour avoir du sens.
2) Supposons que nous nous équipions de toutes les conjectures standard concernant la complétude informatique. Pouvons-nous dire ce que est censé être pour certaines classes de complexité familières. (Par exemple C = N P , C = espace P, ..)? EDIT: Plusieurs personnes ont souligné que P S P A C E + = P S P A C E . Alors> on peut demander à la place ce qui est ( P N P ) + ? est P H + = P H ?
Peut-on deviner quelles sont les classes de compexité pour que C + soit l'idéal recouvert par C ?
La question de la facilité avec laquelle la tâche de calcul de simuler un algorithme A pour 3-SAT (lorsque nous pouvons choisir l'algorithme pour le rendre aussi simple que possible) est donc un cas spécial intéressant.
3) Peut-on réellement prouver quelque chose sur cette opération?
Bien sûr, si vous prouvez que toutes les classes de complexité dans sont difficiles dans l'espace P, cela montrera que P = N P implique P = P S P A C E , ce qui (je pense) serait un résultat énorme et très inattendu . Mais si vous montrez que toutes les classes de complexité dans N P + sont difficiles à dire dans le troisième niveau de la hiérarchie polynomiale (par exemple Δ P 3 ), cela impliquerait seulement des choses que nous savons déjà, des choses qui découlent du fait que P = N P provoque l'effondrement du PH.