\left(x + y\right) \cdot \left(z + 1\right)
\mathsf{fma}\left(x, z, \mathsf{fma}\left(1, y + x, y \cdot z\right)\right)double f(double x, double y, double z) {
double r1816776 = x;
double r1816777 = y;
double r1816778 = r1816776 + r1816777;
double r1816779 = z;
double r1816780 = 1.0;
double r1816781 = r1816779 + r1816780;
double r1816782 = r1816778 * r1816781;
return r1816782;
}
double f(double x, double y, double z) {
double r1816783 = x;
double r1816784 = z;
double r1816785 = 1.0;
double r1816786 = y;
double r1816787 = r1816786 + r1816783;
double r1816788 = r1816786 * r1816784;
double r1816789 = fma(r1816785, r1816787, r1816788);
double r1816790 = fma(r1816783, r1816784, r1816789);
return r1816790;
}



Bits error versus x



Bits error versus y



Bits error versus z
Initial program 0.0
rmApplied distribute-rgt-in0.0
rmApplied distribute-rgt-in0.0
Applied associate-+l+0.0
Simplified0.0
rmApplied fma-def0.0
Final simplification0.0
herbie shell --seed 2019171 +o rules:numerics
(FPCore (x y z)
:name "Optimisation.CirclePacking:place from circle-packing-0.1.0.4, G"
(* (+ x y) (+ z 1.0)))