##### A Primer on Logic

##### Part 4.1:

##### Predicate Logic: Preliminaries

*A note to the reader**: It has become obvious to me that this Part is going to end up being far longer than I originally thought. In light of that, I am going to break Part 4 into sub-parts. In this sub-part, 4.1, I address some preliminaries to predicate logic, and introduce some of the basics of its language, which I call “Logish”.*

1.* Introduction*

Predicate logic, as we know it today, originated with the pioneering work of the philosopher and mathematician Gottlob Frege. He devised his logical system with two main goals in mind. First, he wished to develop a logic which, unlike Aristotelian logic, was powerful enough to represent advanced forms of mathematical reasoning. Second, he wished to show that, *contra* Kant, arithmetic was indeed reducible to pure logic, and so ‘analytic’ in a certain sense[1]. While his second project was a failure, his first was a great success. In this Part we shall discover what this logic is, why it was needed, and how it works.

2. *Subjects, Predicates, and Variables*

Apart from quantified statements, which will get the attention they deserve below, all English statements have one or more subjects and a predicate. The subject is the part of the statement that picks out the entity about which something is to be said, and the predicate is the part of the statement which says something about it. In “Socrates is human” ‘Socrates’ is the subject and ‘is human’ is the predicate. Similarly, in “That coffee is too hot” ‘that coffee’ is the subject and ‘is too hot’ is the predicate, and in ‘The Sphinx has a broken nose” ‘the Sphinx’ is the subject and ‘has a broken nose’ is the predicate.

Some subject-predicate statements say something about more than a single thing. These are relational statements, which we encountered in the *Interlude*. In general, relations are predicates which may apply to more than one thing. The exceptions are relations like identity, which due to its nature can only relate things to themselves. There are also relations like ‘is the same height as’. It can relate some things to others, as when, for example, Scott is the same height as Smith. But, trivially, everything which has a height at all is the same height as itself, so in addition to relating Scott to Smith, ‘is the same height as’ also relates Scott to Scott and Smith to Smith. Relations like these, which relate every entity to which they can apply to itself, are called *reflexive*.

There is no upper limit to the number of things relations can relate. Suppose some entity e_{2} is between e_{1} and e_{3}. In this case, ‘*x* is between *y* and *z*’ (where ‘*x*’, ‘*y*’, and ‘*z*’ mark “gaps” where subjects can be plugged in) relates three things—e_{1, }e_{2, }and e_{3}—and is said to be a *three place* relation. Similarly, suppose Tom and Ted regularly play ping-pong and poker, and that Tom has won sixty percent of their ping-pong matches while Ted has won fifty five percent of their poker games. One could then say “Tom plays ping-pong better than Ted plays poker”. (That is, even though Ted is better at poker than Tom is, the extent to which Ted is better than Tom at poker is less than the extent to which Tom is better than Ted at ping-pong.) In this case ‘*x* plays *y* better than *z* plays *w*’ is a four place relation. It is important to recognize that the number of places a relation has need not be the same as the number of objects that it relates. The relation ‘*x *is identical to *y*’ is a two place relation even though it never relates two distinct entities to each other.

In the last two examples of relations, the letters used to mark gaps are *variables*, and have pretty much the same function as the variables that occur in algebra. Any lowercase italicized letter can serve as a variable, though usually we will only use the letters from ‘*w*’ to ‘*z*’. For now, as far as we’re concerned the only noteworthy difference between these variables and those of algebra is that terms other than numerals can be substituted for them. As in algebra, one can substitute the same term for different variables, but if the same variable occurs more than once in an expression one must substitute the same term for each occurrence of that variable. In the expression ‘*x* is the same age as *y*’ one could substitute ‘Karen’ for *x* and ‘Maria’ for *y* to get “Karen is the same age as Maria”, but one could also substitute ‘Maria’ for both *x* and *y* to get “Maria is the same age as Maria”, which is a trivially true statement that could be better expressed as “Maria is the same age as herself.” However, in ‘*x* is the same age as *x*’ one has no choice but to substitute the same term for both occurrences of ‘*x*’, so *every* statement that could be formed from this expression by substituting a term for *x* is trivially true. This shows us why it is important keep track of which variables mark which gaps of a relation.

From what has been said so far you might have realized that there is an easy way to form predicates with an arbitrary number of places: just take a statement and remove at least one of the subjects. Consider once more the statement “Tom plays ping-pong better than Ted plays poker”. Instead of removing *all* of the subjects, one can remove ‘Tom’ to get the one place predicate ‘*x *plays ping-pong better than Ted plays poker’. Additionally, one could remove ‘Ted’ to get the two place relation ‘*x* plays ping-pong better than *z *plays poker’. Alternatively, one could have kept the subjects ‘Tom’ and ‘Ted’ and excised ‘ping-pong’ and ‘poker’ from the original statement, yielding the two place relation ‘Tom plays *y* better than Ted plays *w*’. And so on.

