\sqrt{x + 1} - \sqrt{x}\frac{1}{\sqrt{x + 1} + \sqrt{x}}double f(double x) {
double r124909 = x;
double r124910 = 1.0;
double r124911 = r124909 + r124910;
double r124912 = sqrt(r124911);
double r124913 = sqrt(r124909);
double r124914 = r124912 - r124913;
return r124914;
}
double f(double x) {
double r124915 = 1.0;
double r124916 = x;
double r124917 = r124916 + r124915;
double r124918 = sqrt(r124917);
double r124919 = sqrt(r124916);
double r124920 = r124918 + r124919;
double r124921 = r124915 / r124920;
return r124921;
}




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