Confession time: I haven’t been entirely honest with you about applying a rule to a graph in Wolfram Physics.

I’ve explained precisely *how* to apply a rule, but I’ve been strangely silent when it comes to *where* to apply the rule.

I know, it’s unlike me to be silent, right?

Time to come clean.

It turns out that the question of *where* to apply Wolfram’s rules is not as easily answered as you might think.

This seemingly straightforward question will take us into the philosophy of time, causality, consciousness, contingency and determinism.

And it’ll lead us towards some of the most important concepts in Wolfram Physics: the multiway graph, branchial space and causal invariance.

Check your breathing apparatus: we’re going deep.

## The question

Take this rule:

It’s one I’ve used many times before.

To apply the rule, we find two edges from the same node: one edge from node 1 to node 2, and another edge from node 1 to node 3.

Then we delete one of the edges: the edge from node 1 to node 2.

Then we create three new edges from the three existing nodes to a new node: an edge from node 1 to node 4, an edge from node 2 to node 4, and an edge from node 3 to node 4.

Apply this rule over and over again, and the graph gets complex fast.

Let’s freeze the graph after we’ve applied the rule 20 times:

To apply the rule for the 21^{st} time, again, we have to find two edges from the same node.

That’s easy. Here’s a match:

Two edges from the same node. No problem!

Except that it’s not the *only* match. Here’s another:

Again, two edges from the same node. It’s just that this node and these two edges are in a different region of the universe.

And here’s yet *another* match:

Once again, two edges from the same node. Once again, in a different region of the universe.

And that’s not all. There are 43 more matches:

And that’s *still* not all. For each pair of edges coming from the same node, there are *two* ways we can apply the rule.

Take *this* pair of edges, for example:

There are two ways we could match these edges.

Here’s one:

I’ve labelled the matched nodes so that the upper edge is from node 1 to node 2, and the lower edge is from node 1 to node 3.

So when we apply the rule, it’s the *upper* edge that’s deleted, because that’s what this rule specifies, delete the edge from node 1 to node 2:

Once we’ve created the new edges, from each of the three nodes to a new node 4:

we end up with a universe that looks like this:

But here’s the *other* way we could have matched that pair of edges:

This time, I’ve labelled the matched nodes so that the *lower* edge is from node 1 to node 2, and the *upper* edge is from node 1 to node 3.

(Remember, the rule specifies that we match two edges from the same node, node 1, to two other nodes, node 2 and node 3, so node 1 is always the one the two edges are *from*.)

So this time when we apply the rule, it’s the *lower* edge that’s deleted, because, again, that’s what this rule specifies, delete the edge from node 1 to node 2:

This time, once we’ve created the new edges:

we end up with a universe that looks like *this*:

So we’ve matched the same pair of edges coming from the same node in two different ways, giving us two different universes:

Which means that the 46 pairs of edges we found represent a total of *92* possible matches.

In other words, at this point in the evolution of the universe, there are 92 different ways we can apply the rule.

And, remember, this is a tiny, tiny universe, with only a few dozen edges. How many different places could we apply a rule in a universe the size of our own, with maybe 10^{400} edges?

So, here’s the question: where in the world should we apply the rule?

## Roll the dice

One option is to roll the dice.

Of all the possible matches in all the universe, choose one, at random, somewhere, anywhere, and apply the rule *there*.

We could choose this one:

Or this one:

Or this one:

Each choice gives us a slightly different universe, which may eventually evolve into a *very* different universe.

We can roll the dice to decide which universe we’re going to get.

This is what I’ve been doing in all the simulations of Wolfram Physics I’ve shown you so far: choosing a match at random.

Randomness is an issue that has divided physicists for a century or more.

Einstein famously insisted that God does not play dice.

Stephen Wolfram, though he accepts that chance *might* play a role in physics, believes that randomness is not *needed* to explain the universe.

I think I disagree.

I *like* randomness.

Here’s how I think about it.

Let’s imagine, for a moment, that there were *no* randomness in physics. In other words, let’s imagine that the laws of physics are *deterministic*.

This would mean that the way the universe is right now is fully determined by the laws of physics. All *this* – right up to my writing this sentence and your reading it at this very moment – was *decided* at the dawn of time.

Now, I might not be the humblest of humans, but I’m not so arrogant as to imagine that my very existence is *necessary*.

