2 \cdot \left(x \cdot x - x \cdot y\right)
x \cdot \left(\left(x - y\right) \cdot 2\right)
double f(double x, double y) {
double r530546 = 2.0;
double r530547 = x;
double r530548 = r530547 * r530547;
double r530549 = y;
double r530550 = r530547 * r530549;
double r530551 = r530548 - r530550;
double r530552 = r530546 * r530551;
return r530552;
}
double f(double x, double y) {
double r530553 = x;
double r530554 = y;
double r530555 = r530553 - r530554;
double r530556 = 2.0;
double r530557 = r530555 * r530556;
double r530558 = r530553 * r530557;
return r530558;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.1 |
Initial program 0.0
Simplified0.0
rmApplied associate-*l*0.1
Final simplification0.1
herbie shell --seed 2020056 +o rules:numerics
(FPCore (x y)
:name "Linear.Matrix:fromQuaternion from linear-1.19.1.3, A"
:precision binary64
:herbie-target
(* (* x 2) (- x y))
(* 2 (- (* x x) (* x y))))