Predicate Logic: Syntax, Semantics and Completeness

Report 8 Downloads 182 Views
Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

Predicate Logic: Syntax, Semantics and Completeness Michael Hallett 14/28 Febuary 2012

1

The Language

The language L of propositional logic is based on a stock of proposition letters, which are to stand for the atomic or prime propositions; more complex propositions are then to be formed recursively using the two connectives ¬, → . To interpret the formulas in the language, it is then enough to inject truth-values into the prime formulas, and then (essentially via the truth-tables) the formulas of the language receive unique values, too. The language for predicate logic is more complicated. On the one hand, we want to capture as valid some inferences which cannot be captured as valid in the language of proposition logic, inferences as simple as ‘All whales are mammals, Humphrey is a whale ∴ Humphrey is a mammal’. To do this requires a more complicated language. In this inference, there are already three elements which have to be incorporated: 1. reference to individual objects (here via the name ‘Humphrey’); 2. reference to particular properties (here ‘being a whale’, ‘being a mammal’); 3. use of generality (‘All whales . . . ’); we do this by incorporating both quantifiers and variables. The natural way to imagine this is to read ‘ ∀xP (x) ’ as saying ‘No matter what object x refers to, P (x) ’. NB (This latter is really what’s expressed by the universal quantifier clause (F4) in the BSD, p. 154 in Machover.) In addition to this, there is the fact that many inferences we wish to capture as valid cannot be captured as valid with the use of relations. Aristotelean logic deals with quantitifcatin and predicates to some extent: witness ‘All As are B s, All B s are C s, ∴ All As are C s’. But this isn’t sufficient. De Morgan came up with this example of a valid argument in the middle of the 19th c.: ‘All horses are animals ∴ All horses’ heads are animals’ heads’. This can only be captured as valid by using a relation, namely ‘ x is the head of y ’. This is clearly beyond the reach of both Aristotelean and propositional logic. Indeed, it is quantified relational logic that gives FOL its power . In fact: 1

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

• ∀xHo(x) → An(x) .  • ∴ ∀x (∃y. IsHeadOf (x, y) ∧ Ho(y)) → (∃y. IsHeadOf (x, y) ∧ An(y)) . On the other hand, we don’t just want a means of referring to properties/relations; we also want an effective means of analysing them. Certain properties of things, e. g., the property of being an aunt, or of being prime, are surely not primitive properties; the things which possess them do so in virtue of possessing other properties or of being related to other things in certain ways. What this means is that it ought to be possible to build up these properties from other properties/relations which are basic, or at least more basic. In this, the notion of relation is clearly fundamental, and so is the creation of properties of things from relations by using generalisation appropriately. Indeed, this is the right way to analyse the notions of ‘ x is an aunt’ or ‘ x is prime’. Consider ‘ x is an aunt’ as an example: A The first thing is to say clearly what it is for a to be an aunt of b : a is an aunt of b if a is female, and is the sister of one of b ’s parents. B Note that here one property (‘being female’) is involved, and so are two relations ‘ x is the sister of y ’, and ‘ x is the parent of y ’, though we can analyse the former as ‘ x is female and the sibling of y ’, so ‘sibling of’ is the right relation to choose, since we want ‘female’ independently of this. C Note also that ‘being one of b ’s parents’ doesn’t refer directly to one or other of the parents in particular; it could be either (and it doesn’t matter for this purpose that there are in fact exactly two). D Given this, we can analyse what we found in A by saying ‘There exists x such that a is a female sibling of x and x is parent of b ’. E Thus we get something appropriately complex (I say ‘appropriately’, because we may want to focus on any one of the many elements here): Aunt(a, b) ⇔df. F (a)∧∃z[S(a, z)∧ P (z, b)] . More generally, we can express the 2-place relation Aunt(x, y) by the 2variable formula ∃z[S(x, z) ∧ P (z, y)] . (Note that this does indeed have just 2 free variables.) F So here we’ve created a new relation out of given ones and a given property, using quantifiers and variables. G But what we wanted was a new property, being an aunt. However, we can now get this easily by writing: A(x) ⇔df. ∃yAunt(x, y). The means we’ve given here are enough to express the vast majority of properties and relations (and consequently functions) which we will ever encounter, given that ‘ = ’ is among the basic stock. You’ll get some sense of this as our study of logic progresses. 2

Phil 310: Winter 2013

2

Handout: Predicate Logic: Syntax, Semantics, Completeness

Interpretations

