x \cdot \cos y - z \cdot \sin y
\left(x \cdot {\left(\sqrt[3]{{\left(\cos y\right)}^{6}}\right)}^{\frac{1}{3}}\right) \cdot \sqrt[3]{\cos y} - z \cdot \sin ydouble f(double x, double y, double z) {
double r189806 = x;
double r189807 = y;
double r189808 = cos(r189807);
double r189809 = r189806 * r189808;
double r189810 = z;
double r189811 = sin(r189807);
double r189812 = r189810 * r189811;
double r189813 = r189809 - r189812;
return r189813;
}
double f(double x, double y, double z) {
double r189814 = x;
double r189815 = y;
double r189816 = cos(r189815);
double r189817 = 6.0;
double r189818 = pow(r189816, r189817);
double r189819 = cbrt(r189818);
double r189820 = 0.3333333333333333;
double r189821 = pow(r189819, r189820);
double r189822 = r189814 * r189821;
double r189823 = cbrt(r189816);
double r189824 = r189822 * r189823;
double r189825 = z;
double r189826 = sin(r189815);
double r189827 = r189825 * r189826;
double r189828 = r189824 - r189827;
return r189828;
}



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/315.6
Applied pow1/315.5
Applied pow-prod-down0.2
Simplified0.2
rmApplied add-cbrt-cube0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2020001 +o rules:numerics
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutX from diagrams-lib-1.3.0.3, A"
:precision binary64
(- (* x (cos y)) (* z (sin y))))