\frac{e^{a}}{e^{a} + e^{b}}\frac{e^{a}}{e^{a} + e^{b}}double f(double a, double b) {
double r156558 = a;
double r156559 = exp(r156558);
double r156560 = b;
double r156561 = exp(r156560);
double r156562 = r156559 + r156561;
double r156563 = r156559 / r156562;
return r156563;
}
double f(double a, double b) {
double r156564 = a;
double r156565 = exp(r156564);
double r156566 = b;
double r156567 = exp(r156566);
double r156568 = r156565 + r156567;
double r156569 = r156565 / r156568;
return r156569;
}




Bits error versus a




Bits error versus b
Results
| Original | 0.6 |
|---|---|
| Target | 0.0 |
| Herbie | 0.6 |
Initial program 0.6
Final simplification0.6
herbie shell --seed 2019194 +o rules:numerics
(FPCore (a b)
:name "Quotient of sum of exps"
:herbie-target
(/ 1.0 (+ 1.0 (exp (- b a))))
(/ (exp a) (+ (exp a) (exp b))))