x \cdot y + z \cdot \left(1 - y\right)
1 \cdot z + \left(x - z\right) \cdot y
double f(double x, double y, double z) {
double r34234282 = x;
double r34234283 = y;
double r34234284 = r34234282 * r34234283;
double r34234285 = z;
double r34234286 = 1.0;
double r34234287 = r34234286 - r34234283;
double r34234288 = r34234285 * r34234287;
double r34234289 = r34234284 + r34234288;
return r34234289;
}
double f(double x, double y, double z) {
double r34234290 = 1.0;
double r34234291 = z;
double r34234292 = r34234290 * r34234291;
double r34234293 = x;
double r34234294 = r34234293 - r34234291;
double r34234295 = y;
double r34234296 = r34234294 * r34234295;
double r34234297 = r34234292 + r34234296;
return r34234297;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.0
Taylor expanded around 0 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019200
(FPCore (x y z)
:name "Diagrams.TwoD.Segment:bezierClip from diagrams-lib-1.3.0.3"
:herbie-target
(- z (* (- z x) y))
(+ (* x y) (* z (- 1.0 y))))