Eine Klausel besteht aus Literalen über n Variablen. Nehmen wir an, dass eine Instanz eine Teilmenge verschiedener Klauseln ist. Wir können natürlich die Anzahl der Instanzen als Potenzsatz von Klauseln berechnen, aber dazu müssen wir zunächst klären, was wir als gültige Klausel betrachten.
In der Regel wird entweder jede Variable werden dargestellt durch einen oder beide seiner Literale, sonst wird es werden nicht vertreten . Wenn die Variable dargestellt wird, kann sie nur durch das positive Literal, nur durch das negative Literal oder durch beides dargestellt werden. Da es für jede Variable 4 mögliche Fälle und n Variablen gibt, müssen mögliche Klauseln vorhanden sein. Ohne die Nullklausel haben wir Gesamtklauseln und ohne die Nullinstanz mögliche Instanzen.4n4n- 124n- 1- 1
Klauseln, die beide Literale einer Variablen enthalten, sind natürlich nicht besonders nützlich. Jeder ist mit jeder Aufgabe zufrieden. Da diese Klauseln keine wirklichen Einschränkungen hinzufügen, beschränken wir unsere Aufmerksamkeit auf einschränkende Klauseln.
Auf diese Weise wird die Möglichkeit ausgeschlossen, dass eine Variable beide Literale verwendet, sodass drei mögliche Fälle pro Variable oder mögliche Klauseln übrig bleiben . Ohne die Nullklausel und die Nullsammlung haben wir mögliche Instanzen.3n23n- 1- 1
Für k-SAT hat jede Klausel genau k Literale. Offensichtlich gibt es Möglichkeiten, k Variablen auszuwählen. Da wir jedoch genau k Literale pro Klausel benötigen, können wir jede Variable nur mit ihrem positiven oder negativen Literal darstellen. Es muss also k-Klauseln und Instanzen von k-sat geben.(nk)2k(nk)22k(nk)- 1
Beachten Sie schließlich, dass wir auch bestimmen können, wie viele Instanzen genau c-Klauseln enthalten.
- Für alle möglichen Klauseln mit Ausnahme der Nullklausel:(4n- 1c)
- Für einschränkende Klauseln:(3n- 1c)
- Für k-Klauseln:(2k(nk)c)