In Douglas Hofstadter's book, Godel, Escher, Bach , he proposes the following puzzle about formal systems.
Axiom:
MI
is an axiom.
Theorem: The axiom is a theorem by default. All the (and only all the) strings that can be derived using the following transformations on a theorem is also a theorem.
Formal Rule | Informal Description | Example |
x
I
→ x
IU
|
Changing any terminal
I
to
IU
|
MII
→
MIIU
|
M
x →
M
xx
|
Double the string after
M
|
MIU
→
MIUIU
|
x
III
y → x
U
y
|
Replace three
I
s with an
U
|
MIIIU
→
MUU
|
x
UU
y → xy
|
Remove an occurence of double
U
s
|
MUUI
→
MI
|
Problem:
Is
MU
a theorem?
Guessing the answer to this problem is not very difficult. However, an interested problem solver could explore this questions:
MU
theorem, i.e, what is the sequence of transformation rules that will take you from
MI
to
MU
?
MIU
system decidable, i.e, is there a computer program to decide if a given string is a theorem?
This section requires Javascript.
You are seeing this because something didn't load right. We suggest you, (a) try
refreshing the page, (b) enabling javascript if it is disabled on your browser and,
finally, (c)
loading the
non-javascript version of this page
. We're sorry about the hassle.
We first observe that letting I = 1 and U = 0 , while M = 1 , then all binary numbers, with the first digit being M = 1 , represents all possible strings starting with M and containing any number of I s and U s following. Hence, we can assign a natural number B , starting at 2 , to any given string.
Next, we can assign digits 0 , 1 , 2 , 3 to the four "Formal Rules", so, again, with the first digit arbitrarily being 1 , all possible sequences of applications of such rules can be represented by all natural numbers in base 4 , convertible to natural numbers A in base 1 0 , thus starting at 4 .
A "proof" is simply the function P ( A ) = B , which assigns the number representing a sequence of rules applied to the number representing a sequence. We can create a table starting with A = 4 , and increment successively to any number of arbitrary size. Assuming that for a table of finite length B is present, we can say that eventually determine that B "is a theorem", but this is assuming that B is listed in such a table of any finite length. It may not.
In order to determine whether or not B necessarily exists in such a table of some finite size, we cannot resort to a simple successive application of the formal rules, for reasons given above. As an analogy, suppose given positive integers a , b defining points in a lattice, is there any a , b such that the distance to the origin is some integer multiple of 3 ? We can do a successive search of all possible such pairs of integers, and regardless of how long the search takes, it never seems like any such a , b can be found. Proof of non-existence of such a pair a , b sometimes (or often!) has to appeal to reasoning that is outside the limited set of "Formal Rules". "Is there a computer program to decide if a given string is a theorem?" Go see AA's answer, but the salient point being made here is that the "Formal Rules" clearly wasn't sufficient to settle the issue. This is the reason why "definitions and axioms" in mathematics keeps expanding, which was the point of Godel's Theorem.