Self-Expanding Validation Demo

A prime-factor associative-graph translator, lifted into the SMN operator framework — computed live in your browser
Read the claims literally. Everything below runs in your browser on a fixed 72-pair training set. “Scale-free” is claimed only in the weak, true sense — the graph self-expands one node per novel key, with no fixed capacity. The strong network-science sense (a power-law degree distribution) is measured, not asserted: the heavy tail you’ll see is ordinary Zipf’s-law character frequency, not a designed “criticality.” The original code’s random-injection recovery mechanism does not converge (measured: 8/72); the working recovery is an exact associative store. Site-wide self-critique →
The lift — same operators, new substrate
The supplied code is already SMN-shaped. Each prime-factored character mapping is a quantum; the layers and loop are the operator algebra:
In the codeSMN operatorRole
whole-word source→target store▷ routeexact dispatch / memorize
char-position + fallback prime-factor graph⊕ mixtureposition-blended generalization to unseen input
global graph = Σ per-pair usage⊗ mergetask-arithmetic merge of per-pair graphs
forward ∘ inverse round-trip∘ sequentialreversible validation
the expansion loopplannerobserve recovery gap → self-expand → repeat
a source mapped to two targetsresidualirreducible: no deterministic decoder recovers both

Live validation

▷ word-store recovered (memorize)
⊕ char-graph exact (generalize)
irreducible collisions
graph nodes (self-expanded)

Self-expansion — nodes grow with data (weak scale-free)

Node count after each training pair is absorbed. No fixed capacity: the graph expands to fit whatever arrives. Add a pair below and watch it step up.

Is it scale-free? — measured, not asserted

Log–log rank vs. frequency of target characters, with a least-squares fit. A straight line ⇒ power law.

Interactive · forward-translate (generalization layer)

The ⊕ char-graph translates any input, including unseen words, by nearest prime-factor match — lossy by design. Try a training word (e.g. Hello, Cat) or a novel one.

Interactive · self-expand the graph

Add a new (source, target) pair. The graph absorbs it live — nodes grow, metrics and both charts update. Add a second target for a source already present (e.g. source Cat, target Chat) to manufacture an irreducible collision and watch the residual tick up.
graph ready.
Irreducible residual (live). These sources map to more than one target, so no deterministic argmax decoder can recover them all — at best one target per source. This is a real information-theoretic limit, counted exactly, not a decorated one:
Honest footnotes
Adversarial mode measured. The original random-N-power-free-composite injection recovers only ~8/72 pairs and bloats the graph ~10× — it does not converge, so this demo uses an exact store for recovery and keeps the prime-factor graph purely for generalization. Weak vs strong scale-free. Weak (no fixed capacity) is literally true and shown by the growth curve. Strong (power-law degrees) is whatever the Zipf fit above says — reported live, claimed only if the fit supports it.

⬇ Download (incl. self_expanding_validation.py) The LoRA planner Planner on the site Home

Lifted from a supplied hybrid-adversarial-graph translator into the SMN framework · Nexus graph 1c0cc1b9-… · computed entirely client-side.