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 r216359 = x;
double r216360 = y;
double r216361 = cos(r216360);
double r216362 = r216359 * r216361;
double r216363 = z;
double r216364 = sin(r216360);
double r216365 = r216363 * r216364;
double r216366 = r216362 + r216365;
return r216366;
}
double f(double x, double y, double z) {
double r216367 = x;
double r216368 = y;
double r216369 = cos(r216368);
double r216370 = 2.0;
double r216371 = pow(r216369, r216370);
double r216372 = 0.3333333333333333;
double r216373 = pow(r216371, r216372);
double r216374 = r216367 * r216373;
double r216375 = cbrt(r216369);
double r216376 = exp(r216375);
double r216377 = log(r216376);
double r216378 = r216374 * r216377;
double r216379 = z;
double r216380 = sin(r216368);
double r216381 = r216379 * r216380;
double r216382 = r216378 + r216381;
return r216382;
}



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-log-exp0.2
Final simplification0.2
herbie shell --seed 2020039
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutY from diagrams-lib-1.3.0.3"
:precision binary64
(+ (* x (cos y)) (* z (sin y))))