Some predicates apply to nothing at all. Such predicates are said to be *empty*. Some empty predicates don’t apply to anything even though they could have. An example is ‘is the tenth planet of the Solar System’. Whether your count Pluto as a planet or not, there is (according to current opinion) no tenth planet. Still, there could have been if the conditions that obtained during the formation of the Solar System had been a bit different. By contrast, a predicate like ‘is larger than itself’ doesn’t just *happen* to be empty, it would have been empty no matter what, because nothing can be larger than itself. In Aristotelian logic, it is presupposed that general terms apply to something. The fact that this doesn’t hold in predicate logic has consequences for the logical relationships depicted in the *Square of Opposition*, and renders invalid some syllogisms that were traditionally thought to be valid. We shall see which syllogisms these are when we come to the discussion of quantification in section 4.

3. *Logically Speaking: An Introduction to the Language of Predicate Logic*

Now that we know a bit about subjects, predicates and variables, we can begin to learn the formal language of predicate logic. I will call this language *Logish* (the ‘g’ being pronounced like a ‘j’). In Logish we will represent subject-predicate statements by means of constants and predicate letters. *Constants* are the logical counterpart of a subject or singular term. Lowercase letters from ‘a’ to ‘o’ will be used as constants; and, as in Part 2, one can append subscripts to them if necessary. *Predicate letters* are the logical counterparts of predicates, and a single predicate letter can stand in for any predicate, no matter what the number of its places is. We will use capital, italicized letters from ‘*A*’ all the way to ‘*Z*’ as predicate letters. Predicate letters are very much like the term letters we met with in Part 3. They apply to entities or groups of entities, sometimes more than one, and signify that the entities or groups they apply to have something in common. The only important difference between predicate letters and term letters is that some predicate letters may stand in for predicates which apply to nothing, while term letters must always stand in for general terms which apply to something.

In Logish one forms an atomic statement by placing a predicate letter in front of a constant. Usually, one uses the first letter of the predicate one is symbolizing as the predicate letter and the first letter of the subject one is using as the constant. So, to symbolize “Socrates is human”, one uses ‘*H*’, the first letter of ‘human’, as the predicate letter, and ‘s’, the first letter of ‘Socrates’, as the constant. The result is the atomic statement “*H*s” Relational statements can also be symbolized as atomic statements. For instance, one would symbolize “Plato taught Aristotle” as “*T*pa”. Here ‘*T*’ is the first letter of ‘taught’, ‘p’ is the first letter of ‘Plato’, and ‘a’ is the first letter of ‘Aristotle’. A caveat: This statement is not equivalent to “*T*ap”, which would translate into English as “Aristotle taught Plato”, because the relation ‘*x* taught *y*’ is not symmetric. A *symmetric* relation is one which always holds between *x* and *y* when it holds between *y* and *x*. Earlier we encountered the relation ‘is ten feet distant from’, which is symmetric since if *x* is ten feet distant from *y* then *y* is ten feet distant from *x*. Because of this, when symbolizing English statements it is important to remember both the order of the subjects in the statement and whether the relation that relates them is symmetric or not.

In much the same way as we have just done, we could symbolize the statement “Caitlin gave a magazine to Tracy” as “*G*cmt”. This preserves the order of the subjects as they occur in the symbolized statement, but this is not the only way of symbolizing it. One could also write “*G*mtc”, “*G*mct”, etc. Thus, when symbolizing relational statements it is necessary to accompany the symbolization with a key that depicts the relation abstractly, with variables marking its places, and which specifies which places of the relation have which “role”. In this case, one could specify that “*Gxyz*” means ‘*x* gave a *y* to *z*’, *not* ‘an *x *was given to* y *by* z*’, or ‘an *x *was given by* y *to* z*’, etc. The key should thus look like this:

“*Gxyz*”

‘*G*’ means ‘gave’

‘*x*’ is the giver

‘*y*’ is the thing given

‘*z*’ is the recipient

Further examples of keys will be given in section 5, where you will see how to translate from English to Logish and *vice versa.*

