\left(x \cdot y + z \cdot t\right) + a \cdot b
\mathsf{fma}\left(b, a, \mathsf{fma}\left(x, y, z \cdot t\right)\right)double f(double x, double y, double z, double t, double a, double b) {
double r102195 = x;
double r102196 = y;
double r102197 = r102195 * r102196;
double r102198 = z;
double r102199 = t;
double r102200 = r102198 * r102199;
double r102201 = r102197 + r102200;
double r102202 = a;
double r102203 = b;
double r102204 = r102202 * r102203;
double r102205 = r102201 + r102204;
return r102205;
}
double f(double x, double y, double z, double t, double a, double b) {
double r102206 = b;
double r102207 = a;
double r102208 = x;
double r102209 = y;
double r102210 = z;
double r102211 = t;
double r102212 = r102210 * r102211;
double r102213 = fma(r102208, r102209, r102212);
double r102214 = fma(r102206, r102207, r102213);
return r102214;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020060 +o rules:numerics
(FPCore (x y z t a b)
:name "Linear.V3:$cdot from linear-1.19.1.3, B"
:precision binary64
(+ (+ (* x y) (* z t)) (* a b)))