Files
2026-09-30 07:50:57 +08:00

4.1 KiB
Raw Permalink Blame History

Phase 4AE — GPU author-semantics numerical gate

User authorized an independent model branch. This is not conditioning and does not replace any Phase 1–4AD candidate/artifact. Learning remains unachieved. The fixed author equations and all physical parameters come from the validated 4AD oracle, with dt=.1ms, delay=18 steps, refractory=22 steps and W=.275mV. Canonical CSR, raw contact counts and frozen transmitter signs are read-only.

Predeclared tests

Five synthetic numerical fixtures: ordered cancellation (including deliberately nonphysiological large signed integers), 256-source fan-in bursts, refractory release/self-loop collisions, representable threshold neighbours, and a fixed seed signed random graph. Synthetic negative node labels are NOT MaleCNS IDs; duplicate/zero edges occur only in labelled numerical fixtures.

Two 128-neuron real induced graphs are selected before simulation: the highest in-degree target and its 127 largest-contact presynaptic partners; separately the highest-in-degree target with >=64 positive and >=63 negative presynaptic inputs, 64 positive and 63 negative largest-contact partners. Ties break by canonical neuron_idx. Include every existing edge within the selected node set, without changing raw counts/signs or adding edges. This is numerical stress, not an input interface or a physiological validation. Preserve identities and selection audit.

Also run the same five 4AD motifs for 100ms with one common seed request (or no request for no_input). Report every outcome; do not select by activity/separability. These tests do not exhaust all full-brain numerical corner cases.

Exact arithmetic and schedule

Execute unchanged pinned author create_model in Brian2 2.5.1/NumPy1.22.3 using the isolated 4AD environment. Export raw SI variables, actual coefficients and weights. GPU float32 coefficients round to float32 before each multiply/add; float64 uses double. No FMA or fast-math. Match generated expression order.

Update refractory and integrate; apply only currently permitted voltage seed requests; strict threshold closes write access immediately; then accept delayed anatomical arrivals in author order within each target, external synthetic input, and reset. A fused reset is equivalent only if all arrivals reject current spikes. Never replace sequential g+=w with g+sum(w). A queue proxy observes real Brian arrival order without changing values; compare proxy and unwrapped runs exactly. Use an exact spike ring buffer, no approximated delay or dense edge scan.

Before-threshold requests use the existing common requested-event convention, not the author's distinct poi interface that changes target refractory to zero. Report requested/accepted/rejected input separately. No graded APL in these isolated tests; its future integration and frozen coefficients require explicit audit.

For each case/precision compare GPU to the same-precision real Brian oracle: exact events, counts, refractory, input delivery and per-target arrival order/guard; report full-history max/mean V/g error and bitwise state comparison. Fixed tolerance is 1e-11V float64 / 1e-6V float32. Any event divergence fails, regardless of tolerance. Each GPU case repeats three times with all arrays exactly equal. Cross-precision differences are separately descriptive, not grounds to change thresholds.

Integrity and progression

Preregister sources, old input hashes and deterministic fixture hashes before any model execution. Preserve failures; use a separately recorded new attempt for implementation repairs. Do not change frozen artifacts. Save manifests/SHA-256. Old five deterministic-v2 full-brain reference regressions must pass again. Only then consider a short full-graph author comparison, followed by DoOR CAL; never claim full-brain equivalence or learning from isolated test PASS.

Author source/license/provenance are inherited read-only from 4AD. Supporting primary documentation: https://numpy.org/doc/1.22/reference/generated/numpy.ufunc.at.html and https://brian2.readthedocs.io/en/2.5.1/user/refractoriness.html . The fixed generated source and actual boundary fixtures, not simplified prose, define timing.