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 r284268 = x;
double r284269 = y;
double r284270 = cos(r284269);
double r284271 = r284268 * r284270;
double r284272 = z;
double r284273 = sin(r284269);
double r284274 = r284272 * r284273;
double r284275 = r284271 - r284274;
return r284275;
}
double f(double x, double y, double z) {
double r284276 = x;
double r284277 = y;
double r284278 = cos(r284277);
double r284279 = 2.0;
double r284280 = pow(r284278, r284279);
double r284281 = log(r284280);
double r284282 = exp(r284281);
double r284283 = 0.3333333333333333;
double r284284 = pow(r284282, r284283);
double r284285 = r284276 * r284284;
double r284286 = cbrt(r284278);
double r284287 = r284285 * r284286;
double r284288 = z;
double r284289 = sin(r284277);
double r284290 = r284288 * r284289;
double r284291 = r284287 - r284290;
return r284291;
}



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.3
Applied pow-prod-down0.2
Simplified0.2
rmApplied add-exp-log16.3
Applied pow-exp16.3
Simplified0.2
Final simplification0.2
herbie shell --seed 2020065
(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))))