\left(x \cdot 2 + x \cdot x\right) + y \cdot y
\mathsf{fma}\left(y, y, x \cdot \left(2 + x\right)\right)double f(double x, double y) {
double r19412860 = x;
double r19412861 = 2.0;
double r19412862 = r19412860 * r19412861;
double r19412863 = r19412860 * r19412860;
double r19412864 = r19412862 + r19412863;
double r19412865 = y;
double r19412866 = r19412865 * r19412865;
double r19412867 = r19412864 + r19412866;
return r19412867;
}
double f(double x, double y) {
double r19412868 = y;
double r19412869 = x;
double r19412870 = 2.0;
double r19412871 = r19412870 + r19412869;
double r19412872 = r19412869 * r19412871;
double r19412873 = fma(r19412868, r19412868, r19412872);
return r19412873;
}




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 2019169 +o rules:numerics
(FPCore (x y)
:name "Numeric.Log:$clog1p from log-domain-0.10.2.1, A"
:herbie-target
(+ (* y y) (+ (* 2.0 x) (* x x)))
(+ (+ (* x 2.0) (* x x)) (* y y)))