A multiway system is a kind of substitution system in which multiple states are permitted at any stage. This accommodates rule systems in which there is more than one possible way to perform an update.
A simple example is a string substitution system. For instance, take the rules and the initial
condition
.
There are two choices for how to proceed. Applying the first rule yields the evolution
, while applying the second
rule yields the evolution
. So at the first step, there is a single state (
), at the second step there are two states
, and at the third step there is
a single state
. At step
, the states have been reached by exactly
substitutions from the initial state.
The state
has no applicable rule, so that evolution terminates rather
than contributing a state to the next step.
A path through a multiway system arising from a choice of which substitutions to make is called an evolution. Typically, a multiway system
will have a large number of possible evolutions. For example, consider strings
of s
and
s
with the rule
.
Then most strings will have more than one occurrence of
the substring
, and each occurrence leads down another path
in the multiway system.