x \cdot \cos y + z \cdot \sin y
\left(x \cdot {\left({\left(\cos y\right)}^{2}\right)}^{\frac{1}{3}}\right) \cdot \log \left(e^{\sqrt[3]{\cos y}}\right) + z \cdot \sin ydouble f(double x, double y, double z) {
double r124370 = x;
double r124371 = y;
double r124372 = cos(r124371);
double r124373 = r124370 * r124372;
double r124374 = z;
double r124375 = sin(r124371);
double r124376 = r124374 * r124375;
double r124377 = r124373 + r124376;
return r124377;
}
double f(double x, double y, double z) {
double r124378 = x;
double r124379 = y;
double r124380 = cos(r124379);
double r124381 = 2.0;
double r124382 = pow(r124380, r124381);
double r124383 = 0.3333333333333333;
double r124384 = pow(r124382, r124383);
double r124385 = r124378 * r124384;
double r124386 = cbrt(r124380);
double r124387 = exp(r124386);
double r124388 = log(r124387);
double r124389 = r124385 * r124388;
double r124390 = z;
double r124391 = sin(r124379);
double r124392 = r124390 * r124391;
double r124393 = r124389 + r124392;
return r124393;
}



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/315.9
Applied pow1/315.9
Applied pow-prod-down0.2
Simplified0.2
rmApplied add-log-exp0.2
Final simplification0.2
herbie shell --seed 2019305
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutY from diagrams-lib-1.3.0.3"
:precision binary64
(+ (* x (cos y)) (* z (sin y))))