Pourquoi le théorème de Schaefer ne prouve-t-il pas que P = NP?


12

C'est probablement une question stupide, mais je ne comprends tout simplement pas. Dans une autre question, ils ont proposé le théorème de dichotomie de Schaefer . Pour moi, il semble que cela prouve que chaque problème CSP est soit en P soit en NP-complet, mais pas entre les deux. Étant donné que chaque problème NP peut être transformé en temps polynomial en CSP (car CSP est NP-complet), pourquoi cela ne prouve-t-il pas qu'il n'y a pas d'espace entre P et NP-Complete et que P = NP?

Par exemple, mes pensées vont comme si la factorisation entière peut être réécrite comme un problème de satisfiabilité, donc en utilisant le théorème de Schaefer, il devrait être soit en P soit en NP-complet mais pas entre les deux (même si nous ne pouvons pas trouver lequel c'est).

Une manière différente de voir la question dans son ensemble: pourquoi ne pouvons-nous pas utiliser le théorème de Schaefer pour décider si la factorisation entière est en P ou en NP-complet?


EDIT: en réponse à la réponse de David Richerby (c'est trop long pour un commentaire):

Intéressant, mais je ne comprends pas encore complètement. Lors de la définition de l'ensemble des relations gamma en utilisant le théorème de Schaefer, nous pouvons lui imposer des restrictions. Par exemple, nous pouvons restreindre le gamma à utiliser uniquement des relations d'arité 2 (alors le problème est en P). Quel genre de restrictions pouvons-nous imposer au gamma?

Pourquoi ne pouvons-nous pas imposer de telles restrictions que toutes les instances de CSP (gamma) sont exactement les mêmes que (isomorphes à?) L? Par exemple, lors de la transposition de la factorisation entière pour des nombres inégaux, l'un des deux diviseurs est binaire représenté par xn .. x3 x2 1. Maintenant, je veux que ce nombre soit supérieur à 1. Donc, j'ai la relation (xn ou .. ou x3 ou x2). Je dis donc que le gamma peut avoir une ou-relation d'arité n-1. Mais je ne veux pas que cette relation or soit utilisée pour inclure d'autres instances que L dans le langage, donc j'impose en outre que x2..xn dans la relation or ne soit pas autorisé à avoir une négation. Bien sûr, je dois également imposer la restriction selon laquelle seules des variables spécifiques y sont utilisées.

N'est-il pas possible de cette façon de laisser le CSP (gamma) isomorphe à la factorisation entière? La question principale est: quel genre de restrictions pouvons-nous imposer au gamma?

EDIT 2: en réponse à la réponse de Yuval Filmus.

Je comprends votre réponse et elle semble correcte, bien qu'elle soit à peu près la même que la réponse de David. Par exemple, nous pouvons réduire la factorisation à 3 sat, puis conclure que la factorisation est NP terminée, ce qui est faux car 3 sat a d'autres instances qui ne sont probablement pas de factorisation.

La partie que je ne comprends pas, c'est quand une instance est (non) arbitraire. Par exemple, 2-SAT me semble également non arbitraire, car seules les clauses d'arité 2 sont autorisées (bien que je dois admettre que la preuve est toujours valable car il s'agit d'une limite supérieure et dans ce cas, la limite supérieure est P).

Un meilleur exemple est peut-être un NP-exhaustivité: la question liée ci-dessus. Un répondeur donne une preuve complète de Schaefer. Mais j'impose des restrictions non triviales à l'entrée (les clauses 2-SAT sont autorisées et les clauses xor, mais rien d'autre). Bien sûr, la preuve tient toujours parce que les problèmes CSP considérés dans la preuve sont exactement les mêmes que ceux d'origine.

La partie que je ne comprends pas, c'est pourquoi nous ne pouvons pas faire de même pour la factorisation? Bien sûr, il ne sert à rien de le réduire à 3-SAT, mais permettez-moi de donner l'instance CSP qui factorise un nombre et ne factorise qu'un nombre (de 4 bits). (passez à FIN DE SAUT si vous pensez que cela est possible).

Instance de factorisation.

CONTRIBUTION:

(N =) (les 4 bits du nombre à factoriser) (M =) (les 4 bits de la valeur minimale du premier diviseur) n4n3n2n1
m4m3m2m1

Maintenant, transformons cela en une instance CSP

ENTRÉE:
domaines unaires pour et pour (représentant que N et M sont donnés)n5..n1m5..m1

variables avec domaine {0,1}:
(D =) (le premier diviseur) (E =) (le deuxième diviseur)d4d3d2d1
e4e3e2e1

rapports:

e4e3e2 (représentant E> 1)

(d4¬m4)(d4=m4d3¬m3)(d4=m4d3=m3d2¬m2)(d4=m4d3=m3d2=m2d1¬m1)
(représentant D> M)

( d 1e 2 ) ( d 2e 1 ) = n 2 n 3 =d1e1=n1 (représentant la multiplication de bits la moins significative) (représentant la prochaine multiplication de bits)
(d1e2)(d2e1)=n2
n3=...;n4=...

FIN DE SAUT

Le nœud est que, lors de l'application du théorème de Schaefer, nous ne devons considérer que ces CSP . (Tout comme pour le 2-SAT, nous ne considérons que les CSP avec l'arité 2). En faisant cela, l'un des six polymorphismes tient, ou il ne le fait pas (sauf quelques bizarreries dans la théorie des ensembles). Dans les deux cas, la factorisation n'est pas intermédiaire NP.

Cela peut également être fait pour 3-SAT. Ensuite, nous ne devrions considérer (en utilisant la réduction) que les instances 3-SAT qui représentent des instances de factorisation (qui ne sont plus 3-SAT).

Où est-ce que je me trompe?


1
Je vous suggère fortement de lire une formulation exacte du théorème de dichotomie de Schaefer. Il n'est pas vrai que vous "puissiez imposer des restrictions à [l'ensemble des relations]". Le théorème de dichotomie de Schaefer ne couvre pas ce cas. Wikipédia peut parfois être inexact et déroutant, je vous suggère donc de trouver des notes de cours à la place, ou peut-être même de consulter un article pertinent.
Yuval Filmus

Je n'ai pas remarqué votre commentaire avant de modifier ma réponse. Il n'est peut-être pas permis d'imposer des restrictions sur l'ensemble des relations, mais il me semble que vous ne devriez tout simplement pas considérer les relations qui ne correspondent pas à la restriction lors de l'application du théorème de Schaefer. Tout comme avec 2-SAT, vous ne considérez pas les relations qui ne correspondent pas à la "restriction" que chaque clause doit avoir 2 littéraux.
Albert Hendriks

2
Il existe une notion très formelle de "restriction" qui est utilisée dans le théorème de Schaefer. La restriction "instance SAT qui représente la factorisation" n'est pas le type de restriction que le théorème de Schaefer peut gérer. Pour chaque tel que la factorisation entière peut être représentée comme une instance de , vous constaterez que est tel que la résolution de est NP-complete. Ainsi, le théorème de Schaefer ne nous dit absolument rien sur la dureté de la factorisation (autre que ce que nous savons déjà - qu'elle est en NP). ΓCSP(Γ)ΓCSP(Γ)
Yuval Filmus

