\left(-x \cdot \frac{1}{\tan B}\right) + \frac{1}{\sin B}1 \cdot \left(\frac{1}{\sin B} - \frac{x \cdot \cos B}{\sin B}\right)double f(double B, double x) {
double r60547 = x;
double r60548 = 1.0;
double r60549 = B;
double r60550 = tan(r60549);
double r60551 = r60548 / r60550;
double r60552 = r60547 * r60551;
double r60553 = -r60552;
double r60554 = sin(r60549);
double r60555 = r60548 / r60554;
double r60556 = r60553 + r60555;
return r60556;
}
double f(double B, double x) {
double r60557 = 1.0;
double r60558 = 1.0;
double r60559 = B;
double r60560 = sin(r60559);
double r60561 = r60558 / r60560;
double r60562 = x;
double r60563 = cos(r60559);
double r60564 = r60562 * r60563;
double r60565 = r60564 / r60560;
double r60566 = r60561 - r60565;
double r60567 = r60557 * r60566;
return r60567;
}



Bits error versus B



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