\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 r582824 = x;
double r582825 = y;
double r582826 = r582824 * r582825;
double r582827 = r582825 * r582825;
double r582828 = r582826 - r582827;
double r582829 = r582828 + r582827;
double r582830 = z;
double r582831 = r582825 * r582830;
double r582832 = r582829 - r582831;
return r582832;
}
double f(double x, double y, double z) {
double r582833 = y;
double r582834 = x;
double r582835 = z;
double r582836 = r582834 - r582835;
double r582837 = r582833 * r582836;
return r582837;
}




Bits error versus x




Bits error versus y




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