\frac{x}{y + x}\mathsf{expm1}\left(\mathsf{log1p}\left(\frac{x}{y + x}\right)\right)double f(double x, double y) {
double r168939 = x;
double r168940 = y;
double r168941 = r168940 + r168939;
double r168942 = r168939 / r168941;
return r168942;
}
double f(double x, double y) {
double r168943 = x;
double r168944 = y;
double r168945 = r168944 + r168943;
double r168946 = r168943 / r168945;
double r168947 = log1p(r168946);
double r168948 = expm1(r168947);
return r168948;
}



Bits error versus x



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