\frac{x + y}{\left(x \cdot 2.0\right) \cdot y}\frac{0.5}{x} + \frac{0.5}{y}double f(double x, double y) {
double r21295833 = x;
double r21295834 = y;
double r21295835 = r21295833 + r21295834;
double r21295836 = 2.0;
double r21295837 = r21295833 * r21295836;
double r21295838 = r21295837 * r21295834;
double r21295839 = r21295835 / r21295838;
return r21295839;
}
double f(double x, double y) {
double r21295840 = 0.5;
double r21295841 = x;
double r21295842 = r21295840 / r21295841;
double r21295843 = y;
double r21295844 = r21295840 / r21295843;
double r21295845 = r21295842 + r21295844;
return r21295845;
}




Bits error versus x




Bits error versus y
Results
| Original | 14.6 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 14.6
Taylor expanded around 0 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019163 +o rules:numerics
(FPCore (x y)
:name "Linear.Projection:inversePerspective from linear-1.19.1.3, C"
:herbie-target
(+ (/ 0.5 x) (/ 0.5 y))
(/ (+ x y) (* (* x 2.0) y)))