x \cdot \cos y - z \cdot \sin y
\sqrt[3]{\cos y} \cdot \left(\left(x \cdot \sqrt{{\left(\cos y \cdot \cos y\right)}^{\frac{1}{3}}}\right) \cdot \sqrt{{\left(\cos y \cdot \cos y\right)}^{\frac{1}{3}}}\right) - z \cdot \sin ydouble f(double x, double y, double z) {
double r4364850 = x;
double r4364851 = y;
double r4364852 = cos(r4364851);
double r4364853 = r4364850 * r4364852;
double r4364854 = z;
double r4364855 = sin(r4364851);
double r4364856 = r4364854 * r4364855;
double r4364857 = r4364853 - r4364856;
return r4364857;
}
double f(double x, double y, double z) {
double r4364858 = y;
double r4364859 = cos(r4364858);
double r4364860 = cbrt(r4364859);
double r4364861 = x;
double r4364862 = r4364859 * r4364859;
double r4364863 = 0.3333333333333333;
double r4364864 = pow(r4364862, r4364863);
double r4364865 = sqrt(r4364864);
double r4364866 = r4364861 * r4364865;
double r4364867 = r4364866 * r4364865;
double r4364868 = r4364860 * r4364867;
double r4364869 = z;
double r4364870 = sin(r4364858);
double r4364871 = r4364869 * r4364870;
double r4364872 = r4364868 - r4364871;
return r4364872;
}



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
rmApplied add-sqr-sqrt0.3
Applied associate-*r*0.3
Final simplification0.3
herbie shell --seed 2019156
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutX from diagrams-lib-1.3.0.3, A"
(- (* x (cos y)) (* z (sin y))))