x \cdot \cos y - z \cdot \sin y
x \cdot \cos y - z \cdot \sin y
double f(double x, double y, double z) {
double r7546325 = x;
double r7546326 = y;
double r7546327 = cos(r7546326);
double r7546328 = r7546325 * r7546327;
double r7546329 = z;
double r7546330 = sin(r7546326);
double r7546331 = r7546329 * r7546330;
double r7546332 = r7546328 - r7546331;
return r7546332;
}
double f(double x, double y, double z) {
double r7546333 = x;
double r7546334 = y;
double r7546335 = cos(r7546334);
double r7546336 = r7546333 * r7546335;
double r7546337 = z;
double r7546338 = sin(r7546334);
double r7546339 = r7546337 * r7546338;
double r7546340 = r7546336 - r7546339;
return r7546340;
}



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 +o rules:numerics
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutX from diagrams-lib-1.3.0.3, A"
(- (* x (cos y)) (* z (sin y))))