Diese weitere Antwort ist als Feedback auf den Kommentar von dividebyzero zu meiner vorherigen Antwort gedacht.
Wie dividebyzero sagt, sind CNF und DNF zweifellos zwei Seiten einer Medaille.
Wenn Sie eine befriedigende Aufgabe finden müssen, ist DNF explizit, da es Ihnen offenbar die befriedigenden Aufgaben zeigt (DNF-Zufriedenheit gehört zu ), wohingegen CNF implizit ist, wenn es seine befriedigenden Aufgaben vor Ihren Augen verbirgt (CNF-Zufriedenheit ist N) P - c o m p l e t e ). Wir kennen kein Verfahren, das in der Lage ist, eine CNF-Formel in eine zufriedenstellende DNF-Formel mit nicht exponentieller Größe einzuwickeln und abzuwickeln. Dies war der Punkt meiner vorherigen Antwort (deren Beispiel das exponentielle Aufblähen zeigen sollte, obwohl zugegebenermaßen ein solches Beispiel nicht die bestmögliche Wahl war).PNP−complete
PNP−complete ). Wir kennen kein Verfahren, das in der Lage ist, eine DNF-Formel in eine nicht exponentiell dimensionierte, gleichwertige CNF-Formel einzuwickeln und abzuwickeln.
An einem Ende gibt es Widersprüche, dh nicht erfüllbare Formeln. Am anderen Ende haben wir Tautologien, dh nicht fälschbare Formeln. In der Mitte haben wir Formeln, die sowohl erfüllbar als auch verfälschbar sind.
In jeder CNF-Formel mit Variablen codiert jeder Satz der Länge k offenbar 2 n - knk2n−k fälschende Zuweisungen.
In jeder DNF-Formel mit Variablen codiert jeder Ausdruck der Länge k offenbar 2 n - knk2n−k die die Zuweisungen erfüllen.
Eine CNF-Formel ohne Klauseln ist eine Tautologie, da sie keine fälschende Zuordnung hat. Eine CNF-Formel, die die leere Klausel enthält (die alle anderen Klauseln subsumiert), ist ein Widerspruch, da die leere Klausel (die k=02nNP−complete zu unterscheiden zwischen diesen 2 Fälle).
Eine DNF-Formel ohne Terme ist ein Widerspruch, weil sie keine zufriedenstellende Zuordnung hat. Eine DNF-Formel, die den leeren Term enthält (der jeden anderen Term subsumiert), ist eine Tautologie, weil der leere Term (der ) anzeigt, dass alle 2 n Zuweisungen erfüllt sind. Jede andere DNF Formel ist entweder ein Tautology odereiner dieser Formeln in der Mitte (und es ist N P - C o m p l e t e zu unterscheiden zwischen diesen 2 Fällen).k=02nNP−complete
Bei einer CNF-Formel bedeutet die Unterscheidung zwischen den beiden oben genannten Fällen, dass festgestellt werden kann, ob sich alle fälschenden Zuweisungen, die durch das Vorhandensein von Klauseln kollektiv erzeugt werden, so überlappen, dass alle abgedeckt werden2n Zuweisungen (in diesem Fall ist die Formel ein Widerspruch, ansonsten ist es befriedigend).
2n
In diesem Licht wird klarer, warum CNF-Zufriedenheit und DNF-Fälschbarkeit in Bezug auf die Rechenhärte gleichwertig sind. Weil es sich tatsächlich um dasselbe Problem handelt, da die zugrunde liegende Aufgabe genau dieselbe ist: festzustellen, ob die Vereinigung mehrerer Mengen dem Raum aller Möglichkeiten entspricht . Eine solche Aufgabe führt uns in den weiteren Bereich des Zählens, der meiner Meinung nach einer der Wege ist, die inbrünstig erkundet werden müssen, um hoffentlich einige nicht zu vernachlässigende Fortschritte bei diesen Problemen zu erzielen (ich bezweifle, dass weitere Untersuchungen zu lösungsbasierten Lösungen durchgeführt werden) kann schließlich bahnbrechende theoretische Fortschritte bringen, während es sicherlich weiterhin überraschende praktische Fortschritte bringt).
Die Schwierigkeit einer solchen Aufgabe besteht darin, dass sich diese Mengen in einer Einschluss - Ausschluss - Weise wild überlappen.
Das Vorhandensein einer solchen Überlappung ist genau dort, wo die Härte des Zählens liegt. Darüber hinaus ist die Tatsache, dass wir diese Mengen überlappen lassen, genau der Grund, warum wir kompakte Formeln haben können, deren Lösungsraum dennoch exponentiell groß ist.