\left(-x \cdot \frac{1}{\tan B}\right) + \frac{1}{\sin B}\left(-1 \cdot \frac{x \cdot \cos B}{\sin B}\right) + \frac{1}{\sin B}double f(double B, double x) {
double r10271 = x;
double r10272 = 1.0;
double r10273 = B;
double r10274 = tan(r10273);
double r10275 = r10272 / r10274;
double r10276 = r10271 * r10275;
double r10277 = -r10276;
double r10278 = sin(r10273);
double r10279 = r10272 / r10278;
double r10280 = r10277 + r10279;
return r10280;
}
double f(double B, double x) {
double r10281 = 1.0;
double r10282 = x;
double r10283 = B;
double r10284 = cos(r10283);
double r10285 = r10282 * r10284;
double r10286 = sin(r10283);
double r10287 = r10285 / r10286;
double r10288 = r10281 * r10287;
double r10289 = -r10288;
double r10290 = r10281 / r10286;
double r10291 = r10289 + r10290;
return r10291;
}



Bits error versus B



Bits error versus x
Results
Initial program 0.2
Taylor expanded around inf 0.2
Final simplification0.2
herbie shell --seed 2020059 +o rules:numerics
(FPCore (B x)
:name "VandenBroeck and Keller, Equation (24)"
:precision binary64
(+ (- (* x (/ 1 (tan B)))) (/ 1 (sin B))))