Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Boolos et al. Computability and Logic, 5ed, CUP, 2007.pdf
Скачиваний:
593
Добавлен:
10.08.2013
Размер:
2.33 Mб
Скачать

19.3. HERBRANDS THEOREM

253

enumerator of the set of all sets of numbers. By the Lowenheim¨ –Skolem theorem, there is an enumerable subinterpretation K of J in which the sentence is also true. (Note that all numbers will be in its domain, since each is the denotation of some constant.) Thus there is an interpretation K whose domain contains only enumerably many sets of numbers, and in which S is true of just the sets of numbers in its domain. This is the ‘Skolem paradox’.

How is the paradox to be resolved? Well, though the set of all sets of numbers in the domain of K does indeed have an enumerator, since the domain is enumerable, none of its enumerators can be in the domain of K. [Otherwise, it would satisfy F(x), and w F(x) would be true in K, as it is not.] So part of the explanation of how the sentence w F(x) can be true in K is that those sets that ‘witness’ that the set of sets of numbers in the domain of K is enumerable are not themselves members of the domain of K.

A further part of the explanation is that what a sentence should be understood as saying or meaning or denying is at least as much as function of the domain over which the sentence is interpreted (and even of the way in which that interpretation is described or referred to) as of the symbols that constitute the sentence. w F(x) can be understood as saying ‘nonenumerably many sets of numbers exist’ when its quantifiers are understood as ranging over a collection containing all numbers and all sets of numbers, as with the domain of the standard interpretation J ; but it cannot be so understood when its quantifiers range over other domains, and in particular not when they range over the members of enumerable domains. The sentence w F(x)—that sequence of symbols—‘says’ something only when supplied with an interpretation. It may be surprising and even amusing that it is true in all sorts of interpretations, including perhaps some subinterpretations K of J that have enumerable domains, but it should not a priori seem impossible for it to be true in these. Interpreted over such a K, it will only say ‘the domain of K contains no enumerator of the set of sets of numbers in K . And this, of course, is true.

19.3 Herbrand’s Theorem

The applications of Skolem normal form with which we are going to be concerned in this section require some preliminary machinery, with which we begin. We work throughout in logic without identity. (Extensions of the results of this section to logic with identity are possible using the machinery to be developed in the next section, but we do not go into the matter.)

Let A1, . . . , An be atomic sentences. A (truth-functional) valuation of them is simply a function ω assigning each of them one of the truth values, true or false (represented by, say, 1 and 0). The valuation can be extended to truth-functional compounds of the Ai (that is, quantifier-free sentences built up from the Ai using and & and ) in the same way that the notion of truth in an interpretation is extended from atomic to quantifier-free sentences:

ω( B) = 1

if and only if

ω(B) = 0

ω(B & C) = 1

if and only if ω(B) = 1 and ω(C) = 1

ω(B C) = 1

if and only if

ω(B) = 1 or ω(C) = 1.

A set of quantifier-free sentences built up from the Ai is said to be truth-functionally satisfiable if there is some valuation ω giving every sentence S in the value 1.

254 NORMAL FORMS

Now if is satisfiable in the ordinary sense, that is, if there is an interpretation A in which every sentence in comes out true, then certainly is truth-functionally satisfiable. Simply take for ω the function that gives a sentence the value 1 if and only if it is true in A.

The converse is also true. In other words, if there is a valuation ω that gives every sentence in the value 1, then there is an interpretation A in which every sentence incomes out true. To show this, it is enough to show that for any valuation ω, there is an interpretation A such that each Ai comes out true in A just in case ω assigns it the value 1. This is in fact the case even if we start with an infinite set of atomic formulas Ai . To specify A, we must specify a domain, and assign a denotation to each constant, function symbol, and predicate occurring in the Ai . Well, simply take for each closed term t in the language some object t*, with distinct terms corresponding to distinct objects. We take the domain of our interpretation to consist of these objects t*. We take the denotation of a constant c to be c*, and we take the denotation of a function symbol f to be the function that given the objects t1*, . . . , tn * associated with terms t1, . . . , tn as arguments, yields as value the object f (t1, . . . , tn )* associated with the term f (t1, . . . , tn ). It follows by induction on complexity that the denotation of an arbitrary term t is the object t* associated with it. Finally, we take as the denotation of a predicate P the relation that holds of objects the objects t1*, . . . , tn * associated with terms t1, . . . , tn if and only if the sentence P(t1, . . . , tn ) is one of the Ai and ω assigns it the value 1. Thus truth-functional satisfiability and satisfiability in the ordinary sense come to the same thing for quantifier-free sentences.

