\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\begin{array}{l}
\mathbf{if}\;\pi \cdot \ell \le -1.011948691715024543580909495142699086666 \cdot 10^{169}:\\
\;\;\;\;\pi \cdot \ell - \left(\sqrt{\frac{1}{F \cdot F}} \cdot \sqrt{\frac{1}{F \cdot F}}\right) \cdot \tan \left(\pi \cdot \ell\right)\\
\mathbf{elif}\;\pi \cdot \ell \le 2.691706907806316542182290270953314062387 \cdot 10^{133}:\\
\;\;\;\;\pi \cdot \ell - \frac{1}{F} \cdot \left(1 \cdot \frac{\sin \left(\pi \cdot \ell\right)}{\mathsf{fma}\left(\frac{1}{24} \cdot {\pi}^{4}, {\ell}^{4}, 1 - \frac{1}{2} \cdot \left({\pi}^{2} \cdot {\ell}^{2}\right)\right) \cdot F}\right)\\
\mathbf{else}:\\
\;\;\;\;\pi \cdot \ell - \frac{1}{F} \cdot \left(\frac{1}{F} \cdot \tan \left(\left(\pi \cdot \left(\sqrt[3]{\ell} \cdot \mathsf{expm1}\left(\mathsf{log1p}\left(\sqrt[3]{\ell}\right)\right)\right)\right) \cdot \sqrt[3]{\ell}\right)\right)\\
\end{array}double f(double F, double l) {
double r17802 = atan2(1.0, 0.0);
double r17803 = l;
double r17804 = r17802 * r17803;
double r17805 = 1.0;
double r17806 = F;
double r17807 = r17806 * r17806;
double r17808 = r17805 / r17807;
double r17809 = tan(r17804);
double r17810 = r17808 * r17809;
double r17811 = r17804 - r17810;
return r17811;
}
double f(double F, double l) {
double r17812 = atan2(1.0, 0.0);
double r17813 = l;
double r17814 = r17812 * r17813;
double r17815 = -1.0119486917150245e+169;
bool r17816 = r17814 <= r17815;
double r17817 = 1.0;
double r17818 = F;
double r17819 = r17818 * r17818;
double r17820 = r17817 / r17819;
double r17821 = sqrt(r17820);
double r17822 = r17821 * r17821;
double r17823 = tan(r17814);
double r17824 = r17822 * r17823;
double r17825 = r17814 - r17824;
double r17826 = 2.6917069078063165e+133;
bool r17827 = r17814 <= r17826;
double r17828 = 1.0;
double r17829 = r17828 / r17818;
double r17830 = sin(r17814);
double r17831 = 0.041666666666666664;
double r17832 = 4.0;
double r17833 = pow(r17812, r17832);
double r17834 = r17831 * r17833;
double r17835 = pow(r17813, r17832);
double r17836 = 0.5;
double r17837 = 2.0;
double r17838 = pow(r17812, r17837);
double r17839 = pow(r17813, r17837);
double r17840 = r17838 * r17839;
double r17841 = r17836 * r17840;
double r17842 = r17828 - r17841;
double r17843 = fma(r17834, r17835, r17842);
double r17844 = r17843 * r17818;
double r17845 = r17830 / r17844;
double r17846 = r17817 * r17845;
double r17847 = r17829 * r17846;
double r17848 = r17814 - r17847;
double r17849 = r17817 / r17818;
double r17850 = cbrt(r17813);
double r17851 = log1p(r17850);
double r17852 = expm1(r17851);
double r17853 = r17850 * r17852;
double r17854 = r17812 * r17853;
double r17855 = r17854 * r17850;
double r17856 = tan(r17855);
double r17857 = r17849 * r17856;
double r17858 = r17829 * r17857;
double r17859 = r17814 - r17858;
double r17860 = r17827 ? r17848 : r17859;
double r17861 = r17816 ? r17825 : r17860;
return r17861;
}



Bits error versus F



Bits error versus l
if (* PI l) < -1.0119486917150245e+169Initial program 20.0
rmApplied add-sqr-sqrt20.0
if -1.0119486917150245e+169 < (* PI l) < 2.6917069078063165e+133Initial program 15.0
rmApplied *-un-lft-identity15.0
Applied times-frac15.1
Applied associate-*l*9.5
Taylor expanded around inf 9.4
Taylor expanded around 0 4.7
Simplified4.7
if 2.6917069078063165e+133 < (* PI l) Initial program 21.6
rmApplied *-un-lft-identity21.6
Applied times-frac21.6
Applied associate-*l*21.6
rmApplied add-cube-cbrt21.6
Applied associate-*r*21.6
rmApplied expm1-log1p-u21.5
Final simplification9.2
herbie shell --seed 2020001 +o rules:numerics
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
:precision binary64
(- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))))