\left(1 - \frac{1}{x \cdot 9}\right) - \frac{y}{3 \cdot \sqrt{x}}\left(1 - \frac{\frac{1}{x}}{9}\right) - \frac{1}{3} \cdot \frac{y}{\sqrt{x}}double f(double x, double y) {
double r325170 = 1.0;
double r325171 = x;
double r325172 = 9.0;
double r325173 = r325171 * r325172;
double r325174 = r325170 / r325173;
double r325175 = r325170 - r325174;
double r325176 = y;
double r325177 = 3.0;
double r325178 = sqrt(r325171);
double r325179 = r325177 * r325178;
double r325180 = r325176 / r325179;
double r325181 = r325175 - r325180;
return r325181;
}
double f(double x, double y) {
double r325182 = 1.0;
double r325183 = x;
double r325184 = r325182 / r325183;
double r325185 = 9.0;
double r325186 = r325184 / r325185;
double r325187 = r325182 - r325186;
double r325188 = 1.0;
double r325189 = 3.0;
double r325190 = r325188 / r325189;
double r325191 = y;
double r325192 = sqrt(r325183);
double r325193 = r325191 / r325192;
double r325194 = r325190 * r325193;
double r325195 = r325187 - r325194;
return r325195;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.2 |
|---|---|
| Target | 0.2 |
| Herbie | 0.3 |
Initial program 0.2
rmApplied associate-/r*0.2
rmApplied *-un-lft-identity0.2
Applied times-frac0.3
Final simplification0.3
herbie shell --seed 2020039 +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)))))