x \cdot \cos y + z \cdot \sin y
\left(x \cdot \sqrt[3]{{\left({\left(\cos y\right)}^{2}\right)}^{\frac{2}{3}} \cdot {\left({\left(\cos y\right)}^{2}\right)}^{\frac{1}{3}}}\right) \cdot \sqrt[3]{\cos y} + z \cdot \sin ydouble f(double x, double y, double z) {
double r204386 = x;
double r204387 = y;
double r204388 = cos(r204387);
double r204389 = r204386 * r204388;
double r204390 = z;
double r204391 = sin(r204387);
double r204392 = r204390 * r204391;
double r204393 = r204389 + r204392;
return r204393;
}
double f(double x, double y, double z) {
double r204394 = x;
double r204395 = y;
double r204396 = cos(r204395);
double r204397 = 2.0;
double r204398 = pow(r204396, r204397);
double r204399 = 0.6666666666666666;
double r204400 = pow(r204398, r204399);
double r204401 = 0.3333333333333333;
double r204402 = pow(r204398, r204401);
double r204403 = r204400 * r204402;
double r204404 = cbrt(r204403);
double r204405 = r204394 * r204404;
double r204406 = cbrt(r204396);
double r204407 = r204405 * r204406;
double r204408 = z;
double r204409 = sin(r204395);
double r204410 = r204408 * r204409;
double r204411 = r204407 + r204410;
return r204411;
}



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 cbrt-unprod0.3
Simplified0.3
rmApplied add-cube-cbrt0.3
Simplified0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2020049
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutY from diagrams-lib-1.3.0.3"
:precision binary64
(+ (* x (cos y)) (* z (sin y))))