Cette réponse supplémentaire est conçue comme une rétroaction au commentaire de dividebyzero sur ma réponse précédente.
Comme le dit dividebyzero, il est certainement vrai que CNF et DNF sont les deux faces d'une même médaille.
Lorsque vous devez trouver une affectation satisfaisante, DNF est explicite car il vous montre manifestement ses affectations satisfaisantes (la satisfaction DNF appartient à ), tandis que CNF est implicite car il s'enroule et se déroule pour cacher ses affectations satisfaisantes à vos yeux (la satisfaction CNF est N P - c o m p l e t e ). Nous ne connaissons aucune procédure capable de déballer et de dérouler une formule CNF en une formule DNF non satisfaisante qui n'est pas de taille exponentielle. C'était le point de ma réponse précédente (dont l'exemple était destiné à montrer l'explosion exponentielle, bien qu'il soit vrai que cet exemple n'était pas le meilleur choix possible).PN P - c o m p l e t e
Inversement, lorsque vous devez trouver une mission de falsification, CNF est explicite car il vous montre manifestement ses missions de falsification (CNF Falsifiability appartient à ), tandis que DNF est implicite car il s'enroule et s'enroule pour cacher ses missions de falsification de vos yeux (DNF Falsifiability est N P - c o m p l e t e ). Nous ne connaissons aucune procédure capable de déballer et de dérouler une formule DNF en une formule CNF équivalente qui n'est pas de taille exponentielle.PN P - c o m p l e t e
À une extrémité, nous avons des contradictions, c'est-à-dire des formules insatisfaisantes. À l'extrémité opposée, nous avons des tautologies, c'est-à-dire des formules infalsifiables. Au milieu, nous avons des formules à la fois satisfaisables et falsifiables.
nk2n - k
nk2n - k
k = 02nN P - c o m p l e t e
k = 02nN P - c o m p l e t e
2n
2n
Sous cet éclairage, il devient plus clair pourquoi la satisfaction CNF et la falsifiabilité DNF sont équivalentes en termes de dureté de calcul. Parce qu'ils sont en fait le même problème, car la tâche sous-jacente est exactement la même: dire si l'union de plusieurs ensembles est égale à l'espace de toutes les possibilités . Une telle tâche nous amène au domaine plus large du comptage, qui est à mon humble avis l'une de ces voies à explorer avec ferveur afin d'espérer faire des progrès non négligeables sur ces problèmes (je doute que de nouvelles recherches sur les résolveurs basés sur la résolution pourrait éventuellement apporter des avancées théoriques révolutionnaires, tout en continuant certainement à apporter des avancées pratiques surprenantes).
La difficulté d'une telle tâche est que ces ensembles se chevauchent énormément, d'une manière d'inclusion-exclusion.
La présence d'un tel chevauchement est précisément là où réside la dureté du comptage. De plus, le fait de laisser ces ensembles se chevaucher est la raison même qui nous permet d'avoir des formules compactes dont l'espace de solution est néanmoins exponentiellement grand.