x \cdot e^{y \cdot y}\sqrt{\sqrt[3]{e^{y \cdot y}}} \cdot \left(\sqrt{e^{y \cdot y}} \cdot \left(\left|\sqrt[3]{e^{y \cdot y}}\right| \cdot x\right)\right)double f(double x, double y) {
double r37491989 = x;
double r37491990 = y;
double r37491991 = r37491990 * r37491990;
double r37491992 = exp(r37491991);
double r37491993 = r37491989 * r37491992;
return r37491993;
}
double f(double x, double y) {
double r37491994 = y;
double r37491995 = r37491994 * r37491994;
double r37491996 = exp(r37491995);
double r37491997 = cbrt(r37491996);
double r37491998 = sqrt(r37491997);
double r37491999 = sqrt(r37491996);
double r37492000 = fabs(r37491997);
double r37492001 = x;
double r37492002 = r37492000 * r37492001;
double r37492003 = r37491999 * r37492002;
double r37492004 = r37491998 * r37492003;
return r37492004;
}




Bits error versus x




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