\left(3 \cdot \sqrt{x}\right) \cdot \left(\left(y + \frac{1}{x \cdot 9}\right) - 1\right)3 \cdot \left(\sqrt{x} \cdot \left(\left(\frac{1}{x \cdot 9} - 1\right) + y\right)\right)double f(double x, double y) {
double r308100 = 3.0;
double r308101 = x;
double r308102 = sqrt(r308101);
double r308103 = r308100 * r308102;
double r308104 = y;
double r308105 = 1.0;
double r308106 = 9.0;
double r308107 = r308101 * r308106;
double r308108 = r308105 / r308107;
double r308109 = r308104 + r308108;
double r308110 = r308109 - r308105;
double r308111 = r308103 * r308110;
return r308111;
}
double f(double x, double y) {
double r308112 = 3.0;
double r308113 = x;
double r308114 = sqrt(r308113);
double r308115 = 1.0;
double r308116 = 9.0;
double r308117 = r308113 * r308116;
double r308118 = r308115 / r308117;
double r308119 = r308118 - r308115;
double r308120 = y;
double r308121 = r308119 + r308120;
double r308122 = r308114 * r308121;
double r308123 = r308112 * r308122;
return r308123;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.4 |
|---|---|
| Target | 0.4 |
| Herbie | 0.4 |
Initial program 0.4
rmApplied associate-*l*0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2019323 +o rules:numerics
(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)))