2 \cdot \left(x \cdot x + x \cdot y\right)
\mathsf{fma}\left(x, x, x \cdot y\right) \cdot 2double f(double x, double y) {
double r535202 = 2.0;
double r535203 = x;
double r535204 = r535203 * r535203;
double r535205 = y;
double r535206 = r535203 * r535205;
double r535207 = r535204 + r535206;
double r535208 = r535202 * r535207;
return r535208;
}
double f(double x, double y) {
double r535209 = x;
double r535210 = y;
double r535211 = r535209 * r535210;
double r535212 = fma(r535209, r535209, r535211);
double r535213 = 2.0;
double r535214 = r535212 * r535213;
return r535214;
}




Bits error versus x




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