x - \frac{y}{1 + \frac{x \cdot y}{2}}x - \frac{1}{\mathsf{fma}\left(0.5, x, \frac{1}{y}\right)}double f(double x, double y) {
double r191629 = x;
double r191630 = y;
double r191631 = 1.0;
double r191632 = r191629 * r191630;
double r191633 = 2.0;
double r191634 = r191632 / r191633;
double r191635 = r191631 + r191634;
double r191636 = r191630 / r191635;
double r191637 = r191629 - r191636;
return r191637;
}
double f(double x, double y) {
double r191638 = x;
double r191639 = 1.0;
double r191640 = 0.5;
double r191641 = 1.0;
double r191642 = y;
double r191643 = r191641 / r191642;
double r191644 = fma(r191640, r191638, r191643);
double r191645 = r191639 / r191644;
double r191646 = r191638 - r191645;
return r191646;
}



Bits error versus x



Bits error versus y
Initial program 0.0
rmApplied clear-num0.1
Simplified0.1
Taylor expanded around 0 0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019303 +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)))))