\left(\left(x \cdot y - y \cdot z\right) - y \cdot y\right) + y \cdot y
y \cdot \left(x - z\right)
double f(double x, double y, double z) {
double r698819 = x;
double r698820 = y;
double r698821 = r698819 * r698820;
double r698822 = z;
double r698823 = r698820 * r698822;
double r698824 = r698821 - r698823;
double r698825 = r698820 * r698820;
double r698826 = r698824 - r698825;
double r698827 = r698826 + r698825;
return r698827;
}
double f(double x, double y, double z) {
double r698828 = y;
double r698829 = x;
double r698830 = z;
double r698831 = r698829 - r698830;
double r698832 = r698828 * r698831;
return r698832;
}




Bits error versus x




Bits error versus y




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