x + y \cdot \left(z + x\right)
\mathsf{fma}\left(y, z, \mathsf{fma}\left(y, x, x\right)\right)double f(double x, double y, double z) {
double r104907 = x;
double r104908 = y;
double r104909 = z;
double r104910 = r104909 + r104907;
double r104911 = r104908 * r104910;
double r104912 = r104907 + r104911;
return r104912;
}
double f(double x, double y, double z) {
double r104913 = y;
double r104914 = z;
double r104915 = x;
double r104916 = fma(r104913, r104915, r104915);
double r104917 = fma(r104913, r104914, r104916);
return r104917;
}



Bits error versus x



Bits error versus y



Bits error versus z
Initial program 0.0
Simplified0.0
Taylor expanded around 0 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020001 +o rules:numerics
(FPCore (x y z)
:name "Main:bigenough2 from A"
:precision binary64
(+ x (* y (+ z x))))