\frac{e^{a}}{e^{a} + e^{b}}\log \left({\left(e^{e^{a}}\right)}^{\left(\frac{1}{e^{a} + e^{b}}\right)}\right)double f(double a, double b) {
double r6816396 = a;
double r6816397 = exp(r6816396);
double r6816398 = b;
double r6816399 = exp(r6816398);
double r6816400 = r6816397 + r6816399;
double r6816401 = r6816397 / r6816400;
return r6816401;
}
double f(double a, double b) {
double r6816402 = a;
double r6816403 = exp(r6816402);
double r6816404 = exp(r6816403);
double r6816405 = 1.0;
double r6816406 = b;
double r6816407 = exp(r6816406);
double r6816408 = r6816403 + r6816407;
double r6816409 = r6816405 / r6816408;
double r6816410 = pow(r6816404, r6816409);
double r6816411 = log(r6816410);
return r6816411;
}




Bits error versus a




Bits error versus b
Results
| Original | 0.6 |
|---|---|
| Target | 0.0 |
| Herbie | 0.7 |
Initial program 0.6
rmApplied add-exp-log0.6
Applied div-exp0.5
rmApplied add-log-exp0.6
Simplified0.7
rmApplied div-inv0.7
Applied exp-prod0.7
Final simplification0.7
herbie shell --seed 2019169
(FPCore (a b)
:name "Quotient of sum of exps"
:herbie-target
(/ 1.0 (+ 1.0 (exp (- b a))))
(/ (exp a) (+ (exp a) (exp b))))