x \cdot e^{y \cdot y}\left(\left(x \cdot {\left(e^{y \cdot y}\right)}^{\frac{1}{3}}\right) \cdot \sqrt{{\left(e^{y \cdot y}\right)}^{\frac{2}{3}}}\right) \cdot \sqrt[3]{e^{y \cdot y}}double f(double x, double y) {
double r4874 = x;
double r4875 = y;
double r4876 = r4875 * r4875;
double r4877 = exp(r4876);
double r4878 = r4874 * r4877;
return r4878;
}
double f(double x, double y) {
double r4879 = x;
double r4880 = y;
double r4881 = r4880 * r4880;
double r4882 = exp(r4881);
double r4883 = 0.3333333333333333;
double r4884 = pow(r4882, r4883);
double r4885 = r4879 * r4884;
double r4886 = 0.6666666666666666;
double r4887 = pow(r4882, r4886);
double r4888 = sqrt(r4887);
double r4889 = r4885 * r4888;
double r4890 = cbrt(r4882);
double r4891 = r4889 * r4890;
return r4891;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.0
rmApplied add-cube-cbrt0.0
Applied associate-*r*0.0
rmApplied pow1/30.0
Applied pow1/30.0
Applied pow-prod-up0.0
Simplified0.0
rmApplied add-sqr-sqrt0.0
Applied associate-*r*0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020025 +o rules:numerics
(FPCore (x y)
:name "Data.Number.Erf:$dmerfcx from erf-2.0.0.0"
:precision binary64
:herbie-target
(* x (pow (exp y) y))
(* x (exp (* y y))))