\cos angle \cdot dx - \sin angle \cdot dy
\cos angle \cdot dx - \sin angle \cdot dy
double code(double angle, double dx, double dy) {
return ((double) (((double) (((double) cos(angle)) * dx)) - ((double) (((double) sin(angle)) * dy))));
}
double code(double angle, double dx, double dy) {
return ((double) (((double) (((double) cos(angle)) * dx)) - ((double) (((double) sin(angle)) * dy))));
}



Bits error versus angle



Bits error versus dx



Bits error versus dy
Results
Initial program 0.1
Final simplification0.1
herbie shell --seed 2020153
(FPCore (angle dx dy)
:name "(- (* (cos angle) dx) (* (sin angle) dy))"
:precision binary64
(- (* (cos angle) dx) (* (sin angle) dy)))