x + \frac{y}{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}\frac{1}{\frac{\sqrt[3]{e^{z}} \cdot \sqrt[3]{e^{z}}}{\frac{y}{1.128379167095512558560699289955664426088 \cdot \sqrt[3]{e^{z}}}} - x} + xdouble f(double x, double y, double z) {
double r348840 = x;
double r348841 = y;
double r348842 = 1.1283791670955126;
double r348843 = z;
double r348844 = exp(r348843);
double r348845 = r348842 * r348844;
double r348846 = r348840 * r348841;
double r348847 = r348845 - r348846;
double r348848 = r348841 / r348847;
double r348849 = r348840 + r348848;
return r348849;
}
double f(double x, double y, double z) {
double r348850 = 1.0;
double r348851 = z;
double r348852 = exp(r348851);
double r348853 = cbrt(r348852);
double r348854 = r348853 * r348853;
double r348855 = y;
double r348856 = 1.1283791670955126;
double r348857 = r348856 * r348853;
double r348858 = r348855 / r348857;
double r348859 = r348854 / r348858;
double r348860 = x;
double r348861 = r348859 - r348860;
double r348862 = r348850 / r348861;
double r348863 = r348862 + r348860;
return r348863;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 2.7 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 2.7
rmApplied clear-num2.7
Simplified0.0
rmApplied add-cube-cbrt0.0
Applied associate-/l*0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019179
(FPCore (x y z)
:name "Numeric.SpecFunctions:invErfc from math-functions-0.1.5.2, A"
:herbie-target
(+ x (/ 1.0 (- (* (/ 1.1283791670955126 y) (exp z)) x)))
(+ x (/ y (- (* 1.1283791670955126 (exp z)) (* x y)))))