Skip to content

docs: every audit finding corrected in place (rescued from a stack that dropped it) - #103

Merged
gHashTag merged 4 commits into
mainfrom
fix/doc-claims-v2
Aug 19, 2026
Merged

docs: every audit finding corrected in place (rescued from a stack that dropped it)#103
gHashTag merged 4 commits into
mainfrom
fix/doc-claims-v2

Conversation

@gHashTag

Copy link
Copy Markdown
Owner

The documentation half of the audit (docs/AUDIT_2026-08-20.md), retargeted at main.

It was stacked on #101 as PR #102; when #101 squash-merged and its branch was deleted,
GitHub closed #102 and the four documentation commits reached nothing. They are cherry-picked
here onto current main, unchanged.

  • README: GF16 range was fp16's max (measured ±4.29e9); GF8's φ³ saturation belonged to the
    Rust bench model; ties round away from zero, not to even; the 35/35 @ 323 MHz row has no
    record here and was withdrawn upstream; GF-T exponent ranges are asymmetric [−N, N−1]
    because the top offset row is the special row; the accuracy row now names its metric.
  • CHANGELOG: the v2.1.0 summary now matches its own committed bench_010.log.
  • whitepaper: nine self-contradictions corrected against the paper's own tables (the abstract
    inverted its own hardware measurement; the 10× energy row is Ternary's; lr=0.004 was derived
    from an identity computing 0.028; φ⁵ printed as 10.944; attention reduction contradicted its
    own formula; GF32/GF64 splits disagreed with shipped code; two MAC-depth bounds contradict).
  • spec-gf16: test vectors were IEEE fp16 codes this codec never emits — regenerated from the
    codec, CSV with them; the subnormal section described an unimplemented design.
  • multi-language-audit: "70B = 14 GB" contradicted its own 16-bit row; "Add only" is an
    aspiration; π error 0.003% is 0.031%; a referenced file does not exist; gf16.h is 405 lines.

Suite green including both guards.

🤖 Generated with Claude Code

gHashTag and others added 4 commits August 20, 2026 03:38
README: GF16 range ~±65504 was fp16's max (measured max finite ±4.29e9);
GF8's φ³ saturation belonged to the Rust base-φ bench model (shipped codec
clamps at 1.9375); ties round away from zero, not to even (and the fp16
encoder truncates); the 35/35 @ 323 MHz row has no record in this
repository and was withdrawn upstream; GF-T exponent ranges are asymmetric
[−N, N−1] because the top offset row is the special row (the symmetric ±N
overstated the top by one — the same off-by-one family the TNF paper
carried); the 99.99% accuracy row now names its metric and its measured
value. CHANGELOG: the v2.1.0 summary now matches its own committed
bench_010.log (5.77e-4 / 9.37e-3 / 16.2x), and the φ³ rows are labelled
as the bench model. Every correction cites docs/AUDIT_2026-08-20.md.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…r's own tables

The abstract inverted its own hardware measurement (47-59x MORE, not
fewer); the 10x energy note belonged to the Ternary row (GF16's own row:
2x); lr=0.004 was derived from an identity that computes 0.028; phi^5 was
printed as 10.944 (it is 11.090); the attention-reduction number
contradicted its own printed formula (97.85%, not 78.5%); the GF32/GF64
splits disagreed between sections and with shipped code (12:19 and 24:39
are what ships); and the two MAC-depth bounds (256 vs 8.3) are now flagged
as contradictory with the enforced one named. Every correction cites
docs/AUDIT_2026-08-20.md.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…tion is gone

Section 8's vectors were IEEE fp16 codes (1.0 as 0x3C00, pi as 0x3E23,
Inf as 0x7C00) -- values the shipped codec never emits; regenerated from
GF16.fromF32/toF32 (1.0 -> 0x3E00, pi -> 0x4124 at 0.031%, Inf -> 0x7E00),
and docs/test-vectors.csv with them (all 45 rows re-encoded). The
subnormal section described an unimplemented design: E=0, M!=0 decodes to
zero (measured), the encoder flushes below the minimum normal, and the
printed 4.7e-10 matched neither the section's own formula (2^-39) nor the
codec -- the smallest positive value is the minimum normal 2^-30 ~ 9.3e-10.
Comparison table row relabelled accordingly.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The Green-ML table said a 70B model needs 14 GB in GF16 while its own
memory row says 16 bits per weight (= 140 GB, same as FP16); 'Add only'
compute is an aspiration -- every shipped GF16 op routes through f32
multiply; the 0.1x energy row had no record (whitepaper's own table gives
2x); the pi round-trip comment said 0.003% where the codec measures
0.031%; a referenced zig-float-audit.md exists nowhere in the repository;
and gf16.h is 405 lines, not 80. Every correction cites
docs/AUDIT_2026-08-20.md.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@gHashTag
gHashTag merged commit 0f5d1c8 into main Aug 19, 2026
6 of 8 checks passed
@gHashTag
gHashTag deleted the fix/doc-claims-v2 branch August 19, 2026 20:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant