x \cdot \cos y - z \cdot \sin y
\sqrt[3]{\cos y} \cdot \left(x \cdot \left(\sqrt[3]{\cos y} \cdot \left(\sqrt[3]{\sqrt[3]{\cos y} \cdot \sqrt[3]{\cos y}} \cdot \sqrt[3]{\sqrt[3]{\cos y}}\right)\right)\right) - z \cdot \sin ydouble f(double x, double y, double z) {
double r18219199 = x;
double r18219200 = y;
double r18219201 = cos(r18219200);
double r18219202 = r18219199 * r18219201;
double r18219203 = z;
double r18219204 = sin(r18219200);
double r18219205 = r18219203 * r18219204;
double r18219206 = r18219202 - r18219205;
return r18219206;
}
double f(double x, double y, double z) {
double r18219207 = y;
double r18219208 = cos(r18219207);
double r18219209 = cbrt(r18219208);
double r18219210 = x;
double r18219211 = r18219209 * r18219209;
double r18219212 = cbrt(r18219211);
double r18219213 = cbrt(r18219209);
double r18219214 = r18219212 * r18219213;
double r18219215 = r18219209 * r18219214;
double r18219216 = r18219210 * r18219215;
double r18219217 = r18219209 * r18219216;
double r18219218 = z;
double r18219219 = sin(r18219207);
double r18219220 = r18219218 * r18219219;
double r18219221 = r18219217 - r18219220;
return r18219221;
}



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 add-cube-cbrt0.4
Applied cbrt-prod0.4
Final simplification0.4
herbie shell --seed 2019158
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutX from diagrams-lib-1.3.0.3, A"
(- (* x (cos y)) (* z (sin y))))