\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i
\mathsf{fma}\left(c, i, \mathsf{fma}\left(t, z, \mathsf{fma}\left(a, b, x \cdot y\right)\right)\right)double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r66711 = x;
double r66712 = y;
double r66713 = r66711 * r66712;
double r66714 = z;
double r66715 = t;
double r66716 = r66714 * r66715;
double r66717 = r66713 + r66716;
double r66718 = a;
double r66719 = b;
double r66720 = r66718 * r66719;
double r66721 = r66717 + r66720;
double r66722 = c;
double r66723 = i;
double r66724 = r66722 * r66723;
double r66725 = r66721 + r66724;
return r66725;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r66726 = c;
double r66727 = i;
double r66728 = t;
double r66729 = z;
double r66730 = a;
double r66731 = b;
double r66732 = x;
double r66733 = y;
double r66734 = r66732 * r66733;
double r66735 = fma(r66730, r66731, r66734);
double r66736 = fma(r66728, r66729, r66735);
double r66737 = fma(r66726, r66727, r66736);
return r66737;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b



Bits error versus c



Bits error versus i
Initial program 0.0
Simplified0.0
Taylor expanded around inf 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019323 +o rules:numerics
(FPCore (x y z t a b c i)
:name "Linear.V4:$cdot from linear-1.19.1.3"
:precision binary64
(+ (+ (+ (* x y) (* z t)) (* a b)) (* c i)))