\frac{x}{1 + \sqrt{x + 1}}x \cdot \frac{1}{1 + \sqrt{x + 1}}double f(double x) {
double r116216 = x;
double r116217 = 1.0;
double r116218 = r116216 + r116217;
double r116219 = sqrt(r116218);
double r116220 = r116217 + r116219;
double r116221 = r116216 / r116220;
return r116221;
}
double f(double x) {
double r116222 = x;
double r116223 = 1.0;
double r116224 = 1.0;
double r116225 = r116222 + r116224;
double r116226 = sqrt(r116225);
double r116227 = r116224 + r116226;
double r116228 = r116223 / r116227;
double r116229 = r116222 * r116228;
return r116229;
}



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