Anda di halaman 1dari 5

NP-compltude Dfinition et notation Un problme de dcision est un problme dont la rponse est OUI ou NON.

Pour un problme P, notons O(P) lensemble des instances de P dont la rponse est OUI. Proprit Soient A et B deux problmes de dcision. Si AB, alors il existe une fonction f calculable en temps polynomial telle que pO(A) f(p) O(B) Dfinition P est lensemble de tous les problmes de dcision pouvant tre rsolu en temps polynomial. Thorme 1 Soit A et B deux problmes de dcision tels que A p B et BP . Alors AP Preuve Soit pB(n) le temps ncessaire pour rsoudre une instance de B de taille n, et soit dB le degr du polynme pB. Soit pA(n) le temps ncessaire pour rsoudre une instance de A de taille n, en comptant chaque rsolution de B comme une opration lmentaire. Soit dA le degr du polynme pA. On peut rsoudre A en un temps O((1+pB(pA(n)))pA(n)) = O(ndA+dAdB). Dfinition NP est lensemble de tous les problmes de dcision P tel que pour toute instance pO(P), il existe une preuve vrifiable en temps polynomial que pO(P). Dfinition Soit P un problme de dcision. Le problme complmentaire de P, not P est le problme de dcision tel que pO(P) pO( P ) Dfinition co-NP est lensemble de tous les problmes de dcision P tel que P NP Exemple HAMD NP car si un graphe G a un cycle hamiltonien, on peut le prouver en exhibant un tel cycle. Pour vrifier la preuve, il suffit de sassurer que le cycle passe bien une et une seule fois par chaque sommet du graphe, en empruntant uniquement des artes de G. Remarque La dfinition de NP est asymtrique. On ne demande rien pour les instances pO(P). Remarquons ainsi par exemple quil nest pas vident comment on peut fournir une preuve vrifiable en temps polynomial quun graphe nest pas hamiltonien. Ainsi, on ne sait pas si HAMD NP. Par contre, par dfinition, on a HAMD co-NP Thorme 2 P NP et P co-NP Preuve Soit PP et soit A un algorithme polynomial permettant de rsoudre chaque instance de P. Pour une instance pO(P), on peut vrifier que pO(P) en appliquant A, qui donne la rponse OUI en un temps polynomial. Ceci prouve que P NP. La preuve que P co-NP est similaire. Question

P =NP ?

Beaucoup pensent quil est peu probable que P =NP , mais personne na dmontr le contraire.

Dfinition NP -complet est lensemble de tous les problmes de dcision P tel que - P NP - P P PNP Thorme 3 Soient A et B deux problmes de dcision tels que ANP -complet, BNP et A B. Alors BNP-complet Preuve Pour tout PNP, on a PAB, ce qui implique PB. Du thorme 3, on dduit que pour montrer quun problme P est NP-complet, il faut dabord sassurer que PNP , et il suffit ensuite de dterminer un problme PNP complet tel que PP. En dautres termes, si P tait facile rsoudre, P le serait galement car on est capable de transformer polynomialement P en P. Thorme 4 ( NP-complet P ) ( P = NP ) Preuve () Supposons P =NP. On a alors P =NP complet car NP complet NP = P et si PP, on a PNP et PP pour tout PNP=P (puisquon peut rsoudre P en faisant un nombre polynomial doprations lmentaires + un appel inutile la bote noire qui rsout P). Comme P, on a donc NP-completP=P . () On sait dj que P NP . Soit ANP . Il suffit de montrer que AP. Choisissons B dans NP-complet P. On a alors AB car B est NP-complet. Mais on sait par le thorme 1 que AB et BP implique A P.

Dfinitions Une formule boolenne est dite satisfaisable sil existe au moins une affectation de valeurs ses variables de telle sorte que cette formule soit vraie. On note SAT le problme consistant dterminer si une formule boolenne donne est satisfaisable. Exemple (pq) (pq) est une formule boolenne satisfaisable car elle est vraie si on donne la valeur VRAI p et FAUX q. Par contre (p) (pq) (q) nest pas satisfaisable. Dfinitions Un littral est une variable boolenne ou sa ngation. Une clause est un littral ou une disjonction de littraux. Un formule boolenne est sous forme normale conjonctive si elle est une clause ou une conjonction de clauses. Le problme SAT-CNF est la restriction de SAT aux formules boolennes donnes sous forme normale conjonctive. Le problme SAT-k-CNF est la restriction de SAT-CNF au cas o toutes les clauses ont au plus k littraux. Thorme 5 (Cook, 1971) SAT-CNF NP-complet Cook a en fait russi dmontrer que NP-complet . En utilisant le thorme 3, il devenait alors plus facile de dterminer dautres problmes NP-complets. On en connat aujourdhui plusieurs milliers. Voici quelques exemples. Thorme 6 SAT NP-complet Preuve Il est facile de vrifier que SAT NP. La proprit dcoule alors du fait que SAT-CNF SAT.

