. 6
( 107 .)


to modify the world to make some of them true. As you do this, you will
notice that large blocks cannot adjoin other blocks.
6. In doing this exercise, you will no doubt notice that Between does not mean
exactly what the English between means. This is due to the necessity of
interpreting Between as a determinate predicate. For simplicity, we insist
that in order for b to be between c and d, all three must be in the same
row, column, or diagonal.
7. When you are ¬nished, close the ¬les, but do not save the changes you
have made to them.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Congratulations


In fol,

—¦ Atomic sentences are formed by putting a predicate of arity n in front
of n names (enclosed in parentheses and separated by commas).

—¦ Atomic sentences are built from the identity predicate, =, using in¬x
notation: the arguments are placed on either side of the predicate.

—¦ The order of the names is crucial in forming atomic sentences.


You will eventually want to read the entire chapter of the user™s manual on how to use Tarski™s World. To
do the following problems, you will need to read at least the ¬rst four sections. Also, if you don™t remember
how to name and submit your solution ¬les, you should review the section on essential instructions in
the Introduction, starting on page 5.

1.1 If you skipped the You try it section, go back and do it now. This is an easy but crucial
exercise that will familiarize you with the atomic sentences of the blocks language. There is
nothing you need to turn in or submit, but don™t skip the exercise!

1.2 (Copying some atomic sentences) This exercise will give you some practice with the Tarski™s
‚ World keyboard window, as well as with the syntax of atomic sentences. The following are all
atomic sentences of our language. Start a new sentence ¬le and copy them into it. Have Tarski™s
World check each formula after you write it to see that it is a sentence. If you make a mistake,
edit it before going on. Make sure you use the Add Sentence command between sentences,

Section 1.3
26 / Atomic Sentences

not the return key. If you™ve done this correctly, the sentences in your list will be numbered
and separated by horizontal lines.
1. Tet(a)
2. Medium(a)
3. Dodec(b)
4. Cube(c)
5. FrontOf(a, b)
6. Between(a, b, c)
7. a = d
8. Larger(a, b)
9. Smaller(a, c)
10. LeftOf(b, c)

Remember, you should save these sentences in a ¬le named Sentences 1.2. When you™ve ¬nished
your ¬rst assignment, submit all of your solution ¬les using the Submit program.

1.3 (Building a world) Build a world in which all the sentences in Exercise 1.2 are simultaneously
‚ true. Remember to name and submit your world ¬le as World 1.3.

1.4 (Translating atomic sentences) Here are some simple sentences of English. Start a new sentence
‚ ¬le and translate them into fol.
1. a is a cube.
2. b is smaller than a.
3. c is between a and d.
4. d is large.
5. e is larger than a.
6. b is a tetrahedron.
7. e is a dodecahedron.
8. e is right of b.
9. a is smaller than e.
10. d is in back of a.
11. b is in the same row as d.
12. b is the same size as c.

After you™ve translated the sentences, build a world in which all of your translations are true.
Submit your sentence and world ¬les as Sentences 1.4 and World 1.4.

1.5 (Naming objects) Open Lestrade™s Sentences and Lestrade™s World. You will notice that none of
‚ the objects in this world has a name. Your task is to assign the objects names in such a way
that all the sentences in the list come out true. Remember to save your solution in a ¬le named
World 1.5. Be sure to use Save World As. . . , not Save World.

Chapter 1
Atomic sentences / 27

1.6 (Naming objects, continued) Not all of the choices in Exercise 1.5 were forced on you. That
‚ is, you could have assigned the names di¬erently and still had the sentences come out true.
Change the assignment of as many names as possible while still making all the sentences true,
and submit the changed world as World 1.6. In order for us to compare your ¬les, you must
submit both World 1.5 and World 1.6 at the same time.
1.7 (Context sensitivity of predicates) We have stressed the fact that fol assumes that every
‚| predicate is interpreted by a determinate relation, whereas this is not the case in natural
languages like English. Indeed, even when things seem quite determinate, there is often some
form of context sensitivity. In fact, we have built some of this into Tarski™s World. Consider,
for example, the di¬erence between the predicates Larger and BackOf. Whether or not cube a is
larger than cube b is a determinate matter, and also one that does not vary depending on your
perspective on the world. Whether or not a is back of b is also determinate, but in this case it
does depend on your perspective. If you rotate the world by 90—¦ , the answer might change.
Open Austin™s Sentences and Wittgenstein™s World. Evaluate the sentences in this ¬le and
tabulate the resulting truth values in a table like the one below. We™ve already ¬lled in the ¬rst
column, showing the values in the original world. Rotate the world 90—¦ clockwise and evaluate
the sentences again, adding the results to the table. Repeat until the world has come full circle.
Rotated 90—¦ Rotated 180—¦ Rotated 270—¦
1. false
2. false
3. true
4. false
5. true
6. false

You should be able to think of an atomic sentence in the blocks language that would produce
the following pattern:

true false true false

Add a seventh sentence to Austin™s Sentences that would display the above pattern.
Are there any atomic sentences in the blocks language that would produce this pattern?

false true false false

