\frac{x}{1 + \sqrt{x + 1}}\frac{x}{1 + \sqrt{x + 1}}double f(double x) {
double r128900 = x;
double r128901 = 1.0;
double r128902 = r128900 + r128901;
double r128903 = sqrt(r128902);
double r128904 = r128901 + r128903;
double r128905 = r128900 / r128904;
return r128905;
}
double f(double x) {
double r128906 = x;
double r128907 = 1.0;
double r128908 = r128906 + r128907;
double r128909 = sqrt(r128908);
double r128910 = r128907 + r128909;
double r128911 = r128906 / r128910;
return r128911;
}



Bits error versus x
Results
Initial program 0.2
Final simplification0.2
herbie shell --seed 2020042 +o rules:numerics
(FPCore (x)
:name "Numeric.Log:$clog1p from log-domain-0.10.2.1, B"
:precision binary64
(/ x (+ 1 (sqrt (+ x 1)))))