Thorme 7 SAT-3-CNF NP-complet Preuve Il est facile de vrifier que SAT-3-CNF NP. On va montrer que SAT-CNF SAT-3-CNF. Soit f une formule boolenne sous forme normale conjonctive. On a donc f=C1C2Cm, o chaque Ci est une disjonction de littraux. Chaque Ci peut tre remplac par une conjonction de clauses au plus 3 littraux de la manire suivante. Soit Ci= l1lr : si r3 alors posons Ci=Ci sinon, posons Ci= (l1l2x1) (x1 l3 x2) (xr-3 lr-1 lr) Soit f= C1C2Cm. On va vrifier que f est satisfaisable si et seulement si f lest. Si f est satisfaisable, considrons une affectation de valeurs aux variables qui rendent chaque Ci vrai, et soit Ci=l1lr une clause quelconque de f. Si r3 alors Ci est galement vraie. Sinon, il existe un indice s tel que ls est vrai., et en posant x1=x2==xs-2=vrai et xs-1=xs==xr-3=faux, et en gardant les mmes valeurs pour l1,,lr on a que Ci est galement vraie. Il est donc galement possible de satisfaire f. Si fest satisfaisable, considrons une affectation de valeurs aux variables qui rendent chaque Ci vrai, et soit Ci= (l1l2x1) (x1 l3 x2) (xr-3 lr-1 lr) une clause quelconque de f. Il est facile de vrifier que si l1= =lr-2 =faux alors x1==xr-3=vrai, ce qui implique lr-1=vrai ou lr=vrai. Ci est donc galement vraie. Dfinition k-COL est le problme de dcision consistant dterminer sil est possible de colorer les sommets dun graphe en utilisant au plus k couleurs, de telle sorte quaucune arte nait ses deux extrmits de mme couleur. Thorme 8 k-COL NP complet pour tout k3. Preuve Il est facile de vrifier que k-COLNP. Comme on a trivialement 3-COL k-COL, nous allons dmontrer SAT-3-CNF 3-COL. Soit f=C1C2Cm une formule boolenne sous forme normale conjonctive, dans laquelle chaque clause a au plus 3 littraux. Sans perte de gnralit, on peut supposer que chaque clause a exactement 3 littraux car l=lll, et ll=lll. Soit v1, ,vk les variables boolennes apparaissant dans f. Construisons un graphe Gf comme suit. On cre 3 sommets nots v, f, c (pour vrai, faux, contrle) quon relie 2 2. On cre ensuite 2 sommets xi et yi par variable vi, et on relie chaque xi au yi et chaque xi et chaque yi au sommet c. Finalement, pour chaque clause Ci=l1l2l3 on cre 6 sommets supplmentaires s1,,s6 relis comme reprsent cidessous. Le sommet wt (t=1,2,3) est gal xu si lt=vu et yu si lt=vu.

Si on veut colorer Gf en 3 couleurs, au moins lun des 3 sommets w1, w2 et w3 doit avoir la mme couleur que v. En effet, tant donn que w1, w2 et w3 sont tous les 3 relis c, ils ne peuvent tre colors que comme v ou f. Si w1 et w2 ont la mme couleur que f, alors s4 aussi; s3 a alors la mme couleur que v; donc ni s1 ni s2 na la mme couleur que v, ce qui oblige w3 avoir la mme couleur que v. Toutes les 7 possibilits de colorer w1, w2 et w3 avec les couleurs de v et f sont reprsentes ci-dessous.

Ainsi, Gf est colorable en 3 couleurs si et seulement si f est satisfaisable

Dfinition STABLE est le problme de dcision consistant dterminer si un graphe donn contient k sommets 2 2 non-adjacents. Thorme 9 STABLE NP -complet Il est facile de vrifier que STABLENP. On va donner 2 dmonstrations que STABLE NP complet. En fait, nous allons choisir un problme NP complet P et montrer que P STABLE. Dans la 1re dmonstration, nous choisirons P=k-COL alors que dans la 2me, nous choisirons P=SAT-CNF. Montrons que k-COL STABLE. Soit G=(V,E) un graphe. Construisons un graphe HG en faisant k copies de G et en reliant chaque sommet chacune de ses copies. Il est facile de vrifier que G est colorable en au plus k couleurs si et seulement si il existe dans HG un ensemble de |V| sommets 2 2 non-adjacents. Montrons que SAT-CNF STABLE. Soit f=C1C2Cm une formule boolenne sous forme normale conjonctive. Construisons un graphe Gf =(V,E) avec V={ (l,i) tel que l est un littral de Ci } et en reliant deux sommets (l,i) et (l,j) par une arte si et seulement si i=j ou l=l. Il est alors facile de vrifier que f est satisfaisable si et seulement si il existe dans Gf un ensemble de m sommets 2 2 non-adjacents. Dfinition Soit n entiers v1, ,vn. Le problme PARTITION consiste dterminer sil existe un sous-ensemble S de {1,,n} tel que vi = vi

