\frac{x}{1 + \sqrt{x + 1}}\frac{x}{1 + \sqrt{1 + x}}double f(double x) {
double r5948064 = x;
double r5948065 = 1.0;
double r5948066 = r5948064 + r5948065;
double r5948067 = sqrt(r5948066);
double r5948068 = r5948065 + r5948067;
double r5948069 = r5948064 / r5948068;
return r5948069;
}
double f(double x) {
double r5948070 = x;
double r5948071 = 1.0;
double r5948072 = r5948071 + r5948070;
double r5948073 = sqrt(r5948072);
double r5948074 = r5948071 + r5948073;
double r5948075 = r5948070 / r5948074;
return r5948075;
}



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