\left(1 - \frac{1}{x \cdot 9}\right) - \frac{y}{3 \cdot \sqrt{x}}\left(1 - \frac{\frac{\frac{1}{x}}{\sqrt[3]{9} \cdot \sqrt[3]{9}}}{\sqrt[3]{9}}\right) - \frac{y}{3 \cdot \sqrt{x}}double f(double x, double y) {
double r338453 = 1.0;
double r338454 = x;
double r338455 = 9.0;
double r338456 = r338454 * r338455;
double r338457 = r338453 / r338456;
double r338458 = r338453 - r338457;
double r338459 = y;
double r338460 = 3.0;
double r338461 = sqrt(r338454);
double r338462 = r338460 * r338461;
double r338463 = r338459 / r338462;
double r338464 = r338458 - r338463;
return r338464;
}
double f(double x, double y) {
double r338465 = 1.0;
double r338466 = x;
double r338467 = r338465 / r338466;
double r338468 = 9.0;
double r338469 = cbrt(r338468);
double r338470 = r338469 * r338469;
double r338471 = r338467 / r338470;
double r338472 = r338471 / r338469;
double r338473 = r338465 - r338472;
double r338474 = y;
double r338475 = 3.0;
double r338476 = sqrt(r338466);
double r338477 = r338475 * r338476;
double r338478 = r338474 / r338477;
double r338479 = r338473 - r338478;
return r338479;
}




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 associate-/r*0.3
Final simplification0.3
herbie shell --seed 2020062
(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)))))