\left(1 - \frac{1}{x \cdot 9}\right) - \frac{y}{3 \cdot \sqrt{x}}\left(1 - \frac{\frac{1}{x}}{9}\right) - \frac{y}{3} \cdot \frac{1}{\sqrt{x}}double f(double x, double y) {
double r493665 = 1.0;
double r493666 = x;
double r493667 = 9.0;
double r493668 = r493666 * r493667;
double r493669 = r493665 / r493668;
double r493670 = r493665 - r493669;
double r493671 = y;
double r493672 = 3.0;
double r493673 = sqrt(r493666);
double r493674 = r493672 * r493673;
double r493675 = r493671 / r493674;
double r493676 = r493670 - r493675;
return r493676;
}
double f(double x, double y) {
double r493677 = 1.0;
double r493678 = x;
double r493679 = r493677 / r493678;
double r493680 = 9.0;
double r493681 = r493679 / r493680;
double r493682 = r493677 - r493681;
double r493683 = y;
double r493684 = 3.0;
double r493685 = r493683 / r493684;
double r493686 = 1.0;
double r493687 = sqrt(r493678);
double r493688 = r493686 / r493687;
double r493689 = r493685 * r493688;
double r493690 = r493682 - r493689;
return r493690;
}




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 associate-/r*0.2
rmApplied div-inv0.2
Final simplification0.2
herbie shell --seed 2019351 +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)))))