Typographical Number Theory

Typographical Number Theory

Typographical Number Theory (also known as TNT) is a formal axiomatic system describing the natural numbers that appears in Douglas Hofstadter's book Gödel, Escher, Bach. It is an implementation of Peano arithmetic that Hofstadter uses to help explain Gödel's incompleteness theorems.

Like any system implementing the Peano axioms, Typographical Number Theory is capable of referring to itself (it is self-referential).


Typographical Number Theory does not use a distinct symbol for each natural number. Instead it makes use of a simple, uniform way of giving a compound symbol to each natural number:


The symbol S can be interpreted as "the successor of", or "the number after". Since this is, however, a number theory, such interpretations are useful, but not strict. We cannot say that because four is the successor of three that four is SSSS0, but rather that since three is the successor of two, which is the successor of one, which is the successor of zero, which we have described as 0, four can be "proved" to be SSSS0. Typographical Number Theory is designed such that everything must be proven before it can be said to be true. This is its true power, and to undermine it would be to undermine its very usefulness.


In order to refer to unspecified terms, TNT makes use of five variables. These are: a, b, c, d, e.More variables can be constructed by adding the prime symbol after them; for example,:a', b', c', a", a"'are all variables.

In the more rigid version of TNT, known as "austere" TNT, only :a', a", a"' etc. are used.


Addition and multiplication of numerals

In Typographical Number Theory, the usual symbols of "+" for additions, and "·" for multiplications are used. Thus to write "b plus c", we write :(b+c)and "a times d" is written as :(a·d)

The parentheses are required. Any laxness would violate TNT's formation system (although it is trivially proved this formalism is unnecessary for operations which are both commutative and associative). Also only two terms can be operated on at once. Therefore to write "a plus b plus c", we must write either :((a+b)+c)or :(a+(b+c))


The "Equals" operator is used to denote equivalence. It is defined by the symbol "=", and takes roughly the same meaning as it usually does in mathematics. For instance, :(SSS0+SSS0)=SSSSSS0is a true statement in TNT, with the interpretation "3 plus 3 equals 6".


In Typographical Number Theory, negation, i.e. the turning of a statement to its opposite, is denoted by the "~" or negation operator. For instance,:~ [ (SSS0+SSS0)=SSSSSSS0 ] is a true statement in TNT, interpreted as "3 plus 3 is not equal to 7".

By negation, this means negation in boolean logic (logical negation), rather than simply being the opposite. For example, if I were to say "I am eating a grapefruit", the opposite is "I am not eating a grapefruit", rather than "I am eating something other than a grapefruit". Similarly "The Television is on" is negated to "The Television is not on", rather than "The Television is off". This is a subtle difference, but an important one.


There are two quantifiers used: "∀" and "∃".

Note that unlike most other logical systems where qualifiers over sets require a mention of the element's existence in the set, this is not required in TNT because all numbers and terms are strictly natural numbers or logical boolean statements. It is therefore equivalent to say ∀a:(a∈N):∀b:(b∈N): [ (a+b)=(b+a) ] and ∀a:∀b: [ (a+b)=(b+a) ]

*∃ means "There exists"
*∀ means "For every" or "For all"
*The symbol : is used to separate a quantifier from other quantifiers or from the rest of the formula. It is commonly read "such that"

For example:

:∀a:∀b: [ (a+b)=(b+a) ] ("For every number a and every number b, a plus b equals b plus a", or more figuratively, "Addition is commutative.")

:~∃c:Sc=0("There does not exist a number c such that c plus one equals zero", or more figuratively, "Zero is not the successor of any (natural) number.")

Atoms and propositional statements

All the symbols of propositional calculus are used in Typographical Number Theory, and they retain their interpretations.

Atoms are here defined as strings which amount to statements of equality, such as

1 is not equal to 2::~ [ S0=SS0 ] 2 plus 3 equals four::(SS0+SSS0)=SSSS02 plus 2 is not equal to 3::~ [ (SS0+SS0)=SSS0 ]


Douglas Hofstadter. "Gödel, Escher, Bach: an Eternal Golden Braid", 20th anniversary re-edition. Basic books, 1999. ISBN 0-465-02656-7

Wikimedia Foundation. 2010.