Repository navigation
analog M3f phase 1: the comparator step in board arithmetic, bit for bit with the model, 15 independent device evaluations per iteration - #11387
Merged
Conversation
…aluations and one node update in exact integer words -- 613.074 and 613.151 ps, the model's own, 23 to 31 table reads and 141 to 185 multiplications an evaluation (Refs #11380) specs/analog/sar_comparator_qi.t27 (new; nothing existing is edited). The step of sar_comparator_q.t27 is already exact integer arithmetic (u32 words, sign-magnitude u64, 64-bit elimination); the f64 in that file is its judge, so the integer step is that step and the decision times are 613.0742 ps (+2 mV) and 613.1508 ps (-2 mV), 0.0007 and 0.0001 percent from the issue's 613.07 and 613.15, every sample, fold, residual and time those of sq_run, the 2125 step reset run too. FR-001: qi_eval / qi_scatter / qi_assemble / qi_update / qi_iter / qi_step / qi_run, reusing sq_i, sq_fd, sq_qt, sq_slope, sq_qsrc, sq_mul, the stamps and the 8 x 8 solve by `use`. Within 0.5 percent of 613.07 / 613.15 with the sign right at both inputs; negative control: the charge removed decides at 5.40 ps and is refused. FR-002: one Newton iteration is 15 evaluations that read only their own terminals and write one 15-word record each, then one assembly and one node update. Tests: a record is unchanged when a non-terminal node moves and changes when a terminal moves; an evaluation writes nothing but its own slot; five pairs of evaluation/assembly orders give the same 144 registers, the same previous charges and the same nodes after an iteration, bit for bit; whole runs reversed and shuffled fold to the natural fold; leaving out any one of the 15 devices changes the registers. Cost, counted off 876 steps: a full device evaluation is 23 to 31 table reads and 141 to 185 multiplications, a charge-only one 6 to 14 and 39 to 79, a step (75 evaluations) 1518 to 1690 reads and 9517 to 10265 multiplications plus 4 node updates of 224 multiplications and 36 divisions (the loop nest's bound). No speed claim. t27c test-report: 8 tests, FAIL 0, vacuous 0; t27b test --check --quiet exit 0. Phase 2 (the board top) is open. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…bit with the model, 15 independent device evaluations per iteration (Closes #11386) Merge of master plus sealing, gates run on the merged tree with t27c from master: tests clean with vacuous passes 0, seal --verify MATCH, tri types ratchet CLEAN, dupe_scan failure set a subset of master's. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
gHashTag
enabled auto-merge (squash)
October 20, 2026 13:32
Contributor
This was referenced Oct 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #11386
analog M3f phase 1: the comparator step in board arithmetic, bit for bit with the model, 15 independent device evaluations per iteration
Gates run on the merged tree (t27c from master): 1 spec(s) with tests clean and vacuous passes 0, seal --verify MATCH, tri types ratchet CLEAN, dupe_scan failure set a subset of master's (inherited red).
TEST specs/analog/sar_comparator_qi.t27 tests=[8] fail=[0] vacuous=[0]
SEAL specs/analog/sar_comparator_qi.t27 :: all hashes MATCH
TYPES RATCHET: CLEAN
DUPE failing=4 extra-vs-master=[]
🤖 Generated with Claude Code