x \cdot \left(\left(\left(\left(y + z\right) + z\right) + y\right) + t\right) + y \cdot 5
\left(\left(2 \cdot \left(x \cdot y\right) + 2 \cdot \left(x \cdot z\right)\right) + x \cdot t\right) + y \cdot 5
double f(double x, double y, double z, double t) {
double r171896 = x;
double r171897 = y;
double r171898 = z;
double r171899 = r171897 + r171898;
double r171900 = r171899 + r171898;
double r171901 = r171900 + r171897;
double r171902 = t;
double r171903 = r171901 + r171902;
double r171904 = r171896 * r171903;
double r171905 = 5.0;
double r171906 = r171897 * r171905;
double r171907 = r171904 + r171906;
return r171907;
}
double f(double x, double y, double z, double t) {
double r171908 = 2.0;
double r171909 = x;
double r171910 = y;
double r171911 = r171909 * r171910;
double r171912 = r171908 * r171911;
double r171913 = z;
double r171914 = r171909 * r171913;
double r171915 = r171908 * r171914;
double r171916 = r171912 + r171915;
double r171917 = t;
double r171918 = r171909 * r171917;
double r171919 = r171916 + r171918;
double r171920 = 5.0;
double r171921 = r171910 * r171920;
double r171922 = r171919 + r171921;
return r171922;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
Initial program 0.1
rmApplied distribute-lft-in0.1
Simplified0.1
rmApplied distribute-lft-in0.1
Simplified0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020018
(FPCore (x y z t)
:name "Graphics.Rendering.Plot.Render.Plot.Legend:renderLegendOutside from plot-0.2.3.4, B"
:precision binary64
(+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)))