Uma cláusula é composta de literais sobre n variáveis. Vamos supor que uma instância seja um subconjunto de cláusulas distintas . Obviamente, podemos calcular o número de instâncias como o conjunto de cláusulas, mas isso requer que primeiro esclareçamos o que consideramos uma cláusula válida.
Em geral, cada variável será representada por um ou ambos de seus literais, ou então não será representada . Se a variável for representada, ela poderá ser representada apenas pelo literal positivo, apenas pelo literal negativo ou por ambos. Como existem 4 casos possíveis para cada variável e n variáveis, deve haver cláusulas possíveis. Excluindo a cláusula nula, temos total de cláusulas e, excluindo a instância nula, possíveis instâncias.4n4n- 124n- 1- 1
Obviamente, cláusulas que contêm os dois literais de qualquer variável não são particularmente úteis; cada um é satisfeito por cada tarefa. Como essas cláusulas realmente não adicionam restrições, vamos restringir nossa atenção às cláusulas restritivas .
Ao fazer isso, eliminamos a possibilidade de qualquer variável pegar os dois literais; portanto, temos três casos possíveis por variável ou cláusulas possíveis. Excluindo a cláusula nula e a coleção nula novamente, temos instâncias possíveis.3n23n- 1- 1
Para k-SAT, cada cláusula possui exatamente k literais. Obviamente, existem maneiras de selecionar k variáveis. Como precisamos exatamente k literais por cláusula, no entanto, só podemos representar cada variável com seu literal positivo ou negativo. Portanto, deve haver cláusulas k e instâncias de k-sat.(nk)2k(nk)22k(nk)- 1
Por fim, observe que também podemos determinar quantas instâncias contêm exatamente cláusulas c.
- Para todas as cláusulas possíveis, excluindo a cláusula nula:(4n- 1c)
- Para cláusulas restritivas:(3n- 1c)
- Para cláusulas k:(2k(nk)c)