\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.85995220426127499 \cdot 10^{158} \lor \neg \left(\pi \cdot \ell \le 3.0108891228785767 \cdot 10^{145}\right):\\
\;\;\;\;\pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{1}{\frac{F}{\sqrt{1} \cdot \left(\pi \cdot \ell\right)} - \frac{1}{3} \cdot \frac{F \cdot \left(\pi \cdot \ell\right)}{\sqrt{1}}}\\
\mathbf{else}:\\
\;\;\;\;\pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{\sin \left(\pi \cdot \ell\right) \cdot \sqrt{1}}{\left(\left(\frac{1}{24} \cdot \left({\pi}^{4} \cdot {\ell}^{4}\right) + 1\right) - \frac{1}{2} \cdot \left({\pi}^{2} \cdot {\ell}^{2}\right)\right) \cdot F}\\
\end{array}double f(double F, double l) {
double r19029 = atan2(1.0, 0.0);
double r19030 = l;
double r19031 = r19029 * r19030;
double r19032 = 1.0;
double r19033 = F;
double r19034 = r19033 * r19033;
double r19035 = r19032 / r19034;
double r19036 = tan(r19031);
double r19037 = r19035 * r19036;
double r19038 = r19031 - r19037;
return r19038;
}
double f(double F, double l) {
double r19039 = atan2(1.0, 0.0);
double r19040 = l;
double r19041 = r19039 * r19040;
double r19042 = -2.859952204261275e+158;
bool r19043 = r19041 <= r19042;
double r19044 = 3.0108891228785767e+145;
bool r19045 = r19041 <= r19044;
double r19046 = !r19045;
bool r19047 = r19043 || r19046;
double r19048 = 1.0;
double r19049 = sqrt(r19048);
double r19050 = F;
double r19051 = r19049 / r19050;
double r19052 = 1.0;
double r19053 = r19049 * r19041;
double r19054 = r19050 / r19053;
double r19055 = 0.3333333333333333;
double r19056 = r19050 * r19041;
double r19057 = r19056 / r19049;
double r19058 = r19055 * r19057;
double r19059 = r19054 - r19058;
double r19060 = r19052 / r19059;
double r19061 = r19051 * r19060;
double r19062 = r19041 - r19061;
double r19063 = sin(r19041);
double r19064 = r19063 * r19049;
double r19065 = 0.041666666666666664;
double r19066 = 4.0;
double r19067 = pow(r19039, r19066);
double r19068 = pow(r19040, r19066);
double r19069 = r19067 * r19068;
double r19070 = r19065 * r19069;
double r19071 = r19070 + r19052;
double r19072 = 0.5;
double r19073 = 2.0;
double r19074 = pow(r19039, r19073);
double r19075 = pow(r19040, r19073);
double r19076 = r19074 * r19075;
double r19077 = r19072 * r19076;
double r19078 = r19071 - r19077;
double r19079 = r19078 * r19050;
double r19080 = r19064 / r19079;
double r19081 = r19051 * r19080;
double r19082 = r19041 - r19081;
double r19083 = r19047 ? r19062 : r19082;
return r19083;
}



Bits error versus F



Bits error versus l
Results
if (* PI l) < -2.859952204261275e+158 or 3.0108891228785767e+145 < (* PI l) Initial program 20.1
rmApplied add-sqr-sqrt20.1
Applied times-frac20.1
Applied associate-*l*20.1
Taylor expanded around inf 20.1
rmApplied clear-num20.1
Taylor expanded around 0 8.0
if -2.859952204261275e+158 < (* PI l) < 3.0108891228785767e+145Initial program 15.2
rmApplied add-sqr-sqrt15.2
Applied times-frac15.3
Applied associate-*l*9.3
Taylor expanded around inf 9.3
Taylor expanded around 0 4.1
Final simplification5.2
herbie shell --seed 2020033
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
:precision binary64
(- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))))