3
Le fait que dans le commentaire ci-dessus soit NP-complet ne signifie pas que la factorisation elle-même est NP-complète, car les instances de factorisation ont une structure spéciale, un type de structure qui ne peut pas être capturé par Schaefer. théorème. CSP(Γ)
Yuval Filmus

1
btw quelqu'un connaît-il un bon manuel ou un traitement moderne de la dichotomie Schaeffer thm?
vzn

Réponses:


10

Lorsque vous traduisez un problème  NP arbitraire en CSP, vous vous retrouvez avec un ensemble d'instances avec un langage de contrainte (ensemble de relations)  . Ce que le théorème de Schaeffer dit, c'est que décider de toutes les instances de CSP ( ) est soit en P, soit NP- complet. Mais, si vous avez seulement besoin de décider d'un ensemble restreint d'instances (par exemple, les instances que vous obtenez en traduisant le problème  ), cela pourrait être plus facile. En particulier, si  est NP- intermédiaire, alors la résolution des instances correspondantes de CSP ( ) serait également NPΓ Γ L L Γ L ΓLΓΓLLΓ-intermédiaire - vous pouvez simplement traduire les instances en instances de  et les résoudre là-bas. Mais résoudre la classe de toutes les instances CSP ( ) serait NP- complet.LΓ


Intéressant. J'ai modifié ma question en réponse à votre réponse.
Albert Hendriks

Ce ne sont pas les restrictions sur mais les restrictions sur l'entrée au CSP qui sont importantes, ici. Dire "Il est difficile de résoudre tous les CSP ( )" n'est pas la même chose que "Il est difficile de résoudre les instances de CSP ( ) que vous obtenez en transformant, par exemple, les instances de factorisation entière". Γ ΓΓΓΓ
David Richerby

Je peux me tromper, mais je dirais que l'entrée du problème de factorisation d'entier est la même que l'entrée de CSP (gamma): deux nombres binaires quelconques (le nombre à factoriser et la valeur minimale de l'un des diviseurs) . Droite? Je comprends la partie que si vous ne faites pas la transformation avec soin, vous vous retrouvez avec un autre problème.
Albert Hendriks

L'entrée de la factorisation entière est une paire d'entiers, comme vous le dites. L'entrée de CSP ( ) est un ensemble de variables qui s'étendent sur un certain domaine et un ensemble de contraintes sur ces variables. La situation est similaire, par exemple, à la réduction de la 3-coloration à 3-SAT. L'entrée de la colorabilité 3 est un graphique; l'entrée à 3-SAT est une formule booléenne. ΓΓΓ
David Richerby

12

Le théorème de Schaefer couvre une situation très spécifique: on vous donne un ensemble fini de relations, et vous vous intéressez à la complexité de . Le théorème de Schaefer vous donne un algorithme pour décider si ce problème est NP-complet ou en P. Il ne couvre aucune autre situation.C S P ( Γ )ΓCSP(Γ)

Lorsque vous traduisez un problème comme la factorisation entière en CSP, vous utiliserez un ensemble de relations telles que est NP-complet (ceci, étant donné la croyance commune que la factorisation entière n'est pas dans P ). Mais vos instances ne sont pas arbitraires, donc le théorème de Schaefer ne donne qu'une limite supérieure sur la complexité. Il se pourrait bien que la factorisation entière ne soit en fait pas NP-complète.C S P ( Γ )ΓCSP(Γ)


Merci pour votre réponse. J'ai édité ma question (EDIT 2) en réponse à votre réponse.
Albert Hendriks
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.