\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.3156574101048331 \cdot 10^{156}:\\
\;\;\;\;\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\left(\pi \cdot \left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right)\right) \cdot \sqrt[3]{\ell}\right)\\
\mathbf{elif}\;\pi \cdot \ell \le 9.3869987037345625 \cdot 10^{125}:\\
\;\;\;\;\pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{\sin \left(\pi \cdot \ell\right) \cdot \sqrt{1}}{\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}\\
\mathbf{else}:\\
\;\;\;\;\pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \left(\frac{\sqrt{1}}{F} \cdot \tan \left(\mathsf{expm1}\left(\mathsf{log1p}\left(\pi \cdot \ell\right)\right)\right)\right)\\
\end{array}double f(double F, double l) {
double r15224 = atan2(1.0, 0.0);
double r15225 = l;
double r15226 = r15224 * r15225;
double r15227 = 1.0;
double r15228 = F;
double r15229 = r15228 * r15228;
double r15230 = r15227 / r15229;
double r15231 = tan(r15226);
double r15232 = r15230 * r15231;
double r15233 = r15226 - r15232;
return r15233;
}
double f(double F, double l) {
double r15234 = atan2(1.0, 0.0);
double r15235 = l;
double r15236 = r15234 * r15235;
double r15237 = -3.315657410104833e+156;
bool r15238 = r15236 <= r15237;
double r15239 = 1.0;
double r15240 = F;
double r15241 = r15240 * r15240;
double r15242 = r15239 / r15241;
double r15243 = cbrt(r15235);
double r15244 = r15243 * r15243;
double r15245 = r15234 * r15244;
double r15246 = r15245 * r15243;
double r15247 = tan(r15246);
double r15248 = r15242 * r15247;
double r15249 = r15236 - r15248;
double r15250 = 9.386998703734563e+125;
bool r15251 = r15236 <= r15250;
double r15252 = sqrt(r15239);
double r15253 = r15252 / r15240;
double r15254 = sin(r15236);
double r15255 = r15254 * r15252;
double r15256 = 0.041666666666666664;
double r15257 = 4.0;
double r15258 = pow(r15234, r15257);
double r15259 = r15256 * r15258;
double r15260 = pow(r15235, r15257);
double r15261 = 1.0;
double r15262 = 0.5;
double r15263 = 2.0;
double r15264 = pow(r15234, r15263);
double r15265 = pow(r15235, r15263);
double r15266 = r15264 * r15265;
double r15267 = r15262 * r15266;
double r15268 = r15261 - r15267;
double r15269 = fma(r15259, r15260, r15268);
double r15270 = r15269 * r15240;
double r15271 = r15255 / r15270;
double r15272 = r15253 * r15271;
double r15273 = r15236 - r15272;
double r15274 = log1p(r15236);
double r15275 = expm1(r15274);
double r15276 = tan(r15275);
double r15277 = r15253 * r15276;
double r15278 = r15253 * r15277;
double r15279 = r15236 - r15278;
double r15280 = r15251 ? r15273 : r15279;
double r15281 = r15238 ? r15249 : r15280;
return r15281;
}



Bits error versus F



Bits error versus l
if (* PI l) < -3.315657410104833e+156Initial program 20.1
rmApplied add-cube-cbrt20.1
Applied associate-*r*20.1
if -3.315657410104833e+156 < (* PI l) < 9.386998703734563e+125Initial program 15.3
rmApplied add-sqr-sqrt15.3
Applied times-frac15.3
Applied associate-*l*9.5
Taylor expanded around inf 9.4
Taylor expanded around 0 4.2
Simplified4.2
if 9.386998703734563e+125 < (* PI l) Initial program 19.3
rmApplied add-sqr-sqrt19.3
Applied times-frac19.3
Applied associate-*l*19.3
rmApplied expm1-log1p-u19.3
Final simplification8.7
herbie shell --seed 2020065 +o rules:numerics
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
:precision binary64
(- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))))