x \cdot \sin y + z \cdot \cos y
x \cdot \sin y + \left(\sqrt[3]{{\left(\cos y\right)}^{2}} \cdot z\right) \cdot \sqrt[3]{\cos y}double f(double x, double y, double z) {
double r189790 = x;
double r189791 = y;
double r189792 = sin(r189791);
double r189793 = r189790 * r189792;
double r189794 = z;
double r189795 = cos(r189791);
double r189796 = r189794 * r189795;
double r189797 = r189793 + r189796;
return r189797;
}
double f(double x, double y, double z) {
double r189798 = x;
double r189799 = y;
double r189800 = sin(r189799);
double r189801 = r189798 * r189800;
double r189802 = cos(r189799);
double r189803 = 2.0;
double r189804 = pow(r189802, r189803);
double r189805 = cbrt(r189804);
double r189806 = z;
double r189807 = r189805 * r189806;
double r189808 = cbrt(r189802);
double r189809 = r189807 * r189808;
double r189810 = r189801 + r189809;
return r189810;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.1
rmApplied add-cube-cbrt0.4
Applied associate-*r*0.4
rmApplied pow1/316.0
Applied pow1/316.0
Applied pow-prod-down0.2
Simplified0.2
rmApplied *-un-lft-identity0.2
Applied cbrt-prod0.2
Applied associate-*r*0.2
Simplified0.3
Final simplification0.3
herbie shell --seed 2019303
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutX from diagrams-lib-1.3.0.3, B"
:precision binary64
(+ (* x (sin y)) (* z (cos y))))