Three meanings of “learning”
Transient state changes as a model processes inputs or performs cellular updates. Resetting that state removes the current trajectory. Fast adaptive memory stores an observed association through a specified local update. Durable shared parameters change during an outer training process and can be saved as a trained checkpoint.
In the memory demo, private matrices change and shared parameters do not. In the language demo, causal state caches change and shared parameters do not. Neither browser experiment performs an optimiser step on the language prompt.
Control the information path
A memory answer should be recoverable from the stored matrices, not from a hidden list of labels. A query therefore receives a key and origin, not the value being tested. Erasure and communication interventions test whether the intended mechanism carries the information.
A causal language model must not receive future bytes through a circular grid or a non-causal neighbour operation. Its left-only perception and per-stage streaming cache follow a different topology from the memory ring.
Preserve checkpoint provenance
The browser weights are exported to plain JSON from the supplied seed-0 memory checkpoint and the longer language checkpoint. Their SHA-256 hashes match the research repository’s import record. The build bundles ZIPP’s Python-enabled v0.0.18 runtime and records the source revision.
The lab verifies its model, Python source and WASM bytes against its same-origin build manifest before running. This catches incomplete or mixed uploads; it is not a signature system or a defence against an attacker who controls the entire host.
Check implementation parity
The included tests compare browser-port memory matrices and decoded logits with native PyTorch reference fixtures. The language checks compare next-byte logits and argmax choices along a fixed prefix. Floating-point operation order can cause small numerical differences, especially between graphics drivers.
Shader execution on a software WebGL renderer is useful functional evidence, but it is not hardware GPU acceptance or a throughput benchmark. The delivery validation report identifies the actual environments tested.
Keep browser work bounded
The hosted lab accepts fixed experiment commands, not uploaded Python programs. ZIPP runs inside a dedicated worker, with an instruction budget, a bounded graph protocol, finite sequence lengths and request deadlines. Stopping the engine terminates the worker and discards its state.
A worker improves responsiveness; it is not a universal security boundary. The site still depends on the correctness of the browser, WASM runtime and bundled graph backend. No backend credentials or server-side model service are needed for these browser examples.
Publish limitations next to the result
Results are tied to their dataset, topology, training budget, seed count and metric. Controls are explained rather than silently removed. Future work should add stronger baselines and broader evaluation before enlarging the claims.