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 r190932 = x;
double r190933 = y;
double r190934 = cos(r190933);
double r190935 = r190932 * r190934;
double r190936 = z;
double r190937 = sin(r190933);
double r190938 = r190936 * r190937;
double r190939 = r190935 - r190938;
return r190939;
}
double f(double x, double y, double z) {
double r190940 = x;
double r190941 = y;
double r190942 = cos(r190941);
double r190943 = 2.0;
double r190944 = pow(r190942, r190943);
double r190945 = 0.3333333333333333;
double r190946 = pow(r190944, r190945);
double r190947 = r190940 * r190946;
double r190948 = cbrt(r190942);
double r190949 = exp(r190948);
double r190950 = log(r190949);
double r190951 = r190947 * r190950;
double r190952 = z;
double r190953 = sin(r190941);
double r190954 = r190952 * r190953;
double r190955 = r190951 - r190954;
return r190955;
}



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