x \cdot \cos y - z \cdot \sin y
\left(\sqrt[3]{\sqrt[3]{\cos y} \cdot \sqrt[3]{\cos y}} \cdot \sqrt[3]{\sqrt[3]{\cos y}}\right) \cdot \left({\left(\cos y \cdot \cos y\right)}^{\frac{1}{3}} \cdot x\right) - \sin y \cdot zdouble f(double x, double y, double z) {
double r11118602 = x;
double r11118603 = y;
double r11118604 = cos(r11118603);
double r11118605 = r11118602 * r11118604;
double r11118606 = z;
double r11118607 = sin(r11118603);
double r11118608 = r11118606 * r11118607;
double r11118609 = r11118605 - r11118608;
return r11118609;
}
double f(double x, double y, double z) {
double r11118610 = y;
double r11118611 = cos(r11118610);
double r11118612 = cbrt(r11118611);
double r11118613 = r11118612 * r11118612;
double r11118614 = cbrt(r11118613);
double r11118615 = cbrt(r11118612);
double r11118616 = r11118614 * r11118615;
double r11118617 = r11118611 * r11118611;
double r11118618 = 0.3333333333333333;
double r11118619 = pow(r11118617, r11118618);
double r11118620 = x;
double r11118621 = r11118619 * r11118620;
double r11118622 = r11118616 * r11118621;
double r11118623 = sin(r11118610);
double r11118624 = z;
double r11118625 = r11118623 * r11118624;
double r11118626 = r11118622 - r11118625;
return r11118626;
}



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.4
Applied pow1/316.4
Applied pow-prod-down0.2
rmApplied add-cube-cbrt0.3
Applied cbrt-prod0.3
Final simplification0.3
herbie shell --seed 2019179
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutX from diagrams-lib-1.3.0.3, A"
(- (* x (cos y)) (* z (sin y))))