\left(x \cdot y + z \cdot t\right) + a \cdot b
x \cdot y + \left(z \cdot t + a \cdot b\right)
double f(double x, double y, double z, double t, double a, double b) {
double r128555 = x;
double r128556 = y;
double r128557 = r128555 * r128556;
double r128558 = z;
double r128559 = t;
double r128560 = r128558 * r128559;
double r128561 = r128557 + r128560;
double r128562 = a;
double r128563 = b;
double r128564 = r128562 * r128563;
double r128565 = r128561 + r128564;
return r128565;
}
double f(double x, double y, double z, double t, double a, double b) {
double r128566 = x;
double r128567 = y;
double r128568 = r128566 * r128567;
double r128569 = z;
double r128570 = t;
double r128571 = r128569 * r128570;
double r128572 = a;
double r128573 = b;
double r128574 = r128572 * r128573;
double r128575 = r128571 + r128574;
double r128576 = r128568 + r128575;
return r128576;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b
Results
Initial program 0.0
rmApplied associate-+l+0.0
Final simplification0.0
herbie shell --seed 2020002
(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)))