x - \frac{y}{1 + \frac{x \cdot y}{2}}x - \frac{y}{1 + \frac{y}{\frac{2}{x}}}double code(double x, double y) {
return ((double) (x - ((double) (y / ((double) (1.0 + ((double) (((double) (x * y)) / 2.0))))))));
}
double code(double x, double y) {
return ((double) (x - ((double) (y / ((double) (1.0 + ((double) (y / ((double) (2.0 / x))))))))));
}



Bits error versus x



Bits error versus y
Results
Initial program 0.0
rmApplied *-commutative0.0
Applied associate-/l*0.0
Final simplification0.0
herbie shell --seed 2020114 +o rules:numerics
(FPCore (x y)
:name "Data.Number.Erf:$cinvnormcdf from erf-2.0.0.0, B"
:precision binary64
(- x (/ y (+ 1 (/ (* x y) 2)))))