QR1.5.2 Reverse Engineering The Physical World

The way of science, in a nutshell, is to assume a theory is true then see if it predicts what happens. This is how quantum theory arose. If it does, we accept it, if it doesn’t, we reject it. In contrast, the way of faith is to believe something, then find facts that support it, while ignoring those that don’t.

In computing, the way of science involves designing a logical model, implementing it, then testing it against expectations. Design science follows this method, as information systems are designed in theory, then built, then tested against requirements, in an iterative procedure (Hevner et al., 2004).

Reverse engineering is a subset of design science that discovers the processes behind an application. The method is to first specify the outputs, then best-guess the processes involved, then check the predicted outputs against those observed, and repeat until consistently correct. Quantum simulations use this method to predict atomic events. Note that what is proposed is always falsifiable.

Reverse engineering the physical world then involves the following steps:

1. Specify: Specify the outputs of the physical world (using physics).

2. Design: Design the processes necessary to produce those outputs (using computer science).

3. Validate: Compare the expected output with the actual output (using experiments).

4. Repeat: Repeat steps 1-3 to achieve design consistency.

The consistency constraint is critical as while one can easily satisfy one requirement, satisfying many is much harder. In addition, the design should:

1. Follow best practices. Use established computer science principles.

2. Satisfy Occam’s razor. Given a design choice, take the simpler option.

The aim is to derive the laws of physics from processing first principles, step by step. Note that a scientific theory can’t choose what it explains, so this method must explain all current physics, including space, time, energy, matter, gravity, magnetism, spin and charge. Cherry-picking cases to find selected programs that mimic some world properties isn’t a new kind of science but an old kind of bias (Wolfram, 2002). Reverse engineering the physical world could reveal this approach to be:

1. Spurious. A spurious model adds no value because it needs new assumptions, or parameters, to explain every new fact. Spurious models always have to invent new causes.

2. Coincidental. Coincidental models work for a while by luck but fail over time, so they must cherry-pick cases to support the model, and ignore those that contradict it.

3 Useful. A useful model isn’t necessarily true but opens up productive new research that increases knowledge. It is a useful stepping-stone to new knowledge.

4. Valid. A valid model not only matches observed reality in many ways, based on few assumptions, it also predicts something new that contradicts established models, but is later found to be true.

If physics describes physical events and computer science describes processing events, whether the physical world is a virtual reality is a question that design science can evaluate.