\left(1 - \frac{1}{x \cdot 9}\right) - \frac{y}{3 \cdot \sqrt{x}}
1 - \mathsf{fma}\left(y, \sqrt{0.1111111111111111 \cdot \frac{1}{x}}, \frac{0.1111111111111111}{x}\right)
(FPCore (x y) :precision binary64 (- (- 1.0 (/ 1.0 (* x 9.0))) (/ y (* 3.0 (sqrt x)))))
(FPCore (x y) :precision binary64 (- 1.0 (fma y (sqrt (* 0.1111111111111111 (/ 1.0 x))) (/ 0.1111111111111111 x))))
double code(double x, double y) {
return (1.0 - (1.0 / (x * 9.0))) - (y / (3.0 * sqrt(x)));
}
double code(double x, double y) {
return 1.0 - fma(y, sqrt(0.1111111111111111 * (1.0 / x)), (0.1111111111111111 / x));
}




Bits error versus x




Bits error versus y
| Original | 0.2 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 0.2
Taylor expanded in y around 0 0.3
Simplified0.3
Taylor expanded in y around 0 0.3
Simplified0.2
Applied div-inv_binary640.2
Final simplification0.2
herbie shell --seed 2022077
(FPCore (x y)
:name "Numeric.SpecFunctions:invIncompleteGamma from math-functions-0.1.5.2, D"
:precision binary64
:herbie-target
(- (- 1.0 (/ (/ 1.0 x) 9.0)) (/ y (* 3.0 (sqrt x))))
(- (- 1.0 (/ 1.0 (* x 9.0))) (/ y (* 3.0 (sqrt x)))))