\sqrt{x + 1} - \sqrt{x}\frac{1}{\sqrt{x + 1} + \sqrt{x}}double f(double x) {
double r7292934 = x;
double r7292935 = 1.0;
double r7292936 = r7292934 + r7292935;
double r7292937 = sqrt(r7292936);
double r7292938 = sqrt(r7292934);
double r7292939 = r7292937 - r7292938;
return r7292939;
}
double f(double x) {
double r7292940 = 1.0;
double r7292941 = x;
double r7292942 = r7292941 + r7292940;
double r7292943 = sqrt(r7292942);
double r7292944 = sqrt(r7292941);
double r7292945 = r7292943 + r7292944;
double r7292946 = r7292940 / r7292945;
return r7292946;
}




Bits error versus x
Results
| Original | 29.9 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 29.9
rmApplied flip--29.7
Taylor expanded around 0 0.2
Final simplification0.2
herbie shell --seed 2019120
(FPCore (x)
:name "2sqrt (example 3.1)"
:herbie-target
(/ 1 (+ (sqrt (+ x 1)) (sqrt x)))
(- (sqrt (+ x 1)) (sqrt x)))