\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\begin{array}{l}
\mathbf{if}\;\pi \cdot \ell \le -1.455450186058043088726824553465467054861 \cdot 10^{159}:\\
\;\;\;\;\pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \left(\frac{\sqrt{1}}{F} \cdot \tan \left(\left(\sqrt[3]{\pi} \cdot \sqrt[3]{\pi}\right) \cdot \left(\sqrt[3]{\pi} \cdot \ell\right)\right)\right)\\
\mathbf{elif}\;\pi \cdot \ell \le 2.02677691823346220115086084828006352432 \cdot 10^{150}:\\
\;\;\;\;\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(\sqrt{\pi} \cdot \left(\sqrt{\pi} \cdot \ell\right)\right)\right)\\
\end{array}double f(double F, double l) {
double r17536 = atan2(1.0, 0.0);
double r17537 = l;
double r17538 = r17536 * r17537;
double r17539 = 1.0;
double r17540 = F;
double r17541 = r17540 * r17540;
double r17542 = r17539 / r17541;
double r17543 = tan(r17538);
double r17544 = r17542 * r17543;
double r17545 = r17538 - r17544;
return r17545;
}
double f(double F, double l) {
double r17546 = atan2(1.0, 0.0);
double r17547 = l;
double r17548 = r17546 * r17547;
double r17549 = -1.455450186058043e+159;
bool r17550 = r17548 <= r17549;
double r17551 = 1.0;
double r17552 = sqrt(r17551);
double r17553 = F;
double r17554 = r17552 / r17553;
double r17555 = cbrt(r17546);
double r17556 = r17555 * r17555;
double r17557 = r17555 * r17547;
double r17558 = r17556 * r17557;
double r17559 = tan(r17558);
double r17560 = r17554 * r17559;
double r17561 = r17554 * r17560;
double r17562 = r17548 - r17561;
double r17563 = 2.0267769182334622e+150;
bool r17564 = r17548 <= r17563;
double r17565 = sin(r17548);
double r17566 = r17565 * r17552;
double r17567 = 0.041666666666666664;
double r17568 = 4.0;
double r17569 = pow(r17546, r17568);
double r17570 = r17567 * r17569;
double r17571 = pow(r17547, r17568);
double r17572 = 1.0;
double r17573 = 0.5;
double r17574 = 2.0;
double r17575 = pow(r17546, r17574);
double r17576 = pow(r17547, r17574);
double r17577 = r17575 * r17576;
double r17578 = r17573 * r17577;
double r17579 = r17572 - r17578;
double r17580 = fma(r17570, r17571, r17579);
double r17581 = r17580 * r17553;
double r17582 = r17566 / r17581;
double r17583 = r17554 * r17582;
double r17584 = r17548 - r17583;
double r17585 = sqrt(r17546);
double r17586 = r17585 * r17547;
double r17587 = r17585 * r17586;
double r17588 = tan(r17587);
double r17589 = r17554 * r17588;
double r17590 = r17554 * r17589;
double r17591 = r17548 - r17590;
double r17592 = r17564 ? r17584 : r17591;
double r17593 = r17550 ? r17562 : r17592;
return r17593;
}



Bits error versus F



Bits error versus l
if (* PI l) < -1.455450186058043e+159Initial program 19.9
rmApplied add-sqr-sqrt19.9
Applied times-frac19.9
Applied associate-*l*19.9
rmApplied add-cube-cbrt19.9
Applied associate-*l*19.9
if -1.455450186058043e+159 < (* PI l) < 2.0267769182334622e+150Initial program 15.4
rmApplied add-sqr-sqrt15.4
Applied times-frac15.5
Applied associate-*l*9.6
Taylor expanded around inf 9.5
Taylor expanded around 0 4.0
Simplified4.0
if 2.0267769182334622e+150 < (* PI l) Initial program 19.6
rmApplied add-sqr-sqrt19.6
Applied times-frac19.6
Applied associate-*l*19.6
rmApplied add-sqr-sqrt19.5
Applied associate-*l*19.6
Final simplification8.1
herbie shell --seed 2019352 +o rules:numerics
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
:precision binary64
(- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))))