\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{F \cdot \left({\left(\mathsf{fma}\left(2, x, \left(\mathsf{fma}\left(F, F, 2\right)\right)\right)\right)}^{\frac{-1}{4}} \cdot {\left(\mathsf{fma}\left(2, x, \left(\mathsf{fma}\left(F, F, 2\right)\right)\right)\right)}^{\frac{-1}{4}}\right)}{\sin B} - \frac{x}{\tan B}double f(double F, double B, double x) {
double r9374578 = x;
double r9374579 = 1.0;
double r9374580 = B;
double r9374581 = tan(r9374580);
double r9374582 = r9374579 / r9374581;
double r9374583 = r9374578 * r9374582;
double r9374584 = -r9374583;
double r9374585 = F;
double r9374586 = sin(r9374580);
double r9374587 = r9374585 / r9374586;
double r9374588 = r9374585 * r9374585;
double r9374589 = 2.0;
double r9374590 = r9374588 + r9374589;
double r9374591 = r9374589 * r9374578;
double r9374592 = r9374590 + r9374591;
double r9374593 = r9374579 / r9374589;
double r9374594 = -r9374593;
double r9374595 = pow(r9374592, r9374594);
double r9374596 = r9374587 * r9374595;
double r9374597 = r9374584 + r9374596;
return r9374597;
}
double f(double F, double B, double x) {
double r9374598 = F;
double r9374599 = 2.0;
double r9374600 = x;
double r9374601 = fma(r9374598, r9374598, r9374599);
double r9374602 = fma(r9374599, r9374600, r9374601);
double r9374603 = -0.25;
double r9374604 = pow(r9374602, r9374603);
double r9374605 = r9374604 * r9374604;
double r9374606 = r9374598 * r9374605;
double r9374607 = B;
double r9374608 = sin(r9374607);
double r9374609 = r9374606 / r9374608;
double r9374610 = tan(r9374607);
double r9374611 = r9374600 / r9374610;
double r9374612 = r9374609 - r9374611;
return r9374612;
}



Bits error versus F



Bits error versus B



Bits error versus x
Initial program 13.2
Simplified13.1
rmApplied associate-*r/10.3
rmApplied sqr-pow10.4
Final simplification10.4
herbie shell --seed 2019128 +o rules:numerics
(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))))))