\left(\sqrt{x + 2} - \sqrt{x + 1}\right) + \sqrt{x}\left(\sqrt{x + 2} - \sqrt{x + 1}\right) + \sqrt{x}double code(double x) {
return ((double) (((double) (((double) sqrt(((double) (x + 2.0)))) - ((double) sqrt(((double) (x + 1.0)))))) + ((double) sqrt(x))));
}
double code(double x) {
return ((double) (((double) (((double) sqrt(((double) (x + 2.0)))) - ((double) sqrt(((double) (x + 1.0)))))) + ((double) sqrt(x))));
}



Bits error versus x
Results
Initial program 0.8
Final simplification0.8
herbie shell --seed 2020153
(FPCore (x)
:name "(+ (- (sqrt (+ x 2)) (sqrt (+ x 1))) (sqrt x))"
:precision binary64
(+ (- (sqrt (+ x 2.0)) (sqrt (+ x 1.0))) (sqrt x)))