\left(1 - \frac{1}{x \cdot 9}\right) - \frac{y}{3 \cdot \sqrt{x}}\left(1 - \frac{\frac{1}{9}}{x}\right) - \frac{\frac{y}{\sqrt{x}}}{3}double f(double x, double y) {
double r441798 = 1.0;
double r441799 = x;
double r441800 = 9.0;
double r441801 = r441799 * r441800;
double r441802 = r441798 / r441801;
double r441803 = r441798 - r441802;
double r441804 = y;
double r441805 = 3.0;
double r441806 = sqrt(r441799);
double r441807 = r441805 * r441806;
double r441808 = r441804 / r441807;
double r441809 = r441803 - r441808;
return r441809;
}
double f(double x, double y) {
double r441810 = 1.0;
double r441811 = 9.0;
double r441812 = r441810 / r441811;
double r441813 = x;
double r441814 = r441812 / r441813;
double r441815 = r441810 - r441814;
double r441816 = y;
double r441817 = sqrt(r441813);
double r441818 = r441816 / r441817;
double r441819 = 3.0;
double r441820 = r441818 / r441819;
double r441821 = r441815 - r441820;
return r441821;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.2 |
|---|---|
| Target | 0.2 |
| Herbie | 0.3 |
Initial program 0.2
rmApplied *-un-lft-identity0.2
Applied *-un-lft-identity0.2
Applied distribute-lft-out--0.2
Simplified0.3
Final simplification0.3
herbie shell --seed 2020043 +o rules:numerics
(FPCore (x y)
:name "Numeric.SpecFunctions:invIncompleteGamma from math-functions-0.1.5.2, D"
:precision binary64
:herbie-target
(- (- 1 (/ (/ 1 x) 9)) (/ y (* 3 (sqrt x))))
(- (- 1 (/ 1 (* x 9))) (/ y (* 3 (sqrt x)))))