\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 r519483 = x;
double r519484 = y;
double r519485 = r519483 * r519484;
double r519486 = z;
double r519487 = r519484 * r519486;
double r519488 = r519485 - r519487;
double r519489 = r519484 * r519484;
double r519490 = r519488 - r519489;
double r519491 = r519490 + r519489;
return r519491;
}
double f(double x, double y, double z) {
double r519492 = y;
double r519493 = x;
double r519494 = z;
double r519495 = r519493 - r519494;
double r519496 = r519492 * r519495;
return r519496;
}




Bits error versus x




Bits error versus y




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