x \cdot \cos y + z \cdot \sin y
\left(x \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 r134003 = x;
double r134004 = y;
double r134005 = cos(r134004);
double r134006 = r134003 * r134005;
double r134007 = z;
double r134008 = sin(r134004);
double r134009 = r134007 * r134008;
double r134010 = r134006 + r134009;
return r134010;
}
double f(double x, double y, double z) {
double r134011 = x;
double r134012 = y;
double r134013 = cos(r134012);
double r134014 = 2.0;
double r134015 = pow(r134013, r134014);
double r134016 = 0.3333333333333333;
double r134017 = pow(r134015, r134016);
double r134018 = r134011 * r134017;
double r134019 = cbrt(r134013);
double r134020 = r134018 * r134019;
double r134021 = z;
double r134022 = sin(r134012);
double r134023 = r134021 * r134022;
double r134024 = r134020 + r134023;
return r134024;
}



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
Final simplification0.2
herbie shell --seed 2019350 +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))))