Seal Phase 4AG author-APL audit and fixed CAL failure

This commit is contained in:
Digital Drosophila Archive
2026-09-30 09:26:21 +08:00
parent 7dfe5d2d87
commit ff91a74193
593 changed files with 67671 additions and 17 deletions
@@ -0,0 +1,76 @@
# Phase4AG: author LIF + frozen legacy graded APL
Authorized independent hypothesis branch. All old source, raw connectome, signs,
W_syn, APL calibration, eligibility-v2 and 14,232-edge mask remain read-only.
No learning, gain/threshold changes, new edges, top-K, heldout activity, game or RL.
Author code provenance is the already archived MIT-licensed
https://github.com/philshiu/Drosophila_brain_model at
91bdd1e7dcf193f3e7ca5a8933497fcef63b7960; original model.py SHA-256
fc45837d7122c6ce2a7f3f2f23c515992e4b232aadb919efabb72337fac88e4e.
Associated paper: https://www.nature.com/articles/s41586-024-07763-9.
This new MaleCNS/APL combination is not a strict reproduction of that model.
The declared combination is author float64 LIF plus the exact old float32 graded
APL operator after synapses/resets at end. All 5,845 original APL fast out-edges
are zeroed only in the effective in-memory model, as in the legacy overlay.
Only KC receives graded replacement; known 1,212 non-KC edges remain unreplaced.
This existing scope limitation is not silently repaired in a compatibility test.
Use the original full normalized I[2,166700]/O[2,4064] float32 bytes and original
normalizers, even for induced real subgraphs. APL reads actual binary spikes,
never requests, and keeps independent float32 state. Preserve unfused operations:
state.mul_(float(f32(exp(-.1/20)))).add_(torch.mv(I, spikes_f32));
h32=torch.matmul(state,O)*f32(.01). Promote h32 to float64, multiply by float64
.001, then separately subtract from SI g. Do not alter TF32/default CuBLAS flags;
record them. No added APL delay, drive dt/tau scaling, truncation or clipping.
APL writes KC g unconditionally after author reset, including refractory KC.
Author g integration is frozen during refractory; therefore negative overlay g
may accumulate and differs from old dynamics. This is an explicit hypothesis,
not an assertion of original author or measured physiology. Guarded writes or
reset-before/after changes would be different hypotheses, not fixes to this one.
Eight fixed metadata/connectivity-selected fixtures cover zero/reset, real PN/KC
drive, current actual event feedback, duplicate natural/request event, 18-step
arrival vs22-step refractory boundary, full fast APL mask, non-KC scope and mixed
precision/high fan-in. No choice is made from runtime responses. Each GPU case
has3 independent fresh runs. A Brian2 author oracle starts from its own state,
computes its own actual spikes, and uses an isolated standard-I/O legacy-APL
worker with independent state. No candidate inhibition trace is fed into Brian.
All tick states, events, requests, queue order/guard, APL drive/state/h must agree
exactly. The APL component is shared, so this is NOT a fully independent CPU
oracle. Independently reconstruct old matrices using frozen initializer AST,
replay actual events through original update AST, require exact component bytes;
also quantify an independent float64 positive-sum arithmetic error bound. It is
not a replacement for exact legacy equivalence. No arithmetic bound is adjusted.
Only after all fixture gates pass, run two predeclared full-graph probes: first
old calibration odor, first original seed, both encoder modes. Compare each with
the independently running Brian + isolated APL worker. Save state hashes and sparse
events, not a time-by-all-neurons dense spike matrix. If a numerical gate fails,
stop CAL; keep diagnostic evidence and do not widen tolerance.
Then run the complete original6 CAL odors ×5 original seeds ×2 original modes,
100ms per run. Retain the ORIGINAL12-odor median for matched-energy encoding,
original pn_drive target/RNG column order, original evaluation seeds51101..51105.
Save Poisson requests before any trajectory. Only calibration dynamic cases are
used; formal A/B and heldout remain unrun. Repeat first seed for every odor/mode.
No per-odor pulse, amplitude, timing or threshold search. No learning.
Recompute the full original4L representation criteria on CAL only: mean KC active
fraction .03..09, min>0, max<.5, same-odor Jaccard>different, between Euclidean>
within, >=3 pairs whose mean between exceeds THAT PAIR's pooled within distances,
both modes. Add finiteness and exact repeat requirements. CAL PASS does not imply
heldout generalization, timing/credit specificity, memory or learning usability.
If CAL fails stop promotion and report it, not a least-bad candidate.
Before/after verify SHA-256 of all original230239 files and AA--AF seals; rerun original five
deterministic reference trials to new output. Archive code/env/source SHA,
matrices/norms/masks/identities, requests and all outputs. No published candidate.
Technical references (queried2026-09-30): Brian2 2.5.1 refractory documentation
https://brian2.readthedocs.io/en/2.5.1/user/refractoriness.html (actual generated code
remains authoritative); PyTorch numerical accuracy notes
https://docs.pytorch.org/docs/2.14/notes/numerical_accuracy.html (cross-backend
floating operations are not assumed bitwise equivalent).