It’s good to remember that languages have a purpose; we tend to forget this, because we think of natural language as ‘all purpose’. But think of, say, the language of particle physics: we have to have the right sort of descriptive apparatus available even to stand a chance of getting things right (stating truths about the world). Our FOLs are designed to be able to talk about, describe and, we hope, state truths about, mathematical structures. In this respect, think then about what a piece of mathematics, say the ‘world’ of natural numbers, consists in. We have some objects, the numbers, and one or more special elements among these objects ( 0 is special among the numbers, being the smallest), some relations (being less than, identity), and some functions, specifically successor (addition of 1 ), addition ( + ) and multiplication ( × ). To be precise, the natural number structure is N = hIN; 0, s, +, ×; idN i In short: 1. Domain IN = {0, 1, 2, . . . } of all natural numbers. 2. Four basic operations: Designated individual 0 , unary operation s , binary operations + and ×. 3. Basic relation: idN = {hn, ni : n ∈ N }. (NB. We don’t need the relation of ‘less than’; this can be defined as soon as we have addition: hm, ni ⇔df. ∃x[m + (x + 1) = n] Thus, if we design a language to be able to describe this, we must have: 1. Variables taken to range over IN. 2. A name (constant symbol to stand for 0 . 3. Three symbols for functions, one 1-place, and two 2-place. 4. The identity symbol. Our general description of a language respectively structure are just generalisations of this account. And we can say that a language is set up to describe a certain structure, or that a certain structure acts to interpret a certain language. The structure gives rise to certain facts. For example, it’s a fact/truth about natural numbers that 0 + 1 = 1 , but it’s not a fact (it’s a falsity) about numbers that 2 × 3 = 5 . The first thing we want our language to be 3

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

able to do is to state these things, whether true or untrue, and then we want to say that our interpretation makes some of them true (the true ones!) and some of them false (the false ones!). The first requirement is that we tie up an interpretation to the language. (See Machover, 4.2, p. 151.) This is important, for the way the interpretation is tied to the language can effect whether a sentence comes out true or false! For example, suppose we have a language for arithmetic; then we would have two 2-place function symbols f and f ′ ; suppose we also have terms t0 , t1 , t2 , t3 , t4 , t5 , t6 standing for the numbers 0, 1, 2, 3, 4, 5, 6 respectively. Consider now ft0 t1 = f1 and f ′ t2 t3 = t6 . If we tie up f with + and f ′ with × , then the sentences come out true; but if we reverse the connections ( f with × etc.), they come out false! But this isn’t all there is:

3

Valuations

The added complexity of the new languages brings with it a requirement of sophistication when we interpret the language. We still want to consider the notion of truth and of sentences being true, for that is still central to our understanding of valid inference among sentences (‘the conclusion is true whenever the premisses are true’). However, the basic elements of the language (variables, names, predicate symbols, function symbols) are not things of which it can be said that they are true or false. Thus, injecting truth at the level of the primitives is not appropriate any more. Only in combination do predicates and names give rise to truth-values, let alone the combination of predicates and variables. This hints at another problem. Suppose we focus just on sentences, things which are capable of being true or false. In the case of propositional logic, we built up to the truth of a molecular formula compositionally, and we could do this because we could express the truth conditions of a formula by talking only about the truth-values of its components, the things it’s generated from. This is precisely what the truth-tables do. One of the reasons we want this to hold here, too, is that we want to retain the connectives ¬ and → as part of the way complexes are built up, and we want therefore to retain the basic way that they contribute to truth-values. But the problem is that now we can have sentences (e. g., ∃xA(x) , where ‘ A(x) ’ is primitive) which do not have any sub-sentential components. And we surely also want to be able to say, e. g., that the premises P, P → Q entail Q even when P, Q contain free variables, and thus do not express finished sentences. We overcome these problems by the trick of predicate valuations. Given a structure U , a valuation σ on that structure (defined in 8.4.4, p. 152 of Machover) is simply an assignment of objects in the underlying domain U to the variables of the language. The first thing to note is that:

4

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

Under this assignment, the variables become something like names, picking out definite objects in the domain assigned by the structure.

Now in addition:

We also adopt the convention that any valuation on a given structure U assigns to function and predicate symbols the properties/relations and functions of the underlying structure U , in other words, we always have f σ = f U , and Pσ = PU .

So under a valuation σ , names (0-place function symbols) name objects, function symbols name functions, predicate symbols name properties/relations; in addition, as we have said, the variables all name objects. What does this mean? It means that under a valuation, a primitive formula of the form Pt1 t1 , . . . , tn or of the form t1 = t2 will make an assertion about the objects in the underlying structure U , and will consequently have a truth-value (relative to that valuation on that structure, of course). And these truth-values can then feed upwards to all formulas using the recursive clauses in the definition of (first) terms and (then) formulas. This is confirmed by the BSD on pp. 153–154, for this shows that:

• Every term t of the language (and not just every variable) is assigned to an object by σ , an object we denote by tσ . • Every formula ϕ of the language (not just any primitive formula) is assigned a truth-value by σ , which we denote by ϕσ .

Our basic notions (such as Φ  α ) are now defined by reference to valuations: e. g., Φ  α means: all valuations which make every formula in Φ true also make α true. (Note that ‘all valuations’ here also includes all structures, since it means ‘all valuations on any structure’.) But we still haven’t finished. You might ask: the basic notion here is still ‘true in structure under a given valuation’ (so truth relative to a structure and a valuation on that structure), and surely some valuations on a structure will make a formula true, while different valuations on that very same structure might make the same formula false. For instance, suppose we have a 2-place predicate L(x, y) in the language, and suppose we interpret it in the natural 5

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

number structure IN (a structure we will look at in some detail soon) by the ‘less than’ relation on numbers. Suppose now we have a valuation which assigns the number 4 to variable x and 5 to y . Then (L(x, y))σ = ⊤ ⇔ Lσ (xσ , yσ ) ⇔ 4 < 5, which it is, so the formula is true on this valuation. On the other hand, suppose we consider the valuation τ , which assigns 5 to x and 4 to y ; then we will have (L(x, y))τ = ⊤ ⇔ Lτ (xτ , yτ ) ⇔ 5 < 4, which it isn’t, so the formula is false on this valuation. (Note that, by convention, Lσ and Lτ are the same.) But the key point is now this:

• The results of valuations on the same structure depend only on the free variables in a formula, and this means . . . • that formulas without free variables are either true under all valuations on a given structure, or false under all valuations. (This is demonstrated in Theorems 8.5.4 (p. 158) and 8.5.8 (p. 159).)

Proof: Of 8.5.4: Let t be any term. Suppose t is a single variable x . Then since σ, τ agree on all variables, they agree on x . Hence tσ = tτ . Suppose t is a complex term, namely ft1 . . . tn . Then tσ

= = = = =

(ft1 . . . tn )σ f σ tσ1 . . . tσn f τ tσ1 . . . tσn f τ tτ1 . . . tτn tτ

(By assumption) (By IH) 

Proof of 8.5.8 in book. Look at definition of free variable first. This means that for closed terms (no free variables), once an interpretation is given, then the terms denote objects in the domain uniquely (so independently of valuations), and for sentences (no free variables), we can speak of that sentence being true in a structure or false in that structure (so, again, independently of valuations). 6

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

Nevertheless, remember that our fundamental notions (logical consequence, logical truth) are defined in terms of all valuations, the reason being that we want to look at the consequences of formulas and at whether formulas are logical truths or not. (E.g., Px ∨ ¬Px is a logical truth, as we would perhaps expect.) Thus checking for logical consequence or logical truth requires looking at all valuations, so, in general looking at an arbitrary valuation on an arbitrary structure.

4

Substitutions

There is a difference, which should be clearly grasped, between substitutions in elements of the language of predicate logic L to bring about changes in formulas, and substitutions in valuations on the language, which generally bring about changes in the objects/truth-values which are assigned to elements of the language. Remember: valuations are based on a domain of objects and a way of assigning those objects to variables and terms of the language. Thus, changes in valuations are not themselves changes to things in the language. The first is important for this reason (example): Fopcal: Axiom 4 (p. 177): ∀x.α → α(x/t) . This expresses the most basic thing about the way a universal generalisation works. (If the property concerned holds for all, then in particular it holds for anything you can specify with a term.) [More axioms below.] The second is important for this reason (example): Clause (F4) in BSD makes essential use of variations in valuations under substitution. General warning: Do not confuse • α(x/y) , which is a substitution (Syntax), with • σ(x/u) , which is a valuation (Semantics). However, there is a clear relationship between the two, which is explained in the book and which is explained briefly below.

4.1

Examples of substitutions bringing about changes to formulas

• f (x)(x/y) , where x, y are variables of the language, thus the simplest kind of term; this transforms the term given by the 1-place function symbol f followed by the variable x , and replaces this variable by the term y , also a variable, to give the term (also, note, an expression in the language) f (y) . • φ(x/t) , where this transforms the formula φ by replacing each free occurrence of the variable x in it by the term t ; the result, note again, is also a formula of the language. 7

Phil 310: Winter 2013

4.2

Handout: Predicate Logic: Syntax, Semantics, Completeness

Examples of substitutions in valuations

• (f (x))σ(x/u) . Here the underlying valuation is σ , which gives a way of assigning objects in the underlying domain U to the terms of the language; in particular, it assigns the variable x the object σ(x) . The valuation σ(x/u) is a modification of this: it does exactly the same as σ except at the variable x ; here it ignores whatever it is that σ would have assigned to x and assigns to it the object u instead. Note that here u must belong to the underlying structure. So (f (x))σ(x/u) is the object in the domain U singled out by the function f σ (i. e., not a function symbol, but a ‘real’ function between the objects of U ) applied to the object u ∈ U , thus picking out the object f σ (u) of the domain U .

4.3

Connection between the two different kinds of substitution

This is expressed in Theorems 8.6.4 and 8.6.8:

• 8.6.4: s(x/t)σ = sσ(x/t ) ; σ

• 8.6.8: α(x/t)σ = ασ(x/t ) . σ

(But note the restrictions on 8.6.8.)

What these say is the following: you get the same result whether you first substitute to change the term/formula and then evaluate by σ , or whether you leave the term/formula the same and make a corresponding change in the valuation. • Theorem 8.6.4: For all s , x , t , and σ :

s(x/t)σ = sσ(x/t ) . σ

Proof: By induction on deg s. (pp. 162–163). Three cases to consider (see the definition of terms): 1a) s is x . [Works because σ gives the t -value, and so does σ(x/tσ ) .] 1b) s is y 6= x . [Works because σ gives the y -value, and so does σ(x/tσ ) .] 2) s is fs1 . . . sn . [Works because of induction!] See proof in book, it is very instructive for reasoning with valuations! Similarly, we want something analogous for formulas (which are assigned, not object-values, but truth-values): α(x/t)σ = ασ(x/t ) . σ

8

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

This is 8.6.8. The restrictions stated here are very important, and have to do with a particular problem which, if we are not very careful, can occur when substituting in formulas: we don’t want to make a substitution that changes the truth-value! (Extensional approach! Only the values count in calculating the value!) The difficulties here arise from the fact that universal formulas involve their variables of quantification in an essential way, a way that must not be ‘substituted away’. Let’s look at some things that can happen when we replace a variable in a universal formula. 1. α = ∀x.P (x)

(x/t) .

