\left(3 \cdot \sqrt{x}\right) \cdot \left(\left(y + \frac{1}{x \cdot 9}\right) - 1\right)3 \cdot \left(\sqrt{x} \cdot \left(\left(y + \frac{\frac{1}{x}}{9}\right) - 1\right)\right)double f(double x, double y) {
double r316571 = 3.0;
double r316572 = x;
double r316573 = sqrt(r316572);
double r316574 = r316571 * r316573;
double r316575 = y;
double r316576 = 1.0;
double r316577 = 9.0;
double r316578 = r316572 * r316577;
double r316579 = r316576 / r316578;
double r316580 = r316575 + r316579;
double r316581 = r316580 - r316576;
double r316582 = r316574 * r316581;
return r316582;
}
double f(double x, double y) {
double r316583 = 3.0;
double r316584 = x;
double r316585 = sqrt(r316584);
double r316586 = y;
double r316587 = 1.0;
double r316588 = r316587 / r316584;
double r316589 = 9.0;
double r316590 = r316588 / r316589;
double r316591 = r316586 + r316590;
double r316592 = r316591 - r316587;
double r316593 = r316585 * r316592;
double r316594 = r316583 * r316593;
return r316594;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.4 |
|---|---|
| Target | 0.4 |
| Herbie | 0.4 |
Initial program 0.4
rmApplied associate-*l*0.4
rmApplied associate-/r*0.4
Final simplification0.4
herbie shell --seed 2019325
(FPCore (x y)
:name "Numeric.SpecFunctions:incompleteGamma from math-functions-0.1.5.2, B"
:precision binary64
:herbie-target
(* 3 (+ (* y (sqrt x)) (* (- (/ 1 (* x 9)) 1) (sqrt x))))
(* (* 3 (sqrt x)) (- (+ y (/ 1 (* x 9))) 1)))