x \cdot x - \left(y \cdot 4\right) \cdot z
\mathsf{fma}\left(x, x, -\left(4 \cdot z\right) \cdot y\right)double code(double x, double y, double z) {
return ((x * x) - ((y * 4.0) * z));
}
double code(double x, double y, double z) {
return fma(x, x, -((4.0 * z) * y));
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.0
rmApplied prod-diff0.0
Simplified0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020078 +o rules:numerics
(FPCore (x y z)
:name "Graphics.Rasterific.QuadraticFormula:discriminant from Rasterific-0.6.1"
:precision binary64
(- (* x x) (* (* y 4) z)))