Just replacing x , would give ∀t.P (t) , which isn’t necessarily a formula (if t , isn’t a variable, but a function term)! So: Don’t replace bound variables, but only free occurrences of x . 2. α = ∀y.(x = y) (x/y) . Notice that x is free before the substitution. The substitution/replacement yields ∀y.(y = y) , and now we no longer have a free variable! But now α(x/y)σ and ασ(x/y

σ)

disagree in general! (Try it out.)

= = = = =

α(x/y)σ (∀x.x = y)(x/y)σ (∀y.y = y)σ (y = y)σ(y/u) u=u Always ⊤

for all u in U for all u in U whatever U, σ.

But, ασ(x/y ) σ (∀x.x = y)σ(x/y ) (x = y)σ(x/u) so particular u = yσ ⊤ only if yσ = u. σ

= = = =

for all u in U value given to x irrelevant! for all u in U i.e., where U = {u}. i. e., only one choice for u.

So, ασ(x/y ) can be true only in a ‘world’ which has one and only one object, whereas α(x/y)σ is true in all ‘worlds’. Radical difference! σ

The problem here is that the replacement y falls within the scope of a quantifier, and is ∴ captured by the quantifier. So: Don’t replace with variables that get captured. Technically, we say this: ‘If no free occurrence of x in α is within the scope of a y -quantifier, where y is a variable that occurs in t , then we say that t is free [to be substituted] for x in α ’. (Def. 8.6.7, p. 164). See: B&M, Ch. 2, § 3 (pp. 59–60)! Now we can show: 9

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

• Theorem 8.6.8: For formula α , variable x , term t , and valuation σ : α(x/t)σ = ασ(x/t holds whenever t is free for the variable x in the formula α.

σ)

Proof: DIY. It’s not hard to see that the difficulties of the kind stated above occur because of a rather accidental fact about the variable of quantification, that this is ‘mby’, and we want to substitute ‘ y ’ in here. For α′ = ∀z.(x = z) (x/y) , which differs from α only in the inessential detail of using a different name for the bound variable, no difficulties of the kind just discussed arise. Following up on this observation, we can always make a term free for x , by renaming the variable of quantification! In Machover’s terminology: We can replace α by a logically equivalent formula α′ , that arises from alphabetic change from α : • Alphabetic change (of variable of quantification): If z is a variable that does not occur free in β , but is free for y in β , the formula ∀z [β(y/z)] arises from ∀y β by alphabetic change (of variable of quantification). The general definition of substitution thus becomes: • Let a variable x and a term t be given. • For any formula α , we select a formula α′ such that if t is free for x in α , then α′ = α ; but if t is not free for x in α , then α′ is a variant of α in which t is free for x in α′ . • Now α(x/t) is α′ (x/t) , i. e., the result obtained from α′ when all free occurrences of x in α′ are simultaneously replaced by t (Def. 8.6.7, p. 164). Note that all this sis stated just to remind you that we can, in effect, get past all the difficulties which can arise here. Once you see this, common sense can be your guide!

10

Phil 310: Winter 2013

5

Handout: Predicate Logic: Syntax, Semantics, Completeness

FOPCAL

The deduction system we set up for the predicate language is the system Fopcal given in the book, and based on the system Propcal which we’ve already explored. • Axioms (axiom schemata): 1. All propositional axioms (7.6.3–7.6.7): (i) (ii) (iii) (iv) (v)

α → β → α. To be parsed as: α → (β → α). (α → β → γ) → (α → β) → α → γ [(α → β) → α] → α ¬α → α → β (α → ¬α) → ¬α

2. ∀x (α → β) → ∀x α → ∀x β , for any formulas α, β . 3. α → ∀x α , for any formula α and any variable x that is not free in α . 4. ∀x α → α(x/t) , for any formula α , variable x , and term t . 5. t = t for any term t . 6. s1 = t1 → s2 = t2 → . . . → sn = tn → fs1 s2 . . . sn = ft1 t2 . . . tn , for any function symbol f . 7. s1 = t1 → s2 = t2 → . . . → sn = tn → Ps1 s2 . . . sn → Pt1 t2 . . . tn , for any predicate symbol P . 8. ∀x1 ∀x2 . . . ∀xk α, for any L -formula α belonging to any of the preceding axioms. • Note that 2 just tells us how ∀ and → interact; Note that 3 and 4 are really just like Universal Generalisation and Universal Instantiation; • Note that 5 and 6 are really just the identity rules! • All the axioms are logical truths, just as all the Propcal axioms were tautologies. • Note that 8 then just reminds us that generalizing over a logical truth also gives a logical truth. Example: α(x) → α(x) is a logical truth, but then so is ∀x.α(x) → α(x) • Classical first-order predicate calculus (in L ): Linear calculus based on previous axioms and modus ponens as inference rule. • First-order deduction: Defined as propositional deduction. • ⊢ ; first-order deducibility: Just as ⊢0 denotes propositional deducibility. • Theorem 8.9.11: The Cut Rule, Deduction Theorem, Inconsistency Effect, reductio ad absurdum, and Principle of Indirect Proof hold in Fopcal. 11

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

• Theorem 8.9.14 (Semantic soundness of Fopcal ): If Φ ⊢ α , then also Φ |= α . In particular, if ⊢ α , then |= α . Proof: (Like in the case of Propcal.) Induction on the length of derivations. • Theorem 8.9.15: If Φ ⊢0 α , then also Φ ⊢ α . In particular, if ⊢0 α , then ⊢ α . • Problem 8.9.16: Show: ⊢ α(x/t) → ∃x α . My proof (recall, ∃x α ⇔df ¬∀x ¬α ): 0. 1. 2. ∀x ¬α, ∀x 3. 4. 5. 6. 7. 8. 9.

α, α → β ⊢ ⊢ ¬α → ¬α(x/t) ⊢ ∀x ¬α ⊢ α(x/t), ∀x ¬α ⊢ α(x/t), ∀x ¬α ⊢ α(x/t), ∀x ¬α ⊢ α(x/t) ⊢ ⊢ ⊢

β ∀x ¬α → ¬α(x/t) ¬α(x/t) ¬α(x/t) ¬α(x/t) α(x/t)

Modus Ponens Axiom 4 MP [α/∀x ¬α, β/¬α(x/t)] Cut 1,2 Weakening assumptions Trivial Def. of inconsistency ¬∀x ¬α (reductio—Main Step!) α(x/t) → ¬∀x ¬α (DT) α(x/t) → ∃x α (Def. 8.2.3) Q.E.D.

5.1

Derived rules for Fopcal (to replace the axioms)

• Rule of universal instantiation (UI): If Φ ⊢ ∀x α , then Φ ⊢ α(x/t) for any term t. – Follows directly from Axiom 4 and modus ponens. Axiom 4 was introduced for this purpose, so it won’t be invoked again. Purpose: obvious. If we can deduce the general statement, we want also to be able to deduce the instances. • Rule of existential generalization (EG): If Φ ⊢ α(x/t) for some term t , then Φ ⊢ ∃x α . See Problem 8.9.16 above (previous page!). • Free variable x in Φ : If x is free in some formula belonging to Φ. • Theorem 8.10.4: Given a deduction D : Φ ⊢ α such that x is not free in Φ , we can construct D ′ : Φ ⊢ ∀x α , such that x is not free in D ′ and every free variable in D ′ is also free in D . See: Proof by induction on the length k of D (structural induction on D ). Look in book, and find the two typos!

12

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

D:

Φ .. .

=⇒

Φ .. .

D′ :

∀x.α

α From this we get:

