\left(x \cdot y + z\right) \cdot y + t
\left(x \cdot y + z\right) \cdot y + t
double f(double x, double y, double z, double t) {
double r143629 = x;
double r143630 = y;
double r143631 = r143629 * r143630;
double r143632 = z;
double r143633 = r143631 + r143632;
double r143634 = r143633 * r143630;
double r143635 = t;
double r143636 = r143634 + r143635;
return r143636;
}
double f(double x, double y, double z, double t) {
double r143637 = x;
double r143638 = y;
double r143639 = r143637 * r143638;
double r143640 = z;
double r143641 = r143639 + r143640;
double r143642 = r143641 * r143638;
double r143643 = t;
double r143644 = r143642 + r143643;
return r143644;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
Initial program 0.1
Final simplification0.1
herbie shell --seed 2020081 +o rules:numerics
(FPCore (x y z t)
:name "Language.Haskell.HsColour.ColourHighlight:unbase from hscolour-1.23"
:precision binary64
(+ (* (+ (* x y) z) y) t))