\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\mathsf{fma}\left(\frac{1}{\frac{F}{\tan \left(\left(\sqrt{\pi} \cdot \ell\right) \cdot \left(\sqrt{\sqrt{\pi}} \cdot \sqrt{\sqrt{\pi}}\right)\right)}}, -\frac{1}{F}, \ell \cdot \pi\right)double f(double F, double l) {
double r23827 = atan2(1.0, 0.0);
double r23828 = l;
double r23829 = r23827 * r23828;
double r23830 = 1.0;
double r23831 = F;
double r23832 = r23831 * r23831;
double r23833 = r23830 / r23832;
double r23834 = tan(r23829);
double r23835 = r23833 * r23834;
double r23836 = r23829 - r23835;
return r23836;
}
double f(double F, double l) {
double r23837 = 1.0;
double r23838 = F;
double r23839 = atan2(1.0, 0.0);
double r23840 = sqrt(r23839);
double r23841 = l;
double r23842 = r23840 * r23841;
double r23843 = sqrt(r23840);
double r23844 = r23843 * r23843;
double r23845 = r23842 * r23844;
double r23846 = tan(r23845);
double r23847 = r23838 / r23846;
double r23848 = r23837 / r23847;
double r23849 = 1.0;
double r23850 = r23849 / r23838;
double r23851 = -r23850;
double r23852 = r23841 * r23839;
double r23853 = fma(r23848, r23851, r23852);
return r23853;
}



Bits error versus F



Bits error versus l
Initial program 16.8
Simplified12.7
rmApplied clear-num12.7
rmApplied add-sqr-sqrt12.8
Applied associate-*l*12.8
rmApplied add-sqr-sqrt12.8
Applied sqrt-prod12.7
Final simplification12.7
herbie shell --seed 2019174 +o rules:numerics
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
(- (* PI l) (* (/ 1.0 (* F F)) (tan (* PI l)))))