\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 r259904 = 1.0;
double r259905 = 2.0;
double r259906 = r259904 / r259905;
double r259907 = x;
double r259908 = y;
double r259909 = z;
double r259910 = sqrt(r259909);
double r259911 = r259908 * r259910;
double r259912 = r259907 + r259911;
double r259913 = r259906 * r259912;
return r259913;
}
double f(double x, double y, double z) {
double r259914 = z;
double r259915 = sqrt(r259914);
double r259916 = y;
double r259917 = x;
double r259918 = fma(r259915, r259916, r259917);
double r259919 = 1.0;
double r259920 = r259918 * r259919;
double r259921 = 2.0;
double r259922 = r259920 / r259921;
return r259922;
}



Bits error versus x



Bits error versus y



Bits error versus z
Initial program 0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020081 +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)))))