\sqrt{x + 1} - \sqrt{x}\frac{1}{\sqrt{x} + \sqrt{x + 1}}double f(double x) {
double r105236 = x;
double r105237 = 1.0;
double r105238 = r105236 + r105237;
double r105239 = sqrt(r105238);
double r105240 = sqrt(r105236);
double r105241 = r105239 - r105240;
return r105241;
}
double f(double x) {
double r105242 = 1.0;
double r105243 = x;
double r105244 = sqrt(r105243);
double r105245 = r105243 + r105242;
double r105246 = sqrt(r105245);
double r105247 = r105244 + r105246;
double r105248 = r105242 / r105247;
return r105248;
}




Bits error versus x
Results
| Original | 29.6 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 29.6
rmApplied flip--29.4
Simplified0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2019323 +o rules:numerics
(FPCore (x)
:name "2sqrt (example 3.1)"
:precision binary64
:herbie-target
(/ 1 (+ (sqrt (+ x 1)) (sqrt x)))
(- (sqrt (+ x 1)) (sqrt x)))