Je suis en quelque sorte nouveau, mais très intéressé par le domaine de l'informatique et de la théorie de la complexité, et je veux clarifier ma compréhension de la façon de classer les problèmes et de la façon dont les problèmes sont liés à la machine utilisée pour les résoudre.
Ma compréhension
- Machine de Turing standard - une machine de Turing qui a un alphabet fini, un nombre fini d'états et une seule bande infinie à droite
- Turing-Equivalent Machine - une machine de Turing qui peut émuler et être émulée par une machine de Turing standard (assez souvent avec un compromis entre l'espace et le temps réalisé par l'émulation)
P
- la classe de problèmes qui peuvent être résolus en temps polynomial en utilisant une machine de Turing standard (définie ci-dessus)NP
- la classe de problèmes qui peuvent être vérifiés en temps polynomial à l'aide d'une machine de Turing standardNP-complete
- les problèmes les plus difficiles qui sont encore en placeNP
, dans lesquels tous lesNP
problèmes peuvent être convertis en temps polynomial
Ma question
Les classes de complexité ( P
, NP
, NP-complete
, etc.) liés à l'algorithme, ou l'algorithme et la machine?
Autrement dit, si vous pouviez créer une machine équivalente de Turing (qui peut résoudre tous les problèmes qu'une norme TM peut, mais dans une quantité de temps / espace différente) et cette nouvelle machine pourrait résoudre un NP-complete
problème dans le temps qui se développe en tant que polynôme par rapport à l'entrée, cela impliquerait-il P=NP
?
Ou le NP-complete
problème doit-il être résolu sur toutes les machines de Turing possibles en temps polynomial pour être pris en compte P
?
Ou est-ce que je comprends mal quelque chose de fondamental ci-dessus?
J'ai jeté un coup d'œil (peut-être pas avec les termes de recherche corrects, je ne connais pas très bien tout le jargon) mais il semble que la plupart des conférences / notes etc. se concentrent sur les machines standard mais disent que les machines personnalisées ont souvent une certaine vitesse temps / espace au détriment de l'espace / temps, sans dire comment cela se répercute sur les classes de complexité. Je ne connais pas encore assez le jargon dans ce domaine pour trouver des articles qui expliquent cela.