Average Error: 16.6 → 8.1
Time: 9.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 -1.455450186058043088726824553465467054861 \cdot 10^{159}:\\ \;\;\;\;\pi \cdot \ell - \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{F} \cdot \left(\frac{\sqrt[3]{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[3]{1} \cdot \sqrt[3]{1}}{F} \cdot \frac{\sqrt[3]{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{\sqrt[3]{1} \cdot \sqrt[3]{1}}{F} \cdot \left(\frac{\sqrt[3]{1}}{F} \cdot \tan \left(\sqrt{\pi} \cdot \left(\sqrt{\pi} \cdot \ell\right)\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 -1.455450186058043088726824553465467054861 \cdot 10^{159}:\\
\;\;\;\;\pi \cdot \ell - \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{F} \cdot \left(\frac{\sqrt[3]{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[3]{1} \cdot \sqrt[3]{1}}{F} \cdot \frac{\sqrt[3]{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{\sqrt[3]{1} \cdot \sqrt[3]{1}}{F} \cdot \left(\frac{\sqrt[3]{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 r17591 = atan2(1.0, 0.0);
        double r17592 = l;
        double r17593 = r17591 * r17592;
        double r17594 = 1.0;
        double r17595 = F;
        double r17596 = r17595 * r17595;
        double r17597 = r17594 / r17596;
        double r17598 = tan(r17593);
        double r17599 = r17597 * r17598;
        double r17600 = r17593 - r17599;
        return r17600;
}

double f(double F, double l) {
        double r17601 = atan2(1.0, 0.0);
        double r17602 = l;
        double r17603 = r17601 * r17602;
        double r17604 = -1.455450186058043e+159;
        bool r17605 = r17603 <= r17604;
        double r17606 = 1.0;
        double r17607 = cbrt(r17606);
        double r17608 = r17607 * r17607;
        double r17609 = F;
        double r17610 = r17608 / r17609;
        double r17611 = r17607 / r17609;
        double r17612 = cbrt(r17601);
        double r17613 = r17612 * r17612;
        double r17614 = r17612 * r17602;
        double r17615 = r17613 * r17614;
        double r17616 = tan(r17615);
        double r17617 = r17611 * r17616;
        double r17618 = r17610 * r17617;
        double r17619 = r17603 - r17618;
        double r17620 = 2.0267769182334622e+150;
        bool r17621 = r17603 <= r17620;
        double r17622 = sin(r17603);
        double r17623 = r17607 * r17622;
        double r17624 = 0.041666666666666664;
        double r17625 = 4.0;
        double r17626 = pow(r17601, r17625);
        double r17627 = pow(r17602, r17625);
        double r17628 = r17626 * r17627;
        double r17629 = r17624 * r17628;
        double r17630 = 1.0;
        double r17631 = r17629 + r17630;
        double r17632 = 0.5;
        double r17633 = 2.0;
        double r17634 = pow(r17601, r17633);
        double r17635 = pow(r17602, r17633);
        double r17636 = r17634 * r17635;
        double r17637 = r17632 * r17636;
        double r17638 = r17631 - r17637;
        double r17639 = r17609 * r17638;
        double r17640 = r17623 / r17639;
        double r17641 = r17610 * r17640;
        double r17642 = r17603 - r17641;
        double r17643 = sqrt(r17601);
        double r17644 = r17643 * r17602;
        double r17645 = r17643 * r17644;
        double r17646 = tan(r17645);
        double r17647 = r17611 * r17646;
        double r17648 = r17610 * r17647;
        double r17649 = r17603 - r17648;
        double r17650 = r17621 ? r17642 : r17649;
        double r17651 = r17605 ? r17619 : r17650;
        return r17651;
}

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) < -1.455450186058043e+159

    1. Initial program 19.9

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

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

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

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

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

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

    if -1.455450186058043e+159 < (* PI l) < 2.0267769182334622e+150

    1. Initial program 15.4

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

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

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

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

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

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

      \[\leadsto \pi \cdot \ell - \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{F} \cdot \frac{\sqrt[3]{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 2.0267769182334622e+150 < (* PI l)

    1. Initial program 19.6

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

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

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

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

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;\pi \cdot \ell \le -1.455450186058043088726824553465467054861 \cdot 10^{159}:\\ \;\;\;\;\pi \cdot \ell - \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{F} \cdot \left(\frac{\sqrt[3]{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[3]{1} \cdot \sqrt[3]{1}}{F} \cdot \frac{\sqrt[3]{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{\sqrt[3]{1} \cdot \sqrt[3]{1}}{F} \cdot \left(\frac{\sqrt[3]{1}}{F} \cdot \tan \left(\sqrt{\pi} \cdot \left(\sqrt{\pi} \cdot \ell\right)\right)\right)\\ \end{array}\]

Reproduce

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