Tegmark’s TOE (Theory Of Everything) suggests that any logically consistent set of rules for a universe has physical existence. His arguments are clear and fun to read. They are reminiscent of Greg Egan’s Permutation City, a science fiction novel. David Hilbert claimed that mathematical (Platonic) existence was the mere absence of contradictions. According to Tegmark’s TOE there are universes based on Turing machines. Many of us believe that such universes support self aware observers. It might seem (and Tegmark argues, I think) that we should find ourselves in one of simpler universes among those able to support self aware observers. The question immediately arises then:
Is our universe simpler than a Turing universe?
Another way into this question is “How would you design a universe?”. Being a software designer I would prefer a conventional digital computer, but not a Turing machine I think. (I feel uncomfortable with arguments involving grossly inefficient mechanisms. If the quest for simplicity has any validity then there is some sort of complexity budget. I admit that the 1071 particles in the visible universe suggests a substantial budget, but still insufficient for practical Turing machine programs. Some hard AI types were and are hopeful with computing element counts closer to 108.)

Here is a point that Tegmark does not make:

The universe must either have life built in or must be able to evolve it.
I argue here that a Turing machine, or a PowerPC with enough RAM is almost certainly simpler than the universe we inhabit and whose rules we are still well short of knowing. On the other hand I suspect that machines as we know them are not by themselves suitable for evolution ab initio, and if we include self aware software in the package, the initial complexity investment is too great. A machine together with self aware software is probably more complex than the rules of our Universe, which just cooked up life Darwin’s way.

Fragility of Conventional Computers

I think that running on conventional bare hardware, programs are too likely to shoot themselves in the foot or worse. This applies to Conway’s life game and Turing machines as well. Computers equipped with simple protection circuitry and a suitable program (50K bytes) to control that circuitry may be able to provide a universe where simple experimenting programs will survive experiments that involve creating and running new programs. With a good operating system, evolved life just might be possible.

The Unix “proc” facility allows one program to experiment on another program in another address space and survive that program storing at arbitrary addresses and getting into infinite loops. The Keykos domain facility is simpler and easier to work with, but less familiar to most.

It is easy to provide such protection without special hardware but I don’t know if it ultimately simpler. Java aspires to just such protection. Other more interpretive systems have as well.

A great weakness in speculation such as this is lack of a clear idea of a simplicity metric. Kolmogorov complexity is one place to look. But is a 10100 life board with a random initial configuration more complex that one PowerPC chip?