BorisK,
так, давайте на пальцах. Допустим, имеется формула

.
Полагаю, вы не будете спорить с тем, что в формулу

входят

булевых переменных, которые безотносительно к выполнимости формулы

могут в совокупности принимать

различных наборов значений? При этом

из этих наборов являются выполняющими для формулы

, оставшиеся

(а именно

) не являются выполняющими для формулы

. Вот на подсчёте этих последних и основан алгоритм.