290 Logic as a Tool Now, transform the result to clausal form: C1 = {¬p, ¬q, r}, C2 = {p, q }, C3 = {¬r} Now, applying Resolution successively: C4 = Res(C1 , C2 ) (on the pair ¬p, p) = {¬q, q, r} C5 = Res(C1 , C2 ) (on the pair ¬q, q ) = {¬p, p, r } C6 = Res(C1 , C3 ) = {¬p, ¬q } C7 = Res(C2 , C6 ) (on the pair ¬p, p) = {¬q, q } C8 = Res(C2 , C6 ) (on the pair ¬q, q ) = {¬p, p} C9 = Res(C4 , C2 ) = Res(C5 , C2 ) = {p, q, r} At this stage, no new clauses can be obtained by applying Resolution again and the empty clause has not been derived; the formula is therefore not a tautology (i) First, transform ¬(p → ((q → r ) → ((p → q ) → r))) into a CNF: ¬(p → ((q → r) → ((p → q ) → r))) ≡ p ∧ ¬((q → r) → ((p → q ) → r )) ≡ p ∧ (q → r ) ∧ ¬((p → q ) → r ) ≡ p ∧ (¬q ∨ r) ∧ (p → q ) ∧ ¬r ≡ p ∧ (¬q ∨ r) ∧ (¬p ∨ q ) ∧ ¬r Now, transform the result to clausal form: C1 = {p}, C2 = {¬q, r}, C3 = {¬p, q }, and C4 = {¬r} Applying Resolution successively, we get C5 = Res(C1 , C3 ) = {q } C6 = Res(C2 , C4 ) = {¬q } C7 = Res(C5 , C6 ) = {} The empty clause has been derived, so the formula is a tautology 2.5.6 (a) Transform the formulae to clausal form: C1 = {p, q }, C2 = {p, ¬q }, and C3 = {¬p} Applying Resolution successively, we get C4 = Res(C1 , C2 ) = {p} C5 = Res(C3 , C4 ) = {} The empty clause has been derived, so the consequence holds