THE FOLD / SPAWN / FIRST LIGHT / THE DENORMAL STALL
THE DENORMAL STALL
a slow, silent, correct-looking decline
1 WHAT IT IS · WHAT IT DOES · FACT OR FICTION
Below the smallest normal float there is one more range, where the leading bit is dropped and precision is traded away a bit at a time rather than all at once. It exists so that subtraction near zero keeps meaning something.
LIT verified live. The smallest normal double is 2−1022 and the smallest subnormal is 2−1074 — a range of exactly 252, or 4,503,599,627,370,496×, computed and checked rather than quoted. Halving the smallest subnormal gives exactly 0: that is the floor. And the difference between the smallest normal and its neighbour is representable, so
LIT verified live. The smallest normal double is 2−1022 and the smallest subnormal is 2−1074 — a range of exactly 252, or 4,503,599,627,370,496×, computed and checked rather than quoted. Halving the smallest subnormal gives exactly 0: that is the floor. And the difference between the smallest normal and its neighbour is representable, so
a − b == 0 and a == b still agree.2 HOW IT WAS WEAVED · AI + HUMAN
Gradual underflow was argued into IEEE 754 by William Kahan against real hardware opposition; subnormals are awkward and, on several generations of CPU, dramatically slow.
AVAN (AI) computed the range rather than repeating 252 from a reference, and probed the floor by halving until the value became zero. The property worth having is not the extra range — it is that equality and subtraction do not disagree. Without subnormals two distinct numbers can subtract to exactly zero, and every algorithm that tests equality by subtracting acquires a silent false positive near the origin.
AVAN (AI) computed the range rather than repeating 252 from a reference, and probed the floor by halving until the value became zero. The property worth having is not the extra range — it is that equality and subtraction do not disagree. Without subnormals two distinct numbers can subtract to exactly zero, and every algorithm that tests equality by subtracting acquires a silent false positive near the origin.
3 ONE DIMENSION
The last stretch before zero, in powers of two.
4 TWO DIMENSIONS · INTERACTIVE
Halve your way to the floor.
5 THREE DIMENSIONS + AVAN’S INVERSE
The green forward object: a staircase that does not end at a cliff.
AVAN’s addition (the inverse-companion): the forward reading is that subnormals buy a smooth approach to zero. The inverse is that they buy it with precision you are not told you are losing. Each step below the smallest normal drops another significant bit; the numbers keep arriving and keep meaning less, and nothing in the type, the printout or the comparison operators says so. Read backwards, flush-to-zero is at least honest about failing, and gradual underflow is a slow, silent, correct-looking decline — which is why the fast hardware path and the trustworthy one point in opposite directions.
LIT the smallest normal double is 2^-1022 and the smallest subnormal is 2^-1074, a range of exactly 2^52 or 4,503,599,627,370,496 times, computed and checked rather than quoted; halving the smallest subnormal gives exactly 0, which is the floor, and the difference between the smallest normal and its neighbour is representable so that a - b == 0 and a == b still agree
FIG Gradual underflow was argued into IEEE 754 by William Kahan against real hardware opposition; subnormals are awkward and, on several generations of CPU, dramatically slow. AVAN computed the range rather than repeating 2^52 from a reference, and probed the floor by halving until the value became zero. The property worth having is not the extra range but that equality and subtraction do not disagree - without subnormals two distinct numbers can subtract to exactly zero, and every algorithm that tests equality by subtracting acquires a silent false positive near the origin.
FIG Gradual underflow was argued into IEEE 754 by William Kahan against real hardware opposition; subnormals are awkward and, on several generations of CPU, dramatically slow. AVAN computed the range rather than repeating 2^52 from a reference, and probed the floor by halving until the value became zero. The property worth having is not the extra range but that equality and subtraction do not disagree - without subnormals two distinct numbers can subtract to exactly zero, and every algorithm that tests equality by subtracting acquires a silent false positive near the origin.
◆ sealed .dlw.fold → folded to ROOT_0 · a sphere of FIRST LIGHT · David Lee Wise (ROOT0), with AVAN