Metatheory - University of Cambridge
Metatheory - University of Cambridge
Metatheory - University of Cambridge
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
6. Completeness 44<br />
6.2 An algorithmic approach<br />
I start with the more concrete approach to Lemma 6.2. This works by specifying<br />
an algorithm, SimpleSearch, which determines, for any arbitrary sentences,<br />
whether or not those sentences are jointly contrary. (Iam assuming that we are<br />
given only finitely many sentences. I shall revisit this point in §6.4, but shall<br />
not mention it much until then.) Moreover, SimpleSearch two very desirable<br />
properties. For any sentences, ∆, that we feed in:<br />
(a1) if ∆ are jointly contrary, then the algorithm outputs a TFL-pro<strong>of</strong> which<br />
starts with ∆ as assumptions and terminates in ‘⊥’ on just those assumptions;<br />
and<br />
(a2) if ∆ are not jointly contrary, then the algorithm yields a valuation which<br />
makes all <strong>of</strong> ∆ true together.<br />
Clearly, any algorithm with both <strong>of</strong> these properties is independently interesting.<br />
But the important thing, for our purposes, is that if we can prove that<br />
there is an algorithm with property (a2), then we will have proved Lemma 6.2<br />
(pause for a moment to check this!) and hence the Completeness Theorem. So,<br />
my aim is to specify an algorithm, and then prove that it has these properties.<br />
First steps towards an algorithm<br />
To say that ∆ ⊢ ⊥ is to say that there is a TFL-pro<strong>of</strong>, whose assumptions are<br />
all among ∆, and which terminates in ‘⊥’ without any additional assumptions.<br />
It obvious that, if ‘⊥’ appears anywhere in a TFL-pro<strong>of</strong>, then the TFLpro<strong>of</strong><br />
involves an application <strong>of</strong> the rule ⊥I. So our algorithm will have to look<br />
for situations in which we might be able to apply the rule ⊥I.<br />
Of course, to show that some sentences are jointly contrary, it is not enough<br />
simply to find a situation in which we can apply ⊥I. For if we only obtain ‘⊥’<br />
within the scope <strong>of</strong> additional assumptions, we will not have shown that our<br />
original sentences are jointly contrary. Fortunately, there are rules that allow us<br />
to take instances <strong>of</strong> ‘⊥’ that appear in the scope <strong>of</strong> additional assumptions, and<br />
derive an instance <strong>of</strong> ‘⊥’ that appears within the scope <strong>of</strong> fewer assumptions.<br />
As an example, consider the last line <strong>of</strong> this TFL-pro<strong>of</strong>:<br />
1 A ∨ B<br />
2 (¬A ∧ ¬B)<br />
3 ¬A ∧E 2<br />
4 ¬B ∧E 2<br />
5 A<br />
6 ⊥ ⊥I 5, 3<br />
7 B<br />
8 ⊥ ⊥I 7, 4<br />
9 ⊥ ∨E 1, 5–6, 7–8