\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\begin{array}{l}
\mathbf{if}\;\pi \cdot \ell \le -29407008719341217132838912:\\
\;\;\;\;\pi \cdot \ell - \left(\left(\frac{1}{F \cdot F}\right)\right) \cdot \tan \left(\pi \cdot \ell\right)\\
\mathbf{elif}\;\pi \cdot \ell \le 1418305108739575.25:\\
\;\;\;\;\pi \cdot \ell - 1 \cdot \frac{\tan \left(\pi \cdot \ell\right) \cdot \frac{1}{F}}{F}\\
\mathbf{else}:\\
\;\;\;\;\pi \cdot \ell - \left(\left(\frac{1}{F \cdot F}\right)\right) \cdot \tan \left(\pi \cdot \ell\right)\\
\end{array}double f(double F, double l) {
double r863761 = atan2(1.0, 0.0);
double r863762 = l;
double r863763 = r863761 * r863762;
double r863764 = 1.0;
double r863765 = F;
double r863766 = r863765 * r863765;
double r863767 = r863764 / r863766;
double r863768 = tan(r863763);
double r863769 = r863767 * r863768;
double r863770 = r863763 - r863769;
return r863770;
}
double f(double F, double l) {
double r863771 = atan2(1.0, 0.0);
double r863772 = l;
double r863773 = r863771 * r863772;
double r863774 = -2.9407008719341217e+25;
bool r863775 = r863773 <= r863774;
double r863776 = 1.0;
double r863777 = F;
double r863778 = r863777 * r863777;
double r863779 = r863776 / r863778;
double r863780 = /* ERROR: no posit support in C */;
double r863781 = /* ERROR: no posit support in C */;
double r863782 = tan(r863773);
double r863783 = r863781 * r863782;
double r863784 = r863773 - r863783;
double r863785 = 1418305108739575.2;
bool r863786 = r863773 <= r863785;
double r863787 = 1.0;
double r863788 = r863787 / r863777;
double r863789 = r863782 * r863788;
double r863790 = r863789 / r863777;
double r863791 = r863776 * r863790;
double r863792 = r863773 - r863791;
double r863793 = r863786 ? r863792 : r863784;
double r863794 = r863775 ? r863784 : r863793;
return r863794;
}



Bits error versus F



Bits error versus l
if (* PI l) < -2.9407008719341217e+25 or 1418305108739575.2 < (* PI l) Initial program 24.6
rmApplied insert-posit1616.9
if -2.9407008719341217e+25 < (* PI l) < 1418305108739575.2Initial program 10.1
rmApplied div-inv10.1
Applied associate-*l*10.1
Simplified1.2
rmApplied div-inv1.2
Final simplification9.1
herbie shell --seed 2019168
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
(- (* PI l) (* (/ 1.0 (* F F)) (tan (* PI l)))))