Vous êtes sur la page 1sur 43

What are the limits of mathematics?

Oskar John Hollinsworth


October 24, 2014
Abstract
1

In this dissertation I will outline informally the arguments for key limitative results in meta-mathematics,
accompanied by the history of philosophical thought surrounding these developments. I will focus on the work
of G
odel, Tarski, L
ob and Turing in eliminating any hope of a fulfilment of Hilberts program. These results will
be shown to demonstrate that the consistency, soundness and truthfulness of mathematics cannot be trusted
in the way that mathematicians had previously always assumed. Then I will critically evaluate the claims of
mathematical philosophers with regard to the impact of these results on the limits of artificial intelligence and
the human mind.

Contents
1 Introduction

2 What is Mathematics?

3 Naive Set Theory and Russells Paradox

4 G
odels First Incompleteness Theorem

5 How limiting are these theorems?

6 Minds and Machines

7 Computers and Decidability

8 Conclusion

10

Appendices

11

A Formal Systems as the Foundation of Mathematics


11
A.1 First-order Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
A.2 Peano Arithmetic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
A.3 Naive Set Theory and Russells Paradox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
B G
odels First Incompleteness Theorem
B.1 G
odel Numbering . . . . . . . . . . . . .
B.1.1 Primitive Recursive Functions . .
B.1.2 Coding Theorems . . . . . . . . .
B.2 The Formalised Liars Paradox . . . . .
B.3 Extending the First Theorem . . . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

19
19
19
22
24
26

C G
odels Second Incompleteness Theorem
27
C.1 An Informal Introduction to Surpassing the First Theorem . . . . . . . . . . . . . . . . . . . . . . . 27
C.2 The Hilbert-Bernays-L
ob Derivability Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
C.3 The Formalised First Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1 See

the Appendix for a much more formal treatment of these results

C.4 The Formalised Second Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


C.5 Extending the Second Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
D Turing Machines
D.1 An Informal Introduction to the Church-Turing
D.2 -recursive functions and Turing computation .
D.3 Decidability . . . . . . . . . . . . . . . . . . . .
D.4 Halting Problems . . . . . . . . . . . . . . . . .

Thesis
. . . .
. . . .
. . . .

Glossary

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

31
32
34
34
34
37
37
38

Introduction

I chose to research the proofs and implications of these modern results in mathematical logic primarily because of the
elegant ideas they describe which are readily accessible to non-mathematicians. They have profound philosophical
implications on the fundamental limits of minds and machines which lead to interesting active debate even in the
present day. As a result, I wanted my project title to reflect the fact that I wished to come to my own conclusion
on the extent of the impact of these theorems. The proofs of these results also rely only on elementary number
theory which does not exceed the difficulty of multiplication and division, although complete constructions are
highly complex. Ultimately it was the intriguing claim by Godel that we can know that there are some things which
we can never know which made me decide that this would be an interesting yet very accessible field to research
in depth. My progress towards understanding the arguments behind these results was impeded by sub-optimal
sources which wasted my time as I tried to decipher the information they contained. I was finally able to really
thrive once I had developed enough skill at using these sources efficiently to study the concise academic literature
in the field.

What is Mathematics?

Mathematicians are famous for their stubborn demand for rigorous proof of their conjectures. Fermats Last
Theorem was doubted by mathematicians for 357 years before any possible doubt was allayed by a general, absolute
and irrefutable proof by Andrew Wiles published in 1995.2 Mathematicians take real pleasure not in their results,
but the justification for their results3 . These proofs consist of a deductive series of logical steps starting from
certain assumptions or axioms. If you accept the axioms then you must necessarily accept the proven statements
(or theorems) derived from them. For mathematicians to maximise their certainty that these proofs are sound, their
ultimate dream is always to reduce the reasoning process into such unambiguous steps that the rules of inference can
be formalised to typographical rules for the transformation of strings of symbols that need not be understood4 . Once
a demonstration of a mathematical statement is fully understood it should be possible to create an unequivocal
algorithm which a computer could follow to produce the same theorems from the given axioms, even though it
might unthinkingly go through every other possible theorem before reaching the desired result. The combination
of these axioms and laws of transformation which can be used to prove theorems is known as a formal system of
mathematics and is the central object of study in meta-mathematics.
Human reason may seem to transcend simple computation, but the basic rules are easy to formulate. This is known
as First-order Logic5 and formulating it mechanically has surprising implications. Theorems such as if P is true
then P is true may come as no surprise (Lemma 3 p.12), but the Principle of Explosion is a more surprising result
(Theorem 1 p.14). This theorem states that if a single inconsistency is proven, then any well-formed formula is
provable. In other words, a single contradiction is contagious and will explode into the whole theory in which it is
created.
2 Andrew

Wiles. Modular elliptic curves and Fermats Last Theorem. In: Annals of Mathematics 142 (1995), pp. 443551.
Hardy once famously said to Bertrand Russell: If I could prove by logic that you would die in five minutes, I should be sorry
you were going to die, but my sorrow would be very much mitigated by pleasure in the proof.
4 David Hilbert described it so: Mathematics is a game played according to certain rules with meaningless marks on paper.
5 Appendix A.1,p.11
3 G.H

Figure 1: In Hyperbolic Geometry there are many different curved lines which are parallel to another line and go
through the same point because they can curve away from each other.

Figure 2: In Elliptical Geometry all lines curve round the sphere so they have to meet at some point, meaning that
parallel lines do not exist (see previous page).
This formalisation of Logic was so elegant that it led many such as the famous mathematician and philosopher
Bertrand Russell to conclude that all mathematical knowledge ought to be derivable from Logic with extending
definitions6 . Hilbert became interested in these mathematical foundations from studying Non-Euclidean Geometries.
These controversial theories rejected Euclids Parallel Postulate, leading to triangles in which the sum of the angles
is never 180 . The parallel postulate states that there is only one unique line which goes through a given point
and is parallel to another given line. This is clearly true for a flat surface like a table, but not for a curved surface
where the lines can circle back round to where they started. In hyperbolic geometry, this axiom is replaced with the
assumption that there are infinitely many such lines, leading to triangles with interior angles which sum to strictly
less than 180 , which describes the surface of a saddle. By instead assuming that there are no parallel lines, the
mathematics then describes elliptical geometry, where the sum of the interior angles in a triangle is strictly more
than 180 , such as on the surface of a sphere.
Hilbert initially struggled to have his controversial ideas recognised. Immanuel Kant believed that space was flat by
definition9 and supposing otherwise was self-contradictory. In the face of disbelief that Euclids Parallel Postulate
could be violated, Hilbert proved10 the consistency of these non-Euclidean geometries by showing that if Euclidean
Geometry was consistent then non-Euclidean Geometry must also be consistent. Mathematicians take great pleasure
in proving philosophers wrong and Hilbert was particularly clearly vindicated when Albert Einstein showed11 that
6 In his own words: all mathematics deals exclusively with concepts definable in terms of a very small number of logical concepts,
and . . . all its propositions are deducible from a very small number of fundamental logical principles.
7 Figure 1: Coral Jasmin. Crazy hyperbole, crazier crocheting and the craziest me. url: https://www.google.co.uk/search?
q=hyperbolic+geometry&source=lnms&tbm=isch&sa=X&ei=Cx4KVJO3IZKf7Aa_woGADA&ved=0CAgQ_AUoAQ&biw=1920&bih=955#tbm=
isch&q=hyperbolic+geometry+parallel+lines&facrc=_&imgdii=_&imgrc=fSM61UxxkI2aCM%253A%3BBNK0- qtNyJzS- M%3Bhttps%253A%
252F%252Fcoraljasmin.files.wordpress.com%252F2012%252F05%252Fhyperbolic- space.jpg%3Bhttp%253A%252F%252Fcoraljasmin.
wordpress.com%252Fcategory%252Fscience%252F%3B3283%3B1843; Wikimedia Commons. Hyperbolic triangle. url: http://commons.
wikimedia.org/wiki/File:Hyperbolic_triangle.svg#mediaviewer/File:Hyperbolic_triangle.svg; Annenberg Learner. Spherical
and Hyperbolic Geometery. url: http://www.learner.org/courses/mathilluminated/units/8/textbook/04.php
8 Figure 2: Ravi Bhoraskar. Non Euclidean Geometries. url: http : / / blogbloggityblog . wordpress . com / 2011 / 09 / 09 / non euclidean- geometries/; Wikimedia Commons. Triangle trirectangle. url: http://commons.wikimedia.org/wiki/File:Triangle_
trirectangle.png
9 Space is . . . but a pure intuition(Immanuel Kant. Critik der reinen Vernunft. Penguin Classics, 1781)
10 David Hilbert. Grundlagen der geometrie. Leipzig, B.G. Teubner, 1903.
11 Albert Einstein and Marcel Grossman. Entwurf einer verallgemeinerten Relativit
atstheorie und eine Theorie der Gravitation. In:
Zeitschrift f
ur Mathematik und Physik 62 (1913), pp. 225261.

Hilberts Geometries actually describe our universe better than Euclids. Similarly, Cartesian geometry suggests
that Euclidean Geometry is built up just from algebra. In this way, a hierarchy of mathematics seemed to be
suggested, in which the consistency of all of mathematics depended on strong logical foundations12 . Hilbert listed
the task of proving the consistency of basic arithmetic as the second of his famous 23 great unsolved problems at the
start of the twentieth century.13 Hilberts beliefs about how research in foundational mathematics should proceed
(that is, primarily focused on this reductionist formal justification for complex mathematics) is commonly known
as Hilberts program.

Naive Set Theory and Russells Paradox

Continually justifying the premises of ones previous proofs with more proofs quickly leads to an infinite regress.
Hilbert was interested in a finitistic proof of consistency, which did not require appealing to infinitely many steps
in the proof. The hope was that a very small finite set of axioms could be chosen from which all of mathematics
was derived. At the turn of the twentieth century, naive set theory was created as an attempt to provide exactly
that. Numbers could simply be described as sizes of sets so in that sense set theory is even more fundamental to
mathematics than arithmetic. Frege was attempting to derive all of fundamental mathematics from a few rules
about sets in his great work: The Basic Laws of Arithmetic.14
Unfortunately, there was a a serious problem; Bertrand Russell was able to easily infer a paradox from the axioms
of naive set theory.15 This may seem like a minor misdemeanour, but recall that a single inconsistency could be
used to infer any proposition in a sufficiently complete formal system of mathematics (specifically one including
first-order logic). Therefore we can see that this system, although capable of deriving that 1 + 1 = 2, was also
capable of deriving Moon=Cheese.
The paradox at the heart of Russells proof is known as the Barbers Paradox. It is usually presented as follows:
There is a town with only one barber. This barbers job description is to shave exactly those who do not shave
themselves. Who shaves the barber? If he does shave himself, then by the barbers job description, the Barber
should not shave him, therefore he should not shave himself. But if he does not shave himself, then by the barbers
job description he must shave him, therefore he does in fact shave himself. This strange circle of argument in which
you successively have to believe that the barber does and does not shave himself is described as a strange loop by
Douglas Hofstadter.16 Russell formulated17 the strange loop in naive set theory as follows. Lets call a set normal
if it is not a member of itself and lets call the set of all normal sets Russells Set. Is Russells Set itself normal? If
it is indeed normal, then by definition it must be a member of Russells Set, so it is a member of itself and thus it
must not be normal. If it is not normal though, it must contain itself (by the definition of normal) and thus as a
member of Russells Set it must be normal.
This paradox was very important because it demonstrated that fatal flaws can indeed go unnoticed in formal
systems, such that all of Freges work was essentially meaningless. A theorem of naive set theory has no bearing
on truth. This is a particularly frightening result, as it demonstrated once and for all that it is not enough to
simply assume that axioms which seem reasonable must be consistent. Frege was happily deriving theorems in his
conception of naive set theory,18 completely unaware that he could just as easily have proven anything, including
the negation of all his theorems. The prospect that mathematicians today could be living under the same illusion
without even knowing it is what makes Russells Paradox so interesting.
As a result of Russells contribution, more restrictive systems were designed to ensure that paradoxes were truly
forbidden. This may sound like a simple task but recall that these symbols are meaningless, so to them x and not x
(the very definition of a contradiction) is just another string to be mechanically derived. Formal systems are purely
typographical, semantics has no bearing on their results whatsoever, except as far as the rules of the system are
12 Marcus Du Sautoy describes it in The Music of the Primes like so: Hilbert had been pushed further and further back and was now
having to question the very basis on which mathematics had been founded.
13 David Hilbert. Mathematical Problems. In: Bulletin of the American Mathematical Society 8 (1902), pp. 437479.
14 Gottlob Frege, Philip A. Ebert, and Marcus Rossberg. Basic Laws of Arithmetic. OUP Oxford (31 Oct 2013), 1893 and 1903.
15 Bertrand Russell. The Principles of Mathematics. Michigan University Press,digitised by Google, 1903. url: https://archive.
org/details/principlesmathe00russgoog.
16 Douglas R. Hofstadter. G
odel, Escher, Bach: An Eternal Golden Braid. New York: Basic Books, 1999. url: http : / / www .
questiaschool.com/read/10035000.
17 Russell, The Principles of Mathematics.
18 Frege, Ebert, and Rossberg, Basic Laws of Arithmetic.

Figure 3: Prime factor decomposition of the first 1000 numbers


designed to preserve the truth of the axioms. An improved theory arose19 in 1908 as Zermelo-Fraenkel Choice Set
Theory (ZFC) was developed, truly the crowning achievement of mathematics. To this day, no fatal inconsistencies
have been found and ZFC is the basis for all fundamental mathematics. As we know though, mathematicians are
not satisfied by over a hundred years of checking and failing to find a contradiction, they still demand a proof of
its consistency. In that vein, G
odel originally set out to prove the consistency of Principia Mathematica20 where
Bertrand Russell had attempted to build up all of mathematics from First-Order Logic and Peano Arithmetic
(PA) used in conjunction with definitions for introducing new concepts. Ultimately though, he was clever enough
to realise and then prove that it could not be done.

G
odels First Incompleteness Theorem

PA just describes the natural numbers or counting numbers (1, 2, 3 . . .). This is surely about as simple as mathematical study can be. Notwithstanding, Kurt Godels work21 showed incredibly fundamental limitations that must
exist in any system closely related to Peano Arithmetic. His first incompleteness theorem states that such a system
could never be both consistent and complete, meaning that either we can prove anything even if it is untrue or there
are true statements which we cannot prove - both terrifying potential flaws. His second incompleteness theorem
states that if a similar family of systems contains a statement about its own consistency then it must necessarily
be inconsistent, preventing its consistency from ever being proven or even being somehow incorporated into the
axioms.
As is common in mathematics, the proof of his results is even more interesting. Godels First Incompleteness
Theorem centres around constructing a formalised Liars Paradox within Peano Arithmetic. The Liars Paradox
is simply the claim This sentence is a lie. Suppose that were true, then it would be true when it says that it is
a lie. But if its a lie then what the sentence says is correct, so it must be true. Once again, this is a paradox of
self-reference. Surely then basic arithmetic is not capable of enough self-reference to fall victim to such a paradox.
However, this is not the case, due to G
odels most brilliant innovation. He proposed a beautifully simple and elegant
idea: what if we numbered the theorems of arithmetic? Then we could essentially encode information about the
theorems of arithmetic within arithmetic itself. He proposed what is now known as a Godel Numbering system23 .
These systems are usually built up from prime numbers and give rise to very large codes24 . This is an effective
19 Ernst

