A portal · four layers, one predicament
The Answer Filed Before the Question
Sometimes the deadline is shorter than the computation. Then nothing computes the answer. Something was filed in advance, before the question existed, and whatever accuracy is missing has to be bought back in correction rounds. Four of this site's layers do exactly that, and the exchange rate between the two is not a matter of taste: for the numerical pair it can be measured, and it comes out at one extra round square-roots the table.
This page teaches none of these four subjects. Each has its own full layer and every station below links straight there. What this page adds is the quantity none of them carries: what you file in advance sets the rate at which correction rounds pay off, and the four are four different answers to the question of what can be filed.
The bench below is the argument. Choose how many correct bits you need and how many correction rounds you are willing to pay, and it computes what has to be filed. Every figure is recomputed in your browser from the closed forms printed in the check panel, and again offline by the verifier.
The exchange bench
Each doubling of the table buys exactly one more correct bit in the seed.
One round of Newton for a table or a constant; one rung of the ladder for CORDIC.
Correct bits (vertical) against correction rounds paid (horizontal). Recomputed live. The flat top is the ceiling of the arithmetic, not of the method.
The frontier, in one table
Fix the accuracy you need and ask what it costs. Every row below is a way to reach the same answer. Nothing here is typed in: each row is solved live from the closed forms.
24 bits is a float32 significand. 53 is a float64 one.
| Rounds paid | Seed must supply | Entries filed | Ratio to the row above |
|---|
Each extra round takes the square root of the table, near enough. The closed form predicts a shortfall of 0.21 in the exponent, and the fact that a table size must be a whole power of two rounds it away.
Four things you can file
The bench measures two of these four. The other two are reported in their own units, and this page makes no attempt to convert milliseconds or receptor event-keys into bits. What the four share is not an axis. It is a predicament.
The purest case, and the one that explains why anything is ever filed. The doctor taps the tendon and the leg kicks in about 18 ms. Any route through the cortex costs at least 49 ms by the same conduction arithmetic, and a fast voluntary response to a go signal, measured in biceps brachii, is about 90 ms. So the deadline is shorter than the consultation, and the number of correction rounds available is zero at any price. What is filed is a single response with no index at all: the arc has no question to look up, because the same stretch always produces the same contraction.
- filed one arc
- rounds available 0
- deadline 18.3 ms
- cheapest consultation 48.9 ms
A chip with no multiplier cannot refine an estimate, because refining is multiplying. So CORDIC files something that is not an answer: a ladder of angles, arctan 1, arctan ½, arctan ¼, and grinds the answer out one signed digit at a time. Measured over rungs 8 to 40, the rate is 1.0001 bits per rung, flat, and no rung ever buys two. The tell that this is an alphabet and not a table: two unrelated angles read the identical constants in the identical order. Only the signs differ. The question lives in the sign word the machine writes at run time, never in the table.
- filed 1 constant per bit
- rate 1.0001 bits/rung
- to 24 bits 24 filed, 24 rounds
- gain K = 0.60725
Quake III filed one number, 0x5f3759df, and got an approximation to 1/√x good to 3.4376%, which is 4.862 correct bits, for a table with no entries in it. It can do that because a float's exponent field already is a logarithm, so the constant does not store answers, it stores the rule that rebuilds one. Measured against the best possible table of the same accuracy: it seeds better than 16 entries and worse than 32, so it is worth a table of between 16 and 32 entries and files 32 bits where that table would file 1,024. Because a multiplier is available here, each Newton round doubles the correct bits, and three rounds finish a float32.
- filed 32 bits
- seeds 4.862 bits
- worth a 16 to 32 entry table
- to 24 bits 3 rounds
An immune system cannot iterate towards a receptor for a pathogen it has not met, so it files a machine that manufactures the whole space in advance. In the toy model that layer declares, the filed inventory is 48 × 2 × 13 = 1,248 segment combinations carrying 9.048 bits of choice, and the assembled event keys carry 43.712 bits. The difference, 34.66 bits, is manufactured at assembly time by junctional trimming and insertion and was never filed at all. On first contact the rounds paid are zero: the receptor that meets the pathogen was built before the pathogen arrived.
- filed 1,248 combinations
- filed entropy 9.048 bits
- assembled entropy 43.712 bits
- rounds on first contact 0
What the bench actually shows
The interesting thing is not that precomputing helps. Everyone knows precomputing helps. The interesting thing is that the kind of object you filed decides the exchange rate you are then allowed to trade at, and the two rates are not close together.
File an answer, and a correction round has an estimate to work on. One Newton round squares the relative error, so correct bits double, and the ledger reads bits(r+1) = 2 · bits(r) − log₂(3/2). The shortfall of 0.585 of a bit is exact, and it is the 1.5 in the Quake line y*(1.5 − 0.5*x*y*y) showing up as a tax. Run that backwards and every extra round you are willing to pay takes the square root of the table you have to store: 16.7 million entries, then 4,096, then 64, then 8.
File an alphabet, and a round has nothing to square, because there is no estimate yet, only a partly written word. Each rung contributes one digit and therefore one bit, forever, and no larger table improves the rate. That is not a defect. CORDIC is built for a machine with no multiplier, and Newton needs one, so the frontier the table and the constant sit on is simply not available to it. Comparing them on storage alone would be the mistake this page is trying not to make.
And file a generator large enough and you can skip the rounds altogether, which is what both biological stations do, from opposite ends. The reflex files one response because there is no time to look anything up. The repertoire files a machine that makes 1013 answers because there is no way to know the question. Same predicament, opposite extremes of how much gets filed.
Not the same page as Only by Running
Only by Running asks whether a shortcut exists at all: whether a system's future can be known faster than by simulating it. This page assumes the shortcut exists and asks what it costs, which is a different question with a different answer shape. There, the finding is a wall. Here, the finding is a price list.
One relation on this page is already published and is not claimed as new: CORDIC and the fast inverse square root already point at each other, as kin in spirit and opposite in method. What neither of them carries, and what this page contributes, is the measured rate that makes the opposition quantitative.
Show the check
Every figure on this page comes from one of three places, and they are not equally strong. Derived means a closed form proved here and recomputed in your browser. Measured means a number obtained by running code over a dense sweep. Carried means a figure taken from the member layer's own verifier, cited rather than re-derived. Nothing on this page is asserted.
The closed forms this page computes from
The seed. For the best possible table of 2k constants covering
x in [1,4), the worst relative error is exactly
(√b − 1)/(√b + 1) with b = 1 + 3·2−k.
This is exact, not fitted, and the reason is that bins are uniform in x while 1/√x is
steepest at the left, so the leftmost bin is always the worst one and the best constant in a
bin is the harmonic mean of the two endpoint values. As k grows the bit count tends to
k + log₂(4/3), that is k + 0.4150, from above. The verifier
checks the closed form against a brute-force sweep over every bin for k = 0 to 20 and
against a 300,000 point dense sample, and confirms by exhaustion that bin 0 carries the
maximum.
The round. Writing y = (1+e)/√x, one Newton round takes
e to exactly −1.5e² − 0.5e³. So the correct
bits go to 2·bits − log₂(3/2), and the measured shortfall
over 29 grid transitions is 0.5935 bits against a predicted 0.5850, with the residue coming
from the small cubic term. The verifier reports both.
The ladder. CORDIC's rate is measured, not derived: 1.0001 bits per rung, mean over rungs 8 to 40, with a maximum single-rung gain of 1.022 bits.
Every figure on this page, and where it came from
| Figure | Value | How obtained |
|---|---|---|
| Seed accuracy of a 2^k table | k + 0.4150 bits | Derived, closed form above, checked against a sweep |
| Newton shortfall per round | log₂(3/2) = 0.5850 | Derived from the error recursion, measured at 0.5935 |
| 0x5f3759df seed error | 3.4376% | Measured in float32 over 400,000 points, agrees with the member layer's verifier |
| 0x5f3759df seed accuracy | 4.862 bits | Measured, the same run |
| Its table equivalent | between 16 and 32 | Measured: better than 4.542 bits, worse than 5.481 |
| CORDIC rate | 1.0001 bits/rung | Measured over rungs 8 to 40 |
| CORDIC gain K | 0.6072529350088813 | Carried from the CORDIC layer's verifier, recomputed here |
| Reflex loop time | 18.33 ms | Recomputed here from t = L/CV + one synapse, at 1.70 m and 85 m/s |
| Cortical detour floor | 48.9 ms | Recomputed here, cord conduction both ways plus 20 ms of cortex |
| Voluntary response to a go signal | about 90 ms | Carried from the reflex layer, at the size that layer's own correction of 2026-08-01 left it: a fast voluntary response in one muscle, biceps brachii, not a record of any kind |
| V(D)J filed inventory | 48 × 2 × 13 = 1,248 | Carried from the V(D)J layer's declared toy model |
| V(D)J entropies | 9.048 and 43.712 bits | Carried from the same verifier; the 34.66 bit gap is computed here |
Every free choice, named
- The reduction range is
x in [1,4). That is one full period of 1/√x in binary, since1/√(4x) = ½ · 1/√xexactly, so a seed over [1,4) is a seed for every positive float and the exponent adjustment is exact. A different range would move every seed figure. - Table entries are uniform in x, which is what a hardware seed table indexed by leading mantissa bits actually does. A table with bins uniform in log x would be slightly better and would remove the log₂(4/3) offset. This page does not claim its tables are optimal over all possible binnings, only over all possible values for a given binning.
- Each bin holds the constant that minimises the maximum relative error, the harmonic mean of the endpoint values. That makes these figures an upper bound on what any constant table of that size can do, so the comparison with 0x5f3759df is generous to the table, which is the direction that makes the finding safe.
- Accuracy is counted as
−log₂of the worst relative error over the range. Average error would flatter every method and is not reported. - The Newton curves are computed from the exact error recursion, so they keep climbing past the point where an actual float32 or float64 pipeline would stop. The bench draws the float32 and float64 ceilings for exactly this reason, and the verifier measures the real float32 pipeline hitting 23.03 bits.
- CORDIC's 1.0001 bits per rung is measured over the angle range |θ| ≤ 1, not over its full convergence range of 1.7433 radians. Near the edge of the range the first rungs behave differently.
- The frontier table rounds table sizes up to a whole power of two. That is why the measured halving of the exponent sometimes reads 0.00 and sometimes 0.50 rather than the 0.21 the closed form predicts.
- The reflex figures use the member layer's model: a round-trip nerve path of 0.8817 times height, one synapse at 0.7 ms, and a cortical floor of 20 ms of processing. Those are the layer's declared constants and this page recomputes rather than re-derives them.
- The V(D)J numbers are from a declared toy model, not a measured human repertoire. The layer is explicit about this and so is this page. The 1,248 is a segment count in that model, and real segment counts vary with the counting convention.
- The linked V(D)J layer carries no affinity maturation step, checked on disk by the verifier. Somatic hypermutation is real immunology and is exactly the correction-round leg this page would want, but it is not on that layer, so this page places the repertoire at the zero-rounds end and says so rather than borrowing biology the layer does not carry.
- Milliseconds, rungs, bits and receptor event keys are never combined. There is no four-way axis on this page and no number claims to span the seam.
Run it yourself. Zero dependencies, no network:
node research/filed-before-the-question/verify.mjs. It recomputes the closed
forms, the sweeps, the frontier ladder, the reflex arithmetic, and it checks that the numbers
printed on this page match the ones it just computed.
What this page does not establish
It does not establish that precomputation is the right choice anywhere. It measures what a choice costs, given that the deadline forced it. A system with time to spare should compute the answer.
It does not establish a common currency across the four stations. Two of them are measured in bits and rounds on a shared bench; the other two are reported in their own units and placed beside them because they face the same predicament, not because they sit on the same axis. Anyone who wants a four-way number will not find one here, and that is deliberate.
It does not establish that the seed tables here are the best possible tables. They are the best possible values for a uniform-in-x binning, which is what hardware does. A better binning exists and would shift the offset by a fraction of a bit without touching the exchange rate, which is the finding.
It does not establish anything about biological optimality. That a reflex has no time for a correction round is arithmetic. That this is the best design an organism could have is not a claim this page makes.