x \cdot \cos y - z \cdot \sin y
\sqrt[3]{\cos y} \cdot \left(x \cdot {\left(\frac{1}{2} + \frac{1}{2} \cdot \cos \left(y + y\right)\right)}^{\frac{1}{3}}\right) - \sin y \cdot zdouble f(double x, double y, double z) {
double r11510713 = x;
double r11510714 = y;
double r11510715 = cos(r11510714);
double r11510716 = r11510713 * r11510715;
double r11510717 = z;
double r11510718 = sin(r11510714);
double r11510719 = r11510717 * r11510718;
double r11510720 = r11510716 - r11510719;
return r11510720;
}
double f(double x, double y, double z) {
double r11510721 = y;
double r11510722 = cos(r11510721);
double r11510723 = cbrt(r11510722);
double r11510724 = x;
double r11510725 = 0.5;
double r11510726 = r11510721 + r11510721;
double r11510727 = cos(r11510726);
double r11510728 = r11510725 * r11510727;
double r11510729 = r11510725 + r11510728;
double r11510730 = 0.3333333333333333;
double r11510731 = pow(r11510729, r11510730);
double r11510732 = r11510724 * r11510731;
double r11510733 = r11510723 * r11510732;
double r11510734 = sin(r11510721);
double r11510735 = z;
double r11510736 = r11510734 * r11510735;
double r11510737 = r11510733 - r11510736;
return r11510737;
}



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
rmApplied sqr-cos0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2019171
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutX from diagrams-lib-1.3.0.3, A"
(- (* x (cos y)) (* z (sin y))))