\left(1 - \frac{1}{x \cdot 9}\right) - \frac{y}{3 \cdot \sqrt{x}}\left(1 - \frac{\sqrt{1}}{x} \cdot \frac{\sqrt{1}}{9}\right) - \frac{1}{\frac{3 \cdot \sqrt{x}}{y}}double f(double x, double y) {
double r288490 = 1.0;
double r288491 = x;
double r288492 = 9.0;
double r288493 = r288491 * r288492;
double r288494 = r288490 / r288493;
double r288495 = r288490 - r288494;
double r288496 = y;
double r288497 = 3.0;
double r288498 = sqrt(r288491);
double r288499 = r288497 * r288498;
double r288500 = r288496 / r288499;
double r288501 = r288495 - r288500;
return r288501;
}
double f(double x, double y) {
double r288502 = 1.0;
double r288503 = sqrt(r288502);
double r288504 = x;
double r288505 = r288503 / r288504;
double r288506 = 9.0;
double r288507 = r288503 / r288506;
double r288508 = r288505 * r288507;
double r288509 = r288502 - r288508;
double r288510 = 1.0;
double r288511 = 3.0;
double r288512 = sqrt(r288504);
double r288513 = r288511 * r288512;
double r288514 = y;
double r288515 = r288513 / r288514;
double r288516 = r288510 / r288515;
double r288517 = r288509 - r288516;
return r288517;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.2 |
|---|---|
| Target | 0.2 |
| Herbie | 0.3 |
Initial program 0.2
rmApplied add-sqr-sqrt0.2
Applied times-frac0.3
rmApplied clear-num0.3
Final simplification0.3
herbie shell --seed 2019208
(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)))))