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 r163049 = x;
double r163050 = y;
double r163051 = cos(r163050);
double r163052 = r163049 * r163051;
double r163053 = z;
double r163054 = sin(r163050);
double r163055 = r163053 * r163054;
double r163056 = r163052 - r163055;
return r163056;
}
double f(double x, double y, double z) {
double r163057 = x;
double r163058 = y;
double r163059 = cos(r163058);
double r163060 = 6.0;
double r163061 = pow(r163059, r163060);
double r163062 = cbrt(r163061);
double r163063 = 0.3333333333333333;
double r163064 = pow(r163062, r163063);
double r163065 = r163057 * r163064;
double r163066 = cbrt(r163059);
double r163067 = r163065 * r163066;
double r163068 = z;
double r163069 = sin(r163058);
double r163070 = r163068 * r163069;
double r163071 = r163067 - r163070;
return r163071;
}



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))))