On Kirby–Paris Hydra game, which involves killing off a particularly vicious modern variant of the Lernaean Hydra

seen from United States
seen from China
seen from United Kingdom

seen from Macao SAR China
seen from United Kingdom

seen from United States
seen from Russia

seen from Malaysia

seen from United States

seen from Macao SAR China
seen from Germany
seen from United States
seen from United States
seen from Germany
seen from Malaysia
seen from United States

seen from Malaysia

seen from Colombia
seen from United States
seen from China
On Kirby–Paris Hydra game, which involves killing off a particularly vicious modern variant of the Lernaean Hydra
To put it very shortly I think that in-consistency of Peano arithmetic as well as in-consistency of ZFC are open and very interesting problems in mathematics. Consistency on the other hand is not an interesting problem since it has been shown by Goedel to be impossible to proof.
Vladimir Voevodsky to Harvey Friedman, sic
When your co-worker asks you to prove 2+2=4 to be difficult but you can actually do it.
“What is our intuitive understanding of the natural numbers? Surely this being the firmest of all our mathematical ideas, should have a definite, transparent meaning. Let us examine a few attempts to make this meaning clear:
(1) The natural numbers may be thought of as symbolic expressions: 1 is |, 2 is ||, 3 is |||, 4 is ||||, etc. Thus, we start with a vertical stroke | and obtain new expressions by appending additional vertical strokes. There are some obvious objections with this approach. First, we cannot be talking about particular physical marks on paper, since a vertical stroke for the number 1 may be repeated in different physical locations. The number 1 cannot be a class of all congruent strokes, since the length of the stroke may vary; we would even acknowledge as a 1 a somewhat wiggly stroke written by a very nervous person. Even if we should succeed in giving a sufficiently general geometric characterization of the curves which would be recognized as 1's, there is still another objection. Different people and different civilizations may use different symbols for the basic unit, for example, a circle or a square instead of a stroke. Yet, we could not give priority to one symbolism over any of the others. Nevertheless, in all cases, we would have to admit that, regardless of the difference in symbols, we are all talking about the same things.
(2) The natural numbers may be conceived to be set-theoretic objects. In one very appealing version of this approach, the number 1 is defined as the set of all singletons {x}; the number 2 is the set of all unordered pairs {x, y}, where x =/= y; the number 3 is the set of all sets {x, y, z} where x =/= y, x =/= z, y =/= z; and so on. Within a suitable axiomatic presentation of set theory, clear rigorous definitions can be given along these lines for the general notion of natural number and for familiar operations and relations involving natural numbers. Indeed, the axioms for a Peano system are easy consequences of the definitions and simple theorems of set theory. Nevertheless, there are strong deficiencies in this approach as well.
First, there are many competing forms of axiomatic set theory. In some of them, the approach sketched above cannot be carried through, and a completely different definition is necessary. For example, one can define the natural numbers as follows: 1 = {∅}, 2 = {∅, 1}, 3 = {∅, 1, 2}, etc. Alternatively, one could use: 1 = {∅}, 2 = {1}, 3 = {2}, etc. Thus, even in set theory, there is no single way to handle the natural numbers. However, even if a set-theoretic definition is agreed upon,it can be argued that the clear mathematical idea of the natural numbers should not be defined in set-theoretic terms. The paradoxes (that is, arguments leading to a contradiction) arising in set theory have cast doubt upon the clarity and meaningfulness of the general notions of set theory. It would be inadvisable then to define our basic mathematical concepts in terms of set theoretic ideas.
This discussion leads us to the conjecture that the natural numbers are not particular mathematical objects. Different people, different languages, and different set theories may have different systems of natural numbers. However, they all satisfy the axioms for Peano systems and therefore are isomorphic. There is no one system which has priority in any sense over all the others. For Peano systems, as for all mathematical systems, it is the form (or structure) which is important, not the "content". Since the natural numbers are necessary in the further development of mathematics, we shall make one simple assumption:Basic Axiom There exists a Peano system.“
Elliott Mendelson, Number Systems and the Foundations of Analysis
I'd like to share a simple proof of a surprising fact: every function can be computable! Huh? What on earth do I mean? Can't we prove that some functions are not computable? Yes, of course. What ...
The signs as consistent logical systems containing Peano arithmetic
Aries: ???
Taurus: ???
Gemini: ???
Cancer: ???
Leo: ???
Virgo: ???
Libra: ???
Scorpio: ???
Sagittarius: ???
Capricorn: ???
Aquarius: ???
Pisces: ???
Object-oriented Peano arithmetic
I'm not sure what would be the best way to represent Peano arithmetic in Python (or another language without algebraic types), but I think the funniest way to do it is to represent numbers as classes with succ() class method that dynamically creates a randomly named subclass of the class it's called from. Calculating a predecessor of a number is trivial, just lookup its superclass.
import uuid # Axiom 0: every language feature can # and will be misused. # Axiom 1: Zero is a natural number class Zero(object): # Axiom 2: for every natural number N, # succ(N) is a natural number @classmethod def succ(self): # Class names don't matter but must be unique name = str(uuid.uuid4()) # By successor Peano meant a subclass, right? return type(name, (self,), {}) @classmethod def add(self, x): if self == Zero: return x else: return self.__bases__[0].add(x.succ()) @classmethod def str(self): if self == Zero: return "O" else: return "S({0})".format(self.__bases__[0].str()) if __name__ == '__main__': one = Zero.succ() two = Zero.succ().succ() three = Zero.succ().succ().succ() print("{0} + {1} = {2}".format(Zero.str(), Zero.str(), Zero.add(Zero).str())) print("{0} + {1} = {2}".format(Zero.str(), one.str(), Zero.add(one).str())) print("{0} + {1} = {2}".format(two.str(), three.str(), two.add(three).str())) print("{0} + {1} = {2}".format(three.str(), two.str(), three.add(two).str()))
As expected,
$ python ~/peano.py O + O = O O + S(O) = S(O) S(S(O)) + S(S(S(O))) = S(S(S(S(S(O))))) S(S(S(O))) + S(S(O)) = S(S(S(S(S(O)))))