\left(\left(x \cdot y - y \cdot y\right) + y \cdot y\right) - y \cdot z
y \cdot \left(x - z\right)
double f(double x, double y, double z) {
double r577238 = x;
double r577239 = y;
double r577240 = r577238 * r577239;
double r577241 = r577239 * r577239;
double r577242 = r577240 - r577241;
double r577243 = r577242 + r577241;
double r577244 = z;
double r577245 = r577239 * r577244;
double r577246 = r577243 - r577245;
return r577246;
}
double f(double x, double y, double z) {
double r577247 = y;
double r577248 = x;
double r577249 = z;
double r577250 = r577248 - r577249;
double r577251 = r577247 * r577250;
return r577251;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 13.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 13.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020065
(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)))