Dureté et sens des réductions

9

Disons que nous savons que le problème A est difficile, puis nous réduisons A au problème inconnu B pour prouver que B est également difficile.

Par exemple: nous savons que la coloration 3 est difficile. Ensuite, nous réduisons la coloration 3 à la coloration 4. En combinant l'une des couleurs de la coloration 3, vous obtenez une coloration 4, l'ergo 4 est difficile.

Voilà comment. Mais pourquoi est-ce une preuve que la coloration 4 est difficile? Est-ce que vous pouvez utiliser la solution au problème des 4 couleurs pour résoudre le problème des 3 couleurs? Si c'est le cas, comment? Sinon, pourquoi est-ce une preuve valable?

Bonus q: Les réductions polynomiales doivent-elles pouvoir aller dans les deux sens?

Edit: si vous pouviez expliquer pourquoi il en est ainsi par un exemple, vous rendriez service à Internet. Je n'ai pu trouver cela expliqué de façon concrète nulle part.

Le chat unfun
la source
Si vous faites face à deux problèmes NP-complets, alors oui, il doit y avoir des réductions polynomiales qui vont dans les deux sens. Dans de nombreux cas, les réductions de A à B et de B à A peuvent être très différentes les unes des autres.
Joe
Si les problèmes ne sont pas les deux dans la même classe de complexité, il peut ne pas y avoir de réduction dans les deux sens.
Joe

Réponses:

7

Une réduction d'un problème à un autre problème est une transformation de toute instance de en une instance de , telle queB f a A f ( a ) BUNEBFuneUNEF(une)B

xA    f(x)B(E)

Si est une transformation préservant la complexité qui vous intéresse (par exemple est une transformation polynomiale si vous considérez la dureté ) alors l'existence d'un algorithme résolvant implique l'existence d'un algorithme résolvant : il suffit d'exécuter , puis .f N P A B B A f A BffNPABBAfUNEB

D' où l'existence de la réduction d'un tel de à signifie que n'est pas plus facile que . Il n'est pas nécessaire d'avoir une réduction dans l'autre sens.B B AUNEBBUNE

Par exemple, pour la coloration d'un graphique. Vous pouvez réduire la coloration de 3 à 4, mais pas de manière immédiate. Si vous prenez un graphique et que vous choisissez vous aurez alors mais vous n'avez pas bien sûr. La conclusion est que l'équivalence n'est pas respectée, donc n'est pas une réduction.f ( G ) = G x 3 C O Lf ( x ) 4 C O L f ( x ) 4 C O Lx 3 C O L ( E ) fgF(g)=gX3COL F(X)4COLF(X)4COL X3COL(E)F

Vous pouvez construire une réduction correcte de à mais c'est un peu plus compliqué: pour tout graphe , soit le graphe étendu avec un autre noeud qui est lié avec un bord à tous les autres nœuds.3 C O L 4 C O L G f ( G ) G uF3COL4COLgf(G)Gu

  • La transformation préserve la complexité (polynôme, ici);
  • si est dans alors est dans : utilisez simplement la quatrième couleur pour ;3 C O L f ( G ) 4 C O L uG3COLf(G)4COLu
  • si est dans alors vous pouvez prouver que tous les nœuds sauf ont une couleur qui n'est pas celle de , donc est dans .4 C O L u u G 3 C O Lf(G)4COLuuG3COL

Cela prouve que est une réduction et que est plus difficile que . Vous pouvez prouver de la même manière que est plus dur que pour tout , la preuve intéressante étant que est plus dur que tout .4 C O L 3 C O L n C O L m C O L n m 3 C O L n C O Lf4COL3COLnCOLmCOLnm3COLnCOL

jmad
la source
Pourquoi une telle réduction signifie-t-elle que B n'est pas plus facile que A? UV pour l'effort, mais trop abstrait pour mon cerveau chétif.
The Unfun Cat
Est-ce que la réponse sera la même pour B que pour A après avoir réduit A à B? Je pense que je l'ai: si l'instance d'origine a trois couleurs, alors l'instance transformée aura quatre couleurs donc si la réponse est "oui, elle a quatre couleurs", la réponse est également "oui, elle a un trois coloriage "? Mais n'est-il pas encore possible que l'instance transformée B ait une quadri-coloration sans que A ait une tri-coloration? J'imagine qu'il est plus facile de colorier un graphique avec quatre couleurs ...
The Unfun Cat
@TheUnfunCat (mis à jour avec un exemple de coloration 3 et 4)
jmad