Average Error: 16.4 → 8.6
Time: 13.6s
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.25877154259171114 \cdot 10^{163}:\\ \;\;\;\;\pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{\sin \left(\pi \cdot \ell\right) \cdot \sqrt{1}}{\cos \left(\left(\sqrt[3]{\pi \cdot \ell} \cdot \left(\sqrt[3]{-1} \cdot \sqrt[3]{e^{\log \pi - \log \left(\frac{-1}{\ell}\right)}}\right)\right) \cdot \sqrt[3]{\pi \cdot \ell}\right) \cdot F}\\ \mathbf{elif}\;\pi \cdot \ell \le 7.52430755046992877 \cdot 10^{152}:\\ \;\;\;\;\pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{\sin \left(\pi \cdot \ell\right) \cdot \sqrt{1}}{\mathsf{fma}\left({\pi}^{2} \cdot {\ell}^{2}, \frac{-1}{2}, \mathsf{fma}\left(\frac{1}{24}, {\pi}^{4} \cdot {\ell}^{4}, 1\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}\]
\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.25877154259171114 \cdot 10^{163}:\\
\;\;\;\;\pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{\sin \left(\pi \cdot \ell\right) \cdot \sqrt{1}}{\cos \left(\left(\sqrt[3]{\pi \cdot \ell} \cdot \left(\sqrt[3]{-1} \cdot \sqrt[3]{e^{\log \pi - \log \left(\frac{-1}{\ell}\right)}}\right)\right) \cdot \sqrt[3]{\pi \cdot \ell}\right) \cdot F}\\

\mathbf{elif}\;\pi \cdot \ell \le 7.52430755046992877 \cdot 10^{152}:\\
\;\;\;\;\pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{\sin \left(\pi \cdot \ell\right) \cdot \sqrt{1}}{\mathsf{fma}\left({\pi}^{2} \cdot {\ell}^{2}, \frac{-1}{2}, \mathsf{fma}\left(\frac{1}{24}, {\pi}^{4} \cdot {\ell}^{4}, 1\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 r18934 = atan2(1.0, 0.0);
        double r18935 = l;
        double r18936 = r18934 * r18935;
        double r18937 = 1.0;
        double r18938 = F;
        double r18939 = r18938 * r18938;
        double r18940 = r18937 / r18939;
        double r18941 = tan(r18936);
        double r18942 = r18940 * r18941;
        double r18943 = r18936 - r18942;
        return r18943;
}

double f(double F, double l) {
        double r18944 = atan2(1.0, 0.0);
        double r18945 = l;
        double r18946 = r18944 * r18945;
        double r18947 = -3.258771542591711e+163;
        bool r18948 = r18946 <= r18947;
        double r18949 = 1.0;
        double r18950 = sqrt(r18949);
        double r18951 = F;
        double r18952 = r18950 / r18951;
        double r18953 = sin(r18946);
        double r18954 = r18953 * r18950;
        double r18955 = cbrt(r18946);
        double r18956 = -1.0;
        double r18957 = cbrt(r18956);
        double r18958 = log(r18944);
        double r18959 = r18956 / r18945;
        double r18960 = log(r18959);
        double r18961 = r18958 - r18960;
        double r18962 = exp(r18961);
        double r18963 = cbrt(r18962);
        double r18964 = r18957 * r18963;
        double r18965 = r18955 * r18964;
        double r18966 = r18965 * r18955;
        double r18967 = cos(r18966);
        double r18968 = r18967 * r18951;
        double r18969 = r18954 / r18968;
        double r18970 = r18952 * r18969;
        double r18971 = r18946 - r18970;
        double r18972 = 7.524307550469929e+152;
        bool r18973 = r18946 <= r18972;
        double r18974 = 2.0;
        double r18975 = pow(r18944, r18974);
        double r18976 = pow(r18945, r18974);
        double r18977 = r18975 * r18976;
        double r18978 = -0.5;
        double r18979 = 0.041666666666666664;
        double r18980 = 4.0;
        double r18981 = pow(r18944, r18980);
        double r18982 = pow(r18945, r18980);
        double r18983 = r18981 * r18982;
        double r18984 = 1.0;
        double r18985 = fma(r18979, r18983, r18984);
        double r18986 = fma(r18977, r18978, r18985);
        double r18987 = r18986 * r18951;
        double r18988 = r18954 / r18987;
        double r18989 = r18952 * r18988;
        double r18990 = r18946 - r18989;
        double r18991 = sqrt(r18944);
        double r18992 = r18991 * r18945;
        double r18993 = r18991 * r18992;
        double r18994 = tan(r18993);
        double r18995 = r18952 * r18994;
        double r18996 = r18952 * r18995;
        double r18997 = r18946 - r18996;
        double r18998 = r18973 ? r18990 : r18997;
        double r18999 = r18948 ? r18971 : r18998;
        return r18999;
}

Error

Bits error versus F

Bits error versus l

Derivation

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

    1. Initial program 19.2

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

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

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

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

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

      \[\leadsto \pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{\sin \left(\pi \cdot \ell\right) \cdot \sqrt{1}}{\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}\]
    9. Taylor expanded around -inf 19.2

      \[\leadsto \pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{\sin \left(\pi \cdot \ell\right) \cdot \sqrt{1}}{\cos \left(\left(\sqrt[3]{\pi \cdot \ell} \cdot \color{blue}{\left(\sqrt[3]{-1} \cdot e^{\frac{1}{3} \cdot \left(\log \pi - \log \left(\frac{-1}{\ell}\right)\right)}\right)}\right) \cdot \sqrt[3]{\pi \cdot \ell}\right) \cdot F}\]
    10. Simplified19.2

      \[\leadsto \pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{\sin \left(\pi \cdot \ell\right) \cdot \sqrt{1}}{\cos \left(\left(\sqrt[3]{\pi \cdot \ell} \cdot \color{blue}{\left(\sqrt[3]{-1} \cdot \sqrt[3]{e^{\log \pi - \log \left(\frac{-1}{\ell}\right)}}\right)}\right) \cdot \sqrt[3]{\pi \cdot \ell}\right) \cdot F}\]

    if -3.258771542591711e+163 < (* PI l) < 7.524307550469929e+152

    1. Initial program 15.2

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

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

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

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

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

      \[\leadsto \pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{\sin \left(\pi \cdot \ell\right) \cdot \sqrt{1}}{\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}\]
    9. Taylor expanded around 0 4.4

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

      \[\leadsto \pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{\sin \left(\pi \cdot \ell\right) \cdot \sqrt{1}}{\color{blue}{\mathsf{fma}\left({\pi}^{2} \cdot {\ell}^{2}, \frac{-1}{2}, \mathsf{fma}\left(\frac{1}{24}, {\pi}^{4} \cdot {\ell}^{4}, 1\right)\right)} \cdot F}\]

    if 7.524307550469929e+152 < (* PI l)

    1. Initial program 20.2

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

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

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

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

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

      \[\leadsto \pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \left(\frac{\sqrt{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.6

    \[\leadsto \begin{array}{l} \mathbf{if}\;\pi \cdot \ell \le -3.25877154259171114 \cdot 10^{163}:\\ \;\;\;\;\pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{\sin \left(\pi \cdot \ell\right) \cdot \sqrt{1}}{\cos \left(\left(\sqrt[3]{\pi \cdot \ell} \cdot \left(\sqrt[3]{-1} \cdot \sqrt[3]{e^{\log \pi - \log \left(\frac{-1}{\ell}\right)}}\right)\right) \cdot \sqrt[3]{\pi \cdot \ell}\right) \cdot F}\\ \mathbf{elif}\;\pi \cdot \ell \le 7.52430755046992877 \cdot 10^{152}:\\ \;\;\;\;\pi \cdot \ell - \frac{\sqrt{1}}{F} \cdot \frac{\sin \left(\pi \cdot \ell\right) \cdot \sqrt{1}}{\mathsf{fma}\left({\pi}^{2} \cdot {\ell}^{2}, \frac{-1}{2}, \mathsf{fma}\left(\frac{1}{24}, {\pi}^{4} \cdot {\ell}^{4}, 1\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}\]

Reproduce

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