\frac{x}{1 + \sqrt{x + 1}}x \cdot \frac{1}{1 + \sqrt{x + 1}}double f(double x) {
double r117298 = x;
double r117299 = 1.0;
double r117300 = r117298 + r117299;
double r117301 = sqrt(r117300);
double r117302 = r117299 + r117301;
double r117303 = r117298 / r117302;
return r117303;
}
double f(double x) {
double r117304 = x;
double r117305 = 1.0;
double r117306 = 1.0;
double r117307 = r117304 + r117306;
double r117308 = sqrt(r117307);
double r117309 = r117306 + r117308;
double r117310 = r117305 / r117309;
double r117311 = r117304 * r117310;
return r117311;
}



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