\left(3 \cdot \sqrt{x}\right) \cdot \left(\left(y + \frac{1}{x \cdot 9}\right) - 1\right)\left(3 \cdot y\right) \cdot \sqrt{x} + 3 \cdot \left(\left(\frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{x} \cdot \frac{\sqrt[3]{1}}{9} - 1\right) \cdot \sqrt{x}\right)double f(double x, double y) {
double r398428 = 3.0;
double r398429 = x;
double r398430 = sqrt(r398429);
double r398431 = r398428 * r398430;
double r398432 = y;
double r398433 = 1.0;
double r398434 = 9.0;
double r398435 = r398429 * r398434;
double r398436 = r398433 / r398435;
double r398437 = r398432 + r398436;
double r398438 = r398437 - r398433;
double r398439 = r398431 * r398438;
return r398439;
}
double f(double x, double y) {
double r398440 = 3.0;
double r398441 = y;
double r398442 = r398440 * r398441;
double r398443 = x;
double r398444 = sqrt(r398443);
double r398445 = r398442 * r398444;
double r398446 = 1.0;
double r398447 = cbrt(r398446);
double r398448 = r398447 * r398447;
double r398449 = r398448 / r398443;
double r398450 = 9.0;
double r398451 = r398447 / r398450;
double r398452 = r398449 * r398451;
double r398453 = r398452 - r398446;
double r398454 = r398453 * r398444;
double r398455 = r398440 * r398454;
double r398456 = r398445 + r398455;
return r398456;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.4 |
|---|---|
| Target | 0.4 |
| Herbie | 0.5 |
Initial program 0.4
rmApplied associate-*l*0.4
rmApplied associate--l+0.4
Applied distribute-lft-in0.4
Applied distribute-lft-in0.4
Simplified0.4
Simplified0.4
rmApplied associate-*r*0.4
rmApplied add-cube-cbrt0.4
Applied times-frac0.5
Final simplification0.5
herbie shell --seed 2019354
(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)))