\left(1 - \frac{1}{x \cdot 9}\right) - \frac{y}{3 \cdot \sqrt{x}}\left(1 - \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{x} \cdot \frac{\sqrt[3]{1}}{9}\right) - \frac{\frac{y}{3}}{\sqrt{x}}double f(double x, double y) {
double r367439 = 1.0;
double r367440 = x;
double r367441 = 9.0;
double r367442 = r367440 * r367441;
double r367443 = r367439 / r367442;
double r367444 = r367439 - r367443;
double r367445 = y;
double r367446 = 3.0;
double r367447 = sqrt(r367440);
double r367448 = r367446 * r367447;
double r367449 = r367445 / r367448;
double r367450 = r367444 - r367449;
return r367450;
}
double f(double x, double y) {
double r367451 = 1.0;
double r367452 = cbrt(r367451);
double r367453 = r367452 * r367452;
double r367454 = x;
double r367455 = r367453 / r367454;
double r367456 = 9.0;
double r367457 = r367452 / r367456;
double r367458 = r367455 * r367457;
double r367459 = r367451 - r367458;
double r367460 = y;
double r367461 = 3.0;
double r367462 = r367460 / r367461;
double r367463 = sqrt(r367454);
double r367464 = r367462 / r367463;
double r367465 = r367459 - r367464;
return r367465;
}




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 add-cube-cbrt0.2
Applied times-frac0.3
Final simplification0.3
herbie shell --seed 2019322
(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)))))