If so, add such a sentence as sentence eight in Austin™s Sentences. If not, leave sentence eight
Are there any atomic sentences that would produce a row in the table containing exactly
three true™s? If so, add such a sentence as number nine. If not, leave sentence nine blank.
Submit your modi¬ed sentence ¬le as Sentences 1.7. Turn in your completed table to your

Section 1.3
28 / Atomic Sentences

Section 1.4
General ¬rst-order languages
First-order languages di¬er in the names and predicates they contain, and so in
the atomic sentences that can be formed. What they share are the connectives
and quanti¬ers that enable us to build more complex sentences from these
simpler parts. We will get to those common elements in later chapters.
When you translate a sentence of English into fol, you will sometimes
have a “prede¬ned” ¬rst-order language that you want to use, like the blocks
language of Tarski™s World, or the language of set theory or arithmetic de-
scribed later in this chapter. If so, your goal is to come up with a translation
that captures the meaning of the original English sentence as nearly as pos-
sible, given the names and predicates available in your prede¬ned ¬rst-order
Other times, though, you will not have a prede¬ned language to use for
your translation. If not, the ¬rst thing you have to do is decide what names and
predicates you need for your translation. In e¬ect, you are designing, on the ¬‚y,
designing languages
a new ¬rst-order language capable of expressing the English sentence you want
to translate. We™ve been doing this all along, for example when we introduced
Home(max) as the translation of Max is at home and Taller(claire, max) as the
translation of Claire is taller than Max.
When you make these decisions, there are often alternative ways to go.
For example, suppose you were asked to translate the sentence Claire gave
Scru¬y to Max. You might introduce a binary predicate GaveScru¬y(x, y),
meaning x gave Scru¬y to y, and then translate the original sentence as
GaveScru¬y(claire, max). Alternatively, you might introduce a three-place pred-
icate Gave(x, y, z), meaning x gave y to z, and then translate the sentence as
Gave(claire, scru¬y, max).
There is nothing wrong with either of these predicates, or their resulting
translations, so long as you have clearly speci¬ed what the predicates mean.
Of course, they may not be equally useful when you go on to translate other
sentences. The ¬rst predicate will allow you to translate sentences like Max
choosing predicates
gave Scru¬y to Evan and Evan gave Scru¬y to Miles. But if you then run into
the sentence Max gave Carl to Claire, you would be stuck, and would have
to introduce an entirely new predicate, say, GaveCarl(x, y). The three-place
predicate is thus more ¬‚exible. A ¬rst-order language that contained it (plus
the relevant names) would be able to translate any of these sentences.
In general, when designing a ¬rst-order language we try to economize on
the predicates by introducing more ¬‚exible ones, like Gave(x, y, z), rather than

Chapter 1
General first-order languages / 29

less ¬‚exible ones, like GaveScru¬y(x, y) and GaveCarl(x, y). This produces a
more expressive language, and one that makes the logical relations between
various claims more perspicuous.
Names can be introduced into a ¬rst-order language to refer to anything
that can be considered an object. But we construe the notion of an “object” objects
pretty ¬‚exibly”to cover anything that we can make claims about. We™ve al-
ready seen languages with names for people and the blocks of Tarski™s World.
Later in the chapter, we™ll introduce languages with names for sets and num-
bers. Sometimes we will want to have names for still other kinds of “objects,”
like days or times. Suppose, for example, that we want to translate the sen-

Claire gave Scru¬y to Max on Saturday.
Sunday, Max gave Scru¬y to Evan.

Here, we might introduce a four-place predicate Gave(w, x, y, z), meaning w
gave x to y on day z, plus names for particular days, like last Saturday and
last Sunday. The resulting translations would look something like this:

Gave(claire, scru¬y, max, saturday)
Gave(max, scru¬y, evan, sunday)

Designing a ¬rst-order language with just the right names and predicates
requires some skill. Usually, the overall goal is to come up with a language
that can say everything you want, but that uses the smallest “vocabulary”
possible. Picking the right names and predicates is the key to doing this.


1.8 Suppose we have two ¬rst-order languages: the ¬rst contains the binary predicates
 GaveScru¬y(x, y) and GaveCarl(x, y), and the names max and claire; the second contains the
ternary predicate Gave(x, y, z) and the names max, claire, scru¬y, and carl.
1. List all of the atomic sentences that can be expressed in the ¬rst language. (Some of
these may say weird things like GaveScru¬y(claire, claire), but don™t worry about that.)
2. How many atomic sentences can be expressed in the second language? (Count all of
them, including odd ones like Gave(scru¬y, scru¬y, scru¬y).)
3. How many names and binary predicates would a language like the ¬rst need in order
to say everything you can say in the second?

Section 1.4
30 / Atomic Sentences

Table 1.2: Names and predicates for a language.

English Comment

Max max
Claire claire
Folly folly The name of a certain dog.
Carl carl The name of another dog.
Scru¬y scru¬y The name of a certain cat.
Pris pris The name of another cat.
2 pm, Jan 2, 2001 2:00 The name of a time.
2:01 pm, Jan 2, 2001 2:01 One minute later.
. .
. .
. . Similarly for other times.

x is a pet Pet(x)
x is a person Person(x)
x is a student Student(x)


. 6
( 107 .)