x \cdot \cos y + z \cdot \sin y
\mathsf{fma}\left(x, \cos y, z \cdot \sin y\right)double f(double x, double y, double z) {
double r121786 = x;
double r121787 = y;
double r121788 = cos(r121787);
double r121789 = r121786 * r121788;
double r121790 = z;
double r121791 = sin(r121787);
double r121792 = r121790 * r121791;
double r121793 = r121789 + r121792;
return r121793;
}
double f(double x, double y, double z) {
double r121794 = x;
double r121795 = y;
double r121796 = cos(r121795);
double r121797 = z;
double r121798 = sin(r121795);
double r121799 = r121797 * r121798;
double r121800 = fma(r121794, r121796, r121799);
return r121800;
}



Bits error versus x



Bits error versus y



Bits error versus z
Initial program 0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019198 +o rules:numerics
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutY from diagrams-lib-1.3.0.3"
(+ (* x (cos y)) (* z (sin y))))