\left(3 \cdot \sqrt{x}\right) \cdot \left(\left(y + \frac{1}{x \cdot 9}\right) - 1\right)\left(3 \cdot \sqrt{x}\right) \cdot \left(\left(y + \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{x} \cdot \frac{\sqrt[3]{1}}{9}\right) - 1\right)double f(double x, double y) {
double r414582 = 3.0;
double r414583 = x;
double r414584 = sqrt(r414583);
double r414585 = r414582 * r414584;
double r414586 = y;
double r414587 = 1.0;
double r414588 = 9.0;
double r414589 = r414583 * r414588;
double r414590 = r414587 / r414589;
double r414591 = r414586 + r414590;
double r414592 = r414591 - r414587;
double r414593 = r414585 * r414592;
return r414593;
}
double f(double x, double y) {
double r414594 = 3.0;
double r414595 = x;
double r414596 = sqrt(r414595);
double r414597 = r414594 * r414596;
double r414598 = y;
double r414599 = 1.0;
double r414600 = cbrt(r414599);
double r414601 = r414600 * r414600;
double r414602 = r414601 / r414595;
double r414603 = 9.0;
double r414604 = r414600 / r414603;
double r414605 = r414602 * r414604;
double r414606 = r414598 + r414605;
double r414607 = r414606 - r414599;
double r414608 = r414597 * r414607;
return r414608;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.4 |
|---|---|
| Target | 0.4 |
| Herbie | 0.4 |
Initial program 0.4
rmApplied add-cube-cbrt0.4
Applied times-frac0.4
Final simplification0.4
herbie shell --seed 2020045
(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)))