algorithme non-déterministe qui fonctionne en temps polynomial, fonctionne en temps
exponentiel. Ce qui fait que pour de grandes entrées on ne peut pas résoudre le problème en
pratique, quelle que soit la puissance de la machine. De plus cela apporte une confusion dans
le nom NP car on l'associe souvent à Non Polynomial alors que c'est bien Non déterministe
Polynomial.
Le problème P = NP revient à savoir si on peut faire cette simulation en restant polynomial.
En effet, s'il s'avérait que P = NP, alors on pourrait résoudre tous les problèmes NP en un
temps polynomial sur une machine déterministe; or les problèmes NP-Complets sont très
fréquents et pour aucun d'eux on n'a réussi à trouver un algorithme polynomial le résolvant.
Ce qui fait qu'on conjecture cependant que les problèmes NP-complets ne sont pas solubles en
un temps polynomial. À partir de là plusieurs approches sont tentées :
des algorithmes d'approximation permettent de trouver
des solutions approchées de l'optimum en un temps
raisonnable pour un certain nombre de programmes.
Dans le cas d'un problème d'optimisation on trouve
généralement une réponse correcte sauf que l'on en sait
pas si c'est la meilleure solution.
des algorithmes stochastiques : en utilisant des nombres
aléatoires on peut «forcer» l'algorithme à ne pas utiliser
les cas les moins favorables. C'est ainsi que récemment
un algorithme de test de primalité qui fonctionne en
temps polynomial a été découvert.
des heuristiques permettent d'obtenir des solutions
généralement bonnes mais non exacte en un temps de
calcul modéré;
des algorithmes par séparation et évaluation permettent
de trouver la ou les solutions exactes. Le temps de
calcul n'est bien sûr pas borné polynomialement mais,
pour certaines classes de problèmes, il peut rester
modéré pour des instances relativement grandes.
on peut restreindre la classe des problèmes d'entrée à une
sous-classe suffisante, mais plus facile à résoudre.
Si ces approches échouent, le problème est non soluble en pratique dans l'état actuel des
connaissances.
Pour le cas de L et NL on ne sait pas non plus si L = NL mais cette question est moins
primordiale car . Ce qui fait que les problèmes qui sont dans L et
dans NL sont solubles efficacement.
Inversement on sait que PSPACE = NPSPACE, mais par contre .
Donc avant de résoudre NP = PSPACE il faut résoudre P = NP.
Pour résumer on a , et de
plus on sait que NL est strictement inclus dans PSPACE et donc il y en a au moins deux entre
NL et PSPACE qui ne sont pas égaux.