\frac{x}{1.0 + \sqrt{x + 1.0}}x \cdot \frac{1}{1.0 + \sqrt{x + 1.0}}double f(double x) {
double r7127416 = x;
double r7127417 = 1.0;
double r7127418 = r7127416 + r7127417;
double r7127419 = sqrt(r7127418);
double r7127420 = r7127417 + r7127419;
double r7127421 = r7127416 / r7127420;
return r7127421;
}
double f(double x) {
double r7127422 = x;
double r7127423 = 1.0;
double r7127424 = 1.0;
double r7127425 = r7127422 + r7127424;
double r7127426 = sqrt(r7127425);
double r7127427 = r7127424 + r7127426;
double r7127428 = r7127423 / r7127427;
double r7127429 = r7127422 * r7127428;
return r7127429;
}



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