\left(1 - \frac{1}{x \cdot 9}\right) - \frac{y}{3 \cdot \sqrt{x}}\left(1 - \frac{\frac{1}{x}}{9}\right) - y \cdot \frac{1}{3 \cdot \sqrt{x}}double f(double x, double y) {
double r369707 = 1.0;
double r369708 = x;
double r369709 = 9.0;
double r369710 = r369708 * r369709;
double r369711 = r369707 / r369710;
double r369712 = r369707 - r369711;
double r369713 = y;
double r369714 = 3.0;
double r369715 = sqrt(r369708);
double r369716 = r369714 * r369715;
double r369717 = r369713 / r369716;
double r369718 = r369712 - r369717;
return r369718;
}
double f(double x, double y) {
double r369719 = 1.0;
double r369720 = x;
double r369721 = r369719 / r369720;
double r369722 = 9.0;
double r369723 = r369721 / r369722;
double r369724 = r369719 - r369723;
double r369725 = y;
double r369726 = 1.0;
double r369727 = 3.0;
double r369728 = sqrt(r369720);
double r369729 = r369727 * r369728;
double r369730 = r369726 / r369729;
double r369731 = r369725 * r369730;
double r369732 = r369724 - r369731;
return r369732;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.2 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 0.2
rmApplied associate-/r*0.2
rmApplied div-inv0.2
Final simplification0.2
herbie shell --seed 2020036 +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)))))