{"version":6,"data":{"kind":"measured","wiringSha256":"4f5cadaa7ebd42d62ba7e7b60e012809f23664177dc5b4120db227dbba2cbbfb","cells":2675,"connections":14066,"synapses":26881,"source":"Verasztó et al., Whole-body connectome of a segmented annelid larva, eLife 2025. https://github.com/JekelyLab/Platynereis_3D_connectome_2024 (CC BY 4.0)","rebuild":"python3 scripts/build-data/build_wiring.py <lab repo> data/wiring.json reproduces the file byte-for-byte","transmitters":{"kind":"measured","sha256":"ec601da7351db6bededb5a6835f8c2591268cbef92a3b963094a81fd31729aa1","known":79,"source":"the lab's cell-type table, column \"transmitter phenotype\"","rebuild":"python3 scripts/build-data/build_transmitters.py <lab repo> data/wiring.json data/transmitters.json"}},"model":{"kind":"chosen","id":"model-v2","registered":"/data/registrations/model-v2.json (with a Bitcoin timestamp)","stepsPerSecond":30,"strength":0.03226,"tau":3,"tauA":40,"adapt":1.5,"theta":0.05,"rules":[{"strength":"A connection's strength is its synapse count times one number, c, the same for every synapse. Nothing is divided by the receiving cell's total input."},{"no-amplification":"c = 1 / (the largest eigenvalue magnitude of the synapse-count matrix) = 1 / 30.998 = 0.03226. It is computed from the wiring, not chosen."},{"cilia":"A ciliated cell stops beating in proportion to the activity of its cholinergic inputs, and serotonergic input keeps it beating: arrest = A × (1 − S), where A and S are the synapse-weighted mean activities of the cell's cholinergic and serotonergic inputs (0 if it has none). A side of the body beats at 1 − the mean arrest of that side's ciliated cells. Any other input no longer stops the cilia."},{"serotonin-inhibits":"Synapses from serotonergic cells onto the cholinergic cells that synapse on ciliated cells are inhibitory (negative strength). Every other synapse stays excitatory."},{"rhythm":"Stop-and-go: the MC cell gets a drive of 1.0 for 60 steps (2 s) every 2,130 steps (71 s), from step 2,130 on."},{"unchanged":"Unchanged from model v1: tanh firing-rate cells with threshold 0.05, rate time constant 3 steps, fatigue (time constant 40 steps, strength 1.5), 30 steps per second, the eye mapping, pokes, the lamp, and the body's physics apart from the cilia rule."}],"notDone":[{"what":"spiking neurons","why":"With the fly model's published spiking parameters, a cell needs about two dozen input synapses firing at typical rates to reach threshold; 92% of this worm's cells have fewer, so borrowing them would silence it, and there are no worm-specific parameters to use instead."},{"what":"inhibition elsewhere","why":"The transmitter is known for 79 of 2,675 cells; guessing the rest would be inventing."},{"what":"faster beating from serotonin","why":"The lab reports that serotonin increases beat frequency but not by how much."}],"references":["Verasztó C, et al. Ciliomotor circuitry underlying whole-body coordination of ciliary activity in the Platynereis larva. eLife 6:e26000 (2017)","Jékely G, et al. Mechanism of phototaxis in marine zooplankton. Nature 456:395-399 (2008)","Bezares-Calderón LA, et al. Neural circuitry of a polycystin-mediated hydrodynamic startle response for predator avoidance. eLife 7:e36262 (2018)","Shiu PK, et al. A Drosophila computational brain model reveals sensorimotor processing. Nature (2024)"],"inhibitorySynapses":["Ser-h1_l → MC (36 synapses)","Ser-tr1_r → Loop_r (3 synapses)","Ser-tr1_r → MN2_l (1 synapses)","Ser-tr1_r → MN2_r (1 synapses)","Ser-tr1_r → Loop_l (6 synapses)","Ser-h1_r → MC (6 synapses)","Ser-tr1_l → Loop_r (7 synapses)","Ser-tr1_l → MN1_l (1 synapses)","Ser-tr1_l → Loop_l (4 synapses)"],"tanh":"shared/detmath.js, plain arithmetic so every engine agrees"},"eyes":{"kind":"chosen","view":60,"speed":1,"eyeGain":1.6,"flood":0.45,"floodGain":2,"mapping":"13 left photoreceptors sample strips of the left half of the view, 13 right ones the right half"},"poke":{"kind":"chosen","maxCells":6,"steps":5,"drive":1.2},"spawn":{"kind":"chosen","poke":"a buy of a coin on SPAWN, the BRAINWORM launchpad, pokes three touch cells picked from the SHA-256 of the coin's address: the same spot for every buy of that coin, logged with its transaction","rewards":"every SPAWN coin is a pump.fun coin that names SPAWN's rewards wallet as its creator; of the creator rewards SPAWN collects, 64% buy $WORM and all of that $WORM is burned","coinWorm":{"version":1,"what":"every coin on SPAWN also has its own worm: a fresh copy of this larva, nothing added","birth":"its first sight is \"$TICKER\", shown to its eyes as a message","trades":"a buy touches three head-end touch cells, a sell three tail-end ones, picked from the trade's signature, then 60 steps; between trades its time stands still","check":"/spawn/worm/<mint>.json lists its ticker, every trade in order and its state hash; shared/coinworm.js rebuild() recomputes it"}},"tug":{"kind":"chosen","order":[1,1,-1,-1,1],"scored":[0,1,1,1,1],"gapSteps":90,"score":"how fast the body turned toward word A (rad/s), from its cilia and muscles as it steers, averaged over the scored passes; a tie below 0.0001"},"body":{"kind":"chosen","speed":4.5,"spin":2.4,"bias":0.9,"ciliaTurn":2.2,"muscleTurn":16,"sink":0.7,"startleDrag":5,"tank":22,"wall":6,"glance":0.8,"umPerUnit":107.995,"physics":"low Reynolds number: velocity proportional to force, no inertia; the body feeds back into the brain only through the lamp","cilia":"model v2: cholinergic input stops a ciliated cell, serotonergic input keeps it beating (shared/cilia.js)","muscles":"left-minus-right body-wall activity steers","startle":"startle muscles brake"},"lamp":{"kind":"chosen","steps":900,"distance":10,"falloff":10,"eye":[0.8,0.5,0.33],"inside":0.85,"eyes":"each side's eyes look along (±0.8, 0.5, 0.33) in the body frame; a pigment cup passes light from its own side as the cosine of the angle off that axis","brightness":"1 / (1 + (d / falloff)^2)","drive":"each side's 13 photoreceptors get min(1, 1.6 × light), like a message's lit strip; the non-directional light sensors do not respond","placement":"lit `distance` units from the worm in a random direction, kept inside the tank","test":"/lab.json follow-the-light, registered before any lamp was lit"},"code":{"worm.js":"bf73376cfbd3f7ce961795e391451c36bfa47ac526bd9aba54ce9028946f1185","sim.js":"496b30c490121abdaf79de8c02b53103b13a28666d293a9c06e572a110c97d8a","model.js":"ff04413337b85b390850fc723aa24599796bd474194bac610413de95625f23e6","cilia.js":"381c07f070285daa9bc5fa569a06d9dadcfb988f8d584969f803e7c92e051223","body.js":"72eeb209cb8960bc64fde0e555e284f853ce07f81d1b006111cb091869ad292a","lamp.js":"655f804f5982882038741a726c0e4da5379a890c537b1e2f23957d4042569d03","text.js":"db4d6f0ec612b216c8241f425921ded109df3cfdd32ac3a01f2886f7e43a71b3","roles.js":"efa2d6047c0a74a6b14c095cde215e24e44747af9ab25c12236c645a8400b881","state.js":"b4cc52248fc24e13a2720f3ea0d2f04f7ab39bb78512a9d0510b6a59b816f1bf","replay.js":"3944773dc1a8289b99cecc4e6079c9e679f32a0235fbfaa712b528889d29efce","detmath.js":"8f13a3eca194a5196210f7362e0ff0d1b923cf70682c537673e73a84f25fc037","glyphs.js":"265e7c68dab99145ab670bcf21e49bf8b68c5e09a282e6606089558806501c11","data.js":"4725d83fd18eedb40abe4bdaf54bd173b65191d643915760c97106525a02b7ae"}}