Standard Tier Module
GeoNum Drift Under Cancellation
Watch the GeoNum kernel flag the digits a silent IEEE-754 subtraction quietly throws away.
See it run - a worked example, 100% in this browser tab
The problem
A standard f64 subtraction of two nearly equal numbers loses significant digits silently - the result looks fine but is wrong. Engineers and scientists rarely see when their floating-point math has quietly collapsed.
The local-first solution
This plugin sweeps the textbook f=(1-cos x)/x^2 toward x->0 and runs the cancelling subtraction through the real GeoNum substrate kernel client-side: as the f64 relative error blows up, the GeoNum drift compartment rises in lock-step and honestly flags the loss. Every figure is cited and computed in your browser.
What it does
Logarithmic sweep of x from a mild regime down to deep cancellation
Naive f64 form (1-Math.cos(x))/(x*x) that cancels catastrophically
Cancellation-free half-angle reference 0.5*(sin(x/2)/(x/2))^2 for ground truth
Measured f64 relative error at each sweep point
Real GeoNum drift compartment read directly from the substrate kernel
Worst-case drift mapped to a VALID / DEGRADED / UNRELIABLE trust verdict
Honest scope
GeoNum is a conditioning-based uncertainty signal, NOT extra precision: the f64 value is exactly what f64 computes and GeoNum does not make it more accurate - it tells you not to trust it. A red UNRELIABLE badge at strong cancellation is the kernel working correctly. If the GeoNum import is unavailable, trust falls back honestly to untracked.
Authorities cited
- Goldberg, D. (1991). What Every Computer Scientist Should Know About Floating-Point Arithmetic. ACM Computing Surveys 23(1), 5-48. DOI 10.1145/103162.103163.
- Higham, N. J. (2002). Accuracy and Stability of Numerical Algorithms, 2nd ed. SIAM. (Catastrophic cancellation; conditioning of subtraction.) DOI 10.1137/1.9780898718027.
See your floating-point error honestly
Run the sweep in your browser with nothing uploaded, then save the drift-vs-error curve to a Sandbox workspace or attach it to a Worklog case as a reproducibility record.