x \cdot x - \left(y \cdot 4\right) \cdot z
\mathsf{fma}\left(x, x, -z \cdot \left(y \cdot 4\right)\right)double f(double x, double y, double z) {
double r102456 = x;
double r102457 = r102456 * r102456;
double r102458 = y;
double r102459 = 4.0;
double r102460 = r102458 * r102459;
double r102461 = z;
double r102462 = r102460 * r102461;
double r102463 = r102457 - r102462;
return r102463;
}
double f(double x, double y, double z) {
double r102464 = x;
double r102465 = z;
double r102466 = y;
double r102467 = 4.0;
double r102468 = r102466 * r102467;
double r102469 = r102465 * r102468;
double r102470 = -r102469;
double r102471 = fma(r102464, r102464, r102470);
return r102471;
}



Bits error versus x



Bits error versus y



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