CultMath docs: state the float32 tie band in ulps, as measured (Soul s4)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Meta Vens 2026-10-10 00:12:23 +02:00
commit 2855963ca1
2 changed files with 5 additions and 5 deletions

View file

@ -10,8 +10,8 @@ namespace CultMath.Tests;
// set and its float32 band (below) the results are bit-identical to 0.3.0. The goldens below were computed by the
// cultmath-unity-v0.3.0 tag's CultMath.dll (Runtime/Plugins), not by this code. Float32 rounding
// decides whether a given integer-difference input ties, because x0 is computed in float32: an
// input whose differences round onto whole numbers can tie too and move, within about one float32
// spacing of the coordinate magnitude (a band that widens with the magnitude), and some inputs on
// input whose differences round onto whole numbers can tie too and move, within a few float32
// ulps of the largest coordinate (a probe found up to about two; the band widens with the magnitude), and some inputs on
// the set keep their value (about 3% of random integer points). Every input below ties and moves
// all five outputs (value and the four gradient words).
// TieSetNow pins what this code returns on the same inputs, so that each of the two tie-rule sites

View file

@ -23,9 +23,9 @@ backfilled here; see `docs/semver-policy.md` for why.
value; measured over random integer points, about 97% change. The cell offset
is computed in float32, so an input whose differences `y - x` and `z - x`
round, in float32, onto whole numbers can tie and change too. How far from the set that
reaches grows with the coordinates' magnitude, at about one float32 spacing of the
coordinate (1.9e-6 at 30, 6.1e-5 at 1000, 7.8e-3 at 1e5; a probe over random inputs
never found a changed one farther than that). Computed coordinates such as `i * 0.1f`
reaches scales with the coordinates' magnitude: a few float32 ulps of the largest
coordinate (a probe over random inputs found changed inputs up to about two ulps
away; measured, not proved). Computed coordinates such as `i * 0.1f`
can land there, so near large coordinates the band is wide. Elsewhere the results are
bit-identical to 0.3.0 (`SnoiseTieScopeTests`, goldens computed by the 0.3.0
DLL). `snoise` is now