\frac{e^{a}}{e^{a} + e^{b}}\log \left({\left(e^{\frac{1}{e^{a} + e^{b}}}\right)}^{\left(e^{a}\right)}\right)double f(double a, double b) {
double r126474 = a;
double r126475 = exp(r126474);
double r126476 = b;
double r126477 = exp(r126476);
double r126478 = r126475 + r126477;
double r126479 = r126475 / r126478;
return r126479;
}
double f(double a, double b) {
double r126480 = 1.0;
double r126481 = a;
double r126482 = exp(r126481);
double r126483 = b;
double r126484 = exp(r126483);
double r126485 = r126482 + r126484;
double r126486 = r126480 / r126485;
double r126487 = exp(r126486);
double r126488 = pow(r126487, r126482);
double r126489 = log(r126488);
return r126489;
}




Bits error versus a




Bits error versus b
Results
| Original | 0.7 |
|---|---|
| Target | 0.0 |
| Herbie | 0.7 |
Initial program 0.7
rmApplied add-exp-log0.7
Applied div-exp0.7
rmApplied log1p-expm1-u0.7
rmApplied add-log-exp0.8
Simplified0.7
Final simplification0.7
herbie shell --seed 2020025 +o rules:numerics
(FPCore (a b)
:name "Quotient of sum of exps"
:precision binary64
:herbie-target
(/ 1 (+ 1 (exp (- b a))))
(/ (exp a) (+ (exp a) (exp b))))