\left(-x \cdot \frac{1}{\tan B}\right) + \frac{1}{\sin B}\left(\frac{1}{\sin B} - \frac{1}{\frac{\frac{1}{\cos B}}{x} \cdot \sin B}\right) \cdot 1double f(double B, double x) {
double r50152 = x;
double r50153 = 1.0;
double r50154 = B;
double r50155 = tan(r50154);
double r50156 = r50153 / r50155;
double r50157 = r50152 * r50156;
double r50158 = -r50157;
double r50159 = sin(r50154);
double r50160 = r50153 / r50159;
double r50161 = r50158 + r50160;
return r50161;
}
double f(double B, double x) {
double r50162 = 1.0;
double r50163 = B;
double r50164 = sin(r50163);
double r50165 = r50162 / r50164;
double r50166 = cos(r50163);
double r50167 = r50162 / r50166;
double r50168 = x;
double r50169 = r50167 / r50168;
double r50170 = r50169 * r50164;
double r50171 = r50162 / r50170;
double r50172 = r50165 - r50171;
double r50173 = 1.0;
double r50174 = r50172 * r50173;
return r50174;
}



Bits error versus B



Bits error versus x
Results
Initial program 0.2
Taylor expanded around inf 0.2
Simplified0.2
rmApplied clear-num0.2
Simplified0.2
rmApplied *-un-lft-identity0.2
Applied div-inv0.3
Applied times-frac0.3
Simplified0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2019194
(FPCore (B x)
:name "VandenBroeck and Keller, Equation (24)"
(+ (- (* x (/ 1.0 (tan B)))) (/ 1.0 (sin B))))