Repository navigation
W963: the published TNF8 area penalty had the wrong sign — the true rung is 0.9 % cheaper, the substitute 5.0 % dearer - #670
Merged
Merged
Conversation
This was referenced Aug 21, 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.
#668 established that every rig here binds
"tnf8"toTNFFormat(4, 3)— 11 bits, 126.91 binades — while the ladder's eighth rung isTNFFormat(3, 4)— 10 bits, 30.95 binades. The census rig carries the substitution in its own table:The size of that error was unknown. It is now measured, in this project's original metric — an oracle-derived decode table fused with a multiply, cost as the slope of
cells(N) = fixture + cost·N— each format against a float of its own physical width:fp10 e5m4fp11 e6m4R² ≥ 0.9996 on every fit.
The penalty had the wrong sign
The ladder's true rung is 0.9 % cheaper than its width-matched float. The substitute is 5.0 % dearer. The figure this project published for TNF8 was not an overstatement — it pointed the wrong way.
The decoder is where the substitution bit: 12.00 cells against 29.00, a factor of 2.4. The substitute inherits TNF16's four-trit exponent, so its decode table spans 127 binades and resists the synthesiser's factoring; the true rung's 31 binades do not.
Two metrics, two signs, one conclusion
In the float-style MAC-lane metric (#669) the same rung is +1.1 % (380 vs 376). Here it is −0.9 %. A constant multiplicand lets the synthesiser specialise (#667), which flatters whichever format has the smaller decode table — so the two metrics tilt in opposite directions by construction.
Two metrics straddling zero is a stronger statement of parity than either number alone. A single metric landing at 1 % invites a reader to treat 1 % as a finding; two metrics with opposite signs do not.
What this does not repair
The accuracy, activation and convolution figures for "TNF8" still describe
TNFFormat(4, 3). Those rigs need datasets and have not been re-run. The ladder's eighth rung now has a measured area and no measured accuracy.130 derived checks, all passing. Related: #644, #664, #668.
🤖 Generated with Claude Code