Average Error: 17.1 → 9.0
Time: 12.3s
Precision: 64
\[\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}\]
\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;
}

Error

Bits error versus F

Bits error versus l

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 3 regimes
  2. if (* PI l) < -3.071239831715051e+154

    1. Initial program 20.9

      \[\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
    2. Using strategy rm
    3. Applied add-sqr-sqrt20.9

      \[\leadsto \pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\color{blue}{\left(\sqrt{\pi} \cdot \sqrt{\pi}\right)} \cdot \ell\right)\]
    4. Applied associate-*l*20.9

      \[\leadsto \pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \color{blue}{\left(\sqrt{\pi} \cdot \left(\sqrt{\pi} \cdot \ell\right)\right)}\]

    if -3.071239831715051e+154 < (* PI l) < 3.0447161306430852e+131

    1. Initial program 15.5

      \[\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
    2. Using strategy rm
    3. Applied *-un-lft-identity15.5

      \[\leadsto \pi \cdot \ell - \frac{\color{blue}{1 \cdot 1}}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
    4. Applied times-frac15.5

      \[\leadsto \pi \cdot \ell - \color{blue}{\left(\frac{1}{F} \cdot \frac{1}{F}\right)} \cdot \tan \left(\pi \cdot \ell\right)\]
    5. Applied associate-*l*9.5

      \[\leadsto \pi \cdot \ell - \color{blue}{\frac{1}{F} \cdot \left(\frac{1}{F} \cdot \tan \left(\pi \cdot \ell\right)\right)}\]
    6. Using strategy rm
    7. Applied tan-quot9.5

      \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \left(\frac{1}{F} \cdot \color{blue}{\frac{\sin \left(\pi \cdot \ell\right)}{\cos \left(\pi \cdot \ell\right)}}\right)\]
    8. Applied frac-times9.4

      \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \color{blue}{\frac{1 \cdot \sin \left(\pi \cdot \ell\right)}{F \cdot \cos \left(\pi \cdot \ell\right)}}\]
    9. Taylor expanded around 0 4.2

      \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \frac{1 \cdot \sin \left(\pi \cdot \ell\right)}{F \cdot \color{blue}{\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)}}\]

    if 3.0447161306430852e+131 < (* PI l)

    1. Initial program 21.1

      \[\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
    2. Using strategy rm
    3. Applied *-un-lft-identity21.1

      \[\leadsto \pi \cdot \ell - \frac{\color{blue}{1 \cdot 1}}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
    4. Applied times-frac21.1

      \[\leadsto \pi \cdot \ell - \color{blue}{\left(\frac{1}{F} \cdot \frac{1}{F}\right)} \cdot \tan \left(\pi \cdot \ell\right)\]
    5. Applied associate-*l*21.1

      \[\leadsto \pi \cdot \ell - \color{blue}{\frac{1}{F} \cdot \left(\frac{1}{F} \cdot \tan \left(\pi \cdot \ell\right)\right)}\]
    6. Using strategy rm
    7. Applied add-cube-cbrt21.2

      \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \left(\frac{1}{F} \cdot \tan \left(\pi \cdot \color{blue}{\left(\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \sqrt[3]{\ell}\right)}\right)\right)\]
    8. Applied associate-*r*21.2

      \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \left(\frac{1}{F} \cdot \tan \color{blue}{\left(\left(\pi \cdot \left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right)\right) \cdot \sqrt[3]{\ell}\right)}\right)\]
  3. Recombined 3 regimes into one program.
  4. Final simplification9.0

    \[\leadsto \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}\]

Reproduce

herbie shell --seed 2020045 
(FPCore (F l)
  :name "VandenBroeck and Keller, Equation (6)"
  :precision binary64
  (- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))))