\sqrt{x + 1} - \sqrt{x}\frac{1}{\sqrt{x + 1} + \sqrt{x}}double f(double x) {
double r21430984 = x;
double r21430985 = 1.0;
double r21430986 = r21430984 + r21430985;
double r21430987 = sqrt(r21430986);
double r21430988 = sqrt(r21430984);
double r21430989 = r21430987 - r21430988;
return r21430989;
}
double f(double x) {
double r21430990 = 1.0;
double r21430991 = x;
double r21430992 = r21430991 + r21430990;
double r21430993 = sqrt(r21430992);
double r21430994 = sqrt(r21430991);
double r21430995 = r21430993 + r21430994;
double r21430996 = r21430990 / r21430995;
return r21430996;
}




Bits error versus x
Results
| Original | 29.6 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 29.6
rmApplied flip--29.4
Simplified29.0
Taylor expanded around 0 0.2
Final simplification0.2
herbie shell --seed 2019172
(FPCore (x)
:name "Main:bigenough3 from C"
:herbie-target
(/ 1.0 (+ (sqrt (+ x 1.0)) (sqrt x)))
(- (sqrt (+ x 1.0)) (sqrt x)))