x \cdot \left(\left(\left(\left(y + z\right) + z\right) + y\right) + t\right) + y \cdot 5.0
\left(2 \cdot \left(x \cdot z\right) + \left(\left(x \cdot y\right) \cdot 2 + x \cdot t\right)\right) + y \cdot 5.0
double f(double x, double y, double z, double t) {
double r8123722 = x;
double r8123723 = y;
double r8123724 = z;
double r8123725 = r8123723 + r8123724;
double r8123726 = r8123725 + r8123724;
double r8123727 = r8123726 + r8123723;
double r8123728 = t;
double r8123729 = r8123727 + r8123728;
double r8123730 = r8123722 * r8123729;
double r8123731 = 5.0;
double r8123732 = r8123723 * r8123731;
double r8123733 = r8123730 + r8123732;
return r8123733;
}
double f(double x, double y, double z, double t) {
double r8123734 = 2.0;
double r8123735 = x;
double r8123736 = z;
double r8123737 = r8123735 * r8123736;
double r8123738 = r8123734 * r8123737;
double r8123739 = y;
double r8123740 = r8123735 * r8123739;
double r8123741 = r8123740 * r8123734;
double r8123742 = t;
double r8123743 = r8123735 * r8123742;
double r8123744 = r8123741 + r8123743;
double r8123745 = r8123738 + r8123744;
double r8123746 = 5.0;
double r8123747 = r8123739 * r8123746;
double r8123748 = r8123745 + r8123747;
return r8123748;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
Initial program 0.1
Simplified0.1
Taylor expanded around inf 0.1
Final simplification0.1
herbie shell --seed 2019158
(FPCore (x y z t)
:name "Graphics.Rendering.Plot.Render.Plot.Legend:renderLegendOutside from plot-0.2.3.4, B"
(+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5.0)))