x \cdot \cos y + z \cdot \sin y
z \cdot \sin y + x \cdot \cos y
double f(double x, double y, double z) {
double r9962715 = x;
double r9962716 = y;
double r9962717 = cos(r9962716);
double r9962718 = r9962715 * r9962717;
double r9962719 = z;
double r9962720 = sin(r9962716);
double r9962721 = r9962719 * r9962720;
double r9962722 = r9962718 + r9962721;
return r9962722;
}
double f(double x, double y, double z) {
double r9962723 = z;
double r9962724 = y;
double r9962725 = sin(r9962724);
double r9962726 = r9962723 * r9962725;
double r9962727 = x;
double r9962728 = cos(r9962724);
double r9962729 = r9962727 * r9962728;
double r9962730 = r9962726 + r9962729;
return r9962730;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.1
rmApplied +-commutative0.1
Final simplification0.1
herbie shell --seed 2019169
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutY from diagrams-lib-1.3.0.3"
(+ (* x (cos y)) (* z (sin y))))