\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\begin{array}{l}
\mathbf{if}\;\pi \cdot \ell \le -3.07123983171505107 \cdot 10^{154}:\\
\;\;\;\;\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\sqrt{\pi} \cdot \left(\sqrt{\pi} \cdot \ell\right)\right)\\
\mathbf{elif}\;\pi \cdot \ell \le 3.0447161306430852 \cdot 10^{131}:\\
\;\;\;\;\pi \cdot \ell - \frac{1}{F} \cdot \frac{1 \cdot \sin \left(\pi \cdot \ell\right)}{F \cdot \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)}\\
\mathbf{else}:\\
\;\;\;\;\pi \cdot \ell - \frac{1}{F} \cdot \left(\frac{1}{F} \cdot \tan \left(\left(\pi \cdot \left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right)\right) \cdot \sqrt[3]{\ell}\right)\right)\\
\end{array}double f(double F, double l) {
double r13094 = atan2(1.0, 0.0);
double r13095 = l;
double r13096 = r13094 * r13095;
double r13097 = 1.0;
double r13098 = F;
double r13099 = r13098 * r13098;
double r13100 = r13097 / r13099;
double r13101 = tan(r13096);
double r13102 = r13100 * r13101;
double r13103 = r13096 - r13102;
return r13103;
}
double f(double F, double l) {
double r13104 = atan2(1.0, 0.0);
double r13105 = l;
double r13106 = r13104 * r13105;
double r13107 = -3.071239831715051e+154;
bool r13108 = r13106 <= r13107;
double r13109 = 1.0;
double r13110 = F;
double r13111 = r13110 * r13110;
double r13112 = r13109 / r13111;
double r13113 = sqrt(r13104);
double r13114 = r13113 * r13105;
double r13115 = r13113 * r13114;
double r13116 = tan(r13115);
double r13117 = r13112 * r13116;
double r13118 = r13106 - r13117;
double r13119 = 3.0447161306430852e+131;
bool r13120 = r13106 <= r13119;
double r13121 = 1.0;
double r13122 = r13121 / r13110;
double r13123 = sin(r13106);
double r13124 = r13109 * r13123;
double r13125 = 0.041666666666666664;
double r13126 = 4.0;
double r13127 = pow(r13104, r13126);
double r13128 = pow(r13105, r13126);
double r13129 = r13127 * r13128;
double r13130 = r13125 * r13129;
double r13131 = r13130 + r13121;
double r13132 = 0.5;
double r13133 = 2.0;
double r13134 = pow(r13104, r13133);
double r13135 = pow(r13105, r13133);
double r13136 = r13134 * r13135;
double r13137 = r13132 * r13136;
double r13138 = r13131 - r13137;
double r13139 = r13110 * r13138;
double r13140 = r13124 / r13139;
double r13141 = r13122 * r13140;
double r13142 = r13106 - r13141;
double r13143 = r13109 / r13110;
double r13144 = cbrt(r13105);
double r13145 = r13144 * r13144;
double r13146 = r13104 * r13145;
double r13147 = r13146 * r13144;
double r13148 = tan(r13147);
double r13149 = r13143 * r13148;
double r13150 = r13122 * r13149;
double r13151 = r13106 - r13150;
double r13152 = r13120 ? r13142 : r13151;
double r13153 = r13108 ? r13118 : r13152;
return r13153;
}



Bits error versus F



Bits error versus l
Results
if (* PI l) < -3.071239831715051e+154Initial program 20.9
rmApplied add-sqr-sqrt20.9
Applied associate-*l*20.9
if -3.071239831715051e+154 < (* PI l) < 3.0447161306430852e+131Initial program 15.5
rmApplied *-un-lft-identity15.5
Applied times-frac15.5
Applied associate-*l*9.5
rmApplied tan-quot9.5
Applied frac-times9.4
Taylor expanded around 0 4.2
if 3.0447161306430852e+131 < (* PI l) Initial program 21.1
rmApplied *-un-lft-identity21.1
Applied times-frac21.1
Applied associate-*l*21.1
rmApplied add-cube-cbrt21.2
Applied associate-*r*21.2
Final simplification9.0
herbie shell --seed 2020045
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
:precision binary64
(- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))))