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 r163010 = x;
double r163011 = y;
double r163012 = cos(r163011);
double r163013 = r163010 * r163012;
double r163014 = z;
double r163015 = sin(r163011);
double r163016 = r163014 * r163015;
double r163017 = r163013 - r163016;
return r163017;
}
double f(double x, double y, double z) {
double r163018 = x;
double r163019 = y;
double r163020 = cos(r163019);
double r163021 = 6.0;
double r163022 = pow(r163020, r163021);
double r163023 = cbrt(r163022);
double r163024 = 0.3333333333333333;
double r163025 = pow(r163023, r163024);
double r163026 = r163018 * r163025;
double r163027 = cbrt(r163020);
double r163028 = r163026 * r163027;
double r163029 = z;
double r163030 = sin(r163019);
double r163031 = r163029 * r163030;
double r163032 = r163028 - r163031;
return r163032;
}



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.3
Applied pow1/316.2
Applied pow-prod-down0.2
Simplified0.2
rmApplied add-cbrt-cube0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2019323 +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))))