Question

Je sais et admets que c'est long, mais veuillez le lire lentement et tout comprendre.

Je pense que c'est l'une des questions les plus intéressantes posées en informatique de tous les temps.

je le faisNT Attendez-vous à des réponses rapides. Prenez votre temps pour lire lentement et pour tout comprendre. Je peux attendre. je le faisNT se ruer.

Dans 1SAT, la machine Turing doit déterminer si une formule 1CNF est satisfaite ou non, où la formule 1CNF est une conjonction de clauses, où chaque clause est uniquement littérale, ce qui est soit une variable positive ou négative.

Ce problème est connu pour être dans $ bbb {p} $, la classe de tous les problèmes résolubles en temps polynomial, mais c'est ne pas Problème NP-Complete du tout.

Dans 2SAT, la machine Turing doit déterminer si une formule 2CNF est satisfaite ou non, où la formule 2CNF est une conjonction de clauses, où chaque clause est disjonction de 2 littéraux au maximum, où chaque littéral est soit positif ou négatif.

Il est intéressant de noter que si vous éteignez chaque disjonction en conjonction dans la formule 2CNF donnée, vous obtenez la formule 1CNF et le problème devient 1SAT, qui est déjà connu pour être dans $ bbb {p} $ et si cette formule est satisfaite, alors La formule 2CNF d'origine est également satisfaisante, mais si la formule 1CNF donnée n'est pas satisfaisable, c'est ne pas signifie nécessairement que la formule 2CNF d'origine n'est pas non plus satisfaisante.

Parce que le fait que dans la formule 2CNF d'origine, vous avez une disjonction entre chaque paire de littéraux, au lieu de la conjonction, vous pouvez permettre à l'un des littéraux d'être faux dans l'entrée, mais pas les deux. Donc, si c'est ne pas possible de définir les deux littéraux sur true dans la même clause, de sorte que la formule 2CNF évalue à TRUE, alors l'algorithme ou la machine Turing doit décider laquelle d'entre elles devrait être fausse, de sorte que la formule 2CNF évalue TRUE.

En effet, il s'agit d'un problème de décision, mais il est connu pour être également dans $ bbb {p} $, car il est possible de créer des implications graphiques et de trouver un cercle de contradiction pour prouver que la formule 2CNF n'est pas satisfaisante. Si aucun cercle de contradiction n'est trouvé, la formule 2CNF est satisfaisante.

Ainsi, même si de 1SAT à 2SAT, le problème devient un problème de décision (que littéralement dans chaque clause doit être réglé sur False), la machine Turing peut toujours le résoudre de manière déterministe en temps polynomial, mais malheureusement 2SAT estNT NP-complete aussi.

Dans 4SAT, la machine Turing doit déterminer si une formule 4CNF est satisfaite ou non, où la formule 4CNF est une conjonction de clauses, où chaque clause est disjonction de 4 littéraux au maximum, où chaque littéral est soit positif ou négatif.

Il est intéressant de noter que si vous éteignez chaque disjonction en conjonction dans la formule 4CNF donnée, vous obtenez la formule 1CNF et le problème devient 1SAT, qui est déjà connu pour être dans $ bbb {p} $, et si la formule 1CNF donnée est donnée est Satisfait, alors la formule 4CNF d'origine est également satisfaisable, mais si la formule 1CNF n'est pas satisfaisante, elle le faitNT signifie nécessairement que la formule 4CNF n'est pas non plus satisfaisante.

Donc, dans ce cas

(L1 ∨ l2 ∨ l3 ∨ l4) est une clause arbitraire de la formule arbitraire 4CNF, alors la signification de la diffusion de la disjonction moyenne en conjonction est de transformer cette clause arbitraire à (l1 ∨ l2) ∧ (L3 ∨ l4).

