\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 r190602 = 1.0;
double r190603 = 2.0;
double r190604 = r190602 / r190603;
double r190605 = x;
double r190606 = y;
double r190607 = z;
double r190608 = sqrt(r190607);
double r190609 = r190606 * r190608;
double r190610 = r190605 + r190609;
double r190611 = r190604 * r190610;
return r190611;
}
double f(double x, double y, double z) {
double r190612 = 1.0;
double r190613 = x;
double r190614 = z;
double r190615 = sqrt(r190614);
double r190616 = y;
double r190617 = r190615 * r190616;
double r190618 = r190613 + r190617;
double r190619 = r190612 * r190618;
double r190620 = 2.0;
double r190621 = r190619 / r190620;
return r190621;
}



Bits error versus x



Bits error versus y



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