x \cdot \sin y + z \cdot \cos y
\left(\left(\sqrt[3]{x \cdot \sin y} \cdot \sqrt[3]{x}\right) \cdot \sqrt[3]{\sin y}\right) \cdot \sqrt[3]{x \cdot \sin y} + z \cdot \cos ydouble f(double x, double y, double z) {
double r197757 = x;
double r197758 = y;
double r197759 = sin(r197758);
double r197760 = r197757 * r197759;
double r197761 = z;
double r197762 = cos(r197758);
double r197763 = r197761 * r197762;
double r197764 = r197760 + r197763;
return r197764;
}
double f(double x, double y, double z) {
double r197765 = x;
double r197766 = y;
double r197767 = sin(r197766);
double r197768 = r197765 * r197767;
double r197769 = cbrt(r197768);
double r197770 = cbrt(r197765);
double r197771 = r197769 * r197770;
double r197772 = cbrt(r197767);
double r197773 = r197771 * r197772;
double r197774 = r197773 * r197769;
double r197775 = z;
double r197776 = cos(r197766);
double r197777 = r197775 * r197776;
double r197778 = r197774 + r197777;
return r197778;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.1
rmApplied add-cube-cbrt0.6
rmApplied cbrt-prod0.5
Applied associate-*r*0.5
Final simplification0.5
herbie shell --seed 2019298
(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))))