\frac{x}{1 + \sqrt{x + 1}}\frac{1}{\frac{1 + \sqrt{x + 1}}{x}}double f(double x) {
double r102413 = x;
double r102414 = 1.0;
double r102415 = r102413 + r102414;
double r102416 = sqrt(r102415);
double r102417 = r102414 + r102416;
double r102418 = r102413 / r102417;
return r102418;
}
double f(double x) {
double r102419 = 1.0;
double r102420 = 1.0;
double r102421 = x;
double r102422 = r102421 + r102420;
double r102423 = sqrt(r102422);
double r102424 = r102420 + r102423;
double r102425 = r102424 / r102421;
double r102426 = r102419 / r102425;
return r102426;
}



Bits error versus x
Results
Initial program 0.2
rmApplied clear-num0.3
Final simplification0.3
herbie shell --seed 2019291
(FPCore (x)
:name "Numeric.Log:$clog1p from log-domain-0.10.2.1, B"
:precision binary64
(/ x (+ 1 (sqrt (+ x 1)))))