\frac{-\left(f + n\right)}{f - n}\mathsf{log1p}\left(\mathsf{expm1}\left(\frac{-\left(f + n\right)}{f - n}\right)\right)double f(double f, double n) {
double r32625 = f;
double r32626 = n;
double r32627 = r32625 + r32626;
double r32628 = -r32627;
double r32629 = r32625 - r32626;
double r32630 = r32628 / r32629;
return r32630;
}
double f(double f, double n) {
double r32631 = f;
double r32632 = n;
double r32633 = r32631 + r32632;
double r32634 = -r32633;
double r32635 = r32631 - r32632;
double r32636 = r32634 / r32635;
double r32637 = expm1(r32636);
double r32638 = log1p(r32637);
return r32638;
}



Bits error versus f



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