\frac{x}{1.0 + \sqrt{x + 1.0}}x \cdot \frac{1}{1.0 + \sqrt{x + 1.0}}double f(double x) {
double r5710530 = x;
double r5710531 = 1.0;
double r5710532 = r5710530 + r5710531;
double r5710533 = sqrt(r5710532);
double r5710534 = r5710531 + r5710533;
double r5710535 = r5710530 / r5710534;
return r5710535;
}
double f(double x) {
double r5710536 = x;
double r5710537 = 1.0;
double r5710538 = 1.0;
double r5710539 = r5710536 + r5710538;
double r5710540 = sqrt(r5710539);
double r5710541 = r5710538 + r5710540;
double r5710542 = r5710537 / r5710541;
double r5710543 = r5710536 * r5710542;
return r5710543;
}



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