\left(\left(x \cdot y - y \cdot y\right) + y \cdot y\right) - y \cdot z
x \cdot y - z \cdot y
double f(double x, double y, double z) {
double r18627139 = x;
double r18627140 = y;
double r18627141 = r18627139 * r18627140;
double r18627142 = r18627140 * r18627140;
double r18627143 = r18627141 - r18627142;
double r18627144 = r18627143 + r18627142;
double r18627145 = z;
double r18627146 = r18627140 * r18627145;
double r18627147 = r18627144 - r18627146;
return r18627147;
}
double f(double x, double y, double z) {
double r18627148 = x;
double r18627149 = y;
double r18627150 = r18627148 * r18627149;
double r18627151 = z;
double r18627152 = r18627151 * r18627149;
double r18627153 = r18627150 - r18627152;
return r18627153;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 12.5 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 12.5
rmApplied associate-+l-7.6
Applied associate--l-7.6
Simplified0.0
Final simplification0.0
herbie shell --seed 2019171 +o rules:numerics
(FPCore (x y z)
:name "Linear.Quaternion:$c/ from linear-1.19.1.3, D"
:herbie-target
(* (- x z) y)
(- (+ (- (* x y) (* y y)) (* y y)) (* y z)))