x + \frac{x - y}{2}x + \left(\frac{x}{2} - \frac{y}{2}\right)double f(double x, double y) {
double r618438 = x;
double r618439 = y;
double r618440 = r618438 - r618439;
double r618441 = 2.0;
double r618442 = r618440 / r618441;
double r618443 = r618438 + r618442;
return r618443;
}
double f(double x, double y) {
double r618444 = x;
double r618445 = 2.0;
double r618446 = r618444 / r618445;
double r618447 = y;
double r618448 = r618447 / r618445;
double r618449 = r618446 - r618448;
double r618450 = r618444 + r618449;
return r618450;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.1 |
|---|---|
| Target | 0.1 |
| Herbie | 0.1 |
Initial program 0.1
rmApplied div-sub0.1
Applied associate-+r-0.1
rmApplied associate--l+0.1
Final simplification0.1
herbie shell --seed 2020083 +o rules:numerics
(FPCore (x y)
:name "Graphics.Rendering.Chart.Axis.Types:hBufferRect from Chart-1.5.3"
:precision binary64
:herbie-target
(- (* 1.5 x) (* 0.5 y))
(+ x (/ (- x y) 2)))