x + \left(y - x\right) \cdot z
\mathsf{fma}\left(z, y - x, x\right)double f(double x, double y, double z) {
double r160811 = x;
double r160812 = y;
double r160813 = r160812 - r160811;
double r160814 = z;
double r160815 = r160813 * r160814;
double r160816 = r160811 + r160815;
return r160816;
}
double f(double x, double y, double z) {
double r160817 = z;
double r160818 = y;
double r160819 = x;
double r160820 = r160818 - r160819;
double r160821 = fma(r160817, r160820, r160819);
return r160821;
}



Bits error versus x



Bits error versus y



Bits error versus z
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020002 +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)))