Life is a miraculous existence.

While biologists focus on studying the operating mechanisms of real organisms, von Neumann took a different approach, seeking the essence of life through mathematics.

In von Neumann's view, the essence of life is a type of software logic. His concept of "life" could be completely different from existing life forms, which is why he chose the Turing machine as his starting point.


  1. Von Neumann's self-replicating automata theory tells us that DNA is source code, the origin of meta-biology
  2. In the process of meta-biological proof: code is DNA, algorithmic mutation is evolution, software is life
  3. The essence of life is not metabolism and heredity, but innovation

These are the main points from the first five chapters of Gregory Chaitin's book "Proving Darwin."

The book is verbose and tiresome to read. This old man seems suspiciously like he's padding for royalties, turning what should be a lecture into a book.

I only plan to write an article related to the appendix of the old man's book, which contains von Neumann's manuscript. If computer science were a religion, he would be one of its deities.


Headphones get tangled in pockets, hot water gradually cools down, and floors get dirty when not swept for a long time.

This is our intuitive understanding of natural phenomena - in isolated systems, ordered states spontaneously tend toward chaos and disorder, following the entropy increase process of the Second Law of Thermodynamics.

Traditional mechanics and most of our artificial creations exhibit similar conditions.

Suppose a machine A can spontaneously produce machine B. A must contain complete information about B for A to manufacture B according to this information. Since A contains information greater than or equal to B, A must be more complex than B.

Following this understanding, machine complexity would continuously degrade during the manufacturing process, meaning a system's complexity is always higher than that of the subsystems it can produce.

However, nature shows phenomena that deviate from this: the birth and evolution of life, technological development and progress, all moving toward increasingly complex and diverse directions - what everyone refers to as "emergence."

Due to the difficulty in controlling, predicting, and describing this, people have historically considered it a divine miracle.

Even now, while we can explain how the brain transmits signals through neurotransmitters, we haven't figured out how wisdom emerges; we can observe all biochemical reactions in organisms, but haven't successfully synthesized true life in laboratories.

Our familiar and reliable bottom-up thinking approach doesn't seem to achieve the expected results here:

Lower-level existence cannot deduce higher-level complexity.

It seems that in many phenomena, there exists a threshold for complexity accumulation. Below this threshold, things spontaneously degrade; above it, they immediately show emergent collective characteristics. On the path to becoming divine, this question blocks our progress: where is this threshold.

Von Neumann intended to find this threshold.

The Essence of Life is a Software Logic

Life is a miraculous existence.

While biologists only examine the operating mechanisms of real organisms, von Neumann's pursuit differed from traditional biologists. Looking at his work, von Neumann sought the essence of life along a formal path—mathematics1.

Or rather, he sought a minimal kernel of life, because in von Neumann's view, life's essence is a type of software logic. His form of "life" could be completely different from existing life, which is why his starting point was the Turing machine.

A Turing machine is simple; for any Turing machine, its description is always finite and can therefore be encoded as a Turing machine instruction. The description of Turing machine MM can be denoted as IMI_M, as all computer science graduates know.

Von Neumann designed this set of machines:

  • Constructor A: reads an instruction II, then A can output the corresponding machine based on instruction II
  • Instruction Copier B: reads an instruction and outputs a copy of that instruction
  • Controller C: puts II into A to get the machine described by II; puts II into B to get a copy of II; finally assembles and outputs A and B's outputs together
  • Combine (A, B, C) into machine D, and according to the above description, we can certainly construct D's description, instruction IDI_D
  • Finally, input IDI_D into machine D to form E, which clearly has complete self-replication ability and can continuously replicate itself

In our assumptions, we consider A, B, C as elementary components, and it's easy to see that the above description doesn't involve circular references: when IDI_D is needed, D already exists, so there's a definite temporal and logical order between D and IDI_D, making the proof of E's self-replication ability rigorous.

We can easily find corresponding parts for each component of this machine group in organisms:

  • IDI_D appears very similar to genes
  • Mutations in IDI_D as instructions would lead to offspring machines unable to replicate, which is fatal
  • Adding a segment IFI_F to IDI_D means IDI_D + IFI_F will produce byproducts unrelated to the core replication logic, mutations in IFI_F won't affect offspring machine replication, similar to genes expressing proteins

However, looking at them individually, neither Constructor A, Copier B, Controller C, nor their gene IDI_D possess self-replication ability when independent. When organized together appropriately, they achieve self-replication, demonstrating the emergence of self-replication functionality.

Von Neumann's research was just an initial attempt toward a theory of emergence regarding automata, trying to form a concept of "complexity" in complex systems. He believed systems with "complexity" below a threshold would spontaneously degrade, producing only systems of lower complexity; when complexity exceeds this threshold, systems can maintain complexity at that level (like E); if we could make artificial creations with complexity above this threshold, we would be doing divine work2.

Although von Neumann ultimately didn't find this complexity threshold, he believed self-replicating automata should be quite close to it. Unlike other theories trying to explain emergence, von Neumann's explanation has mathematical counterparts. If we're not satisfied with mere observation and want to truly understand emergence deeply, self-replicating automata theory might be a very good entry point.

Quietly coding away, we have the chance to create worlds.


  1. Von Neumann's self-replicating automata theory took shape in 1944, while the DNA double helix structure wasn't discovered until 1953. However, in 1952, DNA structure discoverer Crick read von Neumann's paper, expressed deep inspiration from it, and ultimately discovered the DNA double helix structure, winning the Nobel Prize. ↩︎

  2. You can find many programs called Quines on the internet, where the code's output is the code itself. Self-replicating programs aren't novel anymore, from simple cellular automata to complex robots like those at MIT's Self-assembly Lab. But they can't be compared to real life because they can't spontaneously produce more complex individuals than themselves. ↩︎