\frac{x}{1.0 + \sqrt{x + 1.0}}\frac{x}{1.0 + \sqrt{1.0 + x}}double f(double x) {
double r8175281 = x;
double r8175282 = 1.0;
double r8175283 = r8175281 + r8175282;
double r8175284 = sqrt(r8175283);
double r8175285 = r8175282 + r8175284;
double r8175286 = r8175281 / r8175285;
return r8175286;
}
double f(double x) {
double r8175287 = x;
double r8175288 = 1.0;
double r8175289 = r8175288 + r8175287;
double r8175290 = sqrt(r8175289);
double r8175291 = r8175288 + r8175290;
double r8175292 = r8175287 / r8175291;
return r8175292;
}



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