1Abstract

Here we model worlds and agents (the universe and us) with endofunctions. An endofunction1 is a function whose domain and codomain are equal. The philosophical consequences of this model: (1) only the present exists, and the past and the future do not exist; (2) we cannot know objective reality; (3) our subjective experience represents objective reality.

The model we are going to make seems to be a very narrow case of dynamical systems2. Aren't what we proposing here basically pancomputationalism3?

2World–agent interaction model

Here we are going to model an agent in a world.

The world is modeled by a law \(W : S \to S\), which is just an endofunction whose domain is the world's state type. This law describes how the world computes its next state from its current state.

The agent is modeled by a law \(A : S' \to S\), with various constraints we describe here. The agent's law is embedded4 in the world's law: The agent state type \(S'\) must be a subset of \(S\). The function \(sense : S \to S'\) is the embedding that defines how the agent senses the world. This constraint must be satisfied: \[ sense\circ W = A \circ sense. \] That constraint relates the actual world state change and what the change looks like from the agent's point of view. The agent can never know the world state: it can only sense something homomorphic to that state.

That equation has two epistemological implications. The first is the bad news that we cannot know objective reality: we can only know our subjective experience of the part of objective reality that the laws of nature allow us to sense through our senses. The second is the good news that our subjective experience represents objective reality (is consistent with objective reality).

The \(sense\) function is not invertible because \(S' \subset S\). This non-invertibility means that there exists part of the world that the agent cannot sense: the agent is not omniscient: it can only perceive a small part of the world: it cannot know the whole world.

The environment is the world minus the agent. Something is a part of the agent if and only if the agent can directly control that part. Otherwise it is a part of the environment.

3Philosophical implications

We are going to show the consequences of assuming that the universe is computable and assuming that space-time is continuous.

If a world state (an element of \(S\)) is a matrix (an array of real numbers), then we should feel time as discrete. If we don't feel time as discrete, then each element of \(S\) has to be a continuous function and not a matrix.

If a world state (an element of \(S\)) is a matrix (an array of real numbers), then we should feel space as quantized/digitized/pixelated. If we don't have pixelated space, then each element of \(S\) has to be a physical field.

So far space-time seems to be continuous5.

If the universe is computable and space-time feels continuous, then each element of \(S\) must be a finite description instead of an infinite matrix of numbers. That is, the current state of the universe is a finite program that describes what we think is the objective reality. Thus the universe is a computer running a self-modifying code. That is, the universe does not represent a particle in the way we write a physics game (by a position vector, a velocity vector, and a loop that updates the position vector using numerical integration). If we went "the universe way", we would represent that particle as a program (a string in a formal language) that describes the motion of that particle. An example program is \(x(t) = v \cdot t\). Thus, what is real is not the moving particle that we see, but what is real is the equation that governs that particle's motion. That is, we thought that math were unreal (existing only in idea-space) and what we can touch was real (existing in meat-space). But the reality is that it is the math that is real and what we can touch is unreal. Our reality is a "side-effect" of the universe's executing its current state (which is a self-modifying program)? The universe is a machine that is able to solve the \(n\)-body problem. But isn't this extreme pancomputationalistic idealism?

How do we model self-modifying code in lambda calculus?6

The universe is deterministic and random. The current state is a finite description of randomness, but that description evolves deterministically. It is possible to deterministically describe nondeterminism. Example: \(\frac{1}{2}H + \frac{1}{2}T\) is a finite deterministic description of nondeterminism. It is the description that is deterministic, not our perception of reality that is deterministic.

An "infinite" thing may have a finite description. For example, the sequence \(0,1,2,3,\ldots\) is "infinite", but it has the finite description \(x_k = k\).

4Symbolism and connectionism

Endofunctions unify all AI approaches. Every agent is an endofunction.

The internal state of a symbolic AI is a big logic formula in conjunctive normal form. The internal state of a connectionist AI is a big multidimensional array of numbers. Both symbolic and connectionist AI prescribes a rule for updating their current internal state to the next state.

5Bibliography

6Meta

6.1Things to do?

Publish to a journal about digital physics or pancomputationalism?

6.2History

<2018-12-30> Begin writing draft.


  1. https://en.wikipedia.org/wiki/Endomorphism#Endofunctions

  2. https://en.wikipedia.org/wiki/Dynamical_system_(definition)

  3. https://en.wikipedia.org/wiki/Digital_physics

  4. https://en.wikipedia.org/wiki/Embedding

  5. https://en.wikipedia.org/wiki/Holometer

  6. Purely-Functional Self-Modifying Code http://chriswarbo.net/unfinished/encoding.html