• Rule of universal generalization on a variable (UGV): If Φ ⊢ α , and x is not free in Φ , then Φ ⊢ ∀x α. . Replaces Axioms 2, 3, and 8. And this was the sole reason for these axioms. Problem 8.10.7. (Homework.) Purpose: Clearly, if x is not free in α , then ∀x α says nothing more than α . So the interesting case is where x is free in α . But this rule then captures an absolutely standard method of proof procedure in mathematics, one where we have to prove a generality, but begin with a free variable assumption. Example: we want to prove ∀n(P (n) → Q(n)) , but begin with the free variable assumption P (n) and then prove Q(n) , but conclude from this that ∀n(P (n) → Q(n) . Note that here, ‘ n ’ is not a free variable in the axioms, but is a free variable in the statement initially proved, P (n) → Q(n) . Note: The proviso in UGV is essential; see 8.10.6 (p. 182). Otherwise, we could have the following. Clearly, x 6= y ⊢ x 6= y ( x and y are free in the hypothesis Φ ). So UGV (without proviso) would say x 6= y ⊢ ∀x (x = 6 y) Absurd. Since x 6= y is true under any valuation on a universe with at least two objects (and x , y are assigned distinct values), but ∀x (x 6= y) is always false, i.e., is satisfied by no valuation! Thus, x 6= y 6|= ∀x (x 6= y) , which violates soundness (8.9.14). • ∃!x α : ∃!x α =df ∃y∀x (α ↔ x = y), where y is the first variable in alphabetic order that differs from x and is free in α (‘There exists exactly one’). Problem: 8.10.9 We have seen so far: UI, EG, and UGV. But we also have: • Rule of universal generalization on a constant (UGC): If Φ ⊢ α(x/c) , where c is a constant which appears neither in Φ nor in α , then Φ ⊢ ∀x α. Proof (relies on UGV). Similar to UGV (but, longwinded special case). Purpose of this is that it justifies another standard method of proof, which is, in fact, the same as the previous one but which uses a constant, one which is mentioned neither in the assumptions, nor in the formular α . 13

Phil 310: Winter 2013 Example:

Handout: Predicate Logic: Syntax, Semantics, Completeness

All Euclidean △ s have angle sum of 180◦ .

Φ = Euclidean axioms, which don’t mention any specific triangle yet what we prove is α(c) , i. e., some specific △ has angle sum 180◦ , i. e., Φ ⊢ α(c). What we can then conclude is Φ ⊢ ∀x α (all △ s have angle sum 180◦ ). • Summary: ( ∀ E, ∃ I, ∀ I.) Φ ⊢ ∀x α UI Φ ⊢ α(x/t) Φ⊢α UGV (x not free in Φ) Φ ⊢ ∀x α

Φ ⊢ α(x/t) EG Φ ⊢ ∃x α Φ ⊢ α(x/c) UGC (c not in α, Φ) Φ ⊢ ∀x α

• First-order ND rules: Fxa ∀Intro ∀x F

∀x F ∀Elim Fxt [Fxa ] .. .. ∃x F C ∃Elim C

Fxt ∃Intro ∃x F

The constant a must be free in F (Eigenvariablenbedingung).

6

Consistency of Fopcal (§11)

• Theorem 8.11.1: If Φ ⊢ (inconsistent), then Φ |= (unsatisf.). Proof: Direct by soundness. Similar proof to propositional case. • Theorem 8.11.2 (Consistency): Fopcal is consistent, i. e., it is impossible that both ⊢ α and ⊢ ¬α . Proof by contradiction: Suppose, for the sake of contradiction, that ⊢ α and ⊢ ¬α . I.e., ∅ ⊢ α and ∅ ⊢ ¬α . Thus, ∅ ⊢ . Hence, by 8.11.1, ∅ |= . 14

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

But every valuation satisfies ∅ . Hence, contradiction.



• Problem 8.11.4: Sketch for an elementary proof of consistency, which does not appeal to semantics! Idea: All axioms of Fopcal have even parity; modus ponens preserves parity. But, an inconsistency involves proving formulas with an even and also with an odd parity.

7

Witnessing preserves consistency

Sometimes if we have a statement of the form ∃xP (x) , it’s useful to have a name for something which instantiates the existential, even though we don’t have a name already, or do not possess a definite description. such a name a is called a witnessing constant for the formula, and the corresponding assertion P (a) is called a witness formula for P . So, in this formal context we have: • Witnessing formula/constant: α(x/c) is called a witnessing formula for ∃x α , and c is the witnessing constant. The question now arises as to the consistency of adding this formula. The following Lemma answers the question: • Lemma 8.11.5: If Φ is consistent and ¬∀x α ∈ Φ , and c is a constant that does not occur in Φ , then Φ ∪ {¬α(x/c)} is also consistent. Proof: (of contrapositive). Assume Φ, ¬α(x/c) ⊢ , i. e., inconsistent. By PIP: Φ ⊢ α(x/c) . By UGC: Φ ⊢ ∀x α ( c is not in Φ , but ¬∀x α ∈ Φ , so c is not in α ). Since Φ ⊢ ¬∀x α , we get Φ ⊢ (inconsistent).



Thus in effect we have: • Problem 8.11.6: Prove the Rule of Existential Instantiation with a Constant (EIC): If Φ is consistent and ∃x α ∈ Φ , and c is a constant that does not occur in Φ , then Φ ∪ {α(x/c)} is also consistent.

The following 2 Lemmas generalise the results here. The first says that if we add a finite number of witnessing formulas to Φ , and Φ is consistent, then consistency will be preserved. The second says that we can do this for arbitrarily many (not just finitely many) existential formulas in Φ . (Here we rely on the finiteness of proof, though) 15

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

• Lemma 8.11.7: Let Φ be consistent; for each i = 1, 2, . . . , k , let ¬∀xi αi ∈ Φ , and let ci be distinct constants that do not occur in Φ . Then, Φ ∪ {¬αi (xi /ci ) : i = 1, 2, . . . , k} is also consistent. Proof: DIY. • Lemma 8.11.8: Let Φ be consistent; let Φ′ be obtained from Φ by adding, for every formula of the form ¬∀x α in Φ , a ‘witnessing’ formula ¬α(x/c) , where c does not occur in Φ and where distinct constants c are used for distinct formulas of the form ¬∀x α . Then Φ′ is consistent as well. Proof: finiteness of proof reduces this case to the previous Lemma. Lastly, we deal with a subtlety. To a great extent, provable consistency is relative to the language at hand: after all, to say that Φ is consistent is to say that there are no formulas α, ¬α in the underlying language L which can be deduced from Φ . But what happens if the language is expanded? One way of expanding the language is by adding constant symbols to it; now this has 2 effects. First, generally, more formulas become available. And secondly, more Fopcal axioms become available, thus there are in principle more proofs available, and (as we’ve just said) potentially more things which could be proved. Could we therefore get inconsistency (the proof of a contradictory pair) where we previously had consistency? The next result (Theorem 8.11.9) tells us that, just by adding new constants, we cannot. • Theorem 8.11.9: Let Φ be a set of L -formulas that is consistent within L . Let L + be obtained from L by adding a set C of new individual constants. Then Φ is consistent within L + as well. Proof. Assume that Φ 0 α in L , and show that also Φ 0 α in L + . To show this, assume Φ ⊢ α in L + and derive a contradiction. (The proof of this involves showing how we can systematically replace the new constants with variables, and get a proof of α which does not involve the new constants. But, because of this, the new proof will be a deduction in the unexpanded L , which is not possible, by assumption.) The matter of expanding the language by adding new constants and witnessing formulas will be very important in what follows. Again, we might think that Fopcal is highly artificial, since once again all is squeezed into a few axioms and one inference rule, MP. Again, this impression is right—up to a point. But, as with Propcal, what’s remarkable is that this axiomatisation gives us a system which is more or less as simple as it could be for the investigation of it as a system, but which is also equivalent to a system of rules which are natural for the area we’re investigating, namely predicate inference. For we showed that 16

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

The system can be reduced to the propositional proof principles DT, IE, reductio, and PIP (together with modus ponens and Cut), and the specifically predicate inference rules summed up in UI, UGV and UGC. (We could also easily generate rules governing equality, too.) These can used alongside or instead of the axioms in Axiom Groups 9.1–9.8. Again, this this shows that we have in effect two calculi for deriving formulas: Axiomatic calculus: Axiom Groups 9.1–9.8 MP

Structural calculus: DT, IE, reductio, PIP, Cut, UI, UGC, UGV MP

Difficult to use (Need to find appropriate instantiations of axioms

Easy to use

Easy to reason about (only one inference rule)

Difficult to reason about (many rules to consider)

Again, since they are equivalent1 , we can use the one which best fits our requirements. We pointed out before that Propcal (in its structural version) formulates many of the principles of proof which we set out at the beginning, i. e., the principles which are concerned with propositional reasoning; this extension of the structural calculus now adds formal versions of the way we naturally reason with generalisations, variables and equality. In short, Fopcal completes our natural logic. The same question now arises for Fopcal as we had before with Propcal: Is the system adequate to the basic notions we have laid down? We’ve developed a formal counterpart to the way we normally reason, certainly in mathematics. The various structural rules indicate that we’re on the right track. But does this formal logic match up to the notion of logical consequence?

8

Completeness

The Soundness and Completeness Theorems (8.9.14 and 8.13.10) tell us that on a very basic level it is: again, Soundness tells us that it will not make mistakes, and Completeness tells us moreover that for any logical consequence (and so in particular for any inference which is valid), there will be a deduction which reflects this. Thus, the two together tell us that, when no premises are involved, the system Fopcal will produce all and only the logical truths as theorems. 1 We should argue for this, but the proof would be a natural extension of the argument in the propositional case.

17

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

Soundness is easy to prove: much the same as with the soundness of Propcal. We concentrate here on proving completeness. Since we have worked hard (over the last 100 years!) to arrive an adequate system, the difficulty this causes might seem a little surprising. Moreover, it seems a little artificial. Let me throw a little more light on this here.

8.1

General structure of the proof of Completeness of Fopcal

1. As before, we will prove Completeness in the form ‘Every consistent set of formulas Φ has a valuation which makes all of its formulas true’, i. e., if Φ is consistent, then it is satisfiable. This is equivalent to completeness in the form if Φ |= α , then Φ ⊢ α . (The same proofs will work as we used before.) So, given a consistent Φ , we have to find a structure and valuation which makes all the formulas in Φ simultaneously true. 2. The strategy in the case of Propcal involved three steps: 1. 2. 3.

Φ is consistent Ψ maximal consistent Ψ Hintikka

⇒ ⇒ ⇒

Ψ is maximal consistent, and Φ ⊆ Ψ. Ψ is Hintikka. Ψ satisfiable (if ϕ ∈ Ψ, then ϕσ = ⊤).

These are roughly the steps we follow here. We define a first-order version of a Hintikka set, and then show a version of 3: 3F OL .

Ψ Hintikka



Ψ satisfiable (if ϕ ∈ Ψ, then ϕσ = ⊤).

The maximal consistent sets continue to be important, and we could show in the same way that P ossibleF OL .

Φ is consistent



Ψ is maximal consistent, and Φ ⊆ Ψ.

If we could now show that maximal consistent sets are Hintikka (as we could in the case of propositional logic, stage 2. above), then we would be finished. But unfortunately we cannot show this. The reason, however, is clear: a maximal consistent set might not have what we can call the witnessing property. We say that a set of formulas has the witnessing property if, whenever that set contains a formula of the form ∃xα (or ¬∀xα ), it also contains a witnessing formula for that property, i. e., a formula of the form α(x/t) (or ¬α(x/t) ). Hintikka sets, however, must have the witnessing property; it’s one of the conditions for being Hintikka, and fits, of course, with the idea that Hintikka sets contain truthconditions for all the formulas they contain. So what do we do? Well, we look at a special kind of maximal consistent set called a Henkin set of formulas: a Henkin set is a maximal consistent set which does have the witnessing property, and thus we can show: 2F OL .

Ψ Henkin



Ψ is Hintikka.

Everything will then come down to showing that we can extend a consistent set of formulas to a Henkin set: 18

Phil 310: Winter 2013 1F OL .

Φ is consistent

Handout: Predicate Logic: Syntax, Semantics, Completeness ⇒

Φ ⊆ Ψ and Ψ is Henkin.

3. Thus, in sum, we show that if Ψ is a Hintikka set of formulas, the canonical valuation we construct makes all the formulas in the Hintikka set Ψ true. Second, we then show how to extend any consistent set Φ to a Henkin set Ψ , and that a Henkin set is bound to be Hintikka. Since Φ is necessarily a part of a Hintikka set Ψ , and since very formula in Ψ is made true by the canonical valuation, every formula in Φ is made true, too. So, the proof structure is quite similar to the propositional case, but the details are different. In particular, there is some trickiness in extending to a Henkin set, but we will show how to overcome these. The first step, though, is showing that every Hintikka set is satisfiable.

8.2

Hintikka sets and their satisfiability

8.2.1

First-order Hintikka sets (§7)

• First-order Hintikka set in L : Set Φ of L -formulas satisfying: 1. If α is atomic formula and α ∈ Φ , then ¬α 6∈ Φ. 2. If ¬¬α ∈ Φ , then α ∈ Φ. 3. If α → β ∈ Φ , then ¬α ∈ Φ or β ∈ Φ. 4. If ¬(α → β) ∈ Φ , then α ∈ Φ and ¬β ∈ Φ. Note: So far, like the propositional case. 5. If ∀x α ∈ Φ , then α(x/t) ∈ Φ for every L -term t. 6. If ¬∀x α ∈ Φ , then ¬α(x/t) ∈ Φ for some L -term t. Witnessing condition: For α = ¬β , this is equivalent to: If ¬∀x ¬β ∈ Φ , then ¬¬β(x/t) ∈ Φ for some L -term t , i. e., if ∃x β ∈ Φ , then β(x/t) ∈ Φ for some L -term t. Note: Now, regarding equality. 7. If L is a language with equality, then t = t ∈ Φ for every L -term t. 8. If n ≥ 1 , and si = ti ∈ Φ (1 ≤ i ≤ n) for terms s1 , . . . , sn and t1 , . . . , tn , then fs1 . . . sn = ft1 . . . tn ∈ Φ for every n -ary function symbol f of L . 9. If n ≥ 1 , and si = ti ∈ Φ (1 ≤ i ≤ n) for terms s1 , . . . , sn and t1 , . . . , tn , and the atomic formula Ps1 . . . sn ∈ Φ , then also Pt1 . . . tn ∈ Φ for every n -ary predicate symbol P of L . In particular, for n = 2 and P is = , if s1 = t1 , s2 = t2 , s1 = s2 ∈ Φ , then t1 = t2 ∈ Φ. • Goal: Every Hintikka set is satisfiable.

19

Phil 310: Winter 2013 8.2.2

Handout: Predicate Logic: Syntax, Semantics, Completeness

Building an interpretation

Suppose we have a Hintikka set Φ ; the task is to find an interpretation which makes Φ all true. Let us first enter a clarification. • The task here is not to find a ‘natural’ way of making Φ all true, so we don’t have to scour the metaphysical world until we find an interpretation which fits. This would be philosophical/scientifically difficult/impossible. • Think: we want a method which applies to any consistent set Φ , and there will be all kinds of these. Indeed, we have to use the only two bits of information we are given: 1. The formulae in Φ are written in the f-o language; 2. we know that Φ is a Hintikka set. • Given this, we are free to build something which counts as an interpretation, to gerrymander, to rig up an interpretation which does the job, using the two facts just stated. • Although there are some difficulties carrying it through, the idea behind the proof is deceptively simple. The idea is to build an interpretation from scratch out of material from something we know we have, namely bits of the language. • Even cleverer, we take the bits of the language which potentially stand for objects (thus, the terms) as the objects themselves. (In fact, this idea is so simple that its simplicity masks its cleverness!) • There is a complication, namely that the set Φ might be able to show that s = t even when s and t are distinct terms. To get around this problem, we have to take the right equivalence classes of terms instead of just the terms themselves. Having done this, we can then set up the structure and the right valuation based on this, as is set out in the book and in the following. But remember: in building an interpretation, we don’t just require objects; we also requires functions and predicates over those objects too, enough to interpret the function symbols and the predicate symbols of the language. Let’s bear this in mind. So we need: Objects: Functions: Predicates:

the domain f1 , . . . , fn P1 , . . . , Pm

?? ?? ??

Basic Idea for objects: 1. Build a valuation that makes all formulas in the Hintikka-set Φ true from the syntactic material out of which the formulas in Φ are composed (specifically the terms). 20

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

2. In fact, make the objects of the domain the linguistic objects (the terms) themselves, and then put tσ as just t itself ! Problem: Does this work? Unfortunately, no (if equality is around)! Why? Standard philosophy of language problem: Evening star = morning star. Names can refer to the same object. We can have s and t distinct terms (e. g., names), but s = t is in Φ ( Φ thinks that ‘ s ’ names the same thing as ‘ t ’). But for our proposed σ , sσ 6= tσ , since s and t are distinct. Can we overcome the problem? Yes, using equivalence classes. 8.2.3

Equivalence classes (Chapter 2, § 3, p. 30–32)

Very important notion in mathematics. 1. An equivalence relation R is one which is like identity (without necessarily being identity) in that it is

(a) For all a, (b) For all a, b: (c) For all a, b, c:

reflexive, aRa.

symmetric,

and transitive:

aRb ⇒ bRa. aRb, bRc ⇒ aRc.

=⇒ Examples of equivalence relations? Being related, playing in the same team, being the same height, . . . 2. Equivalence relations give rise to equivalence classes: [a] ⇔df {b : aRb}. The equivalence classes can then be taken as objects instead of the original elements, since we have a good notion of identity for the new objects, for we can prove: Theorem 1 (2.3.5) [a] =R [b] iff aRb . 21

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

The equivalence relation on the original objects can be lifted to define identity for equivalence classes. Proof:

⇒ Suppose [a] = [b] . Since R is reflexive, aRa . Hence a ∈ [a] .



Since [a] = [b] , a ∈ [b] , which means bRa .



aRb by symmetry.

⇐ (SKIP) Assume aRb . We show [a] ⊆ [b] (and [b] ⊆ [a] ). Assume x ∈ [a] , then aRx , and so xRa by symmetry. xRa and aRb , so xRb by transitivity. Hence, bRx by symmetry, so x ∈ [b] . ∴

[a] ⊆ [b] .

Since aRb gives bRa we can prove [b] ⊆ [a] likewise. Hence, [a] = [b] .  Lastly, Theorem 2 (2.3.6) If R is an equivalence relation on A , and a is any member of A , then a belongs to exactly one equivalence class, namely [a] . In other words: An equivalence relation partitions a set into disjunct equivalence classes. Proof: Certainly a ∈ [a] , by reflexivity. Suppose a ∈ [b] . Then aRb , and by (2.3.5) ∴

22

[a] = [b] .



Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

Now the point is that the formal equality of terms, or strictly speaking ‘being thought = by Φ ’, is an equivalence relation: s=t∈Φ

⇔df

sE t

(Lemma 8.7.5, with proof!). Now we can put terms into equivalence classes, [t] ⇔df {s : sE t}, and then take these equivalence classes as the underlying objects, not the terms themselves. • In philosophy of language: Speak of propositions rather than sentences. • Russell defined numbers as equivalence classes! • Z , Q can be defined as equivalence classes over IN. R can be defined via equivalence classes over Q . So: Objects: Functions: Predicates: 8.2.4

the domain f1 , . . . , fn P1 , . . . , Pm

{[t] : t ∈ L} ?? ??

Define valuation σ

Basically, what we want is: tσ = [t]. So that our valuation is based on U = {[t] : t is an L -term }. What we want to do is to define σ such that given t , the object it makes t denote is [t] . This would solve our problem with identity, for suppose s and t are distinct terms, but s = t ∈ Φ. [t] ր տ s = t Then from the latter, it follows that sE t , hence (from what we proved) [s] = [t] . ∴

it follows (if we succeed in defining σ as we wish) that sσ = [s] = [t] = tσ .

Definition of σ (for variables and function symbols): Definition 3 (8.7.8) xσ = [x] , for each variable x . 23

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

Next, we have to define the function f σ for each function symbol f . This function f σ will act on n -tuples of objects from the domain, i. e., on [t1 ], [t2 ], . . . , [tn ] . Hence, we can define f σ quite naturally as Definition 4 (8.7.9) f σ ([t1 ], [t2 ], . . . , [tn ]) = [f (t1 , . . . , tn )] (the equivalence class of f (t1 , . . . , tn ) ). Will this definition work? There’s a subtlety we have to face. [t1 ], . . . , [tn ] are whole classes (generally quite large), whereas t1 , . . . , tn are just representatives of those classes. Similarly, f (t1 , . . . , tn ) is just a representative of the class [f (t1 , . . . , tn )] . Question: Would the results with f σ be the same if other representatives where chosen? Examples: Think: • Paul McCartney’s band vs. John Lennon’s band. Can be shown that result is independent of choice of representatives. Answering this question affirmatively means showing:that if representatives s1 , . . . , sn were chosen instead, i. e., si ∈ [ti ], f σ would give the same result , i. e., [f (s1 , . . . , sn )] = [f (t1 , . . . , tn )]. But we can show this. 1. The new representatives s1 , . . . , sn represent [t1 ], . . . , [tn ], i. e., si ∈ [ti ] for i = 1, . . . , n. 2.

si ∈ [ti ] ⇒ [si ] = [ti ] ⇒ si ∈ ti ⇒ si = ti ∈ Φ

3. But since Φ is a Hintikka set, s1 = t1 ∈ Φ, . . . , sn = tn ∈ Φ is enough to guarantee f (s1 , . . . , sn ) = f (t1 , . . . , tn ) ∈ Φ by condition (8) of Hintikka sets. Definition of Hintikka sets on p. 167

We’ve now come to a point where we can show Theorem 5 (8.7.11) tσ = [t] for each term t .

24

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

Proof: (by induction on deg t , of terms).

1. If t is a variable, follows by definition. 2. Let t = f (t1 , . . . , tn ), and as Induction Hypothesis assume that the claim holds for t1 , . . . , tn . tσ = (f (t1 , . . . , tn ))σ

= f σ (tσ1 , . . . , tσn ) (BSD F2) σ = f ([t1 ], . . . , [tn ]) (IH) = [f (t1 , . . . , tn )] (Def. 8.7.9) = [t].

(pp. 172–175).

 Predicates can be treated similarly (8.7.12). If Pt1 . . . tn ∈ Φ, for any n -ary extralogical predicate symbol P and any terms t1 , . . . , tn , we let h[t1 ], . . . , [tn ]i ∈ Pσ . So now we have: Objects: Functions: Predicates:

the domain f1 , . . . , fn P1 , . . . , Pm

{[t] : t ∈ L} f1 ([t1 ], . . . , [tk ]) = [ft1 . . . tk ], f2 ([t1 ], . . . , [tj ]) = [ft1 . . . tj ], . . . Pn = {< [t1 ], . . . , [tk ] > | Pt1 . . . tk ∈ Φ}

This completes our specification of the interpretation and simultaneously, the valuation. 8.2.5

Summary:

Goal: Definition of valuation σ that makes all formulas in a Hintikka set Φ true. • U: U =df {[t] : t is an L -term }. • sE t : If either L is without equality and s is the same as t , or L is with equality and s = t ∈ Φ. • E is an equivalence relation: • [ t ]: For each term t , [t] =df [t]E = {s : sE t} (the E -class of t ). • Definition of valuation σ that makes all formulas in a Hintikka set Φ true: 1. xσ =df [x], for each variable x. 2. f σ ([t1 ], [t2 ], . . . , [tn ]) =df [ft1 t2 . . . tn ], for any n -ary function symbol f and terms t1 , . . . , tn . 25

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

3. It follows: tσ =df [t], for every term t . Machover 8.7.11, 172 Proof (see book) 4. h[t1 ], . . . , [tn ]i ∈ Pσ =df Pt1 . . . tn ∈ Φ, for any n -ary extralogical predicate symbol P and any terms t1 , . . . , tn . Machover, 8.7.12, p. 173 • Big Theorem 8.7.15: For any formula ϕ , •

ϕ ∈ Φ =⇒ ϕσ = ⊤ , and

• ¬ϕ ∈ Φ =⇒ ϕσ = ⊥. Proof by simultaneous induction on deg ϕ. Comment: Recall, that the universe U of the valuation consists of equivalence classes of terms in L . Recall, primitive symbols of (a first-order object language) L : (i) An infinite sequence of individual variables (v1 , v2 , . . . , vn , . . . ). (ii) For each natural number n, a set of n-ary function symbols. 0-ary are function symbols are called individual constants. (iii) For each natural number n, a set of n-ary predicate symbols (at least one of which must be non-empty). (iv) Two connectives (¬, negation symbol; →, implication symbol). (v) The universal quantifier ∀. • kL k; cardinality of (a language) L : Cardinality of the set of all primitive symbols of L . Since kU k is certainly less than the number of possible terms, and this is less than the number of possible strings of primitive symbols, we can prove the following (astonishing) theorem: • Theorem 8.7.17: Given a Hintikka set Φ in L , we can define an L -valuation σ such that the cardinality of the universe of σ is at most kL k and such that σ |= Φ. Proof, uses the Axiom of Choice to pick an element from each (of the possibly infinitely many) equivalence class of terms in U . =⇒ Consider a first-order axiomatization Φ of the (uncountably many) real numbers. Since the language is countable, according to this theorem, it has a model with a denumerable universe!

26

Phil 310: Winter 2013

8.3

Handout: Predicate Logic: Syntax, Semantics, Completeness

Maximal consistent sets and Hintikka sets

Recall the definition: • Maximal consistent set: Consistent set of formulas that is not a proper subset of any consistent set of formulas. In other words, adding a single new formula to a maximal consistent set Φ makes it inconsistent. • Theorem 8.12.1: If Φ is a maximal consistent set and Φ ⊢ α , then α ∈ Φ . Proof: Like the propositional case, Theorem 7.12.3. • Theorem 8.12.2: If Φ is consistent, then Φ is maximal consistent iff for every formula α , either α ∈ Φ or ¬α ∈ Φ. Proof: Like the propositional case, Theorem 7.12.4. • Theorem 8.12.4: For any valuation σ , the set {ϕ : ϕσ = ⊤} is maximal consistent. Proof: Like the propositional case, Theorem 7.12.6(i). 8.3.1

Unlike propositional logic. . . prop. and first-order ( ∀ σ ) {ϕ : ϕσ = ⊤}

maximal consistent only prop. ( ∃ σ ) Henkin Hintikka

Doesn’t work in first-order case! • Difference from propositional case: In the case of propositional logic, we proved the converse, i. e., that every maximal consistent set Φ has the form {ϕ : ϕσ = ⊤} for some valuation σ , by showing that 1. every maximal consistent set is Hintikka, and 2. every Hintikka set is satisfiable, i. e., is satisfied by some truth valuation. We need to show:

Every maximal consistent set is satisfiable. 27

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

• Theorem 8.12.5: If Φ is maximal consistent, it fulfills conditions (1)–(5) and (7)–(9) of Definition 8.7.1. (p. 167) of being a Hintikka set. Proof: (1)–(4): As in proof of Theorem 7.12.5. (5) and (7)–(9): UI and Axioms 5–7, and Theorem 8.12.1. • Missing Condition (6): If ¬∀x α ∈ Φ , then ¬α(x/t) ∈ Φ for some L -term t. =⇒ Homework problem! To overcome this difficulty, we introduce Henkin sets.

8.4

Henkin sets

• Henkin set (Definition): A set Φ of formulas in L , such that Φ is maximal consistent in L , and for any formula α and any variable x , if ¬∀x α ∈ Φ then ¬α(x/t) ∈ Φ for some term t . If Φ is Henkin, then it is also Hintikka. 8.4.1

Extending a consistent set to a Henkin set

But how do we show that every consistent Φ can be extended to a Henkin set? The original problem is this: Suppose we have a consistent Φ = Φ0 in language L0 . 1. Extend Φ0 to maximal consistent Ψ0 (in L0 ). As before. 2. Expand L0 to L1 by adding constants, and add all the required witnessing formulas to Ψ0 to create Φ1 (in language L1 ). Problem: Φ1 is consistent, but not necessarily maximal consistent in L1 . 3. Extend Φ1 to maximal consistent Ψ1 (in L1 ). As before. 4. Expand L1 to L2 by adding constants, and add all the required witnessing formulas to Ψ1 to create Φ2 (in L2 ). Same problem: Φ2 is consistent, but not necessarily maximal consistent in L2 . 5. Etc., etc..

28

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

Consistent

Maximal consistent

(in L0 ) Φ0

extend

Ψ0 (in L0 )

tnesses add wi

(in L1 ) Φ1

consistent, but not nec. Hintikka (b/c witnessing property fails)

extend tness add wi

Ψ1 (in L1 )

es

... This doesn’t seem to help. Or does it? No, and yes! No: Carried out only finitely many times, we never get Φn , Ψn which are Henkin. Yes: Carried out infinitely far (in the limit) it works! [

Ψn = Ψω ,

and

[

Ln = Lω .

See (M., p. 190), but not picture. . . 8.4.2

Construction of Φn , Ψn and Ln

• Definition of Ln : For each n ∈ IN we define 1. a first-order language Ln , 2. a set Φn of formulas, and 3. a set Ψn of Ln -formulas that is maximal consistent in Ln . Base clauses: L0 = L and Φ0 = Φ . As Ψ0 we choose some set of formulas that is maximal consistent in L0 and includes Φ0 . Inductive clauses: Ln+1 : • For each Ln -formula ϕ , let cϕ be a new constant that is distinct from any other constants. • Let Cn = {cϕ : for each formula ϕ inLn } . • Define Ln+1 as the language obtained by adding Cn to Ln . Thus, Ln+1 has all the formulas of Ln , plus all the new formulas created with the new constants. 29

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

Φn+1 : • Since Ψn is maximal consistent in Ln , it is still consistent (by Theorem 8.11.9— see p. 16) in Ln+1 (albeit not maximally so). • Define Φn+1 to be obtained from Ψn as follows: For each formula ϕ ∈ Ψn of the form ¬∀x α, add the formula ¬α(x/cϕ ) , where cϕ is the corresponding new constant in Cn . ⇒ Φn+1 is a set of Ln+1 -formulas. ⇒ Since Ψn is a set of Ln -formulas, with Ψn ∩ Cn = ∅ , Φn+1 is consistent (by Lemma 8.11.8—see p. 16). Ψn+1 : • Choose Ψn+1 as some set that is maximal consistent in Ln+1 and includes Φn+1 . • Result of the previous definition: Φ = Φ0 ⊆ Ψ0 ⊆ Φ1 ⊆ Ψ1 ⊆ · · · ⊆ Φn ⊆ Ψn ⊆ Φn+1 ⊆ Ψn+1 ⊆ . . . And: L = L0 ⊆ L1 ⊆ L2 ⊆ · · · ⊆ Ln ⊆ Ln+1 ⊆ . . . Thus, continual extension, and nothing taken away! Finally: Take the limits of these!

8.4.3

Construction of Ψω and Lω

• Definitions of Ψω and Lω : Take the limits. • Lω = union of all the languages Ln . • Ψω = union of all the sets Ψn (equally of all the sets Φn ). Thus, Lω results from L by adding all the constants in all the Cn to L ; and Ψω is such that: an Lω -formula α belongs to Ψω iff α belongs to Ψn for some n . Thus, α is in Ψω iff there is some n such that α ∈ Ψk , for all k ≥ n . Recall what we’re doing: 1. 2. 3.

Φ consistent in L Φ′ is Henkin Φ′ Hintikka

⇒ ⇒ ⇒

Φ′ is Henkin in L ′ , Φ ⊆ Φ′ . Φ′ is Hintikka. Φ′ satisfiable.

30

Phil 310: Winter 2013 8.4.4

Handout: Predicate Logic: Syntax, Semantics, Completeness

Show: Ψω is Henkin

• Theorem 8.13.8: Ψω is a Henkin set in Lω . Proof (long). We have to show: 1. Ψω is consistent. 2. Ψω is maximal consistent in Lω . 3. Ψω contains all its witnessing formulas, i. e., if ¬∀x α ∈ Ψω , then ¬α(x/c) ∈ Ψω for some constant c . Proof:

1. Ψω is consistent. It’s enough to show that every finite subset is consistent (for a proof of inconsistency of Ψω can only involve finitely many formulas from Ψω .) Let {α1 , . . . , αm } be an arbitrary finite subset of Ψω . α1 ∈ Ψω . ∴

there’s a number n1 , such that for all k ≥ n1 , α1 ∈ Ψk .

α2 ∈ Ψω . ∴

there’s a number n2 , such that . . . etc.

Now let p be a number bigger than all these n1 , n2 , . . . , nm ; thus p ≥ n1 , p ≥ n2 , . . . , p ≥ nm . Hence, it follows that α1 ∈ Ψp , α2 ∈ Ψp , . . . , αm ∈ Ψp , and so {α1 , . . . , αm } is a finite subset of Ψp . But Ψp is consistent, by construction. Hence, {α1 , . . . , αm } is also consistent. 2. Ψω is maximal consistent in Lω . To show the maximal consistency of Ψω in Lω , we only have to show that for any Lω -formula α , either α or ¬α is in Ψω . Consider some formula α ; α can contain at most finitely many new constants c1 , . . . , cm . But c1 is in L

n1

for some n1 , and in all Lk with k ≥ n1 .

c2 is in Ln2 for some n2 , and in all Lk with k ≥ n2 . .. . cm is in Lnm for some nm , and in all Lk with k ≥ nm . Now let p be bigger than all n1 , n2 , . . . , nm . 31

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

Hence, c1 is in Lp , c2 is in Lp , . . . , cm is in Lp . Since all these constants are in Lp , it follows that α and ¬α are formulas of Lp . But Ψp (by construction) is maximal consistent in Lp . Hence one of α , ¬α belongs to Ψp , and hence also to Ψω . 3. Witnessing.

Suppose ¬∀x α ∈ Ψω . Show: ¬α(x/t) for some t ∈ Lω .

By our assumption, ¬∀x α ∈ Ψ

n

for some n .

But by the definition of Φn+1 , there is some suitable new constant c such that ¬α(x/c) is a formula added to Φn+1 . But this means that it is in Ψn+1 , too, and hence in Ψω . 8.4.5



. . . finally: We put it all together!

Thus, what we have shown is that: Step 3′ : Every consistent set of formulas Φ can be extended to a Henkin set Ψ . But Step 2′ : Every Henkin set is a Hintikka set. and Step 1′ : Every Hintikka set gives rise to a valuation σ which makes all the formulas in it true. Since Φ ⊆ Ψ , the valuation σ also makes all formulas in Φ true.



For every consistent set Φ , there is a valuation making all the formulas in Φ true. Thus: If Φ is consistent, then Φ is satisfiable.

The contrapositive is: If Φ is not satisfiable, then Φ is inconsistent. Now, we can prove the Completeness Theorem in the form we want: If Φ |= α , then Φ ⊢ α. 32

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

Proof: Let Φ |= α : Every valuation σ that satisfies Φ also makes α true. So, for every valuation σ that satisfies Φ, (¬α)σ = ⊥ , since σ can not satisfy both α and ¬α. Thus, Φ, ¬α |= : no valuation can satisfy both. Φ, ¬α ⊢ , by the theorem just established (move from semantic to syntactic notion of consequence!). Φ ⊢ α (PIP).



Thus, we have proved: Strong completeness of Fopcal.

9

Further results and remarks

Note: 1. We can show that the valuation has a universe exactly the same size as the language (usually denumerable). This gives the L¨ owenheim-Skolem Theorem (13.13), in one version. (Downward) L¨ owenheim-Skolem: • Theorem 8.13.13 (L¨owenheim-Skolem): Let Φ be a satisfiable set of L -formulas. Then there exists a valuation σ such that σ |= Φ and such that the universe of σ has cardinality not greater than kL k . 2. We can easily prove the Compactness Theorem for first-order logic from Strong Completeness. • Theorem 8.13.12 (Compactness theorem for first-order logic): If Φ is a set of formulas such that every finite subset of Φ is satisfiable, then Φ is satisfiable. Proof (similar to case in Propcal). NB: This is one of the most important results about first-order logic, and gives rise to surprising limitations: The existence of non-standard models! 3. We began by using elementary mathematics to study the language of logic (simple number-theory, the Principle of Mathematical Induction), but lately we have been using something much stronger, in fact the mathematical theory of infinite sets (applied here to sets of formulas). [The treatment of infinite multiplicities as objects.] There are two further things to note here, by way of expansion on this. 33

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

(a) The language and the notions of deducibility and deductive consistency/inconsistency are fairly straightforward and can be easily treated using the simple number theory. (b) However, the concepts of logical consequence and satisfiability are essentially set-theoretic: indeed, they involve quantification over a significant totality of sets. (c) Hence, it is remarkable (!) to note that the Completeness Theorem tells us that these notions are equivalent, though (of course) we’ve used rather strong mathematics to prove it. 4. Lastly, we should note this. Our proof of the Strong Completeness all rests on one central result: given a Hintikka set, we can construct a valuation which makes all the formulas in it true. But this valuation is constructed out of the syntax of the system, elements of the language (plus some set theory to create the right equivalence classes).

Outlook: So, now we’ve established that first-order logic (just like propositional logic) is sound and complete (that’s why we like it!). • We have specified the language of first-order logic. • We have introduced a semantic notion of consequence (in terms of valuations based on a structure). • We have introduced a syntactic notion of consequence (in terms of derivations from axioms). • And, finally, we have shown that these two notions coincide, that they are extensionally equivalent, although conceptually very different. Maybe, you didn’t expect the proofs to be so complicated (involving infinite unions of languages, as in the construction of a Henkin set), but the result shouldn’t be a great surprise. If I’d have told you these results at the beginning of the course, you’d have said ‘Sure, that’s what I’d expected anyway’. In the next part of the course, however, we’ll see that things aren’t as smooth as one would like them to be: first-order logic gives rise to non-standard models and to the incompleteness results! Think about this: There are uncountably many arithmetical truths, but we have only countably many sentences to express them. . . A look back. . . Up to now we’ve studied the 34

Phil 310: Winter 2013

Handout: Predicate Logic: Syntax, Semantics, Completeness

Language of first-order logic: L And we discussed two notions of consequence:

Syntactic consequence

Semantic consequence

Deducibility – axiom system – rule-based system

Logical consequence (valuations on a structure)

Consistency

Satisfiability

“fairly straightforward” “essentially set-theoretic” (simple arithmetic, induction) տ ր Remarkable: Equivalent! We used strong mathematics (set theory) to show this! But ‘that’s what I’d expected anyway’. Thus, so far, we’ve seen no real surprises (other than that some proof were surprisingly complicated), but the next part of the course will be full of surprises! We will study:

Theories

Models

formulated in L

defined in L

Philosophical underpinnings: • Frege’s logicism • Hilbert’s programme • Carnap’s Logical Syntax (1934) We shall focus on our favourite theory, namely that of the natural numbers: the purest, most beautiful and simple objects of mathematics. It is very intuitive, but making it rigorous will prove to be very difficult . . . ‘What seems easy, often isn’t!’ ( → Phil of Math!)

35