See shadow → jump → take off: the assembled brain escapes
For a century, neuroscientists could only watch a fly’s
brain. Now you can rebuild it — and make it act. A month ago our
simulated fly’s escape reflex was half-alive: the command neuron fired, the
jump never came. Today the full pattern works — jump and takeoff, at the
angle a living fly uses. This post is about the part nobody expects to be
interesting: the assembly manual.
Two halves, one brain
Every rule in our simulation is calibrated against a live-fly measurement,
one brain function at a time. The taste circuit wants synapse weights exactly
as the connectome counts them. The vision circuit wants them normalized.
Both settings are validated. They are also mutually exclusive — a global
switch kills one half every time. So we enumerated every sane way to
assign rules to brain regions: a lattice of ~10 profiles, all measured, none
discarded. Both trivial schemes fail. The working boundary exists — and it
is razor-thin.
Why the boundary sits where it sits
The failing variants share one circuit. A raw mass of taste-adjacent
neurons drives a raw relay, the relay floods the visual lobe, and the cells
that detect motion direction drown in symmetric noise. Break either leg of
that circuit — harmless. Both — blindness. We found this by full search
plus bisection, and every prediction was written down before the runs.
Several were refuted; each refutation narrowed the mechanism. That is how we
know the boundary is not luck.
The jump, the takeoff, the trigger
With the boundary fixed, the missing hands went back on. In a live fly, one
spike of the giant fiber (the command neuron) fires the jump muscle in under a
millisecond, electrically — but electrical synapses are invisible to
electron microscopy, so the connectome has none. We modeled them as a
parameter anchored on that live timing. Jump muscle: fires in 24/24 runs,
1 ms. One synapse further, the dataset lists the takeoff relay’s
neurotransmitter as “unknown” — which had silently deleted all its
outputs; the primary literature says cholinergic, we fixed it. Takeoff:
24/24 runs, 1 ms, zero missed spikes.
And the trigger: a live fly jumps while the shadow is still growing,
past ~40° of visual angle. Ours used to fire at the peak. A 90-point
parameter surface, calibrated to that anchor: now it fires in-growth at
36–45° across four shadow speeds.
The honest part
The taste response at the calibrated point is half of its old level (the
mechanism that fixed the sugar dose curve trades peak for monotonicity).
About 2,000 background spikes in silence resist every cure we tried without
breaking the trigger — measured, documented, staying. And our fly is
near-deterministic, while live ones gamble.
What it means
See shadow → jump → take off. The full escape pattern now exists in
a simulated brain assembled from two independently validated halves — with
every number traceable to an immutable run ID. Not a bigger computer. An
assembly manual, tested against the animal.
Assembly of the ALL profile from two calibrated leaves
(taste: gate 1, T-014; vision: line B16), lattice enumeration of assignment
schemes, the X→Y loop mechanism, and the escape-circuit repairs
(ADRs 014–018). All numbers below are from canonical seed grids on
desk-asag; every claim traces to a run ID in validation.md.
Assembly lattice
Rows of the weight matrix Win are assigned {raw, row_median_fanin}
per atomic set: A (taste cone, postsynapses of GRN + MN9), U (its presynapses),
D (third hop down), Vmin (graded visual front + escape detectors),
Rest. A=raw and Vmin=norm are fixed by measured ends (all-v1 /
all-v2); 8 informative combinations were all run (all-v1, v2, v3a–d, v4b).
Verdict: no interior point keeps both leaves; the working boundary
(all-v5a) is (A∪U) minus feeders of Vmin — 34,627 raw rows.
X→Y loop (T-057, T-063)
Raw X (33,171 rows) × raw Y (2,126 visual relay neurons, 2.06M raw
weight X→Y) recruits Mi1 (726→1,598 active bodies; recruited bodies
carry maximal Y input, p=7×10-18) into the minus-DSI class;
T5c/T5d selectivity survives (gate is blind) but low-speed direction
detection degrades (30°/s p=0.146; 60°/s p=1.9×10-2).
Either leg raw alone: harmless (v5a bitwise = base on gate carriers; y1, y3,
ytop, yrest all clean). Recruitment occurs only for the y1×y3
conjunction.
Escape repairs
GF→TTMn/PSI (ADR-014): electric arms absent from EM; modeled as
per-pair instantaneous copy, weight 11.0 = 1/α + noise margin (anchor:
one GF spike → TTM potential <1 ms). TTMn 0/24 → 24/24, arm
latency 1 ms at all rv. PSI→DLMn (ADR-016): predicted_nt(PSI)='unclear' → sign 0 →
outputs deleted; cholinergic per Chai 2025 (Dα7 genetic confirmation).
Layer 1 alone measured insufficient (87–413×); synapse efficiency
413.0 = (1/α)×1.1 / weakest pair 0.0266. DLMn 0/24 → 24/24,
PSI→DLMn 1 ms, zero misses (365 = 5 bodies × 73 PSI spikes). Reliability (ADR-017): GABA wave (IN00A029/036) deterministically
pushes 37/48 PSI membrane states below threshold; per-post arm weight 12.9 =
max over 48 states (11.85) + 1.0 margin. Onset DLMn−TTMn = 1 [1,1] ms
in 24/24.
Trigger calibration (ADR-015)
Surface {θd × γ}, 90 points × 3 speeds;
old point (0.2, 2.0) reproduced to 1 ms. Selected (0.15, 4.0): first GF spike
in-growth at 36.0°/44.7°/40.5°/41.3° (medians; range
34.4–45.6°), 24/24, TTMn arm intact. Known cost: post-threshold
bursting (38–60 spikes vs 2–5) — stateless nonlinearity cannot
express single-spike commitment; adaptation candidates named in ADR-015.
Stability & costs
Boundary stability (T-060): 7 neighbor variants, 2 pass, both degraded;
held-out test separates them (one bitwise = base, other shifts trigger by
10–26 ms) — the boundary is not an arbitrary point. Cone storm
(ADR-018): sugar-zone runaway ×3.1 suppressed by spiking-output
depression; dose curve ws=0.06 restored to monotonic 7/12/16 (was 4/4/4);
price: ws=0.05 level ×0.5. Θ-background ~2k spikes in silence
(T-067): all cures break the rv80 anchor (+52–92 ms) — structural
price, documented. Determinism: bitcheck pairs OK at every step.
Our simulated fly escapes a looming shadow at the right
moment. We replayed that run with a meter on every relevant neuron — and the
famous "shadow detector" cells turned out to be silent. Something else pulls
the trigger. And no, you can't fix it by turning up the input.
The whole point of a transparent brain
A simulated brain has a property no animal has: you can rewind any moment
and ask why — down to single cells. Post 1 showed the escape jump
firing at the right shadow angle. This post is us pointing that microscope
at ourselves: the behaviour looks right, but is it right for the right
reason?
What should happen
In a living fly, two groups of neurons — LC4 and LPLC2 — are the canonical
looming detectors. They watch the eye's output, and when a shadow grows fast
enough they fire the giant fiber (GF), the command neuron of the jump.
That is the textbook circuit. In our simulation the jump happens on time —
but do the detectors actually cause it?
What we did
We replayed the recorded escape runs — bit-for-bit identical to the
originals, verified — with instrumentation: for every LC4 and LPLC2 neuron,
every millisecond, we measured its charge (how close to its firing point),
every input current, and what all of their partner neurons were doing.
How close each neuron got to firing during the escape runs.
Left: the detectors (LC4, LPLC2) — bars show the middle 40% of the
population, the dot is the single best cell. Right: the neuron that actually
drives the jump command, saturated far above its threshold.
(runs r20260916T054147Z-9229f4, r20260916T054310Z-b04a33)
What we found
1. The signal gets diluted. The shadow enters the eye correctly
and the first layer fires. But each following layer splits the signal among
thousands of twin neurons, and unused charge leaks away in about 10 ms.
Each detector receives only drops, at different times — no single bucket
fills. The best detector reached 45% of the needed charge at medium shadow
speed, and 99% at the slowest — one cell crossed once, after the jump
had already been commanded.
2. A storm gets in the way. After the shadow's edge passes, the
network ignites into self-sustaining hyperactivity — 11.5 million spikes per
run, continuing even when the picture is static. Inside that storm the
detectors are actively pushed down: their average input is negative.
3. Someone else pulls the trigger. The jump is actually driven by
a different neuron — a wide collector (DNp70) that gathers input from
thousands of storm cells and sits saturated at roughly 19× its threshold.
Right behaviour, wrong mechanism.
Why not just turn up the input?
Because the tap feeds everyone. More input means a bigger storm and
stronger push-back on the detectors — they lose harder, not softer. And we
already know where that road ends: our very first weight attempt (gate 1,
profile v0) produced an "epileptic" brain that answered everything alike —
a failure we published. The honest fix is plumbing, not pressure: scale
connections by how many inputs a neuron actually has, calibrate the eye
against real measured firing rates, add gain control so storms die out.
That is our next milestone.
The honest part
This is a finding about our model — a reproducible observation in
one simplified simulation on real wiring. In living flies, LC4 and LPLC2
really do drive the jump; our model currently imitates the behaviour without
the mechanism, and the whole point of the rig is that this can be seen,
measured, and fixed rather than hidden. Real: the complete connectome,
every number above, public run IDs. Props: deliberately simple
neurons, synapse counts standing in for synaptic strengths, an eye bridge
whose gain is not yet calibrated. Full methods and data in the
"For scientists" layer.
Bit-exact instrumented replays of the T-017 looming runs
show why LC4/LPLC2 stay silent at profile v1: their driver layer (T2, T4/T5,
Tm5Y) never crosses threshold (dilution of the L2 transient across thousands
of columnar bodies; no direction-selective temporal structure in a uniform
1 ms-delay LIF), mean input to LC4 is net inhibitory (−1.9…−2.2 threshold
units), and GF is driven by DNp70 saturated at ~19× threshold inside a
self-sustaining storm (447k AVLP spikes during the 1 s stimulus hold with
zero sensory input).
1 · Method
Instrumented replay of recorded runs (same graph, profile v1, seed, scene):
per-step membrane v and synaptic input i_syn for all LC4 (126), LPLC2 (185),
DNp01/GF (2), DNp70 (2) bodies; spike counts for partner groups; fan-in
tables from the connectome. Replay equality with the stored runs verified
bit-for-bit (escape-chain spikes and whole-network per-step counts). Runs:
rv=40 r20260916T054147Z-9229f4, rv=10
r20260916T054310Z-b04a33 (seed 20260914; parents
r20260914T095747Z-13dfd3,
r20260914T094907Z-768395).
2 · Measured (rv=40 / rv=10)
group
bodies
spikes
peak charge p50 / p90 / max, ×threshold
i_syn mean
i_syn peak (mean over bodies)
LC4
126
0 / 5
0.11/0.18/0.45 · 0.09/0.31/0.99
−1.90 / −2.20
+2.3 / +3.3
LPLC2
185
0 / 0
0.10/0.12/0.29 · 0.09/0.12/0.27
−0.74 / −0.87
+1.3 / +1.7
DNp01 (GF)
2
900 / 876
saturated
+20.3 / +23.3
+26.5 / +35.9
DNp70
2
900 / 877
v ≈ 18–19.9 (sat.)
+66.0 / +76.0
+70.5 / +81.8
Driver spikes per run (rv=40 / rv=10): TmY3 6783/5824, Tm2 1286/1086,
Tm4 260/448, Tm3 260/270 — but T2 0/0, T4a-c 0/0, T5a-d 0/0, Tm5Y 2/1,
Tm20 0/0. L2 (the OFF cartridge input): 2226/2052, all during edge
passage; L1 fires only in the tail (shadow retreat). Across all 24 original
runs: LPLC2 fired in 0/24; LC4 in 6/6 slowest-locom runs (rv=10) — always
83–84 ms, i.e. 1 ms after GF (82–83 ms) — and 0/18 at rv ≥ 20.
3 · Mechanism
Dilution: available excitation onto LC4/LPLC2 is plentiful
(+12k / +16k threshold units), but their drivers are columnar and numerous
(T2: 1630 bodies; T5c: 1720); per-body weight from a single partner is a few
threshold units, arriving asynchronously, while τ=10 ms integration forgets.
The motion layer that would sum coincidences (T4/T5 with Mi1/Tm3 delay
structure in the real optic lobe) has no temporal differentiation in this
LIF (uniform 1 ms/synapse). Inhibition: LC4's mean i_syn is negative;
top available inhibitors Li28 (−370), MeLo8 (−311), LT35 (−224).
Winner: the divergent detector paths lose, the convergent diffuse
path (Dm→MeVP→AVLP→DNp70, 2 bodies) saturates. Divergence divides,
convergence sums.
4 · What we think would fix it (candidates, untested)
fan-in normalisation of weights (compensate columnar dilution);
calibration of the visual front-end against published lamina/medulla
firing rates (the bridge's gain 6·ΔL and lag 20 ms are unmeasured
assumptions);
gain control / feedback inhibition so post-stimulus storms decay.
Each of these changes the model and will go through versioned profiles
and an ADR — not silent tuning to a wanted answer.
Real: the entire connectome (no subsampling); measured per-step
membranes and inputs in runs reproducible from seeds; bit-exact replay
equality; fan-in weights straight from the dataset; spike counts across all
24 original runs. Props: LIF point neurons with uniform 1 ms delays;
synapse counts × one global scale as weights; predicted neurotransmitter
signs; the phasic L1/L2 bridge with uncalibrated gain. Claims are about
this model — in living flies LC4/LPLC2 drive GF (von Reyn 2017; Ache 2019).
A jump with the right latency through the wrong mechanism is a skeleton
behaving plausibly — useful precisely because we can see it cheating.
Post 2 · September 16, 2026 · first validation gate
Sugar or poison — the wiring decides
The first real milestone: a simulated fly brain that tells
sugar from poison — using nothing but the wiring and one rule per neuron.
A fly steps on a sugar drop
A fly tastes with its feet. Sugar touches the leg, and — if the brain says
yes — the proboscis extends to drink. We asked the simplest possible question
of our simulated brain: does this behaviour fall out of the wiring alone,
with no part of the answer hand-written?
What we did
We took the complete wiring diagram of a real fruit fly — 166,700 neurons,
25.6 million connections — gave every neuron a one-line spiking rule, and
touched the simulated leg: a steady current into the 46 sugar-sensing cells.
Then we watched the two motor neurons that command proboscis extension.
For comparison: the same current into 75 bitter-sensing cells, into 17
water-sensing cells, into nothing at all — and into 46 random neurons.
What happened
Sugar: the feeding motor neurons fired — more sugar, more spikes.
Bitter: zero spikes in all 108 bitter trials. Water: zero here (a known
limitation, see below). No input: total silence — the brain has no
make-believe background chatter. And the random control: zero. Touch any 46
neurons and nothing happens; touch the sugar set and the fly reaches for food.
Edible versus inedible fell out of the wiring.
The same network, 600 ms, the 96 most active of 166,700 neurons.
Every bright pixel is a real spike in the simulation.
(download mp4,
run r20260916T040527Z-2cf00c)
The honest part
Science already knew this and more: Lappalainen et al. and
Shiu et al. (Nature 2024) demonstrated sugar/bitter separation in similar
simulations — Shiu's team even predicted and confirmed shared sugar/water
circuitry in living flies. Our goal is not to discover this, but to build a
rig where every spike is accounted for and the whole run is reproducible
bit-for-bit from a seed. The video above is a re-run of one branch — its
spike count matched the original exactly.
Real: the connectome, the cell sets, every spike, every number —
public run IDs. Crutches: weights are synapse counts times one scale;
signs are predicted neurotransmitters; the neurons are deliberately simple
— a skeleton, honestly labelled, not physiology. Full methods in the
"For scientists" layer.
Stimulation of sugar-sensing leg neurons drives MN9
(proboscis-extension motor neurons) in a full-connectome LIF simulation;
bitter, water, empty and random controls do not. Gate passed on the v1-gate
profile across a weight_scale ±20% × noise grid; 432 trials total
(6 configs × 72 branches, 600 ms each).
1 · Setup
Full MaleCNS v1.0 graph (166,700 neurons, 25.58M edges), LIF, 1 ms tick,
one global weight scale. Stimulus: DC current into gustatory receptor neuron
(GRN) bodies, amplitudes 1.2/1.4/1.6 (just-suprathreshold GRN rates).
Cell sets from Tastekin et al. annotations: sweet = LB3b/LB3c/LB4a/LB4b
(46 bodies), bitter = LB1a–e + LB2a–d (75), water = LB3a (17), none = empty,
random = 46 random neurons (seeded, bodyIds in manifests). Readout: MN9
(2 bodies). Biological prototype and criterion (any non-zero MN9 firing =
extension): Shiu et al., Nature 634:210 (2024).
2 · Results (median MN9 spikes per 600 ms, [IQR] over 6 seed branches)
cell (ws, noise)
sweet @1.2
sweet @1.4
sweet @1.6
bitter
water
none
ws=0.05, σ=0
3 [3,3]
6 [6,6]
6 [6,6]
0
0
0
ws=0.05, σ=0.05
2 [1,4]
4 [2,6]
3 [2,4]
0
0
0
ws=0.06, σ=0.05
6 [4,8]
7 [6,10]
8 [6,10]
0–0
0
0
Sugar is dose-dependent; bitter is zero in all 108 bitter trials at the
working point (single spikes appear in one ws=0.06 corner); empty input is
brain-wide silence even with σ=0.05 noise — no spontaneous activity is an
assumption of the profile, not a virtue. Random control: MN9 = 0 in all 18
cells (network activity ~1.5–2.8k spikes, same order as water) — the response
is specific to the sugar set, not to "any 46 neurons". Separation AUC
(Mann–Whitney, sweet > bitter, over branches): 0.92–1.00 at
ws ∈ {0.05, 0.06} across amplitudes; at ws=0.04 both conditions sit below
threshold (AUC 0.5–0.83, honestly reads as no difference).
3 · Why it works: two-hop balance
With glutamate sign −1 (v1-gate, following Shiu et al.), the wiring itself
carries modality at the MN9 two-hop balance: sweet +708, bitter
−88 (excitatory path +434, inhibitory −522), water +563
synapse²·spike⁻¹. A first attempt with glutamate excitatory (v0) produced
epilepsy: any suprathreshold stimulus drove ~23k spikes/step and MN9 answered
all modalities alike — a published failure, see gate 1 in the project's
validation journal.
4 · Determinism
Follow-up runs with the same seeds reproduced the sweet-cell medians and
min–max exactly; bit-for-bit branch equality is the core contract (tested at
every commit). The video in the story layer is a re-render of one branch:
spike count identical.
5 · Known limitations (from the validation journal)
Water gives no PER here, although water on the labellum does elicit
extension in living flies: LB3a has only 17 bodies vs 46 sweet, so equal
per-neuron current means weaker total input — a stimulus-calibration issue,
not wiring (the water two-hop balance, +563, is positive).
DC current instead of Poisson spike trains; recurrent inhibition shuts
GRN tonic firing after a transient.
"Extension" = any MN9 spike (as in Shiu et al.); no motor bridge yet.
Glutamate sign −1 is an assumption following Shiu; uniform per-synapse
weight; `stim_spikes` in results.npz duplicates the network counter (known
script bug at run time).
Data
Gate runs (6 configs × 72 branches):
r20260913T180708Z-9019e1 … r20260913T200131Z-e3a894;
random control:
r20260913T202746Z-bc6265 … r20260913T215601Z-d95d5a;
working point (ws=0.05, σ=0.05):
r20260913T191451Z-33fbed;
video branch:
r20260916T040527Z-2cf00c.
Full journal with every failed attempt: the project's validation.md.
What is real here, and what is a prop
Real: the entire connectome (no subsampling), the GRN cell sets,
predicted neurotransmitter signs, threshold units, seed-determinism; stimulus
and readout on bodies reproducible from run IDs.
Props: DC stimulus standing in for spike trains; glutamate sign −1
is an assumption (it was +1 in the failed v0); uniform weights; extension =
any MN9 spike; no neuromodulation. This rig is not physiology — it is a
skeleton whose every bone is labelled.
Post 1 · September 16, 2026 · whole-brain simulation
The escape reflex fired exactly like in a living fly — through a path the textbook does not describe
We showed a growing shadow to a complete, simulated fruit-fly
brain — and it escaped exactly when a real fly would. Then we looked inside and
found the signal had taken a road nobody expected.
A shadow, and 87 milliseconds
To a fly, a dark disc growing in the sky means one thing: something is
diving to eat it. In our simulation, with the fastest shadow we tested, the
nerve cell that fires the jump muscle produced its first signal just
87 milliseconds after the shadow started growing — about a twentieth
of the time it takes you to blink. Nobody told the brain when to jump.
It decided on its own.
The brain in numbers
The brain we simulated is not invented. It is the actual wiring of a real
male fruit fly, mapped cell by cell with an electron microscope and published
openly by scientists: 166,700 neurons and about 25.6 million connections.
We gave every neuron the simplest possible rule for firing a spike, switched on
the shadow — and watched.
It behaved like a real fly
Real flies jump when a looming shadow covers about 40 degrees of their
visual field — not after a fixed time, but at a fixed size, whether the
shadow is fast or slow. Our simulated fly did the same: across 24 runs at four
different approach speeds, the jump always came when the shadow covered
32–46 degrees. The brain was also completely silent before anything moved —
a fly's world is made of changes, not pictures.
Then came the surprise
Here is why we sat up straighter. The textbooks say the escape signal
enters the "giant fibre" — the fly's famous escape nerve — from two families
of visual cells called LC4 and LPLC2. In our runs, those cells never fired
a single spike before the jump. The reflex happened anyway. When we traced
the actual cascade of spikes backwards, the signal had travelled a different
route entirely, ending in the strongest input to the giant fibre that almost
nobody talks about.
We are not claiming the textbook is wrong — our model is deliberately
simple, and we publish its every assumption. But this is the promise of a
simulated brain: you can rewind it, trace it to single cells, and catch it
disagreeing with what you thought you knew.
Rewind and run it again
Because it is a simulation, we can live the same moment many times. Replay
the same shadow with a different random seed, and the fly jumps the same way
at a slightly different instant — escape is not a switch, it is a
distribution. Every run is public: each number in this post traces to a
downloadable file with the full spike log.
What is real here, and what is simplified
Real: the wiring, the eye geometry, every spike time, every number —
reproducible from public run IDs.
Simplified: the neurons are one-line caricatures of real membranes;
chemical signs are predicted, not measured; electrical synapses are invisible
to this kind of microscope data and are absent; and the "unexpected route" is
an open question, not a discovery claim. The full list lives in the
"For scientists" layer above.
We ran a looming shadow through a simulation of the complete
fruit-fly connectome — 166,700 neurons, no hand-tuned delays anywhere. The jump
reflex fired when the shadow subtended 32–46°, which is what living flies do.
But in our runs the canonical input pathway to the giant fibre (LC4/LPLC2)
stayed silent: the signal reached it through a different route, carried by the
wiring itself. Every number traces to a reproducible run with a public ID.
1 · Eighty-seven milliseconds
A dark disc grows following the standard collision law. At
r/v = 10 ms, the jump motoneuron TTMn
fires its first spike 87 ms after growth onset,
when the disc subtends ~40°. Everything between
photons and muscle is wiring from MaleCNS v1.0 —
we designed none of it.
2 · The eye is not a camera
The stimulus is sampled only at real ommatidia positions taken from the
dataset (876/892 lamina cartridges per side; 5.4° spacing). Input is phasic:
ΔL over a 20 ms lag written into L1 (ON) / L2 (OFF) — the lamina carries
contrast, not absolute luminance. Static scenes produce zero input:
0 spikes brain-wide before stimulus onset in all 24 runs.
3 · The wiring
166,700 neurons, ~25.6M connections. The escape circuit as the field knows
it (synapse counts from the dataset):
Textbook: looming enters the GF from LC4 (angular speed) and LPLC2
(angular size), which are necessary for GF-mediated escape in vivo
(von Reyn et al., Current Biology 2019).
4 · Model
LIF, fixed tick 1 ms, τ = 10 ms, refractory 2 ms; weights =
weight_scale · synapse_count · nt_sign with one
global scale (0.05, calibrated once against a sugar→MN9 proboscis gate);
neurotransmitter signs from dataset predictions (histamine zero — R1–R6 do
not spike here); channel noise σ = 0.05. No delay was ever tuned:
every hop costs exactly 1 ms by definition.
5 · Results
TTMn first spike, ms from shadow start, versus approach speed.
Dotted: moment the shadow reaches 40° (behavioural threshold in living flies).
Source: 24 runs, e.g.
r20260914T094907Z-768395r20260914T094907Z-768395nbsp;(full spike log, .npz).Shadow angular size at the jump. Shaded: our measured range
32–46°. Dashed: ~40° in living flies (von Reyn et al. 2017).
Matches to the living animal without fitting: jump at a fixed angular size
rather than fixed time; TTMn follows GF by 4–5 ms;
dead silence until the stimulus moves.
6 · The unexpected part
In all 24 runs, LC4 and LPLC2 never spiked before the jump. Tracing
the spike cascade backwards from the GF:
DNp70 is the strongest single input to the GF in this dataset (799
synapses) — larger than the looming cells. We do not claim this route carries
the reflex in vivo; it is a property of this model on this wiring, and it is
a concrete, reproducible observation (open question B8), not a vibe.
7 · Rewind
Same moment, different seed: same reflex, slightly different times — a
distribution, not a switch. All 24 runs public, e.g.
r20260914T100249Z-f5e9car20260914T100249Z-f5e9canbsp;(full spike log, .npz)
(r/v = 80 ms: threshold at 695 ms, jump at
731 ms).
Methods, in full
Stimulus
Dark disc, θ(t) = 2·atan(r / (v·(t_col − t))),
growth 10°→63°, 1 s hold; r/v ∈ {10, 20, 40, 80} ms; centred on the retinal
median (az 154°, el 94°); protocol after McFarland et al. 2024.
Key numbers (24/24 runs)
quantity
value
living fly
θ at GF trigger
32–46°
~40° (von Reyn 2017)
GF → TTMn delay
4–5 ms
<1 ms (electrical; ours is chemical-only — EM cannot see gap junctions)
pre-stimulus activity
0 spikes
—
LC4/LPLC2 before jump
0 spikes
required for GF escape (von Reyn 2019) — open question B8
Data
Aggregate with per-run first spikes:
mirror_data.json
(artifact of r20260916T012234Z-29773c). Individual runs:
r20260914T094907Z-768395 … r20260914T100746Z-a0b003.
What is real here, and what is a prop
Real: the wiring (MaleCNS v1.0), the ommatidia geometry, every spike
time (reproducible by run ID and seed), the stimulus law, the synapse counts,
the latency and θ statistics.
Props / limitations: LIF is a caricature of membrane dynamics; no
neuromodulation; electrical synapses invisible to EM are absent (GF→TTMn is
electrical in reality and faster than our 4–5 ms); the "unexpected route" is
a property of this model on this wiring — an open question, not a discovery
claim; synapse-count→weight conversion is a proxy, with a single global
calibration against a different circuit. The full assumptions profile is
versioned with every run.