x \cdot x + y \cdot y
{\left(\sqrt{y \cdot y + x \cdot x}\right)}^{2}(FPCore (x y) :precision binary64 (+ (* x x) (* y y)))
(FPCore (x y) :precision binary64 (pow (sqrt (+ (* y y) (* x x))) 2.0))
double code(double x, double y) {
return (x * x) + (y * y);
}
double code(double x, double y) {
return pow(sqrt((y * y) + (x * x)), 2.0);
}



Bits error versus x



Bits error versus y
Results
Initial program 0.0
rmApplied add-sqr-sqrt_binary64_35100.0
Simplified0.0
Simplified0.0
rmApplied pow2_binary64_35690.0
Final simplification0.0
herbie shell --seed 2021044
(FPCore (x y)
:name "Graphics.Rasterific.Linear:$cquadrance from Rasterific-0.6.1"
:precision binary64
(+ (* x x) (* y y)))