\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\begin{array}{l}
\mathbf{if}\;\pi \cdot \ell \le -2.7182725096522959 \cdot 10^{155}:\\
\;\;\;\;\pi \cdot \ell - \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{F} \cdot \frac{\sqrt[3]{1} \cdot \sin \left(\pi \cdot \ell\right)}{F \cdot \cos \left(\left(\left(\sqrt[3]{\sqrt{\pi}} \cdot \sqrt[3]{\sqrt{\pi}}\right) \cdot \left(\sqrt[3]{\sqrt{\pi}} \cdot \sqrt[3]{\sqrt{\pi}}\right)\right) \cdot \left(\sqrt[3]{\pi} \cdot \ell\right)\right)}\\
\mathbf{elif}\;\pi \cdot \ell \le 4.30574485349055633 \cdot 10^{139}:\\
\;\;\;\;\pi \cdot \ell - \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{F} \cdot \frac{\sqrt[3]{1} \cdot \sin \left(\pi \cdot \ell\right)}{F \cdot \mathsf{fma}\left(\frac{1}{24} \cdot {\pi}^{4}, {\ell}^{4}, 1 - \frac{1}{2} \cdot \left({\pi}^{2} \cdot {\ell}^{2}\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\mathsf{expm1}\left(\mathsf{log1p}\left(\pi \cdot \ell\right)\right)\right)\\
\end{array}double f(double F, double l) {
double r13577 = atan2(1.0, 0.0);
double r13578 = l;
double r13579 = r13577 * r13578;
double r13580 = 1.0;
double r13581 = F;
double r13582 = r13581 * r13581;
double r13583 = r13580 / r13582;
double r13584 = tan(r13579);
double r13585 = r13583 * r13584;
double r13586 = r13579 - r13585;
return r13586;
}
double f(double F, double l) {
double r13587 = atan2(1.0, 0.0);
double r13588 = l;
double r13589 = r13587 * r13588;
double r13590 = -2.718272509652296e+155;
bool r13591 = r13589 <= r13590;
double r13592 = 1.0;
double r13593 = cbrt(r13592);
double r13594 = r13593 * r13593;
double r13595 = F;
double r13596 = r13594 / r13595;
double r13597 = sin(r13589);
double r13598 = r13593 * r13597;
double r13599 = sqrt(r13587);
double r13600 = cbrt(r13599);
double r13601 = r13600 * r13600;
double r13602 = r13601 * r13601;
double r13603 = cbrt(r13587);
double r13604 = r13603 * r13588;
double r13605 = r13602 * r13604;
double r13606 = cos(r13605);
double r13607 = r13595 * r13606;
double r13608 = r13598 / r13607;
double r13609 = r13596 * r13608;
double r13610 = r13589 - r13609;
double r13611 = 4.3057448534905563e+139;
bool r13612 = r13589 <= r13611;
double r13613 = 0.041666666666666664;
double r13614 = 4.0;
double r13615 = pow(r13587, r13614);
double r13616 = r13613 * r13615;
double r13617 = pow(r13588, r13614);
double r13618 = 1.0;
double r13619 = 0.5;
double r13620 = 2.0;
double r13621 = pow(r13587, r13620);
double r13622 = pow(r13588, r13620);
double r13623 = r13621 * r13622;
double r13624 = r13619 * r13623;
double r13625 = r13618 - r13624;
double r13626 = fma(r13616, r13617, r13625);
double r13627 = r13595 * r13626;
double r13628 = r13598 / r13627;
double r13629 = r13596 * r13628;
double r13630 = r13589 - r13629;
double r13631 = r13595 * r13595;
double r13632 = r13592 / r13631;
double r13633 = log1p(r13589);
double r13634 = expm1(r13633);
double r13635 = tan(r13634);
double r13636 = r13632 * r13635;
double r13637 = r13589 - r13636;
double r13638 = r13612 ? r13630 : r13637;
double r13639 = r13591 ? r13610 : r13638;
return r13639;
}



Bits error versus F



Bits error versus l
if (* PI l) < -2.718272509652296e+155Initial program 20.0
rmApplied add-cube-cbrt20.0
Applied times-frac20.0
Applied associate-*l*20.0
rmApplied tan-quot20.0
Applied frac-times20.0
rmApplied add-cube-cbrt20.0
Applied associate-*l*20.0
rmApplied add-sqr-sqrt20.0
Applied cbrt-prod20.0
Applied add-sqr-sqrt20.0
Applied cbrt-prod20.0
Applied swap-sqr20.0
if -2.718272509652296e+155 < (* PI l) < 4.3057448534905563e+139Initial program 14.6
rmApplied add-cube-cbrt14.6
Applied times-frac14.7
Applied associate-*l*9.2
rmApplied tan-quot9.2
Applied frac-times9.2
Taylor expanded around 0 3.7
Simplified3.7
if 4.3057448534905563e+139 < (* PI l) Initial program 19.6
rmApplied expm1-log1p-u19.6
Final simplification8.2
herbie shell --seed 2020018 +o rules:numerics
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
:precision binary64
(- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))))