I can believe that a long sequence of chance events culminated in my existence: this particular photon colliding with that particular electron, this particular hydrogen atom combining with that particular oxygen atom, this particular sperm fertilizing that particular egg. I can accept that I’m *contingent*, the result of randomness.

What I find it hard to believe is that the laws of physics *necessitate* my existence... every tiny detail of it, right down to the fact that I’m going to end this sentence with the word ‘aardvark’.

I just don’t think I’m that important.

Or, to be more precise, I don’t think I’m that *necessary*.

This shortfall of self-importance makes me suspicious of any theory of physics that *doesn’t* involve randomness.

Still, I do have *some* issues with choosing a match at random.

It suggests a God’s-eye perspective, as if some omniscient being were surveying every possible match in the universe at every possible moment and applying a rule at a whim.

I mean, that’s precisely what my laptop’s doing when it runs these simulations, but it takes an awfully large number of processor cycles to find every possible match as a prelude to choosing one at random, even in the tiny, tiny universes I’m simulating.

Just as I’m suspicious of determinism (or predestination, as John Calvin might have called it; sorry Calvin), so I’m suspicious of this God’s-eye perspective (sorry, again, Calvin).

## The most possible matches

Here’s another option.

Instead of finding every possible match in the universe and applying the rule to one of them chosen at random, we could find every possible match in the universe and apply the rule to *all* of them.

This would satisfy Calvin’s, Einstein’s and Wolfram’s thirst for determinism.

Here they are, all 92 possible matches in our nascent universe:

But there’s a problem with applying the rule to all 92 possible matches.

Take these two matches, for example:

There’s an edge that’s involved in *both* matches:

If we apply the rule to one of the two matches, deleting that edge, then we *can’t* apply the rule to the other of the two matches, because, well, one of the edges involved in that other match no longer exists.

These aren’t the only mutually exclusive matches. *All* of the 92 possible matches overlap with at least one other match.

We simply *can’t* apply the rule to every possible match in the universe.

I’ve heard Stephen Wolfram suggest, as a solution to this problem, applying the rule to as many of the possible matches as we can. But this expedient seems to raise more problems than it solves.

It takes some serious computation to determine the optimal subset of possible matches. Will we be able to apply the rule to 17 of the 92 possible matches? 18? 19?

It’s no trivial matter to run through all the possible combinations of all the possible matches to find out. There are about 5 thousand million million million million different subsets of those 92 possible matches. (4,951,760,157,141,521,099,596,496,895 to be precise.)

And again, we’re looking at a tiny universe with a few dozen edges. Scale this up to a universe with 10^{400} edges, and the words ‘combinatorial explosion’ don’t do justice to the task of finding the optimal subset of possible matches.

And what if there are many different subsets each with the same number of non-overlapping matches? If they’re equally optimal, how do we choose between them? Are we back to choosing at random?

It’s *possible* that we live in a universe where, if we were to simulate it, we would have to perform this *impossible* computation every time we apply a rule to the graph, and *still* need to resort to randomness to break any tie.

But seriously, this just doesn’t seem right to me.

## Every possible universe

So now I’ve talked about two options for choosing between the possible matches: one is to apply the rule to one match chosen at random; the other is to apply the rule to as many of the matches as possible.

Now I’m going to talk about a final option.

This approach is going to disappoint you. Then it’s going to confuse you. Then it’s going to blow your mind.

Here it is.

Instead of choosing between the possible matches, the approach is *not* to choose between the possible matches.

The idea is to consider all 92 possible matches, and apply the rule to each of them, giving us 92 possible states of the universe.

Then, for *each* of these 92 possible universes, consider all 100 or so possible *next* matches, and apply the rule to each of *them*, giving us 10,000 or so possible *next* states of the universe.

Then, for each of these 10,000 or so possible universes, consider all 100 or so possible *next* matches, and apply the rule to each of *them*, giving us 1,000,000 or so possible *next* states of the universe.

You can see that the number of possible universes is going to get extremely large extremely quickly.

Don’t worry.

The multiway graph is going to help us visualize all these possible universes in branchial space.

Causal invariance is going to rescue us from the immensity of branchial space, limiting the number of possible universes.

And the causal graph is going to take us deeper, towards a derivation of special relativity and an understanding of time, causality and consciousness.

The question of *where* to apply Wolfram’s rules is a first step towards seeing the universe as stranger and more beautiful than you might ever have imagined.