x \cdot e^{y \cdot y}\left(x \cdot {\left(e^{y}\right)}^{\left(\frac{y}{2}\right)}\right) \cdot \sqrt{e^{y \cdot y}}double f(double x, double y) {
double r886555 = x;
double r886556 = y;
double r886557 = r886556 * r886556;
double r886558 = exp(r886557);
double r886559 = r886555 * r886558;
return r886559;
}
double f(double x, double y) {
double r886560 = x;
double r886561 = y;
double r886562 = exp(r886561);
double r886563 = 2.0;
double r886564 = r886561 / r886563;
double r886565 = pow(r886562, r886564);
double r886566 = r886560 * r886565;
double r886567 = r886561 * r886561;
double r886568 = exp(r886567);
double r886569 = sqrt(r886568);
double r886570 = r886566 * r886569;
return r886570;
}




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.1
Applied associate-*r*0.1
rmApplied add-log-exp0.1
Applied exp-to-pow0.1
Applied sqrt-pow10.1
Final simplification0.1
herbie shell --seed 2020024 +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))))