A couple chapters into *Gödel*, *Escher*, *Bach* by Douglas Hofstadter, I’ve become intrigued by the idea of meta writing, which is writing about writing. We end up going to this topic from logical paradoxes. Let’s begin. Normally, when we write a statement, it is either true or false.

One and one make pie.

Or:

The sky is an orange.

In these cases, the statement refers to something else. But what if the statement refers to itself? Here we have the infamous paradoxical statement:

This statement is false.

Think about this. If it’s true, it must be false, and if it’s false, it must be true! Thus, it can be neither true nor false.

What about referring to other sentences? This is allowed, generally.

(1) The next statement is true.

(2) All horses are white.

(3) The previous statement is false.

Now we have three sentences, and this set of sentences makes sense. Each one is either true or false: (3)—true; (1) and (2)—false. As long as statements are either true or false, logicians are content. Normally we might care whether a statement is true, but that is beyond the point.

Okay, so where does meta writing come in? Simple. In the previous example, (2) was a regular old statement, while (1) and (3) were *about* it. And they weren’t about the *content* in (2)—they were about *statement* (2) in itself. If they only described the content, they can still be contradictory, but they wouldn’t be meta statements. Consider the following:

(a) All horses are white.

(b) Not all horses are white.

These two statements present no logical paradox. One is right, and the other wrong.

But, what if, in the original example, we removed statement (2), leaving only (1) and (3)? This leads to logical disaster:

(1) The next statement is true.

(3) The previous statement is false.

Now, we cannot simply dismiss one as true and the other false. If (1) is true, then (3) must be true, so (1) must be false. And if (1) is false, then (3) is false, so (1) must be true. Obviously (1) cannot be both true and false. Same goes for (3): if (3) is true, then (1) is false, so (3) must be false, etc.

So far the book has covered one way to eliminate this paradox. I’ll try to explain the gist of it. Take the set of all normal statements, i.e. non-meta statements. We’ll call this set zero. Now take all statements about statements in set zero, and put them into set one. Set one will thus be the set of meta statements. Then take all statements about statements in set one, and put them into set two. These are meta meta statements, or statements about meta statements. Set three will consist of meta meta meta statements, and so on.

The rule is basically that all meta statements must refer to a statement in a lower set than itself. If not, then the statement has no meaning.

Consider the disaster example above. We don’t know what set (1) belongs to—say it belongs to set N, where N is a positive whole number. Because (1) refers to (3), (3) must be one level lower than N, so it is of the set N – 1. But (3) refers to (1), so (1) must be one level below (3). That means (1) must be of the set N – 2. But we began with the assumption that (1) is of set N, and N cannot equal N – 2. Thus, the two statements (1) and (3) together have no meaning.

Another way of looking at it is this: (1) refers to (3), so it must be of a higher set than (3). But (3) also refers to (1), so it must be of a higher set than (1). They cannot both be of higher sets than the other, so the combination of the two sentences makes no sense.

Now it’s possible to make sense out of the statement, “This statement is false.” It is referring to itself, so it must be a meta statement of itself. That is not possible. A statement cannot belong to a higher set than the set to which it belongs. Thus the statement makes no sense.

Try this one:

(P) Q is false.

(Q) R is false.

(R) P is false.

This is again paradoxical. The explanation will be left to the reader as an exercise.

Okay, well, to explain it anyways: if P is true, then Q is false, so R is true, so P is false… Again, we reach a statement being both true and false, which doesn’t work. And, since P refers to Q, it must be of a higher set than Q, and Q must be of a higher set than R, which in turn must be of a higher set than P—this does not mathematically work.

Last puzzle:

(P) Q is true.

(Q) R is true.

(R) P is true.

AT FIRST, this set appears to make sense. After all, if P is true, then Q is true, and R is true, and P is true—check, it works. But, we know from our earlier observation that if statements refer to each other in a loop like this, it’s bound to be meaningless; it did not matter whether statements were true. In other words, this puzzle should have the same explanation as when each *true* was a *false*. When we look at it, however, it seems different. It seems to work.

So what’s wrong with it? Assume P is false (after all, we do not know whether P is true or false). This implies that Q is false. And if Q is false, then R is false. And if R is false, then P is false. At first glance, this works. All three statements could be false. I suppose this does make logical sense. I’m not sure what to make out of this.