\left(x \cdot y + x\right) + y
\mathsf{fma}\left(x + 1, y, x\right)double f(double x, double y) {
double r162989 = x;
double r162990 = y;
double r162991 = r162989 * r162990;
double r162992 = r162991 + r162989;
double r162993 = r162992 + r162990;
return r162993;
}
double f(double x, double y) {
double r162994 = x;
double r162995 = 1.0;
double r162996 = r162994 + r162995;
double r162997 = y;
double r162998 = fma(r162996, r162997, r162994);
return r162998;
}



Bits error versus x



Bits error versus y
Initial program 0.0
Simplified0.0
rmApplied *-un-lft-identity0.0
Applied *-un-lft-identity0.0
Applied distribute-lft-out0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020062 +o rules:numerics
(FPCore (x y)
:name "Numeric.Log:$cexpm1 from log-domain-0.10.2.1, B"
:precision binary64
(+ (+ (* x y) x) y))