iS

iS

Thorme 10 PARTITION NP -complet Dfinition Soient n entiers v1, ,vn, ainsi que 2 entiers k et L. Le problme kme Plus Lourd Sous-Ensemble (KPLS) consiste dterminer sil existe k sous-ensembles S1,,Sk de {1,,n} tel que v i L (j=1,,k).
iS j

Thorme 11 PARTITION KPLS Preuve Soient n entiers v1, ,vn. Dfinissons L=


1 2
n

v
i =1

et k=2n-1 +1

Soit A< (resp. A= et A>) lensemble des sous-ensembles S de {1,,n} tel que On a |A<| + |A=| + |A>| = 2 . De plus, |A<| = |A>| car SA< ({1,,n}- S) A>. On dduit que 2|A<|+|A=|= 2n 2(|A<|+|A=|)=|A=|+2n. En conclusion, on a les quivalences suivantes : vi = vi S{1,,n} tel que
n

v i < L (resp. =L et >L).


iS

iS

iS

A= 2(|A<|+|A=|) > 2n |A<|+|A=| > 2n-1 |A<|+|A=| k il existe k sous-ensembles S1,,Sk de {1,,n} tel que vi L (j=1,,k).
iS j

Remarque Nul ne sait si KPLSNP. On ne peut donc pas dduire des thormes 10 et 11 que KPLSNP complet.

Dfinition NP -dur est lensemble de tous les problmes P tel quil existe PNP complet avec P p P Remarque Un problme NP -dur nest pas forcment un problme de dcision, ni un problme de NP Exemple Soit COLO le problme consistant dterminer le plus petit nombre de couleurs ncessaires pour colorer les sommets dun graphe de telle sorte quaucune arte nait ses deux extrmits de la mme couleur. Soit COLC le problme consistant exhiber une telle coloration minimale. On a bien videmment 3-COL p COLO p COLC. COLO et COLC sont NP durs alors que ce ne sont pas des problmes de dcision. Soit maintenant COLE le problme de dcision consistant dterminer si tant donn un graphe G et un nombre k, il est vrai que G peut tre color avec k couleurs, mais pas avec k-1. On a 3-COL p COLE puisque la rponse 3-COL est OUI si et seulement si elle est OUI pour COLE avec k=1, 2 ou 3. COLE est NP dur alors quon ne sait pas si COLENP car il nest pas facile de donner une preuve vrifiable en temps polynomial quun graphe G nest pas colorable en k-1 couleurs. Autres classes de complexit

PSPACE est lensemble des problmes de dcision qui peuvent tre rsolu laide dun algorithme qui requiert une place mmoire de tailleO(p(n)) pour chaque instance de taille n. LogSPACE est lensemble des problmes de dcision qui peuvent tre rsolu laide dun algorithme qui
requiert une place mmoire de tailleO(log n) pour chaque instance de taille n. Pour que cette dfinition ait du sens, on suppose que la donne est accessible en lecture seulement, et lalgorithme nutilisera que O(log n) bits supplmentaires pour stocker dautres informations. On sait aussi que LogSPACE P NP PSPACE. Et donc au moins lune de ces inclusions est stricte. En ce qui concerne co-NP , personne ne sait si NP co-NP. Par contre, il a t dmontr que ( NP complet co-NP ) ( NP = co-NP ). La plupart des problmes connus comme appartenant la fois NP et co-NP sont aussi dans P. Parmi les problmes qui sont dans NP co-NP et quon a longtemps souponn ne pas tre dans P, citons le problme suivant : Soit n un entier : n est-il un nombre premier ? Il est facile de donner un certificat vrifiable en tempsO(p(log n)) que n nest pas premier. Il est moins facile, mais possible galement, de donner un certificat vrifiable en tempsO(p(log n)) que n est premier. Cependant, ce nest quen aot 2002 que Manindra Agrawal, Neeraj Kayal et Nitin Saxena, de lIndian Institute of Technology, ont russi dmontrer que ce problme est dans P. La situation la plus probable est la suivante : On sait que LogSPACE PSPACE.

Anda mungkin juga menyukai