\frac{1}{2} \cdot \left(x + y \cdot \sqrt{z}\right)\frac{1 \cdot \left(x + \sqrt{z} \cdot y\right)}{2}double f(double x, double y, double z) {
double r234301 = 1.0;
double r234302 = 2.0;
double r234303 = r234301 / r234302;
double r234304 = x;
double r234305 = y;
double r234306 = z;
double r234307 = sqrt(r234306);
double r234308 = r234305 * r234307;
double r234309 = r234304 + r234308;
double r234310 = r234303 * r234309;
return r234310;
}
double f(double x, double y, double z) {
double r234311 = 1.0;
double r234312 = x;
double r234313 = z;
double r234314 = sqrt(r234313);
double r234315 = y;
double r234316 = r234314 * r234315;
double r234317 = r234312 + r234316;
double r234318 = r234311 * r234317;
double r234319 = 2.0;
double r234320 = r234318 / r234319;
return r234320;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019194
(FPCore (x y z)
:name "Diagrams.Solve.Polynomial:quadForm from diagrams-solve-0.1, B"
(* (/ 1.0 2.0) (+ x (* y (sqrt z)))))