Le problème de l'examinateur (génération uniforme d'instances / réponses de décision SAT)

11

L'assistant d'enseignement d'un cours a réussi à écrire un programme qui (de manière déterministe) génère des questions d'examen difficiles. Maintenant, elle aimerait écrire un programme qui génère les réponses correspondantes. Le problème de l'examinateur demande si cela est toujours possible; la conjecture de l' examinateur indique que, en supposant que , ce n'est pas le cas : trouver des problèmes est plus facile que de trouver leurs solutions.PNP

Plus formellement, soit une machine de Turing déterministe qui, en entrée 1 n , génère en temps polynomial une formule booléenne de taille n . Je voudrais savoir si, pour tous ces M , il existe une machine de Turing à temps polynomial déterministe M ' qui, sur l'entrée 1 n , sort " 1 " si M ( 1 n ) a une affectation satisfaisante et " 0 " sinon .M1nnMM1n1M(1n)0

En supposant , cette question a-t-elle déjà été posée ou répondue? En l'absence de réponse, quelles sortes d'hypothèses supplémentaires ( par exemple , les fonctions unidirectionnelles?) Pourraient avoir une incidence sur le résultat? À l'exception de tout ce qui précède, ma "conjecture" est que la "réponse" TM n'existe pas toujours, mais quelle est votre intuition?PNP

Merci!

usul
la source
Permettez-moi de m'assurer que les quantificateurs sont corrects. Demandez-vous si "pour tout , il existe un M ' , tel que M ' puisse résoudre efficacement la sortie de M " est vrai? MMMM
Tyson Williams
@TysonWilliams: Oui, j'ai légèrement modifié le libellé pour essayer de le clarifier. Votre déclaration devrait être, je pense, équivalente à la mienne!
usul
1
Comme Emanuele le fait remarquer, ce n'est probablement pas ce que vous recherchez vraiment, vous voulez probablement générer des paires instance-solution où la résolution de l'instance est "difficile". Peut-être en rapport avec ce que vous recherchez: 1. La réponse de David ici et 2. la section 6 de Stephen A. Cook et David G. Mitchell, « Finding Hard Instances of the Satisfiability Problem: A Survey », 1997
Kaveh

Réponses:

12

La question que vous posez est équivalente à NP unaire = P unaire, qui à son tour est équivalent à NE = E, par remplissage.

À partir du titre, vous vouliez peut-être demander s'il était possible de générer des paires d'entrée / sortie de telle sorte que la distribution sur les entrées soit "difficile". La possibilité de le faire se situe quelque part entre P NP et il existe des fonctions unidirectionnelles.

Dans les modèles de calcul restreints, on sait que cela est possible. Par exemple, on peut générer des paires d'entrée / sortie pour les fonctions de parité ou de majorité en AC 0 ou en dessous. Voir La complexité des distributions .0

Manu
la source
1
Pouvez-vous expliquer pourquoi il est équivalent? ... Par "uniforme", je veux dire "modèle de calcul uniforme" - si nous posions la question des circuits, la réponse serait trivialement oui : chaque coderait en dur soit un un soit un zéro, selon que M n est satisfaisable ou non. MnMn
usul
4
Chaque donne un langage de pointage en NP: L M = { 1 n : M ( 1 n )  est satisfiable. } . Donc , si unaire-NP est égal à unaire-P, alors M ' est la machine qui décide L M . Dans l'autre sens, prenez n'importe quel langage de pointage dans NP et prenez M pour être la machine qui le réduit à SAT. Si M ' existe, alors le langage de pointage est également en P, donc unaire P = NP unaire. Pour la deuxième équivalence, vous pouvez vérifier Hartmanis et al. (mais une direction est très facile) dl.acm.org/citation.cfm?id=808769MLM={1n:M(1n) est satisfaisable.}MLMMM
Sasho Nikolov
4

Question: Soit générer des formules. Est-ce que { M ( 1 n ) | n NM ( 1 n ) S A T } appartiennent à P ?MPF{M(1n)nNM(1n)SUNET}P

succjenctSUNETE Oui:

L'hypothèse concernant la génération des formules en temps polynomial à partir de signifie que la formule peut être donnée succinctement . Vous voulez décider de leur satisfiabilité dans le temps n O ( 1 ) .1nnO(1)

