growing graphs by local rules · growth · sandpile · interaction nets · chemistry
pick a mode, hit play, drag a node to perturb
The growth mode rewrites the graph with a rule you can write yourself. (The sandpile, interaction and chem modes carry their own fixed rule-sets — pick a preset in the play tab; the docs tab explains them.)
A growth rule says: wherever this little pattern of links appears, delete it and put this other pattern there instead — minting fresh nodes for any variable on the right that wasn't on the left. Fire it again and again and the graph builds itself.
A link is a tuple of nodes in braces; a pattern is a set of links; lowercase letters are variables. The left of → is what to match, the right is what to leave behind.
{{x,y}} → {{x,z},{z,y}} reads: find any link x–y; replace it with two links through a brand-new node z. Variables only on the right (z, w) are fresh nodes — this is how the graph grows. Variables on both sides are re-used, stitching new onto old. A self-link {x,x} is allowed (renders as a loop) and makes a handy seed.
Type a rule below and load it into the playground (switches to growth mode). Binary links only; lowercase variables.
Tips: keep the right-hand side small (1–4 links) or the graph explodes; include at least one re-used variable so new structure connects to old.
You described a force-directed graph that periodically sprouts a new node, which then “interacts down the chain” Game-of-Life-style, sometimes spawning more nodes and links. That’s a real and well-studied idea — but it travels under several names, and the word propagator points at a slightly different one. The four play-tab modes are points on that map.
The “growing graph” videos are almost always hypergraph rewriting, popularised by the Wolfram Physics Project (2020): a fixed local rewrite rule says “wherever this small sub-pattern occurs, replace it with that one,” and applying it over and over makes the graph grow and fold. It’s Conway’s Life with a substrate that itself changes shape. But — as you noticed — a pure growth rule is inert: new nodes don’t feed back, they just take up space. The next two modes fix exactly that.
The canonical “one addition triggers an avalanche” math is the abelian sandpile (Bak–Tang–Wiesenfeld 1987; Dhar). Each node holds grains; when a node’s pile reaches its degree it topples, shedding one grain to each neighbour — which can push them over, and so on. Drop a single grain and you might trigger an avalanche of any size. Grey hollow nodes are sinks (the open boundary) where grains fall off, so the system always settles. This is the textbook example of self-organised criticality: avalanche sizes follow a power law, with no tuning. Here the topology is fixed and only state cascades.
The richest case — a cascade that also reshapes the graph — is interaction nets (Lafont 1990; interaction combinators 1997). Agents carry a symbol and meet at their principal port; a connected pair is a redex that fires:
Because firing rewires the graph, each reduction can create new redexes — so one collision sets off a chain that grows, prunes, and reshapes the whole net. And it’s confluent: the final normal form doesn’t depend on the order you fire. This is almost exactly “a new node’s presence makes a change that propagates and rewires.” (Symbols here: C = constructor γ, D = duplicator δ, E = eraser ε.)
The fourth angle is algorithmic chemistry (Fontana & Buss’s λ-AlChemy; Banzhaf’s number/string chemistries). A fixed population of “molecules” floats in a well-stirred reactor; pick two, and a reaction b := f(a,b) rewrites one into the product — so the population total never changes, but its composition does. Run it and the species distribution drifts away from the random start and collapses onto a closed, self-maintaining set — a subgroup, a linear subspace, a single dominant replicator. That self-sustaining set is what Fontana calls an organisation, and it’s a leading toy model for autocatalytic sets and the origin of metabolism: order with no genome, just closure under reaction. (The version here is a number-chemistry instance — pick multiply, fold, add, or replicate; the readout histogram is the organisation forming in real time. Like-coloured molecules cluster spatially too.)
| field | what fires | cascade? |
|---|---|---|
| hypergraph rewriting | local sub-pattern → replacement; graph grows | structure grows, no feedback |
| sandpile / chip-firing | over-full node topples to neighbours | state avalanches (fixed graph) |
| interaction nets | principal-port pair reduces & rewires | structure cascades — confluent |
| bootstrap percolation / CA | node activates from active neighbours | state avalanches |
| algorithmic chemistry | objects collide, react, produce new objects | open-ended self-construction |
| propagator networks | cells gain info → propagators recompute | information flow (Sussman & Radul) |
The literal term propagator networks is Sussman & Radul’s “The Art of the Propagator” — a computation model where information (not structure) flows across a fixed network of cells. A cousin to all of the above, which is why the same video gets called by either name.
Once a graph is alive under local rules, it stops being a picture and becomes one of three useful things. The single idea underneath all four modes is the same bet: a global behaviour you wanted, expressed only as local rules — no central plan, no global clock, every site acting on what it can see. That’s how morphogenesis, metabolism, markets, brains, and (on Wolfram’s telling) spacetime itself compute without anyone in charge. You can put a living structure to work three ways:
That’s why each mode now ships with a readout below the canvas — a species histogram, an avalanche power-law, a degree distribution. A living structure only becomes useful the moment you attach a measurement to it; the spectacle is the bait, the observable is the point.
The conduct tab pushes this one step further: a human in the loop. A musical clock drives whichever engine is running and sonifies its event stream in a chosen key — births become melody, sandpile avalanches become flourishes (and a critical pile’s 1/f event-timing is, per Voss & Clarke 1975, exactly the spectral signature of natural rhythm), interaction-net reductions become harmony that resolves at normal form. You steer with tempo, key, density and on-the-beat accents; the piano-roll + chroma strip are the live musical analysis. It’s the propagator idea closing the loop — the human writes intent into the system, the system propagates it into sound.
sequential vs generations (one random match vs a maximal non-overlapping set); same rule, different geometry.turn sound on — a musical clock drives whichever engine is selected on the play tab, sonified in key. tap the pads to inject on the beat.