\frac{x}{x + y}\mathsf{expm1}\left(\mathsf{log1p}\left(\frac{x}{x + y}\right)\right)double code(double x, double y) {
return (x / (x + y));
}
double code(double x, double y) {
return expm1(log1p((x / (x + y))));
}



Bits error versus x



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