\frac{1}{2} \cdot \left(x + y \cdot \sqrt{z}\right)\frac{1}{2} \cdot \mathsf{fma}\left(\sqrt{z}, y, x\right)double f(double x, double y, double z) {
double r209307 = 1.0;
double r209308 = 2.0;
double r209309 = r209307 / r209308;
double r209310 = x;
double r209311 = y;
double r209312 = z;
double r209313 = sqrt(r209312);
double r209314 = r209311 * r209313;
double r209315 = r209310 + r209314;
double r209316 = r209309 * r209315;
return r209316;
}
double f(double x, double y, double z) {
double r209317 = 1.0;
double r209318 = 2.0;
double r209319 = r209317 / r209318;
double r209320 = z;
double r209321 = sqrt(r209320);
double r209322 = y;
double r209323 = x;
double r209324 = fma(r209321, r209322, r209323);
double r209325 = r209319 * r209324;
return r209325;
}



Bits error versus x



Bits error versus y



Bits error versus z
Initial program 0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2019325 +o rules:numerics
(FPCore (x y z)
:name "Diagrams.Solve.Polynomial:quadForm from diagrams-solve-0.1, B"
:precision binary64
(* (/ 1 2) (+ x (* y (sqrt z)))))