Average Error: 16.6 → 8.8
Time: 17.2s
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 -8.352564792267725223426739494538695808396 \cdot 10^{158}:\\ \;\;\;\;\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)\\ \mathbf{elif}\;\pi \cdot \ell \le 6.212139442075578443856556908774016046633 \cdot 10^{135}:\\ \;\;\;\;\pi \cdot \ell - \frac{1}{F} \cdot \left(1 \cdot \frac{\sin \left(\pi \cdot \ell\right)}{\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}\right)\\ \mathbf{else}:\\ \;\;\;\;\pi \cdot \ell - \frac{1}{F} \cdot \left(1 \cdot \frac{\left(\sqrt[3]{\sin \left(\pi \cdot \ell\right)} \cdot \sqrt[3]{\sin \left(\pi \cdot \ell\right)}\right) \cdot \sqrt[3]{\sin \left(\pi \cdot \ell\right)}}{\cos \left(\left(\sqrt[3]{\pi \cdot \ell} \cdot \sqrt[3]{\pi \cdot \ell}\right) \cdot \sqrt[3]{\pi \cdot \ell}\right) \cdot F}\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 -8.352564792267725223426739494538695808396 \cdot 10^{158}:\\
\;\;\;\;\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)\\

\mathbf{elif}\;\pi \cdot \ell \le 6.212139442075578443856556908774016046633 \cdot 10^{135}:\\
\;\;\;\;\pi \cdot \ell - \frac{1}{F} \cdot \left(1 \cdot \frac{\sin \left(\pi \cdot \ell\right)}{\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}\right)\\

\mathbf{else}:\\
\;\;\;\;\pi \cdot \ell - \frac{1}{F} \cdot \left(1 \cdot \frac{\left(\sqrt[3]{\sin \left(\pi \cdot \ell\right)} \cdot \sqrt[3]{\sin \left(\pi \cdot \ell\right)}\right) \cdot \sqrt[3]{\sin \left(\pi \cdot \ell\right)}}{\cos \left(\left(\sqrt[3]{\pi \cdot \ell} \cdot \sqrt[3]{\pi \cdot \ell}\right) \cdot \sqrt[3]{\pi \cdot \ell}\right) \cdot F}\right)\\

\end{array}
double f(double F, double l) {
        double r25632 = atan2(1.0, 0.0);
        double r25633 = l;
        double r25634 = r25632 * r25633;
        double r25635 = 1.0;
        double r25636 = F;
        double r25637 = r25636 * r25636;
        double r25638 = r25635 / r25637;
        double r25639 = tan(r25634);
        double r25640 = r25638 * r25639;
        double r25641 = r25634 - r25640;
        return r25641;
}

double f(double F, double l) {
        double r25642 = atan2(1.0, 0.0);
        double r25643 = l;
        double r25644 = r25642 * r25643;
        double r25645 = -8.352564792267725e+158;
        bool r25646 = r25644 <= r25645;
        double r25647 = 1.0;
        double r25648 = F;
        double r25649 = r25647 / r25648;
        double r25650 = 1.0;
        double r25651 = r25650 / r25648;
        double r25652 = cbrt(r25643);
        double r25653 = r25652 * r25652;
        double r25654 = r25642 * r25653;
        double r25655 = r25654 * r25652;
        double r25656 = tan(r25655);
        double r25657 = r25651 * r25656;
        double r25658 = r25649 * r25657;
        double r25659 = r25644 - r25658;
        double r25660 = 6.212139442075578e+135;
        bool r25661 = r25644 <= r25660;
        double r25662 = sin(r25644);
        double r25663 = 0.041666666666666664;
        double r25664 = 4.0;
        double r25665 = pow(r25642, r25664);
        double r25666 = pow(r25643, r25664);
        double r25667 = r25665 * r25666;
        double r25668 = r25663 * r25667;
        double r25669 = r25668 + r25647;
        double r25670 = 0.5;
        double r25671 = 2.0;
        double r25672 = pow(r25642, r25671);
        double r25673 = pow(r25643, r25671);
        double r25674 = r25672 * r25673;
        double r25675 = r25670 * r25674;
        double r25676 = r25669 - r25675;
        double r25677 = r25676 * r25648;
        double r25678 = r25662 / r25677;
        double r25679 = r25650 * r25678;
        double r25680 = r25649 * r25679;
        double r25681 = r25644 - r25680;
        double r25682 = cbrt(r25662);
        double r25683 = r25682 * r25682;
        double r25684 = r25683 * r25682;
        double r25685 = cbrt(r25644);
        double r25686 = r25685 * r25685;
        double r25687 = r25686 * r25685;
        double r25688 = cos(r25687);
        double r25689 = r25688 * r25648;
        double r25690 = r25684 / r25689;
        double r25691 = r25650 * r25690;
        double r25692 = r25649 * r25691;
        double r25693 = r25644 - r25692;
        double r25694 = r25661 ? r25681 : r25693;
        double r25695 = r25646 ? r25659 : r25694;
        return r25695;
}

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) < -8.352564792267725e+158

    1. Initial program 21.2

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

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

      \[\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.2

      \[\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)\]

    if -8.352564792267725e+158 < (* PI l) < 6.212139442075578e+135

    1. Initial program 14.8

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

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

      \[\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.1

      \[\leadsto \pi \cdot \ell - \color{blue}{\frac{1}{F} \cdot \left(\frac{1}{F} \cdot \tan \left(\pi \cdot \ell\right)\right)}\]
    6. Taylor expanded around inf 9.0

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

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

    if 6.212139442075578e+135 < (* 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. Taylor expanded around inf 21.1

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

      \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \left(1 \cdot \frac{\sin \left(\pi \cdot \ell\right)}{\cos \color{blue}{\left(\left(\sqrt[3]{\pi \cdot \ell} \cdot \sqrt[3]{\pi \cdot \ell}\right) \cdot \sqrt[3]{\pi \cdot \ell}\right)} \cdot F}\right)\]
    9. Using strategy rm
    10. Applied add-cube-cbrt21.2

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;\pi \cdot \ell \le -8.352564792267725223426739494538695808396 \cdot 10^{158}:\\ \;\;\;\;\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)\\ \mathbf{elif}\;\pi \cdot \ell \le 6.212139442075578443856556908774016046633 \cdot 10^{135}:\\ \;\;\;\;\pi \cdot \ell - \frac{1}{F} \cdot \left(1 \cdot \frac{\sin \left(\pi \cdot \ell\right)}{\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}\right)\\ \mathbf{else}:\\ \;\;\;\;\pi \cdot \ell - \frac{1}{F} \cdot \left(1 \cdot \frac{\left(\sqrt[3]{\sin \left(\pi \cdot \ell\right)} \cdot \sqrt[3]{\sin \left(\pi \cdot \ell\right)}\right) \cdot \sqrt[3]{\sin \left(\pi \cdot \ell\right)}}{\cos \left(\left(\sqrt[3]{\pi \cdot \ell} \cdot \sqrt[3]{\pi \cdot \ell}\right) \cdot \sqrt[3]{\pi \cdot \ell}\right) \cdot F}\right)\\ \end{array}\]

Reproduce

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