Si vous faites cela, vous obtenez une formule 2CNF et le problème devient 2SAT, qui est également connu pour être dans $ bbb {p} $, et si cette formule 2CNF est satisfaisante, la formule 4CNF d'origine est également satisfaisante, mais si La formule 2CNF est ONUsatisfait alors il faitNT signifie nécessairement que la formule 4CNF d'origine est ONUSatisfait aussi, car dans la formule 4CNF d'origine, il y a une disjonction entre les deux paires de littéraux, mais pas la conjonction, donc la machine Turing faitNT doivent trouver une entrée, donc les deux paires de littéraux évaluent à vrai, mais il suffit de si l'une d'entre elles évalue à vrai et l'autre évalue à False.

Comme vous pouvez le voir 4SAT est le problème de décision comme 2SAT, quelle paire de littéraux devrait évaluer à False dans chaque clause et qui ne devrait pas, c'est-à-dire que cela devrait évaluer à vrai.

Cette question est similaire Au précédent, lorsque la machine Turing doit résoudre le 2SAT et qu'elle doit déterminer quel littéral doit être faux dans chaque clause, au lieu de la paire, mais la machine Turing peut résoudre le 2SAT de manière déterministe en temps polynomial en construisant des implications graphiques et en essayant de trouver la contradiction cercle, il ne faut donc pas déterminer quel littéral doit être faux dans chaque clause.

Même chose ici avec 4SAT, je ne pense pas que la machine Turing doit décider quelle paire de littéraux devrait évaluer à False dans chaque clause.

Je crois qu'il existe une méthode que la machine Turing peut faire de manière déterministe pour résoudre le 4SAT en temps polynomial, peut-être similaire à la méthode pour résoudre le 2SAT en temps polynomial.

Je ne pense pas que le 4SAT soit un problème si difficile.

Lorsque vous vous trouvez la disjonction moyenne en conjonction dans chaque clause, vous obtenez la formule 2CNF et la machine Turing peut déterminer - construire le graphique d'implications pour cela en temps polynomial.

Si la machine Turing ne trouve pas le cercle de contradiction, la formule 4CNF d'origine est satisfaisante.

Mais si la machine Turing a trouvé le cercle de contradiction, la machine Turing devra modifier le graphique, il n'y a donc pas de cercle de contradiction dans le graphique.

S'il existe un moyen de faire cette modification, il n'y a donc pas de cercle de contradiction dans le graphique, alors la formule 4CNF est satisfaisante, même si la formule 2CNF donnée n'est pas.

Mais si la machine Turing prouve qui n'existe pas de telle modification au graphique des implications, de sorte que chaque cercle de contradiction peut être résolu, alors la formule 4CNF d'origine n'est pas satisfaisante.

Dans chaque clause 4CNF, décider quelle paire de littéraux devrait être vraie et laquelle devrait être fausse est de décider quel bord devrait être dans le graphique des implications et quel bord ne devrait pas être dans le graphique d'implication.

Si la machine Turing suppose que toutes les paires peuvent être vraies, alors tous les bords sont dans le graphique, mais s'il trouve le cercle de contradiction, alors décider dans chaque clause quelle paire de littéraux doit être fausse, c'est décider de quel bord doit être retiré de Le graphique des implications, il n'y a donc pas de contradiction.

Intéressant que passer de 1SAT à 2SAT, le problème devient un problème de décision, mais 1SAT et 2SAT sontNT NP-complete, même si les deux peuvent être résolus en temps polynomial.

Lors du passage de 2SAT à 4SAT, le problème redevient un problème de décision, mais le 4SAT est NP-complete, contrairement à 2SAT, car le problème de satisfaction booléen, qui a été le premier problème à être prouvé NP-Complete dans le papier de Cook et Karp, peut être réduit en 4SAT en temps polynomial.

Ma question intéressante est que la machine Turing résout le 4SAT déterministe - en temps polynomial que dans le 2SAT?

Je ne pense pas que la machine Turing doit vraiment décider dans chaque clause quel bord doit être supprimé du graphique des implications car dans 2SAT, la machine Turing n'a pas à décider quel littéral doit être faux dans chaque clause.

Je pense qu'il devrait y avoir une méthode beaucoup efficace que la machine Turing peut utiliser pour résoudre un allié déterministe 4SAT en temps polynomial comme il le fait dans 2SAT.

Qu'est-ce que tu penses?

Quel est ton opinion?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à cs.stackexchange
scroll top