Zermelo. Untersuchungen u
ber die Grundlagen der Mengenlehre. I.. In: Mathematische Annalen 65 (1908), pp. 261281.
The Principles of Mathematics.
21 Kurt G

odel. Uber
formal unentscheidbare S
atze der Principia Mathematica und verwandter Systeme, I.. In: Monatshefte f
ur
Mathematik 38 (1931), pp. 17398.
22 Figure 3: Math Medics. The Prime Factorization of the First 1000 Integers. url: http://www.sosmath.com/tables/factor/
factor.html
23 Appendix B.1, p.19
20 Russell,

102.062518063586396

24 A

simple two line proof of the Law of the Excluded Middle gives the number 1010
which is larger than a Googolplex.
According to the astronomer Carl Sagan, just writing out this number in decimal would require more space than exists in the entire
visible universe (Carl Sagan. Cosmos: A Personal Voyage, Episode 9: The Lives of the Stars. 1980). The mathematician John
Littlewood estimated that the odds of a mouse surviving for a week on the surface of the Sun due to random quantum fluctuations are
better than one in a googolplex (Daniel Tammet. Thinking in Numbers: How Maths Illuminates our Lives. Hodder and Stoughton,

strategy because prime numbers are to number theory as the elements are to chemistry. The Fundamental Theorem
of Arithmetic25 states that all numbers are either prime or the product of primes. As a result, just as the elements
in a compound can be used to predict its properties, the prime factor decomposition of a number can be used to
classify it into a group. This ensures that no two theorems are assigned the same Godel number because they
are made up of different elements (i.e. prime factors). Moreover, it further ensures that the Godel number of a
theorem can be used to determine its constituent symbols by observing the elements that make up the compound
(i.e. the prime factors in the G
odel number), thus leading to different types of numbers being assigned to different
types of theorems and to a natural arithmetical relationship between the Godel numbers of derivations and their
corresponding theorems. This allows a function to be expressed within arithmetic to describe the special relation
between the numbers of theorems and their proofs. The relation is actually very simple in style, it is just built up
through many levels of recursion from the most primitive arithmetical relations. As a result, it is known that these
primitive recursive relations are captured by Peano Arithmetic, meaning that we can be sure that PA can prove
that these provability relationships exist.
I will now explain a faulty method to complete Godels proof to highlight a subtlety in the argument. Lets say that
a number n is Richardian26 if and only if it does not have the nth property in some numbered list of properties.
We can imagine such a list as follows:
1. Odd
2. Even
3. Square
4. Richardian
5. . . .
In this example, the number 3 is Richardian because it is not a square number so does not possess the third
property. Numbers 1 and 2 are not Richardian because 1 is indeed an odd number and 2 is obviously an even
number, so they actually do possess the first and second properties respectively. More interestingly, is the number
4 Richardian given this listing of properties? Suppose it is, then it does not have the fourth property, so it is not
Richardian. But if its not Richardian, then it does have the fourth property so it must be Richardian. Surely then
this derives a contradiction demonstrating the inconsistency of arithmetic? This argument is fallacious because it
takes a semantic, metamathematical concept (Richardianism) and inserts it into a rule-based mechanical theoremprover for arithmetic. This is a misapplication of terms and the argument does not hold. The key to Godels success
was in his construction of a purely arithmetical statement which could be interpreted with another meaning from
outside of the system such that as outsiders we know that it cannot be proven without creating a paradox. Professor
Rebecca Goldstein27 makes a good analogy to that of a narcissist. No matter what narcissists are seemingly talking
about, there is always some subtle way in which they are managing to still just talk about themselves. In the
same way, the sentence that G
odel constructs seems to be an inert question of basic arithmetic, but its subliminal
message about itself is what leads ultimately to self-referential paradox.
The formalised Liars Paradox in G
odels First Incompleteness Theorem involves constructing the sentence G which
says that there is no number which codes for a proof which satisfies the numerical relationship with the G
odel
number of G such that it could be a proof of G. Put more simply, G expresses an arithmetical formula which is
true if and only if the metamathematical statement G is not provable is true. Suppose that G were a theorem
of the system, then what it says should be true, so it should be true that G is not provable and thus G is not a
theorem. This implies that no consistent theory of arithmetic can decide G either way28 under pain of such paradox.
Consequently, G is not provable and thus we can conclude that G must be true, as it says precisely that: G is not
provable. This is an incredible result as it seems that the potential reinterpretation of these meaningless strings of
symbols (designed just to describe arithmetic) leads to constraints on what the system can prove. Additionally, we
could then add this formula (GPA ) to the axioms of the theory in order to strengthen it (resulting in PA+GPA ).
However, this would simply create a new system with a new Godel numbering scheme and a new arithmetical relation
2012).
25 Theorem 8 p.23
26 Jules Richard. Les Principes des Math
ematiques et le Probl`
eme des Ensembles. Revue G
en
erale des Sciences Pures et Appliqu
ees,
1905.
27 Professor Rebecca Goldstein. G
odels Incompletness Theorems in the Context of Philosophy. New College of the Humanities.
March 18, 2013. url: https://www.youtube.com/watch?v=HHMKnwCT_Dk&index=4&list=WL.
28 By this we mean that G cannot be proven and neither can its negation: not G, which states that G is provable.

for recognising the proof of a theorem based on their codes. The same process would lead to a new Liar sentence
for the new theory (GPA+GPA ). We could always repeat this process ad infinitum to produce an infinite number of
true but unprovable formulae: GPA , GPA+GPA , GPA+GPA +GPA+GPA . . . This shows that arithmetic is incompletable,
there will always be an infinite number of elementary questions in arithmetic which we cannot answer with our
current theory.

How limiting are these theorems?

There are in fact a variety of ways to circumvent Godels Incompleteness Theorems by avoiding the constraints that
they assume about the theory. One possibility is to fundamentally abandon the idea of typographical formalism,
then you could trivially create a consistent and complete system by adding all true arithmetical statements to the
axioms. This is known as True Arithmetic and is disliked by mathematicians for its lack of focus on rigorous proof.
Another option is to not be sufficiently expressive about arithmetic, so formalisations of limited geometry can be
potentially both consistent and complete. A proof of consistency can also come from outside of the system such
as from ZFC set theory, but G
odels Theorems would still apply to the consistency and incompleteness of ZFC
itself. A more interesting proof of consistency (due to Gentzen29 ) comes from modified Peano Arithmetic to only
allow induction over the ordinals up to 0 . The fact that these transfinite numbers cannot be expressed in normal
Peano Arithmetic was the key to its success, but it also makes the proof highly questionable in justifying weak
assumptions with stronger assumptions, which is the exact opposite of what Hilbert had hoped for. However, it is
also a weaker theory in that it cannot express normal mathematical induction. Overall, I would argue that this still
does not really capture Hilberts original program as it just transfers the question to another equally questionable
formal system and does not build up naturally from logical, fundamental truths.
Tarskis Theorem on the undefinability of truth30 can be avoided in several ways. One is to use a meta-language31
which consists of an arbitrary number of languages, each successive language can then contain the truth predicate
for the language before it. However, the problem would remain that the truth-predicate for the meta-langauge
would be undefinable. It is also not finitistic as after any finite number of steps the highest level language would
not have a definable truth-predicate. A different solution is offered by Kleene who described logics with a third
value of a truth predicate which can stand for both true and false or neither true nor false. Thus we could simply
describe these more problematic sentences with this new value for the truth predicate and hence avoid paradox.
This solution is also rather unsatisfying as we cannot know how many sentences have this undefined truth value or
if a particular sentence is undefined. A more philosophical approach is to simply decide that mathematical truth is
subjective, there is no ultimate truth and the concept of omniscience is logically impossible. I would interpret this
very strongly as saying that the intuitive idea we have of ultimate truth is an illusion. We can never achieve this
ideal, but rather we must strive to constantly expand our view of truth.

Minds and Machines

A common philosophical claim made based on Godels First Incompleteness Theorem is that the human mind must
transcend any machine. As we have already argued, any mechanical system of mathematics encounters a Liars
sentence G which it cannot prove, but as humans we can deduce that G is true. Therefore, we will always know
things that machines cannot. However, this argument is subtly fallacious, as it neglects the possibility that it is not
the machine which is limited, but the mind of the mathematician who cannot dream up a smart enough machine
to formalise their understanding of mathematics. As Godel32 himself noted, the mathematical conclusion of this
argument consists of separate options which can be chosen based on ones philosophical inclinations. Rationalists
tend to argue this proves that humans are limited in that we can never formalise our own understanding of mathematics so Hilberts Program will always be incomplete. Others such as Kurt Godel himself believed that the answer
to this dilemma indeed was that humans would always surpass machines.
29 Gerhard Gentzen. Neue Fassung des Widerspruchsfreiheitsbeweises f
ur die reine Zahlentheorie. In: Forschungen zur Logik und
zur Grundlegung der exakten Wissenschaften 4 (1936), pp. 1944.
30 This essentially says that a formal system of arithmetic cannot define the concept or predicate of arithmetical truth. See Appendix
C.1 p.27 for a more detailed but still informal look at the result.
31 Paul Christiano et al. Definability of Truth in Probabilistic Logic. In: Machine Intelligence Research Institute (2013). url:
http://intelligence.org/files/DefinabilityTruthDraft.pdf.
32 Either mathematics is too big for the human mind or the human mind is more than a machine.

Figure 4: Futurists and Science-fiction authors have long considered the possibility of an Intelligence Explosion
One can also start from the reverse assumption of naturalism to reach interesting conclusions. In this view we
may suppose that mathematicians too are just rule-following theorem-proving machines and therefore we can apply
G
odelian incompleteness to them in order to show that humans beings will never be able to prove certain things
about arithmetic and we can never know the consistency of our own beliefs. There are certain truths about our
own reasoning process that we cannot ever know. It would require an alien mind surpassing our own just to notice
the existence of such a statement though. We will never be able to point to such a fundamentally undecidable
statement, although one may well be known but unrecognised. For example, perhaps we will never manage to prove
the Riemann Hypothesis because we fundamentally cannot, regardless of how hard or long we try, but we could
never know that this was the case. There are ways to avoid this conclusion naturally. One could argue that as
we sometimes notice our own inconsistencies, perhaps we are inconsistent formal systems. Moreover, inconsistency
is to be expected from a poorly evolved mammalian species which shares most of its DNA with the chimpanzee.
However, this would put into question the presumption that mathematicians can come to know absolute, immutable
truths of all possible universes. Personally, I think this shows that we will always have an incomplete understanding
of mathematical truth.
If we live in a materialistic, reductionist universe then it may seem obvious that either free will and consciousness
exist at all scales (i.e. in the human mind but also in rocks or the Higgs Boson) or it is simply an illusion. However,
Douglas Hofstadter argues33 that holism may still be necessary to explain human behaviour in this view. He argues
as follows. Supposing that the brain is built up from simpler entities, there must be some level at which the brain
can be viewed as a system which G
odels First Incompleteness Theorem applies to and yet there is certainly a level
where we know that G is clearly true. Therefore, just as Hilberts program is quashed by Godelian Incompleteness,
reductionist attempts to understand free will or consciousness may too be futile. In this view, we have to imagine
the brain as a formal system of incredible complexity but built up from primitive computations at its lowest levels,
such that it is another mechanical system which must face the limits of Godelian Incompleteness. This is certainly
a plausible argument given a naturalistic world-view, but with how little we know about the brain I do not accept
that it can be established with great certainty.
L
obs Theorem35 has also been argued by Eliezer Yudkowsky36 to present a major obstacle to designing an Artificial
Intelligence (AI). I.J. Good argued37 that AIs should one day learn to improve themselves leading to an intelligence
explosion38 . There is a so-called L
obian obstacle for such self-modifying artificial intelligences, which is that a
rational agent seemingly cannot choose to rewrite its own source code. This AI would want to be able to trust
itself after making an alteration to its source code, thus it would expect a proof of the soundness of its new source
code. However, L
obs Theorem states that a theory cannot prove its own soundness, so it certainly cannot prove
the soundness of a stronger theory. Therefore, if an AI changes its own source code it will have to make it weaker
in its mathematical power, which does not really seem like an improvement at all. On the other hand, if this AI
always chooses to keep its original source code then it is incredibly limited in its ability to improve itself.
This points to fundamental limits in self-reference and reflective rationality in Artificial Intelligence. Perhaps we
33 Hofstadter,

G
odel, Escher, Bach: An Eternal Golden Braid.
4: Daniel Dewey. Intelligence Explosion and the Long-Term Future of Artificial Intelligence. url: http://www.danieldewey.
net/tedxvienna.html; James Cameron. Terminator 2. url: http://geektyrant.com/news/2013/2/4/new-terminator-2-vfx-testsshow-cutting-edge-tech-for-the-ti.html
35 This essentially says that a formal system cannot prove its own soundness, i.e. if it proves something then it is true. See Appendix
C.1 p.27 for a more detailed but still informal look at the result.
36 Eliezer Yudkowsky and Marcello Herreshoff. Tiling Agents for Self-Modifying AI, and the L
obian Obstacle. In: Machine
Intelligence Research Institute (2013). url: http://intelligence.org/files/TilingAgentsDraft.pdf.
37 Irving John Good. Speculations Concerning the First Ultraintelligent Machine. In: Advances in Computers 6 (1965), pp. 3188.
38 This refers to the positive feedback cycle when machines create new machines which will be even better at making new machines.
This kind of change builds on itself so could grow exponentially or even faster.
34 Figure

Figure 5: The hypothetical machine which solves the Halting Problem halts if and only if it does not halt (given
the addition of the looper program and that the input is its own name)
have to accept some weaker result than the soundness of a new theory before we choose to embrace it. One simple
solution to the problem is to simply imagine a list of theories in which successive theories can prove the soundness
of the previous theory and as the AI self-modifies it could simply descend down this list of theories as it rewrites
itself in order to be able to prove the soundness of its new code. However, this would eventually hit some kind
of bottom (potentially at ZFC) as it approaches the weakest mathematical system, creating an upper limit on the
number of rewrites that an AI could perform in its lifetime, which is distinctly unsatisfying. There are some limited
possibilities suggested for reversing this process such that it has no last theory rather than no first theory, but it is
not a problem with any accepted solution.39
A related problem is known as the procrastination paradox. Imagine that an AI has to choose between acting now
(lets say pressing a button) or modifying its source code so that it acts later. Assume the AI wants to press the
button but is under no time pressure to do so quickly. In that case the AI will conclude that if it does not press
the button now, its next decision will be to either press the button or to modify its source code such that it will
press the button eventually. Therefore the AI must conclude that the button will eventually be pressed so it can
just modify its source code rather than pressing the button now. This argument is independent of how many times
the same decision has previously been made therefore the AI will never actually press the button. This seems to
be intimately related in some way to the L
obian obstacle as the advantage of the obstacle is that it would prevent
such paradoxes (which come from an AI being able to rewrite its own source code).

Computers and Decidability

The great mathematician Alan Turing set to work on solving the Halting Problem: can we find an effective procedure
for determining whether a computer program will finish and halt normally or instead become lost in an infinite
loop and crash? Turing was able to invent an elegant and simple argument that this problem could not be solved.
Suppose that it was solved, so we could instruct a machine H to determine whether a given program will halt
successfully. Turing proposed a couple of simple modifications that we could make to the machine to lead inevitably
to paradox. Add a looping device to the end of the program which if given the input Yes will go into an infinite
loop and if given the input No will simply halt immediately. Now let us give this new machine H + its own name
as an input. Will it halt? Suppose it does, then H will return the output Yes and given the input Yes the looping
program will loop forever, so it will not halt. Suppose it does not halt, then H will return the output No and
the looper given the input No will simply halt. Either supposition leads to contradiction and so we are forced to
conclude that this paradoxical machine H does not exist and thus the Halting Problem is not solvable according
to the Church-Turing Thesis.41 Even without the assumption of a Windows operating system, Turing was able to
conclude that we cannot trust our computers not to crash.
39 Benja

Fallenstein and Nates Soares. Problems of self-reference in self-improving space-time embedded intelligence. In: Machine
Intelligence Research Institute (2013). url: http://intelligence.org/files/ProblemsSelfReference.pdf.
40 Figure 5: Mohit Dhingra. Problem on NFA construction. url: http : / / functionspace . org / topic / 264 / Problem - on - NFA construction
41 See Appendix D.1 p.34 for an informal introduction to Turings ideas.

Now we can apply all of the results so far to questions of the nature of science, in particular, the search for a Grand
Unified Theory of Physics. Laplace put this hypothesis the most transparently in his famous thought-experiment
which has become known as Laplaces Demon42 . Imagine that there was a machine of incredible computational
power which knew all the fundamental laws of physics and all the information about the starting conditions of the
universe. Classical physics states that any future state of the universe would be hence mathematically determined,
with nothing left to chance. As a result, this machine could predict any event in the universe that ever happened
including what I am about to write next, what you are thinking right now and what you will do when you finish
reading this. However, this extreme statement of determinism clearly contradicts Turings result as we could use
such a machine to solve the Halting Problem by predicting whether a program would halt based on a physical
description of the situation. Therefore, Laplaces Demon is actually not possible. In light of this interesting result,
we can actually now examine the full impact of Godelian Incompleteness on the universe itself, as if we assume
that the universe is deterministic then it is essentially a mechanical system in which the theorems being proven are
the states of the universe being exhibited over time. The universe is also axiomatised according to the essential
physical assumption that there are underlying immutable laws43 . It is sufficiently strong to capture arithmetic
as every number theorist who has ever existed worked within our universe and so activities in the universe are
sufficiently complex to model arithmetic. It is clearly consistent as in classical physics we cannot have two things
happening at once. Consequently we must conclude that there are fundamental truths about our universe which
cannot be known within the universe. We will never be able to create a complete predictive model of the universe.
If44 we were to one day be woken up to reality, only to find out that our universe was actually a simulation, then
perhaps we could suddenly understand fundamental underlying truths as we look down into our universe from the
outside. On the other hand, there are modern developments in physics which could prevent such a bizarre scenario.
There are non-deterministic interpretations of quantum mechanics which could introduce fundamental randomness
to the physical laws, making them not axiomatisable or reducible to simple computation. The possible existence of
a multiverse of infinite universes could also complicate matters. As a result, I would argue that the implications of
G
odelian Incompleteness cannot be fully understood until fundamental disagreements over the nature of physical
law are finally settled.

Conclusion

In summary, what can we say about Peano Arithmetic and related systems? The formalised theorems of G
odel
demonstrate not just that they can never prove certain true statements, such as their own consistency, but they
know that they never could prove them in the sense that a computer could derive Godels Incompleteness Theorems
from Peano Arithmetic given enough time (although obviously the computer would not recognise their incredible
semantic significance). L
ob showed45 that PA also knows that it can prove what it can prove, but it knows nothing
about what it cannot prove. We also know that PA cannot even discuss questions of its own truthfulness without
becoming inconsistent. Accordingly, Hilberts Second Problem46 has been settled in the negative. The nature of
foundational mathematics is not as it seems. Complex mathematics does not arise from logic and arithmetic, but
in fact assumptions about infinity are necessary to justify the truth of arithmetic. Consequently I must conclude
that the nature of mathematics is not yet fully understood and perhaps there is a line which mathematical proof
cannot pass. Some mathematical problems will always be intractable unless we adopt a far more sophisticated
understanding of what mathematics actually is.

42 Laplace originally spoke of something usually translated as an intellect, he said: for such an intellect nothing would be uncertain
and the future just like the past would be present before its eyes.
43 Laplace: all the effects of nature are only mathematical results of a small number of immutable laws
44 Wachowski and Wachowski. The Matrix. March 31, 1999.
45 See Appendix C.1 p.27 for a more detailed but still informal look at the results.
46 Hilbert, Mathematical Problems.

10

Appendices
A

Formal Systems as the Foundation of Mathematics

A.1

First-order Logic

Symbols: {(, ), P, Q, R,0 , , , , }


Well-formed variables are of the form {P, Q, R} or any of those three letters followed by any number of primes (e.g.
P 0 or R000000 )
Strings of any well-formed variables (x and y) are themselves well-formed if they are made up of the following four
forms:
1. x
2. (x y)
3. (x y)
4. (x y)
Laws of Transformation:
Rule 1 (Conjunction Introduction).
x
y
` (x y)
11
Rule 2 (Conjunction Elimination).
(x y)
`x
`y
Rule 3 (Double Negation). x x
Rule 4 (Conditional Introduction).
( + x) ` y
` (x y)
is used here to represent known theorems of the system. The process of adding x to the system temporarily is
known as the Push and removing it again is known as the Pop47 .The string represented by x here is known as
the Premise. The fact that + x strictly includes x implies that theorems can be carried down through a push
but not back up after the pop; this principle is known as the Carry-down Rule.48
Rule 5 (Conditional Elimination or Modus ponens).
x
(x y)
`y
Rule 6 (Contrapositive Rule). (x y) (y x)
Rule 7 (Junction Conversion). (x y) (x y)
Rule 8 (Disjunctive Syllogism). (x y) (x y)
I will add the following symbol, which is unnecessary, but will be used to make theorems easier to read.
Definition 1 (Biconditional Introduction and Elimination).
((x y) (y x)) (x y)
This will be a useful shorthand when x and y are very large strings.
Lemma 1 (Disjunction Commutativity). ((P Q) (Q P ))
47 Note

that push and pop are not part of the system.


G
odel, Escher, Bach: An Eternal Golden Braid.

48 Hofstadter,

11

Proof.
Push

@
(P Q)

Premise

(P Q)

Switcheroo

(Q P )

Contrapositive

(Q P )

Double-negative

(Q P )

Switcheroo
Pop

A
((P Q) (Q P ))

Hypothetical Rule

But P and Q were randomly chosen variables, so we could simply perform the same proof again with the roles of
P and Q reversed to obtain the following theorem.
((Q P ) (P Q))

Repeat process

((P Q) (Q P ))

Biconditional Introduction (p.11)

Lemma 2 (Conjunction Commutativity). ((P Q) (Q P ))


Proof.
Push

@
(P Q)

Premise

Conjunction Elimination

Conjunction Elimination

(Q P )

Conjunction Introduction
Pop

A
((P Q) (Q P ))

Conditional Introduction

((Q P ) (P Q))
((P Q) (Q P ))

Repeat process
Biconditional Introduction

Lemma 3 (Tautology). (P P )
Proof.
Push

@
P

Premise
Pop

A
(P P )

Conditional Introduction

(P P ) (P P )

Conjunction Introduction

(P P )

Biconditional Introduction

Lemma 4 (The law of the excluded middle). (P P )


Proof.
(P P )

Tautology

(P P )

Disjunctive Syllogism

12

Lemma 5 (The law of non-contradiction). (P P )


Proof.
(P P )

The Law of the Excluded Middle

(P P )

Double Negation

(P P )

Junction Conversion

(P P )

Double Negation

(P P )

Conjunction Commutativity

As a short hand for using this result we will introduce an extra definition for convenience.
Definition 2 (Contradiction). (P P ) for any formula taking the place of the free variable P . Therefore
the law of non-contradiction translates to .
Lemma 6 (Proof by Contradiction49 ). (Q ) Q
Proof. First the forward implication.
Push

@
Q

Premise

Contrapositive Rule

The law of non-contradiction

Conditional Elimination
Pop

A
(Q ) Q

Conditional Introduction

Now the reverse implication:


Push

@
Q

Premise
Push

@
Q

Premise

Carry-down Rule

(Q Q)

Conjunction Introduction

Definition of contradiction
Pop

A
Q

Conditional Introduction
Pop

A
Q (Q )

Conditional Introduction

Combining:
(Q ) Q

Forward Implication

Q (Q )

Reverse Implication

Q (Q )

49 Also

Biconditional Introduction

known as Reductio ad absurdum or Modus tollens

13

Lemma 7 (Case analysis). ((((P R) (Q R)) (P Q)) R)


Proof.
Push

@
(((P R) (Q R)) (P Q))

Premise

((P R) (Q R))

Conjunction Elimination

(P R)

Conjunction Elimination

(Q R)

Conjunction Elimination

(P Q)

Conjunction Elimination

(R P )

Contrapositive Rule

(R Q)

Contrapositive Rule
Push

@
R

Premise

(R P )

Carry-down Rule

(R Q)

Carry-down Rule

Conditional Elimination

Conditional Elimination

(P Q)

Conjunction Introduction
Pop

A
(R (P Q))

Conditional Introduction

(R (P Q))

Junction Conversion

((P Q) R)

Contrapositive Rule

((P Q) R)

Double Negation

Conditional Elimination
Pop
Conditional Introduction

A
((((P R) (Q R)) (P Q)) R)

Theorem 1. The Principle of Explosion50 : ((P P ) Q)


Proof.
Push

@
(P P )

Premise

Conjunction Elimination

Conjunction Elimination

Push

Premise

Carry-down Rule

Double Negation
Pop

A
(Q P )
(P Q)

Conditional Introduction
Contrapositive Rule and Double Negation

Conditional Elimination
Pop

A
((P P ) Q)
50 Also

Conditional Introduction

known as ex contradictione quodlibet (from a contradiction, anything follows)

14

Lemma 8 (Nested Conditionals). P (Q R) (P Q) R


Proof. First the forward implication:
Push

@
P (Q R)

Premise
Push

@
P Q

Premise

P (Q R)

Carry-down Rule

Conjunction Elimination

(Q R)

Conditional Elimination

Conjunction Elimination

Conditional Elimination
Pop

A
(P Q) R

Conditional Introduction
Pop

A
((P (Q R)) ((P Q) R))

Conditional Introduction

Now the backwards implication:


Push
Premise

@
(P Q) R

Push

@
P

Premise
Push

@
Q

Premise

Carry-down Rule

P Q

Conjunction Introduction

(P Q) R

Carry-down Rule

Conditional Elimination
Pop

A
QR

Conditional Introduction
Pop

A
P (Q R)

Conditional Introduction
Pop

A
(((P Q) R) (P (Q R)))

Conditional Introduction

((P (Q R)) ((P Q) R))

Forwards implication

(((P Q) R) (P (Q R)))

Reverse Implication

Combining:

P (Q R) (P Q) R

Biconditional Introduction

Lemma 9 (Conditional Syllogism). ((P Q) (Q R)) (P R)


Proof.
Push

@
15

(P Q) (Q R)

Premise

P Q
QR

Conjunction Elimination
Conjunction Elimination
Push

@
P

Premise

P Q

Carry-down Rule

Conditional Elimination

QR

Carry-down Rule

Conditional Elimination
Pop

A
P R

Conditional Introduction
Pop

A
((P Q) (Q R)) (P R)

A.2

Conditional Introduction

Peano Arithmetic

We will now outline what must be added to first-order logic to create a sufficiently strong theory of arithmetic.
Language for arithmetic ={0, S, +, p, q, r, , =, , , :}
Definition 3. 0 is a number and if x is a number then Sx is a number.
If x and y are numbers or numerical variables then x = y is a well formed formula. If x is a variable which occurs in
(x) then x : ((x)) and x : ((x)) are well-formed formulae. All well-formed formulae can be substituted into
free propositional variables51 . p, q, r are numerical variables if x is a numerical variable then x0 is also numerical
variable.
If x and y are numbers or numerical variables then they obey the following arithmetical axioms:
Axiom 1 (Equality Introduction). x : (x = x)
Axiom 2 (Zero is not a Natural Number). x : (0 6= Sx)
Axiom 3 (Succession is an Injective Function). x : y : (Sx = Sy x = y)
Axiom 4 (Basis of Addition). x : (x + 0 = x)
Axiom 5 (Induction of Addition). x : y : (x + Sy = S(x + y))
Axiom 6 (Basis of Multiplication). x : (x 0 = 0)
Axiom 7 (Induction of Multiplication). x : y : (x Sy = (x y) + x)
Axiom 8 (Equality Elimination). ((x = y) (x)) (y)
Axiom 9 (Induction Schema). (((0) x : ((x) (Sx)) x : (x)) where (x) is an open well-formed
formula with at least the variable x free.
The following are true for any variables x, y and any open formula :
Axiom 10 (Universal Elimination or Universal Instantiation). (x : ((x))) (y) assuming that there is no clash
of variables.
Axiom 11 (Universal Introduction or Universal Generalisation).
(x) (x : ((x))) assuming that the variable x was not previously used as a free variable in the derivation of
(x), meaning that x could have been any other variable.
Axiom 12 (Existential Introduction). (y) x : ((x)) where x is a free variable replacing a constant term y in
. The term y is known as a witness to (x).
Axiom 13 (Existential Elimination). (x : ((x)) ((x) ) ) assuming that x does not appear again as a
free variable in .
Lemma 10 (Quantification Conversion). x : ((x)) x : ((x))
51 the

kind of variables used in first-order logic

16

Proof. First the forward implication:


Push

@
x : ((x))

Premise

(x)

Universal Elimination (p.16)


Push

@
x : ((x))
@

Premise
Push

(x)

Premise

(x)

Carry-down Rule

(x) (x)

Conjunction Introduction

Definition 2 (p.13)
Pop

A
(x)

Conditional Introduction

Existential Elimination
Pop

A
x : ((x))

Conditional Introduction

x : ((x))

Proof by contradiction (p.13)


Pop

A
x : ((x)) (x : ((x)))

Conditional Introduction

Then the reverse implication:


Push

@
x : ((x))

Premise
Push

@
x : ((x))

Premise

(x) (x : ((x)))

Universal Introduction

(x) (x : ((x)))

Substitution

x : ((x)) (x)

Contrapositive Rule

x : ((x)) (x)

Double Negation

(x)

Conditional Elimination

x : ((x))

Existential Introduction

x : ((x))

Carry-down Rule

(x : ((x))) (x : ((x)))

Conjunction Introduction

Definition 2
Pop

A
(x : ((x)))

Conditional Introduction

x : ((x))

Proof by Contradiction
Pop

A
(x : ((x))) x : ((x))

Conditional Introduction

x : ((x)) x : ((x))

Biconditional Introduction (p.11)

We can build up Peano Arithmetic in Set theory, demonstrating it is truly at the most fundamental level of
mathematical foundations.
Definition 4 (Number). is a number and if is a number then {} is a number.
17

This defines an equivalent to the successor function, where a set is added to its own elements. Thus the set of
numbers consists of:
0=
1 = {}
2 = {, {}}
3 = {, {} , {, {}}}
4 = {, {} , {, {}} , {, {} , {, {}}}}
...
This allows arithmetic to be modelled by set theory. Therefore, if arithmetic is capable of enough self-reference to
face fundamental limitations in order to maintain consistency, then the absolute foundations of mathematics such
as set theory must face the same limitations.

A.3

Naive Set Theory and Russells Paradox

The fatal principle is that sets of the type {x|P (x)} are always well-formed and are defined by definition 5.
Definition 5 (Membership Introduction and Elimination).
((x {x|P (x)}) P (x))
Definition 6 (Membership Negation). x
/ y (x y)
Definition 7 (Russells Set). R = {x|(x
/ x)}
Theorem 2 (Russells Paradox52 ).
((R R) (R
/ R))
Proof. Starting from the critical axiom listed above, let P = (x
/ x). Therefore, Russells Set is well formed.
((x R) (x
/ x))

Rule of Assimilation

((R R) (R
/ R))

Substitution x R

Theorem 3.
Moon = Cheese
Proof.
((R R) (R
/ R))

Russells Paradox

((R R) (R R))

Definition 6

((R R) (R R))

Biconditional Elimination

((R R) (R R))

Biconditional Elimination

((R R) (R R))

The Law of the Excluded Middle (p.12

((((P R) (Q R)) (P Q)) R)

Case Analysis (p.14)

(((R R) ) ((R R) ) ((R R) (R R)))

Substitution

The complicated last theorem is simply the result of substituting values into the Case Analysis Lemma from the
three preceding theorems for values of the variables P , Q, and R. Now by Conditional Elimination we have:
((R R) ((R R)))

Now we need only combine this result with the Principle of Explosion to complete the proof. Theorem 1 states:
((P P ) Q
52 Russell,

The Principles of Mathematics.

18

Recall that P and Q are merely variables. Let P = (R R) and Q = (Moon = Cheese).
(((R R) (R R)) (Moon = Cheese)

The Principle of Explosion

((R R) ((R R)))

Russells Paradox

Moon = Cheese

Conditional Introduction

The end of that proof was not technically accurate because the letters required to write Moon = Cheese do not
actually exist in the language of Logic or Set Theory, but this demonstrates the claim that anything expressible in
naive set theory is provable.

G
odels First Incompleteness Theorem

B.1

G
odel Numbering

Theorem 4 (Chinese Remainder Theorem). For any relatively prime sequence q0 , q1 . . . qn1 , qn , then for each i in
the range from 0 to (q0 q1 . . . qn1 qn ) 1 there is a unique sequence:
i(mod q0 ), i(mod q1 ) . . . i(mod qn1 ), i(mod qn ). There are only q0 q1 . . . qn1 qn possible sequences of remainders, so these values of i will produce every possible unique sequence of remainders.
Proof. Suppose that the sequences were not all unique. Then there would be two values of i, say i1 and i2 where
0 i1 < i2 < q0 q1 . . . qn1 qn which give identical sequences. Let i = i2 i1 . If i1 = i2 (mod qk ) then clearly
i must be a multiple of qk . This is true for all qk in the sequence (q0 , q1 . . . qn1 , qn ), so i must be a multiple
of every term in the sequence. As the terms in the sequence are relatively prime, i must therefore be a multiple
of the product q0 q1 . . . qn1 qn . However, i is the difference between two values of i, which both must be
strictly less than the product, so i should have been less than the product. Contradiction.
There are qk unique numbers in a modulo qk 53 for each term in the sequence. As a result, if we multiply to get
the total possible combinations of remainders we get q0 q1 . . . qn1 qn . In summary, there are no repeated
sequences created and there are as many sequences formed as there are possible sequences, so these values of i must
produce precisely every combination of remainders.
B.1.1

Primitive Recursive Functions

Definition 8. Primitive recursive functions ultimately consist of just three so-called primitive functions:
1. The Successor Function y = S(x) = x + 1
2. The Zero Function y = Z(x) = 0
3. The Identity Function y = Iin (x1 , x2 , x3 . . . xn1 , xn ) = xi
Complex functions are built up from these using the following rules of recursion:
1. If f and g are primitive recursive functions, then f (g(x)) is a primitive recursive function
2. Let g and h be primitive recursive functions. The function f , defined by the basis fc (0) = g(c) and the
inductive rule fc (Sx) = hc (x, fc (x)), is also primitive recursive54 .
This class of functions is useful to define because they can clearly be captured by a sufficiently strong system of
arithmetic, which we will now prove.
Theorem 5 (Expressibility of primitive recursive functions). All primitive recursive functions can be expressed by
the language of arithmetic.
53 Recall

that in a modulo qk counting system, by convention we write all numbers as one of {0, 1, 2 . . . qk 2, qk 1} which has size

qk .

54 c here stands for any number of values which are required in calculating the function. For example, 2(x + 1) 3 would require the
numbers {1, 2, 3} in memory to know how much to add, subtract and multiply

19

Proof.
1. LA can express the three primitive functions.
1 The Successor Function y = S(x) = x + 1 can be represented by the well-formed formula of arithmetic
(y = Sx) using the model S0 = 1, SS0 = 2. . . making the mechanical successor function satisfy the
semantic successor function.
2 The Zero Function y = Z(x) = 0 is expressed by the well-formed formula (x = x y = 0).
3 The Identity Function y = Iin (x1 , x2 , x3 . . . xn1 , xn ) = xi is expressed by the well formed formula
((x1 = x1 ) (x2 = x2 ) (x3 = x3 ) . . . (y = xi ) . . . (xn1 = xn1 ) (xn = xn )) .
2. Expressibility in LA is stable under the rules of primitive recursion.
(a) The first rule is trivially expressed by (y = f (t)) (t = g(x)).
(b) The second rule is much more complicated. This can be proven using Godels Function Lemma to
express a recursively defined list through a coding system similar to Godel numbering.
Suppose we had a sequence of natural numbers k0 , k1 k2 . . . kn1 , kn then we could encode all of the
kn1
nkn . We can then decode it
information of this list into the number N = 0k0 1k1 2k2 . . . n1
using a primitive recursive function exp(N, i) = x N which satisfies the formula (ix |N (ix+1 |N )).
The problem is that Peano Arithmetic does not include exponentiation. This can be fixed by instead
using two coded numbers a and b, then setting a,b (i) to be the remainder when a is divided by b(i+1)+1.
Formally, a,b (i) = y if and only if a = S(b Si) f + y where f is its greatest possible value55 less than
a. The Chinese Remainder Theorem implies that there will always be values of a and b to satisfy this
-function, as we will now demonstrate.
Let s be the largest number of the set {n, k0 , k1 k2 . . . kn1 , kn }. Let b = s!. Now imagine the sequence
b(i + 1) + 1 for all values of i between 0 and n (inclusive): b + 1, 2b + 1, 3b + 1 . . . b(n + 1) + 1. We
now prove that this must give a relatively prime sequence of numbers. Suppose, they were not relatively
prime, then there would have to be two numbers in the sequence bj + 1 and bk + 1, or explictly s!j + 1
and s!k + 1, which had a prime factor in common, say p. The first s numbers cannot divide s!j + 1 as
they all leave remainder 1, so the common divisor p must not be any of those numbers, i.e. p > s ( n).
This common factor p must also be a factor of their difference b(k j). Also, as a factor of bj + 1, p
cannot be a factor of b. Therefore, by process of elimination, it must have been a factor in k j, so
p (k j). As k and j index two of n + 1 numbers, their difference must be at most n. If we put those
two facts together then p n. Contradiction.
Consequently, the sequence b(i + 1) + 1 for all values of i between 0 and n (inclusive) is relatively prime.
The Chinese Remainder Theorem implies that there must therefore be some value of a for every possible
sequence a(mod b + 1), a(mod 2b + 1) . . . a(mod bn + 1), a(mod b(n + 1) + 1). As a result, there must be
some value of a for which this procedure produces the series k0 , k1 k2 . . . kn1 , kn exactly. Thus we have
demonstrated the existence of a function.
These two coded numbers a and b can then be further encoded to one number, for example using
N = 2a 3b , which could be decoded by factorisation and counting, so we can stick to just one code
number to simplify our -function. Generalising, for any sequence of natural numbers k0 , k1 k2 . . . kn1 , kn
there is a coded number N with a function such that N (i) = ki for all i n.
Now we are ready to express the function fc (x) = y recursively such that fc (0) = g(c) and fc (Sx) =
hc (x, fc (x)). It defines a set of numbers leading up to y for which we can specify a function:
k0 , k1 k2 . . . kx1 , kx where k0 = g(c) = N (0), kx = y = N (x) and for all i < x: ki+1 = hc (i, N (i)) =
N (Si). Therefore, we define fc (x) = y if and only if y obeys the following formalised formula in
arithmetic:
N : ((y = N (x)) (g(c) = N (0)) (i < x : (hc (i, N (i)) = N (Si))))
where i < x : is short for i : (v : ((v = 0) (v + i = x))) .
55 Formally

this is ((f < a) g : f < g)

20

Theorem 6. Primitive Recursive functions are those which can be expressed using for-loops in pseudo-code
Proof. Pseudo-code is a high-level language which is ultimately reducible to machine code, which is ultimately
reducible to basic computations on binary numbers. Binary numbers can be mapped to the natural numbers, so
these basic functions must be primitive recursive. Now we just need to show that recursively defined functions can
be expressed using only for-loops. The classic style of a recursive definition is:
1. define f (x):
2.

if x = 0 then:

3.

return g(c)

4.
5.

else:
return h(c, x 1, f (x 1))

This can easily be defined non-recursively using just for-loops:


1. define f (x):
2.

fList=create(EmptyList)

3.

fList.add(g(c))

4.

for i in range i = 0 to i = x 1:

5.
6.

fList.add(h(c, i, f (x)))
return fList[final]

This creates a list, initialised to [g(c)], then uses an iterative loop to gradually add values until the end result is a
list whose final value is the answer to f (x): [g(c), h(c, 0, g(c)), h(c, 1, h(c, 0, g(c))) . . . f (x)].
In summary, we have proven that primitive recursive functions can be defined using only for-loops and that
programs using only for-loops must be primitive recursive. Therefore, functions are primitive recursive if and only
if they can be written out in a program using only for-loops (no while-loops).
Definition 9 (Express). The open formula (x) expresses a property P if and only if the following two conditions
hold:
if x has property P , then (x) is true in hLA , IA i.
if x does not have property P , then (x) is true in hLA , IA i.
Definition 10 (Capture). The open formula (x) captures a property P if and only if the following two conditions
hold:
if x has property P , then A ` (x).
if x does not have property P , then A ` (x).
Theorem 7. A captures all primitive recursive functions
Proof. Firstly, the three primitive functions are trivially captured. For succession simply add an S, for zero simply
write 0 and for identity simply do nothing to the number in question. Thus all three reduce to the ability to prove
that two identical numbers are equal, which Axioms 1 and 10 (p.16) ensure easily. Moreover, under recursion of the
first kind, primitive recursive functions are still clearly captured. Assuming that f (t) and g(x) are both captured,
then Axiom 1 ensures that (y = f (t)) (t = g(x))) captures f (g(x)). Recursion of the second kind on captured
functions must also give a captured function as its result because we can reduce this recursion to for-loops as
we have seen. This means that there will be no open-ended searches and thus all quantification will be bounded.
Therefore, we just have to prove that bounded quantification of captured formulae results in more complicated
relations which can also be captured. There are obviously two types of bounded quantification:
x c : ((x))

(1)

x c : ((x))

(2)

where (x) is a captured formula. The first type will be proven if true due to axiom 12, as it is a computable
mechanical procedure to check all of the numbers from 0 to c to see if they satisfy (x). Then if and only if

21

such a value is found will axiom 12 derive the formula. The second type needs to be written out explicitly as
x : (x c) ((x)) and for a specific value of c could be written out more explicitly as (x = 0 x = 1 x =
2 . . . x = c) (x). Now we can see that it will be proven if true because assuming that it is correct then we can
prove one of (0), (1), (2) . . . (c). Then using lemma 7 (p.14) we can prove it to be correct.
We can now show that the formulae will also be proven false if they are not true using the relation from lemma 10:
x : ((x)) x : ((x)). This shows that proving either type false is equivalent to proving a formula of the
other type true. Therefore, all primitive recursive functions can be reduced to captured arithmetical relations.
B.1.2

Coding Theorems

We now define a G
odel numbering system and primitive recursive operations on those numbers. First we assign
Atomic G
odel Numbers to all the symbols in the language of arithmetic. A simple trick of modular arithmetic allows
us to assign numbers to infinite numerical and propositional variables. The numerical variables can be assigned
Atomic G
odel Numbers which are equal to 0 in modulo 3:
p
3

q
6

p0
12

r
9

q0
15

r0
18

p00
21

q 00
24

r00 . . .
27 . . .

The propositional variables can be assigned Atomic Godel Numbers which are equal to 1 in modulo 3:
P
1

Q
4

P0
10

R
7

Q0
13

R0
16

P 00
19

Q00
22

R00 . . .
25 . . .

The remaining symbols can then be assigned the lowest numbers left, which are equal to 2 in modulo 3:
0
2

S
5

11

+
8

17

=
14

20

23

26

29

32

(
35

)
38

:
41

G
odel numbers are then assigned to expressions based on the Atomic Godel Numbers of their constituent symbols.
Suppose an expression is made up of the symbols s0 s1 s2 . . . sn2 , sn1 , sn which have corresponding Atomic G
odel
Numbers {g0 , g1 , g2 . . . gn2 , gn1 , gn }, then the expression will be assigned the Godel number 0g0 1g1 2g2
gn2
gn1
. . . n2
n1
ngn . Then a sequence of expressions can be assigned a Super Godel Number based on the
G
odel numbers of their constituent expressions in an identical fashion.
For example, let us deduce the Super G
odel Number of the proof of the Law of the Excluded Middle (lemma 4
p.12):
(P P )

Tautology

(P P )

Disjunctive Syllogism (p.11)

First we look up on our table the Atomic G


odel Number of the symbols used.
(P P )

35, 23, 1, 26, 23, 1, 38

(P P )

35, 11, 32, 23, 1, 38

Now we assign each formula its G


odel number.
(P P )

235 323 51 726 1123 131 1738

(P P )

235 311 532 723 111 1338

Now we give the entire proof (a sequence of formulae) a Super Godel Number N by iterating the process on the
G
odel Numbers of the formulae.
(P P )(P P )

35

N = 2(2

323 51 726 1123 131 1738 )

3(2

35

311 532 723 111 1338 )

In order to comprehend the magnitude of this number, let us write it in powers of 10:
102.062518063586396

N = 1010

22

This means that N is larger than a Googolplex. According to the astronomer Carl Sagan, just writing out this
number in decimal would require more space than exists in the entire visible universe.56 The mathematician John
Littlewood estimated that the odds of a mouse surviving for a week on the surface of the Sun due to random
quantum fluctuations are better than one in a googolplex.57 There may be much more efficient Godel numbering
systems for this theory but this is the easiest and most natural to describe mathematically whilst ensuring no
two objects in the system at the same level (symbol, expression, sequence) have the same Godel number. This is
guaranteed by the fundamental theorem of arithmetic.
Theorem 8 (The Fundamental Theorem of Arithmetic). Every natural number greater than 1 can be expressed
uniquely as a product of primes.
Proof. First we show that every natural number greater than 1 can be expressed as a product of prime numbers in
at least one way. Let (x) be the statement that x can be expressed as a product of primes. We will proceed using
proof by strong mathematical induction, which consists of two steps:
1. Basis Step: prove (2)
2. Inductive Step: prove
n
\

((i)) =

i=2

n+1
\

((i))

i=2

Then we will have proven (x) for x 2 as required. The Basis Step is trivial as 2 is prime. For the Inductive Step
we must first assume the antecedent, then we have (2) (3) (4) . . . (n 1) (n). Now we just have to
show (n + 1), that is, that n + 1 has a prime factorisation. If n + 1 is prime then this is trivially true, otherwise,
n + 1 = ab for some factors a and b which must both be greater than 1 and less than n + 1, so by assumption58
have prime factorisations. Let us say that a = p1 p2 . . . pk1 pk and b = q1 q2 . . . ql1 ql . Therefore
we can deduce that n + 1 = ab = p1 p2 . . . pk1 pk q1 q2 . . . ql1 ql . This is a prime factorisation
of n + 1 and thus we have proven by strong induction that we can express every natural number greater than 1 as
a product of prime numbers in at least one way.
Now we must prove that such expressions are unique. We will proceed using proof by contradiction. Let us suppose
that there is some integer n with two different expressions as a product of primes and derive a contradiction. By
supposition, n = p1 p2 . . .pk1 pk = q1 q2 . . .ql1 ql where the two lists of primes are written in ascending
order and are different lists. Now we can cancel any common prime factors, isolating the terms which differ between
the lists. By assumption, this will leave us with a few completely unique prime factors remaining from the original
lists which distinguish the lists from each other. Therefore r1 r2 . . . ra1 ra = s1 s2 . . . sb1 sb . It
is clear that r1 is a factor of r1 r2 . . . ra1 ra and thus is also a factor of s1 s2 . . . sb1 sb . As r1
is prime, it must divide one of the factors of s1 s2 . . . sb1 sb in order for it to be a factor of the product.
Therefore, r1 is a factor of sj for some value of j. As r1 and sj are both prime, this can only be the case if r1 = sj ,
which contradicts our assumption that the prime factorisations were different. In summary, every number has a
prime factorisation (induction) and it must be unique (contradiction).
Now we will define functions on G
odel numbers. It should be intuitive from the example that there is some
arithmetical relation, albeit it incredibly complicated, between the Godel number of a theorem and the Super
G
odel number of a valid proof of that theorem.
Definition 11. Prf(x, z) stands for the arithmetical formula in A which is true if and only if x is the Super G
odel
number of a proof of the theorem with G
odel number z. By proof we mean a sequence of well-formed formulae
which start with the axioms, end with the desired theorem and in which each successive formula follows by a rule
of inference.
Now we can express statements about provability encoded as arithmetical relations between Godel numbers. We
will also need to define a relation which will allow formulae to reference themselves, or more specifically, their own
G
odel numbers.
56 Sagan,

Cosmos: A Personal Voyage, Episode 9: The Lives of the Stars.


Thinking in Numbers: How Maths Illuminates our Lives.
58 We assumed (2) (3) (4) . . . (a) . . . (b) . . . (n 1) (n)

57 Tammet,

23

Definition 12. diag(p(x)q) = p(p(x)q)q. In words: given the Godel number n of an open formula (x),
substitute the numeral n into the formula in exchange for the free variable x and then return the Godel number of
the resulting formula. This resulting formula is known as the diagonalisation of .
Now we have to convince ourselves that these arithmetical formulae can be captured in A .
Theorem 9. Prf(m, n) and diag(n) are captured in A
Proof. We will prove this by showing that they are primitive recursive and thus captured in A as we proved in
Theorem 7 (p.21). Unsurprisingly, the most rigorous way to prove this is constructively, building up definitions in
A which refer to only primitive recursive functions. This was achieved by Kurt Godel in his original proof.59 It
was incredibly tedious but G
odel wanted to make sure that no-one could question his conclusions. Here we will be
content to give an informal argument that it should be theoretically possible to do what Godel did.
In order to prove that these are primitive recursive functions we will exploit theorem 6 and simply outline roughly
a computer algorithm to express these functions.
1. define diag(n):
2.

decode n to get the open well-formed formula (x)

3.

replace the free variable x with the numeral n

4.

return the G
odel number of the resulting string

Coding in a G
odel numbering system simply involves prime factorisation, which can be done with bounded searches
only. Therefore, diag(n) is captured.
1. define Prf(m, n):
2.

decode the Super G


odel number m into a sequence of formulae

3.

condition1 = is this a sequence of well-formed formulae?

4.

condition2 = is each formula derivable from the previous one?

5.

condition3 = is the last formula the same as decode(n)?

6.

if condition1 and condition2 and condition3 then:

7.
8.

return Prf(m, n) is a theorem


else:
return Prf(m, n) is a theorem

9.

This only involves bounded searches as there are only a finite number of types of well-formed formula (xy, xy, x
y . . .) and only a finite number of axioms or rules of inference. Therefore, Prf(m, n) is captured.

B.2

The Formalised Liars Paradox

Theorem 10 (G
odels First Incompleteness Theorem). Let A be a formal system sufficiently powerful to capture
elementary arithmetical statements. If A is consistent then there is a well-formed arithmetical formula G which is
true but not provable so A is incomplete. Even if G is incorporated into the axioms or other axioms added so G
is provable, then there will always be a new similar unprovable but true formula which can be constructed, so A
is essentially and necessarily incompletable.
Proof. We first introduce some arithmetical statements which allow us to model statements about provability. We
define the following formula to have G
odel number n.
x : Prf(x, diag(y))
59 G
odel,

Uber
formal unentscheidbare S
atze der Principia Mathematica und verwandter Systeme, I..

24

We will now diagonalise, that is, we will substitute the numeral for the Godel number of this open formula (n) into
the open variable (y). Thus by definition60 the resulting formula will have Godel number diag(n). Now we will
write out this formula for which we have already determined the Godel number.
x : Prf(x, diag(n))
We will now simplify this formula in order to interpret its significance by defining pGq = diag(n). We now have the
following theorem:
G x : Prf(x, pGq)
If we consider the meta-mathematical meaning of this arithmetical statement, we are forced to conclude that G
is true if and only if it is not provable. In other words, G is a well-formed arithmetical formula which states an
arithmetical claim which is true if and only if the meta-mathematical statement G is not provable is true. Therefore
we can conclude that formula G is true if and only if it is not provable.
G G is not provable
Assuming that A is sound, there is an easy semantic argument to complete the proof. Suppose G were provable,
then what it says would be true, that is, it would be true that G is not provable. Suppose G were provable,
then what G says would be true, so G would be provable. Contradiction either way. Therefore, this stronger
assumption implies that G is formally undecidable.
Now we argue just from the assumption of consistency. Suppose that G is a theorem of A , that is, G is provable
in A . Consequently, there exists a set of theorems from which G is derived. Let k equal the Super Godel number
of the derivation of G, then (by definition of Prf and the fact that Prf is captured) the following would also have to
be a theorem:
Prf(k, pGq)
We can now recall what the theorem G actually says, then apply Quantification Conversion (p.16) and Universal
Elimination (p.16):
x : Prf(x, pGq)
x : Prf(x, pGq)
Prf(k, pGq)
This clearly contradicts our previous result so G must not be a theorem. There is a more complicated proof of the
reverse implication just assuming consistency. We will make the stronger assumption of consistency in order to
prove it. Suppose G is a theorem, so it is provable. This theorem states the following:
x : (Prf(x, pGq))
Assuming consistency, then G cannot be a theorem and therefore Prf(k, G) cannot be a theorem for any k by
Existential Introduction (p.16). In summary, x : (Prf(x, G)) is a theorem and for every value of k, Prf(k, G) is
a theorem (as Prf is captured (p.24)), making the system inconsistent, contradicting our initial assumption and
so G must not be a theorem. Thus we conclude once again that G must be formally undecidable so G is not
provable, but that is exactly what G says, so it must be true.
We have found an arithmetical formula G which is true but unprovable in arithmetic. Consequently we must
conclude that arithmetic is incomplete. Moreover, we can always add an undecidable formulae like G to the axioms
of the system. This will still be consistent as the old Prf(x, z) will not have included this new axiom G in its code, so
it will be effectively stating that G was not provable. As a result, if we added G to the axioms of the system, it would
create a new system with a new G
odel numbering system, a new Prf function and a new undecidable statement.
Applying the same process would always produce a similar true but unprovable statement in the stronger system
of arithmetic. This process could be repeated ad infinitum, demonstrating that there are an infinite number of true
but unprovable statements and arithmetic is essentially incompletable.
Let us put that more precisely. In order to strengthen arithmetic and thus decide previously undecidable formulae,
we will be forced to add axioms to our system. A simple way of doing that would be to simply add the traditional
60 See

Definition 12 p.24

25

G
odel sentence for a system to the axioms of that system. This would create a series of progressively stronger
systems:
hPAi, hPA + GPA i, hPA + GPA + GPA+GPA i . . .
If these new undecidable statements are not provable in the stronger system, then they are definitely not provable
in any of the weaker systems. Thus we can construct the following array of undecidable statements in Peano
Arithmetic:
GPA , GPA+GPA , GPA+GPA +GPA+GPA . . .
Thus there is a countably infinite set of undecidable statements in any consistent theory of arithmetic.

B.3

Extending the First Theorem

The clever trick of diagonalisation that we used to form G obviously generalises to all circumstances where we want
to create a statement that references a property of its own Godel number.
Theorem 11 (Diagonalisation Lemma). For every open formula (pq), there is a formula such that
(pq) is a theorem.
Proof. Let the diagonalisation function (p(y)q) = p(p(y)q)q. Let ((p((n))q)). Applying the
definition of :
((p((n))q))
(p((p((n))q))q)
(pq)

Theorem 12 (Rossers Trick). There is an undecidable proposition R in A .


Proof. Diagonalisation allows us to create the sentence:
R p : (Prf(p, pRq)) q p : (Prf(q, pRq))
Suppose R is a theorem, then it is provable so there is some p for which Prf(p, pRq) is a theorem. By Existential
Introduction (p.16), p : (Prf(p, pRq)) must also be a theorem. Assuming the consistency of A , R is unprovable
so A ` Prf(q, pRq) for any q, so certainly if q p. By making q p a premise (i.e. (q = 0) (q = 1) (q =
2) . . . (q = p 1) (q = p)), then in each of the possible cases we would derive Prf(q, pRq) so using the Case
Analysis Lemma (p.14) in the general disjunctive case it will still prove Prf(q, pRq). Therefore, by Conditional
Introduction, ` (q p) Prf(q, pRq) so by Universal Introduction ` q p : ((Prf(q, pRq))) and then
applying Quantification Conversion (p.16) A ` (q p : ((Prf(q, pRq))).
On the other hand, by the rule of Conditional Elimination on the Rosser Sentence, (p.11), q p : (Prf(q, pRq)
must be a theorem as the antecedent in R is provable and R is a theorem. Contradiction. Thus R is not a theorem.
Suppose R was a theorem. Then for some q, A ` Prf(q, pRq) so by Existential Introduction A ` q :
(Prf(q, pRq)). Assuming consistency then A ` Prf(p, pRq) for all p. If we write R explicitly then we can use
Disjunctive Syllogism (p.11) and Junction Conversion (p.11) to rewrite (x y) in the form (x y).
R (p : (Prf(p, pRq)) q p : (Prf(q, pRq)))
p : (Prf(p, pRq)) (q p : (Prf(q, pRq)))
By Conjunction Elimination we can derive just the second half: (q p : (Prf(q, pRq))). Applying Quantification
Conversion (p.16), A ` (q p : (Prf(q, pRq))). Thus the value of q which proves R must be greater than p to
avoid contradiction. Therefore p q meaning we can derive p q : (Prf(p, pRq)). We now have a bound for the
witness to the existence of p, so we can just check this finite number of cases in order to contradict it. Assuming the
consistency of A , then we will derive Prf(0, pRq) Prf(1, pRq) . . . Prf(q 1, pRq) Prf(q, pRq). Then as we
saw in the first case we can derive p q : (Prf(p, pRq))) so by Quantification Conversion p q : (Prf(p, pRq)).
Contradiction.
26

Theorem 13 (Provability cannot be captured).  is not captured within A .


Proof. First we apply the Diagonalisation Lemma to the property of provability:
A ` 
Supposing that provability was captured, we would have the following theorem for all :
A ` 
Combining these two formulae obviously leads to contradiction:
A `  
Therefore, provability cannot be captured.
The intuitive reason for this result is that while Prf(x, z) is a bounded arithmetical relation, x :(Prf(x, z)) could be
witnessed by any value of x. Thus the task of deciding this formula is not primitive recursive and is unsurprisingly
not always possible.
It is also important to note where this limitation lies. Provability is clearly semantically expressed by x :(Prf(x, z)),
but the transformation laws of the system are not always capable of deciding it. This weakness in the proof system
is necessary to prevent the system from proving too much and thus becoming inconsistent.
Theorem 14 (Tarskis Undefinability Theorem). TrueA () cannot be expressed within A .
Proof. Suppose we had some arithmetical relation TrueA () which expressed truth. We could imagine that this
predicate held true if and only if input with the Godel number of a true formula.
First we apply the Diagonalisation Lemma to the property of truth:
A ` TrueA ()
Assuming that A is sound, then:
TrueA ()
Now if we suppose that is true, then it is not true, in which case it is true. Therefore, A has not just failed to
prove a true statement about the property of truth, but TrueA () cannot actually be correct in its assignment of
truth values to formulae. Consequently, truth is not captured or even expressed by A .
There is a nice corollary of this result.
Lemma 11 (Proofs always need to be longer than you think). For every function f (pq), there is a formula
which has no proof smaller than f (pq).
Proof. Suppose that this lemma was not correct, so there is some function f (pq) which is essentially an upper
limit on all proofs. We could then capture  with x f (pq) : (Prf(x, )), as this involves only bounded searches
so is primitive recursive and thus captured by A . This contradicts Theorem 13 (p.27), so there must be some
well-formed formula which has no proof smaller than f (pq), such that we cannot rely on bounded searches for
all formulae.

C
C.1

G
odels Second Incompleteness Theorem
An Informal Introduction to Surpassing the First Theorem

Furthermore, others were able to build on Godels ideas to construct other interesting formulae which refer to
their own G
odel numbers. Rosser61 constructed the sentence If this sentence is provable, then its reverse is more
61 J.

Barkley Rosser. Extensions of some theorems of Gdel and Church. In: Journal of Symbolic Logic 1 (1936), pp. 8791.

27

easily provable62 . This allowed G


odels First Incompleteness Theorem to arise more neatly with fewer assumptions.
Tarski63 constructed the original Liar sentence: This sentence is false. This proved that however truth and
falsehood could be expressed in arithmetic, such a function could not give the correct answer in the event of
paradox. Therefore, arithmetical truth cannot be defined within arithmetic. Godel admitted that this was the
better formulation of his result64 , as the true reason for the incompleteness of arithmetic is that it is only by
looking down into the system from outside it that you can see what is really true. The reason that there are
undecidable propositions in arithmetic was because arithmetic could not understand its own concpet of truth,
this is the fundamental limitation of mathematical formalism. Tarskis result is the most devastating to Hilberts
program as it directly contradicts the idea that all mathematical truth is built up from the most basic mathematical
truths.
G
odel65 also proved66 that it is impossible to disprove the long disputed axiom of choice67 or the continuum
hypothesis68 These results were extended69 by Paul Cohen70 to show that they could not be proved from ZFC
either and so they are both formally undecidable statements, their truth is entirely independent of the other
axioms. It is therefore a matter of artistic taste of whether or not to assume them. This statement of the current
state of the foundations of mathematics may seem somewhat bleak, disappointing or even distressing, but I will
conclude by arguing that there is a silver lining. For if this mystery was solved in the way Hilbert proposed, all
mathematicians would be out of work as their job could be performed by a computer. The reality is that even
mathematicians are possibly not equipped to solve all mathematical problems and we have to be willing to learn
entirely new ways of thinking to strengthen our grasp on mathematics. I for one am thankful that there will always
be deeper mathematical truths to uncover and I hope that these results point to a far more complex understanding
of the nature of mathematics than we can even imagine today.71
G
odels Second Incompleteness Theorem deals more directly with what arithmetic knows about itself. G
odel
formalised his first theorem inside arithmetic which necessitated the construction of an arithmetical formula representing the assumption that PA is consistent. He did this using a formula which effectively said that something was
not provable. We know that if a system stronger than First-order Logic is inconsistent then it can prove anything,
so if there is a single example of a formula which it cannot prove then it follows that it must be consistent. Lets give
the arithmetical formula which expresses a relation between Godel numbers semantically equivalent to a formula is
unprovable the name Con, as we have seen that this is tantamount to claiming that the system is consistent. We
already saw in the first incompleteness theorem that if arithmetic is consistent, G is not provable (i.e. arithmetic is
incomplete as we argued that G is true). Thus it is unsurprising that if Con then G is not provable is a theorem of
arithmetic, that is, G
odels First Incompleteness Theorem is a theorem about arithmetic which can also be proved
within arithmetic. We also know that G says that G is not provable, so we can infer that if Con then G must
be a theorem as well by basic logic. However, if G is a theorem then a paradox is created and the system must
become inconsistent. Thus we may conclude that if Con is a theorem of a system then it is inconsistent (as this
creates a Liars Paradox within the system). That is, if a system of arithmetic contains a statement of its own
consistency then it must be inconsistent, which is rather ironic. It is as though modesty is a desirable trait for
formal systems of arithmetic- only those systems which would not be so bold as to claim they are consistent can
we trust to perhaps be truly consistent. Another interesting implication of this is that it means the incomplete62 By

more easily we mean that the proof had a smaller G


odel number, indicating that the proof was simpler and shorter
Tarski. Der Wahrheitsbegriff in den formalisierten Sprachen. In: Studia Philosophica 1 (1936), pp. 261405.
64 In G
odels own words: a complete epistemological description of a language A cannot be given in the same language A, because
the concept of truth of sentences in A cannot be defined in A. It is this theorem which is the true reason for the existence of undecidable
propositions in the formal systems containing arithmetic.
65 Kurt G
odel. The Consistency of the Axiom of Choice and of the Generalized Continuum-Hypothesis. In: Proceedings of the
National Academy of Sciences 24.12 (1938), pp. 556557. eprint: http://www.pnas.org/content/24/12/556.full.pdf+html. url:
http://www.pnas.org/content/24/12/556.short.
66 Kurt G
odel. The Consistency of the Continuum-Hypothesis. In: Princeton University Press (1940).
67 This is an extra axiom of Zermelo-Fraenkel Set Theory which has a long history of controversy surrounding whether or not it was
actually necessary to set theory or even true
68 This conjecture states that the size of the set of real numbers is the next largest size of infinity after the size of the set of natural
numbers.
69 Paul J. Cohen. The Independence of the Continuum Hypothesis. In: Proceedings of the National Academy of Sciences 50.6
(1963), pp. 11431148. eprint: http://www.pnas.org/content/50/6/1143.full.pdf+html. url: http://www.pnas.org/content/50/6/
1143.short.
70 Paul J. Cohen. The Independence of the Continuum Hypothesis, II. in: Proceedings of the National Academy of Sciences 51.1
(1964), pp. 105110. eprint: http://www.pnas.org/content/51/1/105.full.pdf+html. url: http://www.pnas.org/content/51/1/
105.short.
71 Here I am of a similar view to Peter Smith who said Mathematicians are not going to run out even of arithmetical work, as they
develop ever richer formal settings in which to prove more truths. Which is, perhaps, a rather more pleasing thought.
63 Alfred

28

ness transcends self-referential paradox. Con says nothing about itself and yet it is another formally undecidable
proposition. G
odels Second Incompleteness Theorem can actually be proven within Peano Arithmetic, suggesting
that arithmetic knows that it cannot know that it is consistent, leading many mathematicians to consider what
exactly formal systems like arithmetic know about themselves.
The Hilbert-Bernays-L
ob Derivability conditions72 state that if the system knows something is true then it knows
that it can prove it. However, the question remained as to whether arithmetic knows its own soundness (i.e. if
it can prove something then it is true). L
ob falsified this idea73 by showing that if a system which obeyed these
conditions could show that if it proved a formula then it would be true, then it could prove that formula. Thus
no consistent system could prove its own soundness. The reasoning for this theorem is similar to the reasoning
behind Currys Paradox, which asks whether the following statement is true: If this sentence is true, then we can
infer that Moon=Cheese is true. Lets test the truth of this sentence by granting the hypothetical assumption and
seeing if the conclusion logically follows. Suppose the assumption then that this sentence is true. In that case, the
sentence is true, that is, the following sentence is true: If this sentence is true, then we can infer that Moon=Cheese
is true. In summary, we have proven this sentence is true and If this sentence is true, then we can infer that
Moon=Cheese is true, so Moon=Cheese is true. Thus, by granting the assumption of the sentence, we were able
to logically infer the conclusion. As a result we must accept that this sentence is indeed true. But in that case, we
know that what the sentence says is true: If this sentence is true, then we can infer that Moon=Cheese is true.
In review, we have proven this sentence is true and If this sentence is true, then we can infer that Moon=Cheese
is true, so Moon=Cheese is true. This is a very strange turn of events in which just by pondering whether one
sentence is true we were forced to conclude that Moon=Cheese. In other words, merely allowing this sentence to
exist leads to paradox.
Similary, L
ob asks us to imagine that we had indeed proved a formal statement of a theorys soundness: If I
prove something then it is true.. Let us take the example of a contradiction, in which case this says that If I
prove a contradiction then it is true., but contradictions are not true by definition so this statement is tantamount
to the claim I cannot prove a contradiction, which is a statement of the theorys consistency. Godels Second
Incompleteness Theorem implies that this theory must therefore be inconsistent. Lob thus concluded that consistent
theories cannot prove their own soundness.

C.2

The Hilbert-Bernays-L
ob Derivability Conditions

Lemma 12 (The First Derivability Condition). If A ` then A ` 


Proof. Assuming that A ` , then it must have a proof which we can find and for which we can calculate the Super
G
odel Number. Let this number be n, then A ` Prf(n, ). Applying Existential Introduction (p.16) produces the
theorem A ` n : (Prf(n, )), which expresses A ` .
Lemma 13 (The Second Derivability Condition). A ` ( ) ( )
Proof. Let us first rewrite the formula using Lemma 8 (p.15):
(( ) ) 
Let us now write this out explicitly:
(x : (Prf(x, ( )) y : (Prf(y, )) z : (Prf(z, ))
Now we can apply Existential Elimination (p.16):
Prf(x, ( ) Prf(y, ) z : (Prf(z, ))
Now the proof is reduced to finding a value of z for each x and y which holds, then we can apply Existential
Introduction (p.16) on z to complete the proof. Let z equal the Super Godel Number of the concatenation of the
following formulae: the formula with G
odel number x, the formula with with Godel number y and the formula .
The algorithm for the primitive recursive function Prf(a, b) must include a line of code which takes into account the
rule of Conditional Elimination (p.11), so Prf(z, ) must hold for this value of z, completing the proof.
72 David

Hilbert and Paul Bernays. Grundlagen der Mathematik. II. Die Grundlehren der mathematischen Wissenschaften, 1939.
Hugo L
ob. Solution of a Problem of Leon Henkin. In: Journal of Symbolic Logic 20.2 (1955), pp. 15118.

73 Martin

29

Lemma 14 (The Third Derivability Condition). A `  


Proof. This essentially involves showing that A can derive the first derivability condition for itself (a Formalised
First Derivability Condition). We will appeal to the fact that the proof of The First Derivability Condition did
not require any unbounded searches, so it must be a primitive recursive relation and thus decidable by Theorem 7.
As it is true as seen by its proof, then it must be a theorem.
Lemma 15 (The Derivability Corollary). A `  ( )
Proof. This follows by applying the derivability conditions to the simpler version of the theorem in First-order
Logic.
A ` ( )

Proof by Contradiction (p.13)

A ` ( )

C.3

Biconditional Elimination (p.11)

A ` ( ( ))

First Derivability Condition

A `  ( )

Second Derivability Condition

The Formalised First Theorem

Theorem 15. A ` Con G


Proof. First we construct the arithmetical formula Con.
y : x : Prf(x, y)
This arithmetical formula Con is true if and only if the meta-mathematical claim that there is an unprovable formula
is true. We have already proven (p.14) that this is tantamount to the claim that arithmetic is consistent. We will
now prove that G can be derived from Con, in other words: Con G is a theorem. First we will apply a corollary
of the derivability conditions:
A `  ( )

Lemma 15

A ` G (G )

Substitution = G

We will now recall that G is the result of diagonalising :


A ` G G

Construction of G

A ` (G G)

First Derivability Condition

A ` G G

Second Derivability Condition

If we combine these two results we can get a new theorem using the argument structure of Conditional Syllogism
from First-order Logic (p.15):
A ` G (G )
A ` G G
A ` G (G )
Now we can apply the Second Derivability condition again to produce:
A ` G (G )

30

We can also prove from substituting = G into the Third Derivability Condition that A ` G G. We can
combine these last two results in the same fashion as before (Conditional Syllogism) in combination with Conditional
Elimination (p.11).
A ` G (G )
A ` G G
A ` G 
Applying the Contrapositive Rule (p.11) proves A `  G. We can now prove the required result simply
by recalling the definitions of Con and G. We use the same argument structure of Conditional Syllogism again.
A ` Con G
A ` G G
A ` Con G

Intriguingly, this is actually G


odels First Incompleteness Theorem, formalised within Peano Arithmetic. Con is a
formalised counterpart of the assumption of consistency and G which states G, says that the true formula G is
unprovable, thus represents the statement of incompleteness. Therefore, not only is PA incomplete, but it knows
that it is incomplete.

C.4

The Formalised Second Theorem

Theorem 16 (G
odels Second Incompleteness Theorem). If A is consistent and obeys the derivability conditions
then there is a well-formed formula Con which is true if and only if A is consistent. This formula Con implies
formula G so cannot be proven in A and thus A cannot prove or even assume its own consistency.
Proof. Now we prove that if Con is true then it is not provable. Suppose Con were provable, then we could prove
G by Conditional Elimination.
G
Con G
`G
But if G is provable then Arithmetic is inconsistent, which is a contradiction as we assumed that Arithmetic was
consistent. Therefore Con is not provable.
An obvious corollary of this theorem is that a system of arithmetic cannot know anything about what it cannot
prove.
Theorem 17. A 0 
Proof.

The Principle of Explosion

( )

First Derivability Condition

 

Second Derivability Condition

 

Contrapositive Rule

 Con

Definition of Con

We also know from G


odels Second Incompleteness Theorem that A 0 Con. Suppose then that A `  for
some , by Conditional Elimination we would have A ` Con. Contradiction. Therefore, A 0 .
We can actually formalise the Second Incompleteness Theorem within arithmetic.
31

Theorem 18. ` Con  Con


Proof. We have already proved when demonstrating Godels Second Incompleteness Theorem the result 
Con, we will simply perform the substitution = G to produce G Con. The Diagonal Construction of G
implies G G. We can combine these these using the Conditional Syllogism:

G G
G Con
` G Con
We have already proven Con G as part of the Second Incompleteness Theorem. Biconditional Introduction (p.11)
gives us the result ` Con G. This is an interesting results in and of itself as it demonstrates that the key
to the paradox is not self-reference but simply the claim that something is not provable. Now we can apply the
derivability conditions to complete the proof.
Con G
(Con G)

First Derivability Condition (p.29)

Con G

Second Derivability Condition

G Con

Contrapositive Rule (p.11)

Con G

Formalised First Theorem (p.30)

Con Con

Conditional Syllogism (p.15)

But we can substitute Con into the theorem  Con to prove Con Con. We can complete the proof by
Biconditional Introduction (p.11).
This theorem says that if we assume that PA is consistent, then it cannot prove its consistency. In other words, PA
knows that it can never know its own consistency.

C.5

Extending the Second Theorem

Thus we have found another formally undecidable formula in arithmetic and this one involves no necessarily selfreferential interpretation, suggesting that there are indeed seemingly inert questions which we cannot answer within
arithmetic without adding to the axioms.
It might seem that we could still simply assume the consistency of A and add it to the axioms. However, this
would lead to an infinite regress, as adding an axiom to a consistent theory could break its consistency.
A , A + ConA , A + ConA + ConA +ConA . . .
Another simple corollary is that if A cannot prove the consistency of A , then a weaker theory certainly cannot
prove it. The reverse argument also holds: if A cannot prove the consistency of A , then it certainly cannot prove
the consistency of A + more .
Theorem 19 (L
ob). `  then ` assuming the derivability conditions hold for .
Proof.
` ( )

Diagonalising 

` ( )

Biconditional Elimination (p.11)

` ( ( ))

First Derivability Condition (p.29)

`  ( )

Second Derivability Condition

`  ( )

Second Derivability Condition

`  
`  

Substitute into Third Derivability Condition


Conditional Syllogism (p.15) with nested conditionals (p.15)
32

Suppose  is a theorem,
` 

Conditional Syllogism

Biconditional Elimination

` 

First Derivability Condition

Conditional Elimination (p.11)

Here is a theorem which broadens the impact of Godelian Incompleteness:


Theorem 20 (Craig). Any effectively enumerable set can be axiomatised by a primitive recursive function.
Proof. Let the members of the effectively enumerable set S be 0 , 1 , 2 . . . k . . . We will now create , a primitive
recursive axiomatised theory which produces the elements of S: Enumerate S, for every formula k add the axiom:
k k . . . k k k
{z
}
|k
k conjunctions
needs only Conjunction Elimination (p.11) to then derive all of the formulae in S. Now we design a primitive
recursion function which tests a formula to check if it is an axiom.
1. define Axiom()
2.
3.
4.
5.

if = 0 :
return True
for x in range (1:length()):
if every x + 1 symbols is the symbol and the symbols in-between are always the same formula then:

6.

let x be the resulting axiom in after x steps

7.

if = x then:

8.

return True

9.
10.

else:
return False

Thus is a primitive recursive axiomatised theory which derives all the formulae of S (and some logical tautologies,
i.e. conjuncts, potentially beyond what is included in S).
Theorem 21. Human mathematical knowledge cannot be produced by a machine
Proof. Let the entirety of human mathematical understanding, meaning everything we are capable of proving be
denoted . Suppose that a machine could reproduce . Thus is effectively enumerable so Craigs Theorem
implies that there is a primitive recursive axiomatised theory which could reproduce the theorems of . My
mathematical understanding includes Peano Arithmetic and thus must be able to capture the primitive recursive
functions which permit the construction of the Godel sentence G for . However, I will know that this sentence is
true but unprovable because I can construct it in . Therefore, omits to include my understanding of the truth of
the G
odel sentence. Contradiction. Therefore, no machine can reproduce my mathematical understanding .
However, there is a subtle assumption embedded in this argument. We do not know that I can find this theory
or that is consistent. As a result, the actual conclusion to this argument is quite disjunctive and leaves room
for philosophical inclinations to decide ones choice. Rationalists tend to argue this proves that humans are limited
in that we can never formalise our own understanding of mathematics such that Hilberts Program will always be
incomplete. Others such as Kurt G
odel himself believed that the answer to this dilemma indeed was that humans
would always surpass machines.
33

This suggests to me that the idea of a static understanding of mathematics is limited: only by constantly refining
our whole conception of what mathematics is can we reach new heights in our intellectual achievement within the
subject.

Turing Machines

D.1

An Informal Introduction to the Church-Turing Thesis

For a long time, mathematicians, logicians and philosophers struggled in vain searching for some sort of method
for effectively deciding whether a given formula is in fact a theorem of first-order logic. It seemed like it obviously
should be possible, logic is so fundamental and forceful that is must be possible to tell whether a given claim is
in fact logical. This was known as the the Entscheidungsproblem74 and it drove Alan Turing75 to ponder the
question of what we mean when we say intuitively that logic is effectively decidable or there is a formal method
for solving the problem. His marvellous insight was to abstract away from the mathematicians stationery or the
computers mechanical inner workings. He argued that 2 dimensional white space on A4 paper is not necessary, so
he reduced the medium to a single piece of tape which could be as long as it needed to be. Mathematicians use
numerous symbols but he believed that this too was not essential to the process of calculation, all they really need
is binary code, the most basic system of counting which relies only on the digits 0 and 1. They also need places to
write characters in, called cells, and they obviously need to be able to receive information in some way, usually by
reading. We will thus need some device, lets call it a scanner, which can determine if there is something written in
a cell and if so, whether it is a 0 or a 1. We also need to be able to record our results in some way, so we need to be
able to erase or write numbers. Finally, we need to be able to progress in some way, so the machine needs to be able
to move left and right. Conventionally, this machine is imagined to be fed programs using instruction-quadruples.
These consist of a label, an observation which triggers them (scanning a 0 or 1 or blank cell), an action to perform
in that case (move or write or erase) and then a label for where to go next in that case. This device that we have
just outlined is called a Turing machine and it was his hypothesis (the Church-Turing Thesis) that what we mean
intuitively by potentially calculable is computable by a Turing machine. This device may seem unsophisticated
and over-simplified, but as I have tried to argue, there is nothing really fundamentally different between what it
can do compared to any supercomputer or person, it is just more complicated to program. It was this remarkable
achievement that made Turing seen as the father of modern computing.
Now we can use the Church-Turing Thesis to give elegant answers to questions of decidability. Suppose arithmetic
was decidable. In that case we could create a Turing machine which when given the Godel number of a well-formed
formula in arithmetic would output 1 if it was a theorem and 0 otherwise. We could then imagine creating a G
odel
numbering for Turing machine states, such that we could encode the information of the Turing program within
arithmetic. Therefore, arithmetic could capture the idea of its own decidability. Then we could answer the question
of whether the G
odel sentence G is an arithmetical theorem inside the formal system of arithmetic itself. We have
already seen that this would necessarily lead to contradiction. As a result we can conclude that arithmetic cannot
be decidable. This result can then be naturally extended to determine the decidability of first-order logic. Suppose
logic was decidable, then we could create a logical well-formed formula which says PA then these theorems, such
that we could model arithmetic as a hypothetical within logic. Under our assumption that logic is decidable, we
have to conclude then that arithmetic is decidable too. This contradicts our previous conclusion, so logic itself must
be fundamentally undecidable. I would argue that this is a very surprising result simply because logic is so natural
to formulate typographically as a formal system and it is so fundamental to our thinking process.

D.2

-recursive functions and Turing computation

Definition 13 (-recursive functions). Primitive recursive functions are -recursive and if f is defined by regular
minimisation from a -recursive function g then it too will be -recursive. This is what we mean by regular
minimisation:
1. x = 0
74 David

Hilbert and Wilhelm Ackermann. Grundzge der theoretischen Logik. American Mathematical Society, 1928.
Turing. On Computable Numbers, with an Application to the Entscheidungsproblem. In: Proceedings of the London
Mathematical Society 42.2 (1937), pp. 23065.
75 A.M.

34

2. until gc (x) = 0:
3.

do: x = x + 1

4. f (c) = x
The essential difference compared to primitive recursive functions is that unbounded while-loops are allowed.
Theorem 22. A captures all -recursive functions
Proof. We have already proven that primitive recursive functions are captured. Thus all that remains is to prove
that captured functions create captured functions under this new type of recursion. We will prove this straightforwardly by arguing that as we are assuming that gc (x) is captured and it is true that it does equal 0 for some
finite value of x, then after a finite number of steps this kind of while loop must terminate. As a result, A must
be able to minimise x in a finite number of steps.
Definition 14 (Turing machines). Instruction-quadruples (or i-quadruples) are ordered sets hn1 , O, A, n2 i. The
first element is the numerical label for the instruction, the second element is the observation necessary for the third
element (the action) to be performed and then to move on to the next instruction labelled with the fourth element
(if this is 0 the program halts). The machine scans cells on an infinite piece of tape. It can recognise a blank cell
(B), a 0 or a 1. It can change these values or move its scanning one step to the left or right (L or R). We will
generally assume for simplicity that all programs have a standard initial configuration (the first cell scanned is the
left cell of the left block of binary digits and blocks of digits are separated by a single blank cell), halt standardly
(the left cell is scanned last with all other cells blank except for the remaining digits in this output block) and are
dextral (they do not write to cells to the left of the cell they start on, so that space can act as the memory).
Theorem 23. The -recursive functions are the Turing-computable functions
Proof. First we will show that all -recursive functions are Turing-computable functions. This task can be decomposed to proving the following four propositions:
1. The initial primitive functions are Turing-computable
2. If f and g are Turing-computable then f (g(x)) is Turing computable
3. Turing-computability carries through primitive recursion
4. Turing-computability carries through regular minimisation
First, the Successor function:
h1, 0, R, 1i

We need to be scanning the last cell in the block of digits . . .

h1, 1, R, 1i

. . . so we just keep moving the scanner to the right until . . .

h1, B, L, 2i

. . . we reach a blank cell, then the last cell is one to the left.

Now we have to add 1:


h2, 0, 1, 4i

If the last digit is a 0 we just change it to a 1 and we are done

h2, 1, 0, 3i

If the last digit is a 1 then we have to change it to 0 and carry the 1

h3, 0, L, 2i

To finish carrying the 1 we have to move left one cell

h2, B, 1, 4i

We reached the end of the number while carrying over, so just write 1 here

Finally, we move the scanner back to the start (just the reverse of the first step):
h4, 0, L, 4i

We need to be scanning the first cell in the block of digits . . .

h4, 1, L, 4i
h4, B, R, 0i

. . . so we just keep moving the scanner to the left until . . .


. . . we reach a blank cell, then the first cell is one to the right.

Note that moving the scanner is tedious and trivial, so we will assume that we can easily line up the scanner
correctly in order to run different programs consecutively from now on. Next the Zero function:
h1, 0, B, 2i

Delete whatever value the cell that you observe has in it . . .

h1, 1, B, 2i

. . . then send the program to 2 to move on to the next cell . . .


35

h1, B, B, 0i

. . . such that if in the 1st stage (the scanning stage) you see a blank cell, you must be done.

h2, B, R, 1i

Only here are deleted cells observed.

The Identity Function Ini : we start by finding the ith number in the list, assuming that there are blank cells to
space out separate numbers and deleting cells as we go except for the ith number.
h1, 0, B, 1i
h1, 1, B, 1i
h1, B, R, 2i
h2, 0, B, 1i
h2, 1, B, 1i
h2, B, R, 3i
...
h2i 1, 0, R, 2i 1i
h2i 1, 1, R, 2i 1i
h2i 1, B, R, 2ii
Now we need to delete all of the cells after this number (only stopping after two blanks in a row indicate the end
of the list of numbers):
h2i, 0, B, 2ii
h2i, 1, B, 2ii
h2i, B, R, 2i + 1i
h2i + 1, 0, B, 2ii
h2i + 1, 1, B, 2ii
h2i + 1, B, R, 2i + 2i
h2i + 2, 0, B, 2ii
h2i + 2, 1, B, 2ii
h2i + 2, B, L, 2i + 3i
Now we just need to end with the scanner on the first digit of the last remaining number:
h2i + 3, 0, L, 2i + 4i
h2i + 3, 1, L, 2i + 4i
h2i + 3, B, L, 2i + 3i
h2i + 4, 0, L, 2i + 4i
h2i + 4, 1, L, 2i + 4i
h2i + 4, B, R, 0i
Recursion by composition: this is trivial. We just have to run g on x, then run the program for f on the result of
that, so we need to make sure that instead of the last command in g halting the machine, it calls the first instruction
in the f program. We must also prevent labels clashing between the programs by doubling the label numbers in g
and doubling the label numbers in f then subtracting 1.
Primitive recursion: suppose fc (0) = g(c) and fc (Sx) = h(c, x, fc (x)). Imagine also that the program for f receives
the input cBx. We need the program to first write out: cBxBcB(x 1)BcB(x 2) . . .BcB2BcB1BcB0Bc. We can
write a reverse of the successor program for subtracting 1. A copying program would work roughly as follows: if
you scan a 0 or 1 then erase and remember it, find the next blank cell and place it there, then return to copy
back that digit (recognising it as the blank cell in the middle of the number). Repeat this until you find the blank
cell in between the two copies, thus we can copy out anything and so we can construct the tape state displayed
earlier. Now run the program g on the last c, remembering that fc (0) = g(c). Now the tape will look like this:
cBxBcB(x 1)BcB(x 2) . . .BcB2BcB1BcB0B(fc (0)). Now we can run h on the three furthest numbers on the
right (recall that fc (1) = h(c, 0, fc (0))). Thus the tape becomes cBxBcB(x 1)BcB(x 2) . . .BcB2BcB1B(fc (1)).
If we repeat this process x times we will be left with fc (x) on the tape.
36

Regular minimisation: suppose when gc (x) = 0 for the lowest value of x then f (c) = x. The starting configuration
of the tape should then be 0BcBcB0, which can be achieved by copying and zeroing. Now perform an iterated
process where given an input xBcBcBx, calculate gc (x) using the last two numbers. If it is 0 then delete everything
after the first x, place the scanner at the start of x and halt. Otherwise, you are left with xBcBgc (x). Delete just
the gc (x). Increase the value of x by 1 and restart the iterative loop using the input SxBcBcBSx. This will have
to terminate due to the nature of gc (x) and so the program will halt standardly.
Now we must show the reverse implication, all Turing-computable functions are -recursive. We will do this by
imagining a G
odel numbering of all possible configurations of the tape, such that the Godel number encodes the
following information: the current read-out on the tape, which cell is being scanned and which instruction is being
executed. These are just three numbers which can be encoded to one by some -function, say taking 2a 3b 5c ,
then decoded by seeing how many times you can divide by 2 etc. Thus let G (i, t) be the current configuration of
the tape at a time t when running the program with input i. Say that if the program has halted then this will
return 0. Crucially, this function G is primitive recursive, as the instructions and cells used must always be finite,
so only bounded searches are necessary to find all of this information. Therefore, the question of when the program
halts is merely a question of regular minimisation to find the first 0 of G (i, t). Thus the function being computed
(say f (i)) is equal to the result of decoding the Godel number at the time immediately preceding the halt, that is:
find the least t such that G (i, St) = 0 then decode G (i, t). In summary, we can use a Godel numbering to solve
any Turing computation using a -recursive arithmetical function which can ultimately just be decoded to find the
output left on the tape when the machine halts and the Turing computation is complete.

D.3

Decidability

Theorem 24. Turing programs are effectively enumerable


Proof. We need some kind of G
odel numbering for instructions. Lets say one quadruple is 2n1 3O 5A 7n2
where B = 3, L = 4, R = 5. Then we code up super Godel numbers for sequences of instructions (i.e. programs) by
iterating the process of primes to powers of Godel numbers of individual instructions. Now we can enumerate the
set of natural numbers 1, 2, 3 . . . For each number we decode it twice to find the set of instructions it describes. If
the instructions are consistent (no two with the same observations and labels but different actions) and the program
has not already been counted then we can add this to the list of programs which is initialised76 to {}. This will
effectively enumerate all possible Turing programs without repetition and all programs must be included by virtue
of the G
odel numbering.
Theorem 25. A is not decidable
Proof. Suppose that A decidable by a Turing machine and thus by a -recursive function. As A captures all such
-recursive functions, it would therefore capture the provability predicate . We have already proven that A
cannot capture its own provability predicate. Contradiction.
Theorem 26 (The Entscheidungsproblem). First-order logic is not decidable
Proof. Suppose first-order logic was decidable. Let us call the axioms of Peano Arithmetic which are not logical or
the induction schema . All formulae of the form ( ) are decidable. This allows us to present all arithmetical
claims as logical claims about the implications of the Peano Axioms. Therefore, Peano Arithmetic without induction
is decidable. This contradicts77 Theorem 25.

D.4

Halting Problems

Definition 15 (The self-halting problem). Find an effective procedure which if input i returns the answer to
whether or not i will halt when given the input i.
Theorem 27. The self-halting problem is not solvable
76 This

is necessary to include the simplest possible program with no instructions


did not assume the induction schema at any stage of any of the proofs, so PA without induction, which is known as Robinson
Arithmetic, is also undecidable.
77 We

37

(
Proof. Let h(i) =

0
1

if program i halts with input i


otherwise, i.e. if it crashes

Suppose the self-halting problem was solvable. Then there would be a program H which when executed on the
number i could compute the function h(i). Let us add to this program an additional looper program which runs
after H halts: hi, 0, 0, ii, hi, 1, 1, 0i, setting i to be some number larger than any label used in H. This program
simply halts immediately when input 1 and enters an infinite loop when input 0. Let us call the composite program
H + . Does H + halt when given the input of its own index i in the list of Turing programs? Suppose it did, then
h(i) = 0 so H would return 0. When the looper program is input 0 it will loop forever so H + would never be able
to halt. Suppose H + does not halt then h(i) = 1, H must return 1 so the looper program will instantly halt and
thus H + must halt. Either way, contradiction.
Theorem 28. The halting problem is not solvable
(
Proof. Let h(, i) =

0
1

if program halts with input i


otherwise, i.e. if it crashes

Suppose the halting problem is solvable. Then there must be a program H 0 which when executed with the input
Bi could compute the function h(, i). Add to this program a simple copying program which returns nBn for
a given input n. Note that we can recognise this new machine as H. Thus we can solve the self-halting problem.
Contradiction.

Glossary
! See factorial.
S successor symbol.
Read for all, this means that a statement is true for any value of the variable e.g. x : (x + 0 = x) is true
because any number is unchanged by adding nothing to it.
Conjunction symbol, read as and, this is a binary operator or function which returns true only if both of its
inputs are true.
 The formalised unary provability predicate, read  as is provable.
Contradiction symbol.
` Read as derives, this means that the mechanical system can get from one theorem to another (see derivation).
Read there exists, meaning that there is at least one value (a witness) which satisfies a numerical relation e.g.
x : (x 1 = 2) is true because 3 is a witness to it.
pq These symbols represent the unary operator for encoding the formula in between them as a Godel number.
Read as not, this negates the meaning of any sentence.
Disjunction symbol, read as or, this is a binary operator which returns true if either of its inputs are true.
A The pop symbol means that a theorem that was artificially inserted into the system (i.e. assumed) is being
removed from the system and we are ready to write out our new hypothetical theorem.
@ The push symbol means that a theorem is being artificially inserted into the system (i.e. assumed) in order to
consider a hypothetical claim.
Read as then, e.g. (x y) means suppose that x is true, then y could be derived.
Tb
i=a (i) This is a shorthand for (a) (a + 1) (a + 2) . . . (b 2) (b 1) (b).
The empty set.
The congruence symbol is used here to mean completely interchangeable with, meaning that these sub-strings
can be switched inside any formula at any time.

38

Read as if and only if, this is a binary operator which only returns true if the logical implication holds in
both directions (see ).
k The kth prime number.
Read as gamma, this represents the entirety of the formal system made up of its language, interpretation and
laws of transformation: hL, I + Proof systemi. Subscripts can be used to indicate a reminder of the sort of
system in question e.g. A for a formal system sufficiently strong to express elementary arithmetic. First-order
logic is generally assumed to be part of any system.
(x) A formula with the variable x free, e.g. x is even, we can substitute different values of x to determine whether
the relation holds in different cases.
| Read given, this is a binary operator which works like a backwards in the context of set theory or probability
theory. In the context of number theory it is read divides and if a|b then a is a factor of b.
for-loop This is an iterative loop used in high-level computer programming languages which causes a variable to
take on different values within a pre-defined range and perform an action in each case. For example, for x in
range (1:100): print(x) would print out the first one hundred numbers.
while-loop These iterative loops run until a certain condition changes e.g. x=0; while x is not equal to 100:
increase x by 1 and print(x) or equivalently x=0; until x = 100 do: increase x by 1 and print(x) would print
out the first one hundred numbers.
algorithm A well-defined sequence of instructions which can be followed by a computer.
antecedent In a hypothetical claim the antecedent is what the reader is asked to temporarily assume. Specifically,
in a statement of the form if x, then y, x is known as the antecedent.
axiom A starting premise or assumption.
Cartesian Points in space are specified by numbers called coordinates, thus reducing geometry to numbers.
closed formula A formula which is not open.
conjecture An unproven claim which seems to be correct.
consequent In a hypothetical claim the consequent is what can be concluded from the supposition/assumption/antecedent.
Specifically, in a statement of the form if x, then y, y is known as the consequent.
contradiction When x and not x are both simultaneously true there is a contradiction, or in other words these
mutually exclusive claims contradict each other. In the context of the type of proof this means that we will
prove P by supposing that P is not true and deriving a contradiction from that assumption.
countable See enumerable.
derivation Use of the rules of inference to reach a theorem from an axiom.
effectively decidable This is the vague notion that mathematicians have for a question that can be answered
by some process. Given enough intelligence, resources and time could someone guarantee an answer to the
question.
element A member of a set e.g. the members of {1, {7, 10} , 12, 13 . . .} are 1,{7, 10}, 12 and 13.
empty set The unique set which contains no elements.
enumerable A set which can be listed or counted such that it has a first member and a next element (or successor
function)..
Euclidean The classic system of geometry that deals with flat surfaces. This is the geometry taught in school and
includes Pythagoras Theorem among its famous results.
factorial n! = n(n 1)(n 2) . . . 3 2 1 This is a classic function to define primitive recursively by 0! = 1 and
(n + 1)! = n! (n + 1).
39

Fermats Last Theorem Pierre de Fermat was a mathematician who once scribbled in a margin of a book a
comment claiming that he had looked at extending Pythagoras Theorem (a2 + b2 = c2 ) by replacing the 2 by
another power. He claimed to have a marvellous proof that such equations (an + bn = cn for n > 2) had no
integer solutions, but the margin was apparently too small to contain it. The fact that the conjecture ended
up being so difficult to prove suggests that his proof, if it existed at all, was flawed.
free variable A randomly selected variable with no prior attributes which could thus stand for any value.
holism The belief that a complex phenomenon cannot be understood by reducing it to its simplest constituents
but rather only by referring to properties which only emerge at the level of the whole. In other words, the
whole is more than the sum of its parts..
hypothesis See conjecture.
induction A method of proof or valid rule of inference in which a claim is established over all natural numbers by
showing that it is true for 1 and if it is true for a number n, then it is true for the number n + 1. Together,
these two steps (basis step and the inductive step), establish that the claim must be true for 1, so it must be
true for 2, so also 3 etc..
mod or modulo a(mod b) is the remainder left when a is divided by b, given as the smallest positive whole
number.
n-ary A type of operator which requires n inputs.
natural number The simple counting numbers {1, 2, 3, 4, 5, 6, 7 . . .}.
open formula A formula with free occurrences of a variable, see (x).
ordinals Extensions of the natural numbers used to classify infinite sets.
PA See Peano Arithmetic.
paradox Statements which contradict themselves and lead to vicious circles of reasoning.
Peano Arithmetic A formal system of arithmetic which is strong enough to express elementary arithmetical
notions including addition, multiplication and induction.
postulate See axiom.
predicate Something which is true or false.
prime number A number which is only divisible by itself and 1. This set consists of {2, 3, 5, 7, 11, 13, 17, 19, 23 . . .}.
proof A set of logical steps from axioms to theorems.
pseudocode A generic high-level computer programming language.
reductionism The belief that the simplest constituents of a complex phenomenon are sufficient to explain it. In
other words, the whole is just the sum of its parts..
relatively prime sequence A sequence of numbers which have the highest common factor 1.
return This precedes the output of a function in high-level computer programming languages.
Riemann Hypothesis This hypothesis describes the location of the intercepts of a complex 4dimensional graph
with the co-ordinate axes. It is famous for being very difficult to prove and very important because of its
relationship to the nature of prime numbers which underlie all of number theory and web security.
set A collection of objects e.g. the set of all even numbers: {2, 4, 6, 8 . . .}.
strength A strong assumption is different to a weak one in that it is less believable or accepting the weak assumption
is necessary to believe the strong assumption..
40

successor Generates the next natural number, i.e. S(0) = 1, S(1) = 2 . . . S(n) = n + 1 etc.
theorem In the context of mathematics this means a string of symbols reached by applying the rules of inference
to derive the string from the axioms. In the context of meta-mathematics this means a fact which has been
demonstrated to the satisfaction of mathematicians.
transfinite Infinite, see ordinals.
Well-formed formula A sort of grammatically correct sentence in a formal system which has meaning and of
which we can discuss the truth or falsity, e.g. is not one as it is simply meaningless.
witness See .

References
Bhoraskar, Ravi. Non Euclidean Geometries. url: http://blogbloggityblog.wordpress.com/2011/09/09/noneuclidean-geometries/.
Bilaniuk, Stefan. A Problem Course in Mathematical Logic Version 1.6. Peterborough, Ontario, Canada K9J 7B8:
c
Department of Mathematics, Trent University, Copyright 1994-2003.
Boolos and Jeffrey. Turing Machine. 1999. url: http://en.wikipedia.org/wiki/File:Turing_machine_from_
Boolos_and_Jeffrey.JPG#filelinks.
Cameron, James. Terminator 2. url: http://geektyrant.com/news/2013/2/4/new-terminator-2-vfx-testsshow-cutting-edge-tech-for-the-ti.html.
Christiano, Paul. Non-Omniscience, Probabilistic Inference, and Metamathematics. In: Machine Intelligence Research Institute (2013). url: http://intelligence.org/files/Non-Omniscience.pdf.
Christiano, Paul et al. Definability of Truth in Probabilistic Logic. In: Machine Intelligence Research Institute
(2013). url: http://intelligence.org/files/DefinabilityTruthDraft.pdf.
Cohen, Paul J. The Independence of the Continuum Hypothesis. In: Proceedings of the National Academy of
Sciences 50.6 (1963), pp. 11431148. eprint: http://www.pnas.org/content/50/6/1143.full.pdf+html.
url: http://www.pnas.org/content/50/6/1143.short.
The Independence of the Continuum Hypothesis, II. In: Proceedings of the National Academy of Sciences
51.1 (1964), pp. 105110. eprint: http://www.pnas.org/content/51/1/105.full.pdf+html. url: http:
//www.pnas.org/content/51/1/105.short.
Commons, Wikimedia. Hyperbolic triangle. url: http : / / commons . wikimedia . org / wiki / File : Hyperbolic _
triangle.svg#mediaviewer/File:Hyperbolic_triangle.svg.
Triangle trirectangle. url: http://commons.wikimedia.org/wiki/File:Triangle_trirectangle.png.
Curry, Justin and Curran Kelleher. G
odel, Escher, Bach: A Mental Space Odyssey, Summer 2007. Ed. by MIT
OpenCourseWare: Massachusetts Institute of Technology. License: Creative Commons BY-NC-SA. 29 Aug,
2014. url: http://ocw.mit.edu/high-school/humanities-and-social-sciences/godel-escher-bach.
Dewey, Daniel. Intelligence Explosion and the Long-Term Future of Artificial Intelligence. url: http : / / www .
danieldewey.net/tedxvienna.html.
Dhingra, Mohit. Problem on NFA construction. url: http://functionspace.org/topic/264/Problem-on-NFAconstruction.
Einstein, Albert and Marcel Grossman. Entwurf einer verallgemeinerten Relativitatstheorie und eine Theorie der
Gravitation. In: Zeitschrift f
ur Mathematik und Physik 62 (1913), pp. 225261.
Fallenstein, Benja and Nates Soares. Problems of self-reference in self-improving space-time embedded intelligence.
In: Machine Intelligence Research Institute (2013). url: http://intelligence.org/files/ProblemsSelfReference.
pdf.
Frege, Gottlob, Philip A. Ebert, and Marcus Rossberg. Basic Laws of Arithmetic. OUP Oxford (31 Oct 2013), 1893
and 1903.
Gentzen, Gerhard. Neue Fassung des Widerspruchsfreiheitsbeweises f
ur die reine Zahlentheorie. In: Forschungen
zur Logik und zur Grundlegung der exakten Wissenschaften 4 (1936), pp. 1944.
G
odel, Kurt. On Formally Undecidable propositions in Principia Mathematica. Ed. by Martin Hirzl. November 27,
2000. url: http://www.research.ibm.com/people/h/hirzel/papers/canon00-goedel.pdf.

41

G
odel, Kurt. The Consistency of the Axiom of Choice and of the Generalized Continuum-Hypothesis. In: Proceedings of the National Academy of Sciences 24.12 (1938), pp. 556557. eprint: http://www.pnas.org/content/
24/12/556.full.pdf+html. url: http://www.pnas.org/content/24/12/556.short.
The Consistency of the Continuum-Hypothesis. In: Princeton University Press (1940).

Uber
formal unentscheidbare S
atze der Principia Mathematica und verwandter Systeme, I. In: Monatshefte
f
ur Mathematik 38 (1931), pp. 17398.
Goldstein, Professor Rebecca. G
odels Incompletness Theorems in the Context of Philosophy. New College of the
Humanities. March 18, 2013. url: https://www.youtube.com/watch?v=HHMKnwCT_Dk&index=4&list=WL.
Good, Irving John. Speculations Concerning the First Ultraintelligent Machine. In: Advances in Computers 6
(1965), pp. 3188.
Hilbert, David. Grundlagen der geometrie. Leipzig, B.G. Teubner, 1903.
Mathematical Problems. In: Bulletin of the American Mathematical Society 8 (1902), pp. 437479.
Hilbert, David and Wilhelm Ackermann. Grundzge der theoretischen Logik. American Mathematical Society, 1928.
Hilbert, David and Paul Bernays. Grundlagen der Mathematik. II. Die Grundlehren der mathematischen Wissenschaften, 1939.
Hofstadter, Douglas R. G
odel, Escher, Bach: An Eternal Golden Braid. New York: Basic Books, 1999. url: http:
//www.questiaschool.com/read/10035000.
Jasmin, Coral. Crazy hyperbole, crazier crocheting and the craziest me. url: https://www.google.co.uk/search?
q=hyperbolic+geometry&source=lnms&tbm=isch&sa=X&ei=Cx4KVJO3IZKf7Aa_woGADA&ved=0CAgQ_AUoAQ&
biw = 1920 & bih = 955 # tbm = isch & q = hyperbolic + geometry + parallel + lines & facrc = _ & imgdii = _ & imgrc =
fSM61UxxkI2aCM%253A%3BBNK0-qtNyJzS-M%3Bhttps%253A%252F%252Fcoraljasmin.files.wordpress.com%
252F2012 % 252F05 % 252Fhyperbolic - space . jpg % 3Bhttp % 253A % 252F % 252Fcoraljasmin . wordpress . com %
252Fcategory%252Fscience%252F%3B3283%3B1843.
Kant, Immanuel. Critik der reinen Vernunft. Penguin Classics, 1781.
Kim, B. Complete Proofs of G
odels Incompleteness Theorems. url: http://web.yonsei.ac.kr/bkim/goedel.pdf.
Learner, Annenberg. Spherical and Hyperbolic Geometery. url: http://www.learner.org/courses/mathilluminated/
units/8/textbook/04.php.
List of Rules of Inference. 21 August 2014. url: http://en.wikipedia.org/wiki/List_of_rules_of_inference.
L
ob, Martin Hugo. Solution of a Problem of Leon Henkin. In: Journal of Symbolic Logic 20.2 (1955), pp. 15118.
Medics, Math. The Prime Factorization of the First 1000 Integers. url: http : / / www . sosmath . com / tables /
factor/factor.html.
Nagel, Ernest and James R. Newman. G
odels Proof. New York University Press, 2001.
Richard, Jules. Les Principes des Mathematiques et le Probl`eme des Ensembles. Revue Generale des Sciences Pures
et Appliquees, 1905.
Rosser, J. Barkley. Extensions of some theorems of Gdel and Church. In: Journal of Symbolic Logic 1 (1936),
pp. 8791.
Russell, Bertrand. The Principles of Mathematics. Michigan University Press,digitised by Google, 1903. url: https:
//archive.org/details/principlesmathe00russgoog.
Sagan, Carl. Cosmos: A Personal Voyage, Episode 9: The Lives of the Stars. 1980.
Sautoy, Marcus Du. The Music of the Primes: Why an Unsolved Problem in Mathematics Matters. HarperPerennial,
6 Sep 2004.
Schwichtenberg, Helmut. Mathematical Logic. Mathematisches Institut der Universitat M
unchen, 2003/2004.
Shapiro, Stewart. Classical Logic, The Stanford Encyclopedia of Philosophy (Winter 2013 Edition). Ed. by Edward
N. Zalta. url: http://plato.stanford.edu/archives/win2013/entries/logic-classical/.
Simpson, Stephen G. Mathematical Logic. http://www.math.psu.edu/simpson/. University Park, State College PA
c
16802: Department of Mathematics,The Pennsylvania State University, Copyright 1998-2013.
c
Smith, Peter. An Introduction to G
odels Theorems. Cambridge University Press, 2007,2013.
Tammet, Daniel. Thinking in Numbers: How Maths Illuminates our Lives. Hodder and Stoughton, 2012.
Tarski, Alfred. Der Wahrheitsbegriff in den formalisierten Sprachen. In: Studia Philosophica 1 (1936), pp. 261
405.
Turing, A.M. On Computable Numbers, with an Application to the Entscheidungsproblem. In: Proceedings of the
London Mathematical Society 42.2 (1937), pp. 23065.
Vidal-Rosset, Joseph. Does G
odels Incompletenss Theorem Prove that Truth Transcends Proof ? Henri Poincare
University.
Wachowski and Wachowski. The Matrix. March 31, 1999.

42

Wiles, Andrew. Modular elliptic curves and Fermats Last Theorem. In: Annals of Mathematics 142 (1995),
pp. 443551.
Yudkowsky, Eliezer. (The Cartoon Guide to) L
obs Theorem. url: http : / / yudkowsky . net / assets / pdf /
LobsTheorem.pdf.
Yudkowsky, Eliezer and Marcello Herreshoff. Tiling Agents for Self-Modifying AI, and the Lobian Obstacle. In:
Machine Intelligence Research Institute (2013). url: http://intelligence.org/files/TilingAgentsDraft.
pdf.

Zermelo, Ernst. Uber


Grenzzahlen und Mengenbereiche. In: Fundamenta Mathematicae 16 (1930), pp. 2947.
Untersuchungen u
ber die Grundlagen der Mengenlehre. I. In: Mathematische Annalen 65 (1908), pp. 261281.

43

Vous aimerez peut-être aussi