x + \left(1 - x\right) \cdot \left(1 - y\right)
\mathsf{fma}\left(y, x - 1, 1\right)double f(double x, double y) {
double r580074 = x;
double r580075 = 1.0;
double r580076 = r580075 - r580074;
double r580077 = y;
double r580078 = r580075 - r580077;
double r580079 = r580076 * r580078;
double r580080 = r580074 + r580079;
return r580080;
}
double f(double x, double y) {
double r580081 = y;
double r580082 = x;
double r580083 = 1.0;
double r580084 = r580082 - r580083;
double r580085 = fma(r580081, r580084, r580083);
return r580085;
}




Bits error versus x




Bits error versus y
| Original | 17.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 17.0
Simplified17.0
Taylor expanded around 0 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019353 +o rules:numerics
(FPCore (x y)
:name "Graphics.Rendering.Chart.Plot.Vectors:renderPlotVectors from Chart-1.5.3"
:precision binary64
:herbie-target
(- (* y x) (- y 1))
(+ x (* (- 1 x) (- 1 y))))