\left(-x \cdot \frac{1}{\tan B}\right) + \frac{F}{\sin B} \cdot {\left(\left(F \cdot F + 2\right) + 2 \cdot x\right)}^{\left(-\frac{1}{2}\right)}\frac{\frac{1}{\frac{\sin B}{{\left(2 + \left(2 \cdot x + F \cdot F\right)\right)}^{\frac{-1}{2}}}}}{\frac{1}{F}} - \frac{x}{\tan B}double f(double F, double B, double x) {
double r1645275 = x;
double r1645276 = 1.0;
double r1645277 = B;
double r1645278 = tan(r1645277);
double r1645279 = r1645276 / r1645278;
double r1645280 = r1645275 * r1645279;
double r1645281 = -r1645280;
double r1645282 = F;
double r1645283 = sin(r1645277);
double r1645284 = r1645282 / r1645283;
double r1645285 = r1645282 * r1645282;
double r1645286 = 2.0;
double r1645287 = r1645285 + r1645286;
double r1645288 = r1645286 * r1645275;
double r1645289 = r1645287 + r1645288;
double r1645290 = r1645276 / r1645286;
double r1645291 = -r1645290;
double r1645292 = pow(r1645289, r1645291);
double r1645293 = r1645284 * r1645292;
double r1645294 = r1645281 + r1645293;
return r1645294;
}
double f(double F, double B, double x) {
double r1645295 = 1.0;
double r1645296 = B;
double r1645297 = sin(r1645296);
double r1645298 = 2.0;
double r1645299 = x;
double r1645300 = r1645298 * r1645299;
double r1645301 = F;
double r1645302 = r1645301 * r1645301;
double r1645303 = r1645300 + r1645302;
double r1645304 = r1645298 + r1645303;
double r1645305 = -0.5;
double r1645306 = pow(r1645304, r1645305);
double r1645307 = r1645297 / r1645306;
double r1645308 = r1645295 / r1645307;
double r1645309 = r1645295 / r1645301;
double r1645310 = r1645308 / r1645309;
double r1645311 = tan(r1645296);
double r1645312 = r1645299 / r1645311;
double r1645313 = r1645310 - r1645312;
return r1645313;
}



Bits error versus F



Bits error versus B



Bits error versus x
Results
Initial program 13.3
Simplified12.8
rmApplied div-inv12.8
Applied associate-/r*10.7
rmApplied *-un-lft-identity10.7
Applied associate-/l*10.7
Final simplification10.7
herbie shell --seed 2019151
(FPCore (F B x)
:name "VandenBroeck and Keller, Equation (23)"
(+ (- (* x (/ 1 (tan B)))) (* (/ F (sin B)) (pow (+ (+ (* F F) 2) (* 2 x)) (- (/ 1 2))))))