# Formal Logic/Predicate Logic/The Predicate Language

← Goals |
↑ Predicate Logic |
Formal Syntax → |

# The Predicate Language

editThis page informally describes our **predicate language** which we name . A more formal description will be given in subsequent pages.

## Language components

editUse of occurs in the context of a *domain* of objects. Ascribing a property to 'everything' is only interpreted as ascribing it to everything *in the domain*.

### Definitions

edit*Variables* serve as placeholders in general statements for objects in the domain of discourse. We will use the lower case letters * n* through

*as variables. Frequently, variables correspond to pronouns in statements. For instance, consider the statement 'For any number, if it is even then it is not odd.' Introducing the variable*

**z***produces 'For any number*

**x***, if*

**x***is even then*

**x***is not odd.'*

**x**An *operation letter* is a function that takes a fixed number of objects (or variables representing objects) and returns an object in the domain. We write operation letters as lower case letters * a* through

*. An operation letter that takes*

**m***n*objects is called an

*n*-place operation letter. Zero-place operation letters are allowed and merely represent a fixed object. Usually, the context is sufficient to determine the number of places of each operation letter.

For examples on this page, we also allow numerals ( ) as zero-place operation letters.

A *term* is any of the following:

- A variable
- A zero-place operation letter.
- An
*n*-place operation letter (with*n*terms.

Examples include * * (variables); * * (zero-place operation letters); (1-place operation letter operating on ); and (2-place operation letter operating on and ).

If a term contains no variables, then it is called a *name*. Each name specifies a particular object in the domain, whereas terms containing variables do not.

#### Examples

editFor the remainder of this page, assume the following translations.

With the right set of characters in the domain, names Cain, and (according to Biblical tradition) names Adam.

The term is not a name because it contains variables. Then the terms and , however, name 7 and 3 respectively (assuming that 7 and 3 are in the domain).

### Primitive formulae

editA *predicate letter* is a function that takes a fixed number of objects (or variables representing objects) and returns a sentence letter. Predicate letters will consist of capital letters **A** through **Z**. The same symbols will be used for predicate letters of any number of places, so, as with operation letters, we sometimes need to specify the number of places but usually can rely on context. Notice that zero-place predicate letters are sentence letters we are familiar with from sentential logic.

A *primitive formulae* is either one of the following:

- A zero-place predicate letter (that is, a sentence letter).
- An
*n*-place predicate letter (with*n*terms.

Examples include

#### Examples

editIf translates 'Snow is white', then it is true. However, it is false if it translates 'Snow is blue'.

Suppose we add the following translations to the translations above:

We say that is true of all bald things and false of all non-bald things. Thus is true while is false. Whether is true or false depends on whether Adam was bald.

Now add

to the translations above. Then is neither true nor false because and are variables that do not name anything, nor do the variables or . But if we substitute numbers for the variables, then the is true while is false.

### Sentential connectives

editThe predicate language will use sentential connectives just as they were used in the sentential language . These were:

Using the translations already set above (together with letting numerals be zero-place operation letters),

is true while

is false.

### Quantifiers

edit*Quantifiers* are special symbols that allow us to construct general sentences which are about all thing or about some (at least one) things.

- translates to English as 'for all
*x'*. - is called a
*universal generalization*. - is true if is true of all objects in the domain. Roughly speaking, it is true if

- where each names an object in the domain and all objects in the domain are named. This is only a rough characterization, however. First, we do not require that all objects in the domain have a name in the predicate language. Second, we allow there to be infinitely many objects in the domain but do not allow infinitely long sentences.

- Some authors use instead of . This notation is semi-obsolete and is becoming ever less frequent.

- translates to English as 'for all

- translates to English as 'there exists an
*x*' or, perhaps a bit more clearly, 'there exists at least one*x*'. - is called an
*existential generalization*. - is true if is true of at least one object in the domain. Roughly speaking, it is true if

- where each names an object in the domain and all objects in the domain are named. This is only a rough characterization, however. First, we do not require that all objects in the domain have a name in the predicate language. Second, we allow there to be infinitely many objects in the domain but do not allow infinitely long sentences.

- translates to English as 'there exists an

## Translation

editUsing the translation scheme

we translate as follows.

- All numbers are prime.

- Some numbers are prime.

- No numbers are prime.
*(two equivalent alternatives are given)*

- Some numbers are not prime.

Now using the translation scheme

we can translate as follows.

- George loves Martha.

- Martha loves George.

- George and Martha love each other.

We can further translate as follows.

- Everybody loves everybody.
*(the second alternative assumes only persons in the domain)*

- Somebody loves somebody.
*(the second alternative assumes only persons in the domain)*

- Everybody loves somebody (or other).
*(the second alternative assumes only persons in the domain)*

- Somebody is loved by everybody.
*(the second alternative assumes only persons in the domain)*

- Everybody is loved by somebody (or other).
*(the second alternative assumes only persons in the domain)*

- Somebody loves everybody.
*(the second alternative assumes only persons in the domain)*