Rappel

Algo non-déterministe :

  • Certificat de taille poly
  • Vérification en temps poly Exemple : MIS, CliqueMax, etc…

Transformation poly ()

Soient f est calculable en temps poly Propriétés :

  1. on suppose on a
  2. et

Exemple :

Difficulté des problèmes

Sous classe de NP des problèmes les plus difficiles

Définition : Soit un problème de décision. est dit NP-difficile (NP-hard) si Cette definition n’est pas appliquable car il faut tous les pb de NP connus ou non.

Exemple d’un problème NP-hard qui n’est pas dans NP : Arrêt d’une machine de Turing (indécidable)

Définition : est dit NP-complet si est NP-difficile et

Indication : On suppose que

  • NP-complet
  • Que peut-on dire que ?

Théorème : Si NP-complet et , alors est un problème NP-hard.

Preuve : À prouver : Soit On a aussi Par transitivité

Pour démontrer qu’un problème est NP-difficile, il suffit de choisir le problème NP-complet et faire la réduction de .

Théorème : Cook 1972 SAT est NP-complet

3-SAT et SAT sont dans NP Preuve :

  • Certificat :
  • Verification : Si alors retourner oui

Théorème : 3-SAT est NP-complet Preuve :

  • le 3-SAT NP soit C une instance de SAT
  1. on ajoute 2 variables et et on remplace C par Supposons que C est satisfiable les 4 clauses sont satisfiable. Supposons que les 4 clauses sont satisfiable
00
01
10
11
  1. On rajoute une variable et on remplace C par
0
1
  1. Rien à faire

  2. Preuve à faire

Théorème : 2-SAT P On suppose que toutes les clauses ont exactement 2 littéraux Preuve :

Théorème : MIS NP-complet Preuve :

  • MIS NP
  • 3-SAT MIS Exemple

est satisfiable ssi G a un stable de taille m.