\log \left(e^{a} + 1\right) + \log \left(e^{b} + 1\right)\log \left(e^{a} + 1\right) + \log \left(e^{b} + 1\right)double code(double a, double b) {
return ((double) (((double) log(((double) (((double) exp(a)) + 1.0)))) + ((double) log(((double) (((double) exp(b)) + 1.0))))));
}
double code(double a, double b) {
return ((double) (((double) log(((double) (((double) exp(a)) + 1.0)))) + ((double) log(((double) (((double) exp(b)) + 1.0))))));
}



Bits error versus a



Bits error versus b
Results
Initial program 0.8
Final simplification0.8
herbie shell --seed 2020153
(FPCore (a b)
:name "(+ (log (+ (exp a) 1)) (log (+ (exp b) 1)))"
:precision binary64
(+ (log (+ (exp a) 1.0)) (log (+ (exp b) 1.0))))