\frac{1}{2} \cdot \left(x + y \cdot \sqrt{z}\right)\frac{\mathsf{fma}\left(\sqrt{z}, y, x\right) \cdot 1}{2}double f(double x, double y, double z) {
double r226451 = 1.0;
double r226452 = 2.0;
double r226453 = r226451 / r226452;
double r226454 = x;
double r226455 = y;
double r226456 = z;
double r226457 = sqrt(r226456);
double r226458 = r226455 * r226457;
double r226459 = r226454 + r226458;
double r226460 = r226453 * r226459;
return r226460;
}
double f(double x, double y, double z) {
double r226461 = z;
double r226462 = sqrt(r226461);
double r226463 = y;
double r226464 = x;
double r226465 = fma(r226462, r226463, r226464);
double r226466 = 1.0;
double r226467 = r226465 * r226466;
double r226468 = 2.0;
double r226469 = r226467 / r226468;
return r226469;
}



Bits error versus x



Bits error versus y



Bits error versus z
Initial program 0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2020057 +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)))))