Let now be a set of -formulas of some language L, and consider the set of all instances P(t1, . . . , tn ) obtained by substituting in sentences x1. . . xn P(x1, . . . , xn ) of terms t1, . . . , tn of L for the variables. If every finite subset of is truthfunctionally satisfiable, then every finite subset of is satisfiable, and hence so is , by the compactness theorem.

Moreover, by Proposition 12.7, if A is an interpretation in which every sentence incomes out true, and B is the subinterpretation of A whose domain is the set of all denotations of closed terms, then every sentence in also comes out true in B. Since in B every element of the domain is the denotation of some term, from the fact that every instance P(t1, . . . , tn ) comes out true it follows that the -formula x1. . . xn P(x1, . . . , xn ) comes out true, and thus B is a model of . Hence is satisfiable.

Conversely, if is satisfiable, then since a sentence implies all its substitution instances, every finite or infinite set of substitution instances of sentences in will be satisfiable and hence truth-functionally satisfiable. Thus we have proved the following.

19.11 Theorem (Herbrand’s theorem). Let be a set of -sentences. Then is satisfiable if and only if every finite set of substitution instances of sentences in is truthfunctionally satisfiable.

It is possible to avoid dependence on the compactness theorem in the foregoing proof, by proving a kind of compactness theorem for truth-functional valuations, which is considerably easier than proving the ordinary compactness theorem. (Then, starting with the assumption that every finite subset of is truth-functionally satisfiable, instead of arguing that each finite subset is therefore satisfiable, and hence

19.4. ELIMINATING FUNCTION SYMBOLS AND IDENTITY

255

that is satisfiable by compactness, instead one would apply compactness for truthfunctional satisfiability to conclude that is truth-functionally satisfiable, from which it follows that is satisfiable.) Herbrand’s theorem actually then implies the compactness theorem: Given a set of sentences, let # be the set of Skolem forms of sentences in . We know from the preceding section that if every finite subset of is satisfiable, then every finite subset of # is satisfiable and hence truth-functionally satisfiable, and so by Herbrand’s theorem # is satisfiable, whence the original is satisfiable.

Herbrand’s theorem also implies the soundness and Godel¨ completeness theorems for an appropriate kind of proof procedure (different from that used earlier in this book and from those used in introductory textbooks), which we next describe. Suppose we are given a finite set of sentences and wish to know if is unsatisfiable. We first replace the sentences in by Skolem forms: the proofs of the normal form theorems given in the preceding two sections implicitly provide an effective method of doing so. Now having the finite set S1, . . . , Sn , of -sentences that are the Skolem forms of our original sentences, and any effective enumeration t1, t2, t3, . . . of terms of the language, we set about effectively generating all possible substitution instances. (We could do this by first substituting in each formula for each of its variables the term t1, then substituting for each variable in each formula either t1 or t2, then substituting for each variable in each formula either t1 or t2 or t3, and so on. At each stage we get only finitely many substitution instances, namely, at stage m just km , where k is the total number of variables; but in the end we get them all.)

Each time we generate a new substitution instance, we check whether the finitely many instances we have generated so far are truth-functionally satisfiable. This can be done effectively, since on the one hand at any given stage we will have generated so far only finitely many substitution instances, so that there are only finitely many valuations to be considered (if the substitution instances generated so far involve m distinct atomic sentences, the number of possible valuations will be 2m ); while on the other hand, given a valuation ω and a truth-functional compound B of given atomic sentences Ai , we can effectively work out the value ω(B) required (the method of truth tables expounded in introductory textbooks being a way of setting out the work).

If any finite set of Skolem instances (that is, of substitution instances of Skolem forms) turns out to be truth-functionally unsatisfiable, then the original set is unsatisfiable: producing such a set of Skolem instances is a kind of refutation of

. Conversely, if is unsatisfiable, the above-described procedure will eventually

produce such a refutation. This is because we know from the preceding section that is unsatisfiable if and only if # is, and so, by Herbrand’s theorem, is unsatisfiable if and only if some finite set of substitution instances of Skolem forms is truthfunctionally unsatisfiable. The refutation procedure just described is thus sound and complete (hence so would be the proof procedure that proves implies D by refuting

{D}).

19.4 Eliminating Function Symbols and Identity

While the presence of identity and function symbols is often a convenience, their absence can often be a convenience, too, and in this section we show how they can,

256

NORMAL FORMS

in a sense to be made precise, be ‘eliminated’. (Constants will be treated as a special sort of function symbol, namely 0-place function symbols. Whatever we say about function symbols in this section goes for constants, too, and they will not be given separate consideration.)

Let us take up the elimination of function symbols first. The first fact we need is that any sentence is logically equivalent to one in which all function symbols occur immediately to the right of the identity symbol. This means that no function symbols occur in the blanks to the right of predicates other than the identity predicate, or in the blanks to the right of a function symbol, or in the blank to the left of the identity symbol, so the only occurrences of an n-place function symbol f are in atomic subformulas of the type v = f (u1, . . . , un ), where v and the ui are variables (not necessarily all distinct).