As in propositional logic, complex statements can be built up from simpler ones by using truth functions. Letting ‘*Mx*’ mean ‘*x* is mortal’ and letting ‘s’ still stand in for ‘Socrates’, one could take the statements “*H*s” and “*M*s” and form the conditional “*H*s ⊃ *M*s”, i.e., “If Socrates is human then Socrates is mortal”. Using these same statements, one could also form the complex statements “~*M*s”, “~*H*s”, “*H*s & *M*s”, “*H*s ∨ *M*s”, and “*H*s **≡** *M*s”.[2] One could also use truth functions to form complexes from these complexes, such as “[(*H*s ⊃ *M*s) & *H*s] ⊃ (*H*s & *M*s)”. Also, as in propositional logic, we can use the (un-italicized) letters from ‘p’ to the end of the alphabet as schematic letters, for which both atomic and complex statements can be substituted.[3] Generally, where p and q are any statements of Logish, “~p”, “~q”, “p & q”, “p ∨ q”, “p ⊃ q”, and “p **≡ **q” are also statements of Logish. The same rules about parentheses, square brackets and curly braces that governed the formation of statements and schemas in propositional logic are also in effect in Logish.

Up to this point I have conflated two similar things which I now need to distinguish. Take the expression ‘is the same height as’. This expression is in a sense incomplete, and can be “filled out” in two different ways, namely, ‘*x* is the same height as *y*’ and ‘*x* is the same height as *x*’. The first relates everything that has a height to everything else that has the same height as it, and thus also relates everything that has a height to itself. The second relates everything that has a height *only* to itself. From now on, I will call expressions like ‘is the same height as’ *predicates* (regardless of the number of places they have) and expressions like ‘*x* is the same height as *y*’ *open statements*. While predicates are symbolized by lone predicate letters, open statements are symbolized by predicate letters with one or more variables—and possibly also constants—appended to them. ‘*Mx*’, ‘*Hy*’, ‘*Txy*’, ‘*Tx*a’, ‘*Gxyz*’, and ‘*G*ab*z*’ are all open statements.

Because they contain one or more variables, open statements are neither true nor false. Take ‘*Tx*a’, which translates into English as ‘*x* taught Aristotle’. Would it make any sense to say either that this expression is true or that it is false? Different names can be substituted for ‘*x*’; substituting some, e.g. ‘Plato’, yields a true statement, while substituting others, e.g., ‘Thales’, yields a false statement. Because substituting different names for ‘*x*’ results in the expression ‘*x* taught Aristotle’ taking different truth values, it is neither true nor false on its own. Nevertheless, open statements are not exceptions to the principle of bivalence, which, to recall, says that every statement is either true or false and not both. They are not exceptions because open “statements” are not really statements, any more than counterfeit “money” is really money.

Genuine statements, on the other hand, are called *closed statements*. Though open statements are neither true nor false, they may nevertheless be *true of* or *false of* various things. ‘*Mx*’, for instance, is true of every mortal, and false of every non-mortal. ‘*Tx*a’ is true of every person who taught Aristotle, and false of every other person. ‘*Txy*’ is true of every sequence of individuals for which the first taught the second, and false of every other sequence. A *sequence* is an ordered collection of things, the order being essential to the identity of the collection. Among other sequences, ‘*Txy*’ is true of <Socrates, Plato>, <Bertrand Russell, Ludwig Wittgenstein> and <Rudolf Carnap, W.V. Quine >.[4] It is false, for example, of <W.V. Quine, Socrates>.

There are two kinds of closed statement. The first kind contains constants and no variables. The other kind contains one or more variables, each of which is *bound* by a *quantifier*. A quantifier, to a first approximation, is an expression that attaches to an open statement to form a quantified statement, telling you how many things the open statement must be *true of* in order for the quantified statement to be *true*. In English, quantifiers include ‘everything’, ‘something’, ‘nothing’, ‘three’, ‘at most two’ and ‘at least ten’, to name a few. Each of them specifies how many things an open statement is true of. Given the open statement ‘*Mx*’, i.e., ‘*x* is mortal’, one can, ignoring the ‘*x*’ for now, use these quantifiers to form the quantified statements, “Everything is mortal”, “Something is mortal”, “Nothing is mortal”, “Three things are mortal”, “At most two things are mortal”, and “At least ten things are mortal”. In order for the first to be true, every individual in existence must be mortal. For that reason it is false, because some things, e.g., rocks, are neither alive nor conscious, and hence are not mortal. And if there are such beings as God, angels, and immortal souls, they too would serve as counterexamples for they are conscious but non-mortal. On the other hand, in order for “Something is mortal” to be true, at least one thing has to be mortal, and as there is certainly at least one mortal being, it *is* true. Just as certainly, “Nothing is mortal” is false, for it is true just in case it is *not* the case that at least one thing is mortal. It should now be clear enough how to determine the conditions under which the remaining three quantified statements would be true, so I will leave it to the reader to complete the task.

