Le cas particulier
Supposons que nous voulons montrer par rapport à une certaine notion de réduction R . Si L 1 est un cas particulier de L 2 , c'est assez trivial: on peut essentiellement utiliser la fonction identité. L'intuition derrière cela est claire: le cas général est au moins aussi difficile que le cas spécial.L1≤RL2RL1L2
En "pratique", on nous donne et nous nous retrouvons avec le problème de choisir un bon partenaire de réduction L 1 , c’est-à-dire de trouver un cas particulier de L 2 qui s’est avéré R -hard.L2L1L2R
Exemple simple
Supposons que nous voulions montrer que KNAPSACK est NP-difficile. Heureusement, nous savons que SUBSET-SUM est NP-complet, et il s’agit bien d’un cas particulier de KNAPSACK. La réduction
F( A , k ) = ( A , ( 1 , … , 1 ) , k , | A | )
suffit; est l'instance KNAPSACK qui demande si nous pouvons obtenir au moins la valeur v avec des valeurs d'élément dans V de sorte que les poids correspondants provenant de W restent au-dessous de w au total. Nous n’avons pas besoin des restrictions de poids pour simuler SUBSET-SUM, nous les définissons simplement à des valeurs tautologiques.( V, W, v , w )vVWw
Problème d'exercice simple
Considérons le problème de MAX-3SAT: étant donné une formule propositionnelle et un entier k , déterminez s’il existe une interprétation de φ qui remplit au moins k clauses. Montrer que c'est NP-difficile.φkφk
3SAT est un cas particulier; avec m, le nombre de clauses de φ suffit.F( Φ ) = ( φ , m )mφ
Exemple
Supposons que nous étudions le problème de SUBSET-SUM et que nous voulions montrer qu'il est NP-difficile.
Nous avons de la chance et savons que le problème de PARTITION est NP-complet. Nous confirmons qu’il s’agit bien d’un cas particulier de SUBSET-SUM et formulons
F( A ) = { ( A , 12Σa ∈ Aa )(A,1+∑a∈A|a|),∑a∈Aamod2=0,else
où est l'ensemble d'entrée de PARTITION et est une instance de SUBSET-SUM qui demande après un sous-ensemble de sommant à . Ici, nous devons nous occuper du cas où il n’y a pas de approprié ; dans ce cas, nous donnons un exemple infaisable et arbitraire.( A , k ) A k kA(A,k)Akk
Problème d'exercice
Considérez le problème LONGEST-PATH: à partir d’un graphe orienté , des nœuds de et d’un entier , déterminez s’il existe un chemin simple allant de à dans de longueur au moins .s , t G k s t G kGs,tGkstGk
Montrer que LONGEST-PATH est NP-hard.
HAMILTON-CYCLE est un problème NP-complet bien connu et un cas particulier de LONGEST-PATH; pour le nœud arbitraire dans suffit.
Notez en particulier que la réduction de HAMILTON-PATH nécessite plus de travail.v Gf(G)=(G,v,v,n)vG