x \cdot \cos y - z \cdot \sin y
\left(x \cdot {\left(\sqrt{\sqrt[3]{{\left(\cos y\right)}^{6}}} \cdot \sqrt{\sqrt[3]{{\left(\cos y\right)}^{6}}}\right)}^{\frac{1}{3}}\right) \cdot \sqrt[3]{\cos y} - z \cdot \sin ydouble f(double x, double y, double z) {
double r132116 = x;
double r132117 = y;
double r132118 = cos(r132117);
double r132119 = r132116 * r132118;
double r132120 = z;
double r132121 = sin(r132117);
double r132122 = r132120 * r132121;
double r132123 = r132119 - r132122;
return r132123;
}
double f(double x, double y, double z) {
double r132124 = x;
double r132125 = y;
double r132126 = cos(r132125);
double r132127 = 6.0;
double r132128 = pow(r132126, r132127);
double r132129 = cbrt(r132128);
double r132130 = sqrt(r132129);
double r132131 = r132130 * r132130;
double r132132 = 0.3333333333333333;
double r132133 = pow(r132131, r132132);
double r132134 = r132124 * r132133;
double r132135 = cbrt(r132126);
double r132136 = r132134 * r132135;
double r132137 = z;
double r132138 = sin(r132125);
double r132139 = r132137 * r132138;
double r132140 = r132136 - r132139;
return r132140;
}



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-cbrt-cube0.2
Simplified0.2
rmApplied add-sqr-sqrt0.2
Final simplification0.2
herbie shell --seed 2019323
(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))))