Things are similar in Logish, except that you must make explicit which variable it is that a quantifier is binding. You do this by appending the appropriate variable to the *quantifier symbol *you’re using to form the quantified statement. In Logish there are only two quantifier symbols, ‘∀’ and ‘∃’. **‘**∀’is the *universal quantifier symbol*, and ‘∃’ is the *particular quantifier symbol*. They correspond to the English quantifier expressions ‘everything’ and ‘something’.[5] These symbols can be combined with any variable to form a quantifier, ‘∀*x*’ and ‘∃*y*’ being two examples. Given the open statement ‘*Hy*’, that is, ‘*y* is human’, you can form a closed statement by prefixing a quantifier to it. If you want to say that everything is human, you combine the quantifier symbol ‘∀’ with the appropriate variable, *y*, to get the quantifier ‘∀*y*’, and prefix this to the open statement to get the closed statement “∀*y* (*Hy*)”. (We will adopt the convention of enclosing an open statement from which we have formed a quantified one in parentheses, to make it clear which statement the quantifier applies to.) If you want to say that something is human, you use the quantifier symbol ‘∃’ together with ‘*y*’ to obtain ‘∃*y*’, which you prefix to the open statement to yield “∃*y* (*Hy*)”. It is only when the variable which you want to bind is the same as the variable occurring in the quantifier that the binding is successful. If you don’t use the same variable for the quantifier as the one you want to bind, you end up with something like “∀*x* (*Hy*)” or “∃*x* (*Hy*)”, which are not closed statements.[6] Furthermore, to turn an open statement into a closed one it is necessary to bind *all* of its variables. Take the open statement, ‘*x* is a sister of *y*’, which we can express in Logish as ‘S*xy*’. You could prefix a particular quantifier to this to get “∃y(*Sxy*)”, which we could translate as the quasi-English statement “For some *y*, *x* is a sister of *y*”. Though it contains a quantifier, this is still an open statement. The variable ‘*x*’, unlike ‘*y*’, is not bound by any quantifier. Unbound variables are said to be *free*. To close this open statement, you could bind its free variable with another particular quantifier, as in “∃*x*∃*y*(S*xy*)”. This could be translated as “For some *x*, for some *y*, *x* is a sister of *y*”; or, in better English, as “Someone is a sister of someone.”

*Thus concludes section 3. Stay tuned for section 4 to find out what happens when quantifiers meet truth functions***, coming soon in Part 4.2!**

**What do you think of this article? Discuss it on Scholardarity’s message board.**

#### Related Articles

#### Books You Might Like

### Subscribe to Scholardarity

### Submit your writing to Scholardarity

###### PARENT PAGE: Philosophy

[1] Roughly, an analytic statement is one which is true in virtue of its meaning. Many allege that logical truths, like the tautologies we encountered in Part 2, are analytic because (so it seems) they are true solely because of their logical form, regardless of how things in extra-linguistic reality turn out. Some statements which at first sight don’t look to be logical truths are still thought to be analytic because one can turn them into logical truths by substituting synonyms for synonyms. Thus “All bachelors are unmarried men” is said to be analytic because ‘bachelor’ is synonymous with ‘unmarried man’, and so “All bachelors are unmarried men” can be turned into the logical truth “All unmarried men are unmarried men” by substituting ‘unmarried men’ for ‘bachelors’.

[2] These mean, respectively, “It is not the case that Socrates is mortal,” “It is not the case that Socrates is human,” “Socrates is human and Socrates is mortal,” “Socrates is human or Socrates is mortal,” and “Socrates is human if and only if Socrates is mortal.”

[3] One restriction on forming complex expressions that was in force in Part 2 is also in force here: It is improper to combine schematic letters with statements, as in “*M*s & q”.

[4] Expressions of the form <*x*,*y*> refer to the sequence of *x* and *y,* in that order, and since order is essential to a sequence <*x*,*y*> is distinct from <*y*,*x*>, unless *x* = *y*.

[5] In Logish, ‘some’ or ‘∃’ means *at least one*. Because of this, we’ll have to fudge the translation of some English statements. “Some cats are hairless” would have to be paraphrased as “At least one cat is hairless”, not “At least two (or more) cats are hairless”.

[6] Whether they have *any* status in Logish is an issue that will be discussed later.

### Subscribe to Scholardarity

### Submit your writing to Scholardarity

###### PARENT PAGE: Philosophy