Average Error: 16.8 → 9.1
Time: 30.0s
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 -2.9407008719341217 \cdot 10^{+25}:\\ \;\;\;\;\pi \cdot \ell - \left(\left(\frac{\tan \left(\pi \cdot \ell\right)}{F \cdot F}\right)\right)\\ \mathbf{elif}\;\pi \cdot \ell \le 1.897007709166529 \cdot 10^{+17}:\\ \;\;\;\;\pi \cdot \ell - \frac{1}{F} \cdot \left(\frac{1}{\sqrt[3]{\frac{F}{\tan \left(\pi \cdot \ell\right)}}} \cdot \left(\frac{1}{\sqrt[3]{\frac{F}{\tan \left(\pi \cdot \ell\right)}}} \cdot \frac{1}{\sqrt[3]{\frac{F}{\tan \left(\pi \cdot \ell\right)}}}\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\pi \cdot \ell - \left(\left(\frac{\tan \left(\pi \cdot \ell\right)}{F \cdot F}\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 -2.9407008719341217 \cdot 10^{+25}:\\
\;\;\;\;\pi \cdot \ell - \left(\left(\frac{\tan \left(\pi \cdot \ell\right)}{F \cdot F}\right)\right)\\

\mathbf{elif}\;\pi \cdot \ell \le 1.897007709166529 \cdot 10^{+17}:\\
\;\;\;\;\pi \cdot \ell - \frac{1}{F} \cdot \left(\frac{1}{\sqrt[3]{\frac{F}{\tan \left(\pi \cdot \ell\right)}}} \cdot \left(\frac{1}{\sqrt[3]{\frac{F}{\tan \left(\pi \cdot \ell\right)}}} \cdot \frac{1}{\sqrt[3]{\frac{F}{\tan \left(\pi \cdot \ell\right)}}}\right)\right)\\

\mathbf{else}:\\
\;\;\;\;\pi \cdot \ell - \left(\left(\frac{\tan \left(\pi \cdot \ell\right)}{F \cdot F}\right)\right)\\

\end{array}
double f(double F, double l) {
        double r846614 = atan2(1.0, 0.0);
        double r846615 = l;
        double r846616 = r846614 * r846615;
        double r846617 = 1.0;
        double r846618 = F;
        double r846619 = r846618 * r846618;
        double r846620 = r846617 / r846619;
        double r846621 = tan(r846616);
        double r846622 = r846620 * r846621;
        double r846623 = r846616 - r846622;
        return r846623;
}

double f(double F, double l) {
        double r846624 = atan2(1.0, 0.0);
        double r846625 = l;
        double r846626 = r846624 * r846625;
        double r846627 = -2.9407008719341217e+25;
        bool r846628 = r846626 <= r846627;
        double r846629 = tan(r846626);
        double r846630 = F;
        double r846631 = r846630 * r846630;
        double r846632 = r846629 / r846631;
        double r846633 = /* ERROR: no posit support in C */;
        double r846634 = /* ERROR: no posit support in C */;
        double r846635 = r846626 - r846634;
        double r846636 = 1.897007709166529e+17;
        bool r846637 = r846626 <= r846636;
        double r846638 = 1.0;
        double r846639 = r846638 / r846630;
        double r846640 = r846630 / r846629;
        double r846641 = cbrt(r846640);
        double r846642 = r846638 / r846641;
        double r846643 = r846642 * r846642;
        double r846644 = r846642 * r846643;
        double r846645 = r846639 * r846644;
        double r846646 = r846626 - r846645;
        double r846647 = r846637 ? r846646 : r846635;
        double r846648 = r846628 ? r846635 : r846647;
        return r846648;
}

Error

Bits error versus F

Bits error versus l

Derivation

  1. Split input into 2 regimes
  2. if (* PI l) < -2.9407008719341217e+25 or 1.897007709166529e+17 < (* PI l)

    1. Initial program 24.1

      \[\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
    2. Simplified24.1

      \[\leadsto \color{blue}{\pi \cdot \ell - \frac{\tan \left(\pi \cdot \ell\right)}{F \cdot F}}\]
    3. Using strategy rm
    4. Applied insert-posit1616.4

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

    if -2.9407008719341217e+25 < (* PI l) < 1.897007709166529e+17

    1. Initial program 9.6

      \[\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
    2. Simplified9.1

      \[\leadsto \color{blue}{\pi \cdot \ell - \frac{\tan \left(\pi \cdot \ell\right)}{F \cdot F}}\]
    3. Using strategy rm
    4. Applied *-un-lft-identity9.1

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

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

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

      \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \frac{1}{\color{blue}{\left(\sqrt[3]{\frac{F}{\tan \left(\pi \cdot \ell\right)}} \cdot \sqrt[3]{\frac{F}{\tan \left(\pi \cdot \ell\right)}}\right) \cdot \sqrt[3]{\frac{F}{\tan \left(\pi \cdot \ell\right)}}}}\]
    10. Applied add-cube-cbrt1.6

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

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

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;\pi \cdot \ell \le -2.9407008719341217 \cdot 10^{+25}:\\ \;\;\;\;\pi \cdot \ell - \left(\left(\frac{\tan \left(\pi \cdot \ell\right)}{F \cdot F}\right)\right)\\ \mathbf{elif}\;\pi \cdot \ell \le 1.897007709166529 \cdot 10^{+17}:\\ \;\;\;\;\pi \cdot \ell - \frac{1}{F} \cdot \left(\frac{1}{\sqrt[3]{\frac{F}{\tan \left(\pi \cdot \ell\right)}}} \cdot \left(\frac{1}{\sqrt[3]{\frac{F}{\tan \left(\pi \cdot \ell\right)}}} \cdot \frac{1}{\sqrt[3]{\frac{F}{\tan \left(\pi \cdot \ell\right)}}}\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\pi \cdot \ell - \left(\left(\frac{\tan \left(\pi \cdot \ell\right)}{F \cdot F}\right)\right)\\ \end{array}\]

Reproduce

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