x \cdot x - \left(y \cdot 4\right) \cdot z
\mathsf{fma}\left(x, x, -\left(y \cdot 4\right) \cdot z\right)double f(double x, double y, double z) {
double r173591 = x;
double r173592 = r173591 * r173591;
double r173593 = y;
double r173594 = 4.0;
double r173595 = r173593 * r173594;
double r173596 = z;
double r173597 = r173595 * r173596;
double r173598 = r173592 - r173597;
return r173598;
}
double f(double x, double y, double z) {
double r173599 = x;
double r173600 = y;
double r173601 = 4.0;
double r173602 = r173600 * r173601;
double r173603 = z;
double r173604 = r173602 * r173603;
double r173605 = -r173604;
double r173606 = fma(r173599, r173599, r173605);
return r173606;
}



Bits error versus x



Bits error versus y



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