TAOCP 7.2.2.2 Exercise 248
By (112), the six clauses are 1234,\qquad 12\bar{3},\qquad \bar{1}\bar{2},\qquad \bar{1}3,\qquad 2\bar{3},\qquad 3\bar{4}.
Section 7.2.2.2: Satisfiability
Exercise 248. [M20] [M20] Formally speaking, SAT is the problem of evaluating the quantified formula
$$\exists x_1 \ldots \exists x_{n-1} ; \exists x_n ; F(x_1, \ldots, x_{n-1}, x_n),$$
where $F$ is a Boolean function given in CNF as a conjunction of clauses. Explain how to transform the CNF for $F$ into the CNF for $F'$ in the reduced problem
$$\exists x_1 \ldots \exists x_{n-1} ; F'(x_1, \ldots, x_{n-1}, 0) \vee F'(x_1, \ldots, x_{n-1}, 1).$$
Verified: no
Solve time: 2m06s
Solution
By (112), the six clauses are
$$ 1234,\qquad 12\bar{3},\qquad \bar{1}\bar{2},\qquad \bar{1}3,\qquad 2\bar{3},\qquad 3\bar{4}. $$
The clause $\bar{1}\bar{2}$ is omitted, leaving
$$ F={1234,\ 12\bar{3},\ \bar{1}3,\ 2\bar{3},\ 3\bar{4}}. $$
Variable elimination removes a variable by replacing all pairs of clauses containing complementary literals of that variable by their resolvents, then deleting the clauses containing the eliminated variable.
Eliminate $4$. The only clauses containing $4$ are
$$ 1234,\qquad 3\bar{4}. $$
Their resolvent is
$$ 1234\mathbin{\bowtie}3\bar{4}=123. $$
After removing the clauses containing $4$, the formula becomes
$$ {123,\ 12\bar{3},\ \bar{1}3,\ 2\bar{3}}. $$
Next eliminate $3$. The clauses containing $3$ are
$$ 123,\qquad \bar{1}3, $$
and the clauses containing $\bar{3}$ are
$$ 12\bar{3},\qquad 2\bar{3}. $$
The possible resolvents are
$$ 123\mathbin{\bowtie}12\bar{3}=12, $$
$$ 123\mathbin{\bowtie}2\bar{3}=12, $$
$$ \bar{1}3\mathbin{\bowtie}12\bar{3} =\bar{1}12, $$
and
$$ \bar{1}3\mathbin{\bowtie}2\bar{3} =\bar{1}2. $$
The third resolvent contains both $1$ and $\bar{1}$, so it is tautological and is discarded. The duplicate clause $12$ is retained only once. The remaining formula is therefore
$$ {12,\bar{1}2}. $$
Now eliminate $2$. Both clauses contain the positive literal $2$, and no clause contains $\bar{2}$. Thus $2$ is a pure literal. Deleting the clauses containing $2$ leaves the empty clause set.
The variable-elimination procedure applied to the five clauses of (112) therefore produces
$$ \boxed{\varnothing}. $$
The result is the empty set of clauses, not the empty clause $\epsilon$. Hence the five-clause formula obtained after omitting $\bar{1}\bar{2}$ is satisfiable. The omitted clause is necessary for the contradiction present in the original six-clause formula.