\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 r166042 = 1.0;
double r166043 = 2.0;
double r166044 = r166042 / r166043;
double r166045 = x;
double r166046 = y;
double r166047 = z;
double r166048 = sqrt(r166047);
double r166049 = r166046 * r166048;
double r166050 = r166045 + r166049;
double r166051 = r166044 * r166050;
return r166051;
}
double f(double x, double y, double z) {
double r166052 = 1.0;
double r166053 = x;
double r166054 = z;
double r166055 = sqrt(r166054);
double r166056 = y;
double r166057 = r166055 * r166056;
double r166058 = r166053 + r166057;
double r166059 = r166052 * r166058;
double r166060 = 2.0;
double r166061 = r166059 / r166060;
return r166061;
}



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 2019196
(FPCore (x y z)
:name "Diagrams.Solve.Polynomial:quadForm from diagrams-solve-0.1, B"
(* (/ 1.0 2.0) (+ x (* y (sqrt z)))))