
TL;DR
A technique called double-double combines two double-precision floating-point numbers to achieve approximately 31 decimal digits of precision, significantly improving numerical accuracy without the overhead of arbitrary-precision libraries. This method is particularly useful for applications like deep zooming into fractals, where standard double precision falls short.
✦ Why It Matters
Consider implementing double-double for precision-critical applications to avoid performance penalties from arbitrary-precision libraries.
Key Takeaways
How It Works
The double-double technique stores two doubles, treating them as one number to capture more significant digits. It maintains an invariant where the high part represents the rounded value, while the low part captures the rounding error.
This allows for precise arithmetic operations using error-free transformations, such as Knuth's two-sum and two-product algorithms, which recover lost precision during calculations.
Related