Toward a Foundation of Mathematics based on A New Kind of Science
Toward a Foundation of Mathematics based on A New Kind of Science
Quotient in Mathematics from the point of view of the Wolfram Model
To define computation from mathematics is absurd, since our direct experience is with computation, not with mathematics. Mathematics is just the result of abstraction in a computation. We will try to define mathematics from computation, following the ontology from A New Kind of Science. In this approach, a mathematical object is not a primitive concept, but a concept derived from computation.
Definition of mathematics
Definition of mathematics
Motivation: “We want a mathematics free of blackboard, and it is impossible. We want to verify mathematics in computers but this depends on the rigid structure of computers and sometimes it fails. The great miracle of mathematics is there. [...] All traditional descriptions of mathematics, in my view, are greatly faulty, and this is the reason why there is no model of mathematics realized in computers, why there is no model of understanding languages, because we have an absolute wrong perception traditionally build in a development of numerical mathematics in logic distorted our perception of ourselves, of mathematics and of languages. It is as distorted as the Sun orbiting the Earth, [...] it is the wrong language, the wrong description.” Misha Gromov (https://youtu.be/aJAQVletzdY?t=3880)
Primitive objects: Expression, Function (as defined in the Wolfram Language, but it can be done in any model of computation).
Invertible function: A function F is invertible if there is a function G such that G[F[x]] = F[G[x]] = x for any expression x such that these expressions are well-defined.
Mathematical space: A mathematical space Ω is given by a set of invertible functions sharing the same domain of expressions, which is also a common co-domain. These functions and their inverses are called the generators of the space.
Mathematical object: A mathematical object α is given by a mathematical space Ω and an expression x from the common domain of the generators of the space. Any expression obtained from x by the application of composition of the generators of the space is called a representative of the mathematical object.
Analogy: Considering a fixed mathematical space, an expression is like a representation of the corresponding mathematical object in a given coordinate system.
Mathematical operations: A mathematical operation ϕ, transforming mathematical object α into a mathematical object β, is given by a function F satisfying: for every expression x representing α, the result of the computation F[x] is an expression representing β.
Definition of mathematics: Mathematics is the study of mathematical objects, i.e., abstractions of properties from computations.
Why mathematics is useful: The computational universe of computations at maximum level of sophistication is reduced by identifying different expressions as representations of the same mathematical object. Mathematics is a trick to make shortcuts in irreducible computations. The price to pay for that is the loss of control over the representative of the mathematical object, e.g., one representative from one irreducible computation may transform itself into another representative to make a shortcut. Still, we are not in the original computation anymore.
Why current proof assistants are a failure for everyday mathematics: In current proof assistant, a considerable amount of computational effort is used just to change from one representation of a given mathematical object into another. In real-life mathematicians consider all the representations at the same time, i.e., in coordinate-free differential geometry.
How to develop the first practical proof assistant: Using a model of mathematics where the mathematical objects are treated in a way as independent as possible to their representation.
Why category theory is better than set theory as a foundation of mathematics: Because category theory is about the mathematical object as such, whereas set theory is about the representations of the mathematical object.
Why category theory is considered hard to learn: Because the community of category-theoreticians has been working for years making the language as hard as possible, people will not find out that the kind of mathematics they are doing is trivial. For example, a “quiver” is just another name of a directed graph; a “morphism” is just another name of an arrow, etc. Grothendieck was the exception. He did the best he could to explain his mathematics in his books written in French: for him, the only relevant mathematics is the one that can be explained to a child.
Example: integers
Example: integers
Expressions: pairs of non-negative integers.
Mathematical space:
In[]:=
F[{m_,n_}]:={m+1,n+1}
In[]:=
G[{m_,n_}]:=If[Min[m,n]>0,{m-1,n-1},{m,n}]
The following invertible multiway systems represents the number zero.
In[]:=
ResourceFunction["MultiwaySystem"][<|"StateEvolutionFunction"({F[#],G[#]}&),"StateEquivalenceFunction"SameQ,"StateEventFunction"Identity,"EventDecompositionFunction"Identity,"EventApplicationFunction"Identity,"SystemType""None","EventSelectionFunction"Identity|>,{{5,5}},7,"StatesGraphStructure"]
Out[]=
The following invertible multiway systems represents the number 1.
In[]:=
ResourceFunction["MultiwaySystem"][<|"StateEvolutionFunction"->({F[#],G[#]}&),"StateEquivalenceFunction"->SameQ,"StateEventFunction"->Identity,"EventDecompositionFunction"->Identity,"EventApplicationFunction"->Identity,"SystemType"->"None","EventSelectionFunction"->Identity|>,{{5,4}},7,"StatesGraphStructure"]
Out[]=
The following invertible multiway systems represents the number -1.
In[]:=
ResourceFunction["MultiwaySystem"][<|"StateEvolutionFunction"->({F[#],G[#]}&),"StateEquivalenceFunction"->SameQ,"StateEventFunction"->Identity,"EventDecompositionFunction"->Identity,"EventApplicationFunction"->Identity,"SystemType"->"None","EventSelectionFunction"->Identity|>,{{4,5}},7,"StatesGraphStructure"]
Out[]=
Example: rationals
Example: rationals
Expressions: pairs of integers, the second component is non-zero.
Expressions: pairs of integers, the second component is non-zero.
Mathematical space:
In[]:=
F[p_]:=Function[{m,n},{m*p,n*p}][First[#],Last[#]]&
In[]:=
G[p_]:=Function[{m,n},If[Divisible[GCD[m,n],p],{m/p,n/p},{m,n}]][First[#],Last[#]]&
where p is either a prime number or minus a prime number
The following invertible multiway systems represents the number 1.
In[]:=
ResourceFunction["MultiwaySystem"][<|"StateEvolutionFunction"({F[2][#],G[2][#],F[3][#],G[3][#],F[5][#],G[5][#]}&),"StateEquivalenceFunction"SameQ,"StateEventFunction"Identity,"EventDecompositionFunction"Identity,"EventApplicationFunction"Identity,"SystemType""None","EventSelectionFunction"Identity|>,{{30,30}},3,"StatesGraphStructure",VertexLabelsNone]
Out[]=
The following invertible multiway systems represents the number -2/3.
In[]:=
ResourceFunction["MultiwaySystem"][<|"StateEvolutionFunction"->({F[2][#],G[2][#],F[3][#],G[3][#],F[5][#],G[5][#]}&),"StateEquivalenceFunction"->SameQ,"StateEventFunction"->Identity,"EventDecompositionFunction"->Identity,"EventApplicationFunction"->Identity,"SystemType"->"None","EventSelectionFunction"->Identity|>,{{-20,30}},3,"StatesGraphStructure",VertexLabelsNone]
Out[]=
Example: Ring Z[Sqrt[2]]
Example: Ring Z[Sqrt[2]]
Expressions: polynomials on one variable x whose coefficients are integers.
Mathematical space:
In[]:=
F[k_,P_]:=P+x^k*(x^2-2)
In[]:=
G[k_,P_]:=P-x^k*(x^2-2)
for all k ≥ 0
The following invertible multiway systems represents the number 1+Sqrt[2].
In[]:=
ResourceFunction["MultiwaySystem"][<|"StateEvolutionFunction"->({F[0,#],G[0,#],F[1,#],G[1,#],F[2,#],G[2,#]}&),"StateEquivalenceFunction"->SameQ,"StateEventFunction"->Identity,"EventDecompositionFunction"->Identity,"EventApplicationFunction"->Identity,"SystemType"->"None","EventSelectionFunction"->Identity|>,{1+x},3,"StatesGraphStructure",VertexLabelsNone]
Out[]=
Misha Gromov’s opinion (extremely close to the Wolfram Model):
“[real] numbers are not simple [...] nobody understands real numbers because nobody ever wrote a rigorous justification of properties of real numbers [...] real numbers are not a rigorous theory and therefore nobody understands them and they are of course extremely elaborate objects, stupidly elaborated, it is incredible that such a thing like a real number exists, if you formulate it to an unprepared mind, it will say that such a thing should not exist, too many properties in one object, but there are much easier things [...] here is how you can think about systems, you do not know what they are, but you make experiments and it sound bum, bum, bum, it is all that you see, bum, bum, bum here, tic, tic, tic, there, and the only thing that you can say is that these bum, bum, bum, and these [other] bum, bum, bum are the same, and these tic, tic, tic, are different from the bum, bum, bum, it is all you have, all the information about the world, specially in physics, came out of that, there is nothing else, no probability, no [real] number...”
Therefore, real numbers may be a wrong model of reality and its fundamental level. So, let’s ignore them for now.