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 r152601 = x;
double r152602 = y;
double r152603 = cos(r152602);
double r152604 = r152601 * r152603;
double r152605 = z;
double r152606 = sin(r152602);
double r152607 = r152605 * r152606;
double r152608 = r152604 + r152607;
return r152608;
}
double f(double x, double y, double z) {
double r152609 = x;
double r152610 = y;
double r152611 = cos(r152610);
double r152612 = 2.0;
double r152613 = pow(r152611, r152612);
double r152614 = 0.3333333333333333;
double r152615 = pow(r152613, r152614);
double r152616 = r152609 * r152615;
double r152617 = cbrt(r152611);
double r152618 = exp(r152617);
double r152619 = log(r152618);
double r152620 = r152616 * r152619;
double r152621 = z;
double r152622 = sin(r152610);
double r152623 = r152621 * r152622;
double r152624 = r152620 + r152623;
return r152624;
}



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 +o rules:numerics
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutY from diagrams-lib-1.3.0.3"
:precision binary64
(+ (* x (cos y)) (* z (sin y))))