Étant donné nous pouvons trouver un n en temps polynomial dans | φ | . Alors φ peut être énoncé succinctement en lg n + O ( 1 ) bits en utilisant M et n . Nous pouvons utiliser notre algorithme s u c c i n t S A T dans E pour décider ceci dans le temps 2 O ( lg n ) = n Oφ=M(1n)n|φ|φlgn+O(1)MnsuccjentSUNETE .2O(lgn)=nO(1)

Oui :succjenctSUNETE

Soit st donné un circuit C en unaire , M calcule la chaîne codée de façon succincte par C , et renvoie le résultat si elle est une formule et autrement.MPFCMC

Supposons que appartiennent à P . Pour résoudre S u c c i n c t S A T, nous écrivons la formule succincte donnée en unaire, puis utilisons notre hypothèse pour la résoudre.{M(1n)nNM(1n)SUNET}PsuccjenctSUNET

Question: Peut-on générer des paires instance-solution en temps polynomial pour telle sorte que l'instance soit difficile?SUNET

Nous devons clarifier ce que nous entendons par l'instance étant difficile car toute instance en elle-même est (théoriquement) facile car elle peut être résolue soit par l'algorithme qui dit toujours oui, soit par l'algorithme qui dit toujours non. Il me semble que vous avez tenté de contourner ce problème en imposant l'uniformité. Penser en termes cryptographiques, sans certaines informations qui ne sont pas révélées à l'adversaire, il est inutile de cacher le reste du calcul car l'adversaire peut simuler le protocole.

Supposons que nous avons un algorithme à temps polynomial qui génère des paires instance-solution. L'adversaire peut utiliser le même algorithme pour trouver la réponse s'il connaît et trouver n n'est pas difficile à partir de la formule. Le moyen le plus raisonnable consiste à utiliser une clé secrète choisie au hasard pour contourner ce problème et assouplir la condition de dureté pour être probabiliste: aucun algorithme polynomial ne peut trouver une solution à forte probabilité (sans connaître la clé secrète).nn

Est - il efficace (déterministe) algorithme tel que donné une choisie aléatoirement k { 0 , 1 } n , génère une paire d'une instance SAT de k et la réponse w k de telle sorte que pas d' algorithme d'adversaire efficace (non uniforme probabiliste /) D peut résoudre correctement les instances SAT générées par A avec une probabilité non négligeable?UNE
k{0,1}n
φkwk

UNE

Ou plus formellement,

Y a-t-il tel que pour tout D P / p o l y , tel que S A T ( A ( k )UNEPFP/poly pour tout k et P r k { 0 , 1 } n { D ( A ( k ) 1 ) = S A TSUNET(UNE(k)1)=UNE(k)2k

Prk{0,1}n{(UNE(k)1)=SUNET(UNE(K)1)}<1poly(n)

Il est facile de voir qu'une telle fonction peut être transformée en fonction unidirectionnelle comme s'il était facile de trouver partir de φ k, alors nous pouvons trouver la réponse en calculant A ( k ) 2 .kφkUNE(k)2

D'un autre côté, soit une fonction unidirectionnelle. Nous pouvons exprimer fF comme un circuit de taille polynomiale puisque f est calculable en temps polynomial (et nous pouvons le transformer en une formule en introduisant de nouvelles variables pour toutes les portes et en appliquant localement la condition pour l'exactitude du calcul comme dans la traduction de Tsien). Considérons y comme paramètre et notons la formule résultante comme φ f , y ( x ) . On peut demander s'il y a un x qui satisfait φ f , y ( x )F(X)=yFyφF,y(X)XφF,y(X). Tout algorithme à temps polynomial résolvant ces instances avec une probabilité non négligeable rompra la fonction unidirectionnelle f . Cependant, cela utilise le fait que l'adversaire doit trouver un témoin non seulement le fait que la formule est satisfaisante ou non (mais je pense que nous pouvons contourner ce problème en utilisant le bit dur de f ).SUNETFF

Voir aussi les chapitres 29 et 30 du livre de Jan Krajicek "Forcing with Random Variables", 2011 sur les générateurs de complexité de preuve .

Kaveh
la source
M