A Class of Models with the Potential to Represent Fundamental Physics
  1. Introduction
  2. Basic Form of Models
  3. Typical Behaviors
  4. Limiting Behavior and Emergent Geometry
  5. The Updating Process for String Substitution Systems
  6. The Updating Process in Our Models
  7. Equivalence and Computation in Our Models
  8. Potential Relation to Physics
  9. Additional Material
  10. References
  11. Index

6.2 Multiway Systems for Our Models

Just like for the string substitution systems of section 5, we can construct multiway systems [1:5.6] for our models, in which we include a separate path for every possible updating event that can occur:

ResourceFunction["MultiwaySystem"][ "WolframModel" -> {{{x, y}, {x, z}} -> {{x, y}, {x, w}, {y, w}, {z, w}}}, {{{0, 0}, {0, 0}}}, 2, "EvolutionEventsGraph", VertexSize -> {0.9972222222222222`, 0.29916666666666664`}] // LayeredGraphPlot

For string systems, it is straightforward to determine when states in the system should be merged: one just has see whether the strings corresponding to them are identical. For our systems, it is more complicated: we have to determine whether the hypergraphs associated with states are isomorphic [85], in the sense that they are structurally the same, independent of how their nodes might be labeled.

Continuing one more step with our rule, we see some cases of merging:

CloudGet["https://wolfr.am/LmHho8Tr"]; g = Graph[ ResourceFunction["MultiwaySystem"][ "WolframModel" -> {{{x, y}, {x, z}} -> {{x, y}, {x, w}, {y, w}, {z, w}}}, {{{0, 0}, {0, 0}}}, 3, "StatesGraph", VertexSize -> 1.8, PerformanceGoal -> "Quality"], AspectRatio -> 1/2]; newgraph[g, {1, .7}]

Here is an alternative rendering, now also showing the particular path obtained by following our “standard updating order”:

g = ResourceFunction["MultiwaySystem"][ "WolframModel" -> {{{x, y}, {x, z}} -> {{x, y}, {x, w}, {y, w}, {z, w}}}, {{{0, 0}, {0, 0}}}, 3, "StatesGraph", VertexSize -> 2, GraphLayout -> "SpringElectricalEmbedding"]; HighlightGraph[g, Style[Subgraph[ g, {{{1, 1}, {1, 1}}, {{1, 1}, {1, 2}, {1, 2}, {1, 2}}, {{1, 1}, {1, 2}, {1, 2}, {1, 3}, {1, 3}, {2, 3}}, {{1, 1}, {1, 2}, {1, 2}, {1, 3}, {3, 2}, {1, 4}, {3, 4}, {3, 4}}}], Red, Thick]]

In general, each path in the multiway system corresponds to a possible sequence of updating eventshere shown along with the causal relationships that exist between them:

Graph[ResourceFunction["MultiwaySystem"][ "WolframModel" -> { {{x, y}, {x, z}} -> {{x, y}, {x, w}, {y, w}, {z, w}}}, {{{0, 0}, {0, 0}}}, 3, "EvolutionCausalGraph"], VertexSize -> 2.5, PerformanceGoal -> "Quality", GraphLayout -> "LayeredDigraphEmbedding", AspectRatio -> .8]