x + \left(1 - x\right) \cdot \left(1 - y\right)
1 + \left(y \cdot x + y \cdot \left(-1\right)\right)
double f(double x, double y) {
double r439899 = x;
double r439900 = 1.0;
double r439901 = r439900 - r439899;
double r439902 = y;
double r439903 = r439900 - r439902;
double r439904 = r439901 * r439903;
double r439905 = r439899 + r439904;
return r439905;
}
double f(double x, double y) {
double r439906 = 1.0;
double r439907 = y;
double r439908 = x;
double r439909 = r439907 * r439908;
double r439910 = -r439906;
double r439911 = r439907 * r439910;
double r439912 = r439909 + r439911;
double r439913 = r439906 + r439912;
return r439913;
}




Bits error versus x




Bits error versus y
Results
| Original | 16.5 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 16.5
Taylor expanded around 0 0.0
Simplified0.0
rmApplied sub-neg0.0
Applied distribute-lft-in0.0
Final simplification0.0
herbie shell --seed 2019323
(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))))