\frac{x}{y + x}\mathsf{expm1}\left(\mathsf{log1p}\left(\frac{x}{y + x}\right)\right)double f(double x, double y) {
double r255067 = x;
double r255068 = y;
double r255069 = r255068 + r255067;
double r255070 = r255067 / r255069;
return r255070;
}
double f(double x, double y) {
double r255071 = x;
double r255072 = y;
double r255073 = r255072 + r255071;
double r255074 = r255071 / r255073;
double r255075 = log1p(r255074);
double r255076 = expm1(r255075);
return r255076;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.0
rmApplied expm1-log1p-u0.0
Final simplification0.0
herbie shell --seed 2020001 +o rules:numerics
(FPCore (x y)
:name "AI.Clustering.Hierarchical.Internal:average from clustering-0.2.1, B"
:precision binary64
(/ x (+ y x)))