\sqrt{x - 1} \cdot \sqrt{x}
x - \left(0.5 + \left(\frac{0.125}{x} + \frac{0.0625}{x \cdot x}\right)\right)
(FPCore (x) :precision binary64 (* (sqrt (- x 1.0)) (sqrt x)))
(FPCore (x) :precision binary64 (- x (+ 0.5 (+ (/ 0.125 x) (/ 0.0625 (* x x))))))
double code(double x) {
return sqrt(x - 1.0) * sqrt(x);
}
double code(double x) {
return x - (0.5 + ((0.125 / x) + (0.0625 / (x * x))));
}



Bits error versus x
Results
Initial program 0.5
Taylor expanded in x around inf 0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2021280
(FPCore (x)
:name "sqrt times"
:precision binary64
(* (sqrt (- x 1.0)) (sqrt x)))