\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 r521924 = x;
double r521925 = y;
double r521926 = r521924 * r521925;
double r521927 = r521925 * r521925;
double r521928 = r521926 - r521927;
double r521929 = r521928 + r521927;
double r521930 = z;
double r521931 = r521925 * r521930;
double r521932 = r521929 - r521931;
return r521932;
}
double f(double x, double y, double z) {
double r521933 = y;
double r521934 = x;
double r521935 = z;
double r521936 = r521934 - r521935;
double r521937 = r521933 * r521936;
return r521937;
}




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 2020018
(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)))