\frac{-\left(f + n\right)}{f - n}\frac{1}{\mathsf{log1p}\left(e^{\frac{f - n}{-\left(f + n\right)}} - 1\right)}double f(double f, double n) {
double r33597 = f;
double r33598 = n;
double r33599 = r33597 + r33598;
double r33600 = -r33599;
double r33601 = r33597 - r33598;
double r33602 = r33600 / r33601;
return r33602;
}
double f(double f, double n) {
double r33603 = 1.0;
double r33604 = f;
double r33605 = n;
double r33606 = r33604 - r33605;
double r33607 = r33604 + r33605;
double r33608 = -r33607;
double r33609 = r33606 / r33608;
double r33610 = exp(r33609);
double r33611 = r33610 - r33603;
double r33612 = log1p(r33611);
double r33613 = r33603 / r33612;
return r33613;
}



Bits error versus f



Bits error versus n
Results
Initial program 0.0
rmApplied clear-num0.0
rmApplied log1p-expm1-u0.0
rmApplied expm1-udef0.0
Final simplification0.0
herbie shell --seed 2019323 +o rules:numerics
(FPCore (f n)
:name "subtraction fraction"
:precision binary64
(/ (- (+ f n)) (- f n)))