x \cdot \cos y - z \cdot \sin y
\left(x \cdot {\left(e^{\log \left({\left(\cos y\right)}^{2}\right)}\right)}^{\frac{1}{3}}\right) \cdot \sqrt[3]{\cos y} - z \cdot \sin ydouble f(double x, double y, double z) {
double r269255 = x;
double r269256 = y;
double r269257 = cos(r269256);
double r269258 = r269255 * r269257;
double r269259 = z;
double r269260 = sin(r269256);
double r269261 = r269259 * r269260;
double r269262 = r269258 - r269261;
return r269262;
}
double f(double x, double y, double z) {
double r269263 = x;
double r269264 = y;
double r269265 = cos(r269264);
double r269266 = 2.0;
double r269267 = pow(r269265, r269266);
double r269268 = log(r269267);
double r269269 = exp(r269268);
double r269270 = 0.3333333333333333;
double r269271 = pow(r269269, r269270);
double r269272 = r269263 * r269271;
double r269273 = cbrt(r269265);
double r269274 = r269272 * r269273;
double r269275 = z;
double r269276 = sin(r269264);
double r269277 = r269275 * r269276;
double r269278 = r269274 - r269277;
return r269278;
}



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.1
Applied pow1/316.1
Applied pow-prod-down0.2
Simplified0.2
rmApplied add-exp-log16.1
Applied pow-exp16.1
Simplified0.2
Final simplification0.2
herbie shell --seed 2020062
(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))))