The proof is quite simple: Suppose that S is a sentence with at least one occurrence of a function symbol f in a position other than immediately to the right of the identity symbol. In any such occurrence, f occurs as the first symbol in some term t that occurs (possibly as a subterm of a more complex term) in some atomic subformula A(t). Let v be any variable not occurring in S, and let Sbe the result of replacing A(t) by the logically equivalent v(v = t & A(v)). Then S is logically equivalent to S, and Scontains one fewer occurrence of function symbols in positions other than immediately to the right of the identity symbol. Reducing the number of such occurrences one at a time in this way, S is ultimately equivalent to a sentence with no such occurrences. So for the remainder of this chapter, we consider only sentences without such occurrences.

We show how to eliminate function symbols one at a time from such sentences. (The process may be repeated until all function symbols, including constants, have been eliminated.) If S is such a sentence and f an n-place function symbol occurring in it, let R be a new (n + 1)-place predicate. Replace each subformula of the type v = f (u1, . . . , un ) in which f occurs—and remember, these are the only kind of occurrences of f in S—by R(u1, . . . , un , v), and call the result S±. Let C be the following sentence, which we call the functionality axiom:

x1 . . . xn y z(R(x1, . . . , xn , z) z = y).

Let D be the following sentence, which we call the auxiliary axiom:

x1 . . . xn z(R(x1, . . . , xn , z) z = f (x1, . . . , xn )).

The precise sense in which the symbol f is ‘dispensable’ is indicated by the following proposition (and its proof).

19.12 Proposition. S is satisfiable if and only if S± & C is satisfiable.

Proof: Let us begin by sorting out the relationships among the various sentences we have introduced. If we call the language to which the original sentence S belonged L, the language obtained by adding the new predicate R to this language L+, and the language obtained by removing the old function symbol f from the latter language

L±, then S belongs to L, D to L+, and S± and C to L±. Note that D implies C, and D implies S S±.

19.4. ELIMINATING FUNCTION SYMBOLS AND IDENTITY

257

Now note that every interpretation M of L has a unique expansion to an interpretation N of L+ that is a model of D. The one and only way to obtain such an N is to take as the denotation RN of the new predicate the relation that holds of a1, . . . , an , b if and only if b = f M(a1, . . . , an ). Also, every interpretation P of L± that is a model of C has a unique expansion to an interpretation N of L+ that is a model of D. The one and only way to obtain such an N is to take as the denotation f N of the new function symbol the function that given a1, . . . , an as arguments yields as value the unique b such that RP(a1, . . . , an , b) holds. (The truth of C in P is need to guarantee that there will exist such a b and that it will be unique.)

If S has a model M, by our observations in the preceding paragraph it has an expansion to a model N of S & D. Then since D implies S S± and C, N is a model of S± & C. Conversely, if S± & C has a model P, then by our observations in the preceding paragraph, it has an expansion to a model N of S± & D. Then since D implies S S±, N is a model of S.

We now turn to the matter of eliminating the identity symbol, supposing that function symbols have already been eliminated. Thus we begin with a language L whose only nonlogical symbols are predicates. We add a further two-place relationsymbol and consider the following sentence E, which we have already encountered in chapter 12, and will call the equivalence axiom:

x x x &

x y(x y y x) &

x y z((x y & y z) x z).

In addition, for each predicate P of we will call the congruence axiom

L we consider the following sentence CP , which for P:

x1 . . . xn y1 . . . yn ((x1 y1 &

. . . & xn yn )

(P(x1, . . .

, xn ) P(y1, . . . , yn ))).

Note that the result of replacing the new sign by the identity sign = in E or any CP is a logically valid sentence. For any sentence S, we let S* be the result of replacing the identity sign = throughout by this new sign , and CS the conjunction of the CP for all predicates P occurring in S. The precise sense in which the symbol = is ‘dispensable’ is indicated by the following proposition (and its proof).

19.13 Proposition. S is satisfiable if and only if S* & E & CS is satisfiable.

Proof: One direction is easy. Given a model of S, we get a model of S* & E & CS by taking the identity relation as the denotation of the new sign.

For the other direction, suppose we have a model A of S* & E & CS . We want to show there is a model B of S. Since E is true in A, the denotation A of the new sign in A is an equivalence relation on the domain |A|. We now specify an interpretation B whose domain |B| will be the set of all equivalence classes of elements of |A|. We need to specify what the denotation PB of each predicate P of the original language is to be. For any equivalence classes b1, . . . , bn in |B|, let PB hold of them if and only