x + \left(y - x\right) \cdot z
\mathsf{fma}\left(z, y - x, x\right)double f(double x, double y, double z) {
double r183199 = x;
double r183200 = y;
double r183201 = r183200 - r183199;
double r183202 = z;
double r183203 = r183201 * r183202;
double r183204 = r183199 + r183203;
return r183204;
}
double f(double x, double y, double z) {
double r183205 = z;
double r183206 = y;
double r183207 = x;
double r183208 = r183206 - r183207;
double r183209 = fma(r183205, r183208, r183207);
return r183209;
}



Bits error versus x



Bits error versus y



Bits error versus z
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020033 +o rules:numerics
(FPCore (x y z)
:name "Diagrams.ThreeD.Shapes:frustum from diagrams-lib-1.3.0.3, B"
:precision binary64
(+ x (* (- y x) z)))