\left(\left(x \cdot y - y \cdot y\right) + y \cdot y\right) - y \cdot z
\left(x - z\right) \cdot y
double f(double x, double y, double z) {
double r689358 = x;
double r689359 = y;
double r689360 = r689358 * r689359;
double r689361 = r689359 * r689359;
double r689362 = r689360 - r689361;
double r689363 = r689362 + r689361;
double r689364 = z;
double r689365 = r689359 * r689364;
double r689366 = r689363 - r689365;
return r689366;
}
double f(double x, double y, double z) {
double r689367 = x;
double r689368 = z;
double r689369 = r689367 - r689368;
double r689370 = y;
double r689371 = r689369 * r689370;
return r689371;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 13.4 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 13.4
Simplified0.0
Final simplification0.0
herbie shell --seed 2020046
(FPCore (x y z)
:name "Linear.Quaternion:$c/ from linear-1.19.1.3, D"
:precision binary64
:herbie-target
(* (- x z) y)
(- (+ (- (* x y) (* y y)) (* y y)) (* y z)))