\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(y + \frac{0.1111111111111111049432054187491303309798}{x}\right) - 1\right)\right)double f(double x, double y) {
double r231876 = 3.0;
double r231877 = x;
double r231878 = sqrt(r231877);
double r231879 = r231876 * r231878;
double r231880 = y;
double r231881 = 1.0;
double r231882 = 9.0;
double r231883 = r231877 * r231882;
double r231884 = r231881 / r231883;
double r231885 = r231880 + r231884;
double r231886 = r231885 - r231881;
double r231887 = r231879 * r231886;
return r231887;
}
double f(double x, double y) {
double r231888 = 3.0;
double r231889 = x;
double r231890 = sqrt(r231889);
double r231891 = y;
double r231892 = 0.1111111111111111;
double r231893 = r231892 / r231889;
double r231894 = r231891 + r231893;
double r231895 = 1.0;
double r231896 = r231894 - r231895;
double r231897 = r231890 * r231896;
double r231898 = r231888 * r231897;
return r231898;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.4 |
|---|---|
| Target | 0.4 |
| Herbie | 0.4 |
Initial program 0.4
rmApplied associate-/r*0.4
rmApplied associate-*l*0.4
Taylor expanded around 0 0.4
Final simplification0.4
herbie shell --seed 2019322 +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)))