Average Error: 32.0 → 4.8
Time: 41.5s
Precision: 64
\[\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}\]
\[\begin{array}{l} \mathbf{if}\;k \le -1.2722592561226503 \cdot 10^{-48}:\\ \;\;\;\;\frac{2}{\mathsf{fma}\left(\frac{\frac{k}{\ell} \cdot \sin k}{\cos k}, \frac{k}{\ell}, \frac{\sin k \cdot \left(\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot 2\right)}{\cos k}\right) \cdot \left(\sin k \cdot t\right)}\\ \mathbf{elif}\;k \le 1.3938029669432637 \cdot 10^{-107}:\\ \;\;\;\;\frac{\frac{1}{t}}{\frac{\tan k}{\frac{\ell}{t}}} \cdot \frac{\frac{2}{\sin k}}{\frac{\mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}{\frac{\ell}{t}}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\sqrt{2}}{t}}{\frac{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \frac{\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \left(2 \cdot \sin k\right)}{\cos k}\right)}{\frac{\sqrt{2}}{\sin k}}}\\ \end{array}\]
\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}
\begin{array}{l}
\mathbf{if}\;k \le -1.2722592561226503 \cdot 10^{-48}:\\
\;\;\;\;\frac{2}{\mathsf{fma}\left(\frac{\frac{k}{\ell} \cdot \sin k}{\cos k}, \frac{k}{\ell}, \frac{\sin k \cdot \left(\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot 2\right)}{\cos k}\right) \cdot \left(\sin k \cdot t\right)}\\

\mathbf{elif}\;k \le 1.3938029669432637 \cdot 10^{-107}:\\
\;\;\;\;\frac{\frac{1}{t}}{\frac{\tan k}{\frac{\ell}{t}}} \cdot \frac{\frac{2}{\sin k}}{\frac{\mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}{\frac{\ell}{t}}}\\

\mathbf{else}:\\
\;\;\;\;\frac{\frac{\sqrt{2}}{t}}{\frac{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \frac{\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \left(2 \cdot \sin k\right)}{\cos k}\right)}{\frac{\sqrt{2}}{\sin k}}}\\

\end{array}
double f(double t, double l, double k) {
        double r2880820 = 2.0;
        double r2880821 = t;
        double r2880822 = 3.0;
        double r2880823 = pow(r2880821, r2880822);
        double r2880824 = l;
        double r2880825 = r2880824 * r2880824;
        double r2880826 = r2880823 / r2880825;
        double r2880827 = k;
        double r2880828 = sin(r2880827);
        double r2880829 = r2880826 * r2880828;
        double r2880830 = tan(r2880827);
        double r2880831 = r2880829 * r2880830;
        double r2880832 = 1.0;
        double r2880833 = r2880827 / r2880821;
        double r2880834 = pow(r2880833, r2880820);
        double r2880835 = r2880832 + r2880834;
        double r2880836 = r2880835 + r2880832;
        double r2880837 = r2880831 * r2880836;
        double r2880838 = r2880820 / r2880837;
        return r2880838;
}

double f(double t, double l, double k) {
        double r2880839 = k;
        double r2880840 = -1.2722592561226503e-48;
        bool r2880841 = r2880839 <= r2880840;
        double r2880842 = 2.0;
        double r2880843 = l;
        double r2880844 = r2880839 / r2880843;
        double r2880845 = sin(r2880839);
        double r2880846 = r2880844 * r2880845;
        double r2880847 = cos(r2880839);
        double r2880848 = r2880846 / r2880847;
        double r2880849 = t;
        double r2880850 = r2880849 / r2880843;
        double r2880851 = r2880850 * r2880850;
        double r2880852 = r2880851 * r2880842;
        double r2880853 = r2880845 * r2880852;
        double r2880854 = r2880853 / r2880847;
        double r2880855 = fma(r2880848, r2880844, r2880854);
        double r2880856 = r2880845 * r2880849;
        double r2880857 = r2880855 * r2880856;
        double r2880858 = r2880842 / r2880857;
        double r2880859 = 1.3938029669432637e-107;
        bool r2880860 = r2880839 <= r2880859;
        double r2880861 = 1.0;
        double r2880862 = r2880861 / r2880849;
        double r2880863 = tan(r2880839);
        double r2880864 = r2880843 / r2880849;
        double r2880865 = r2880863 / r2880864;
        double r2880866 = r2880862 / r2880865;
        double r2880867 = r2880842 / r2880845;
        double r2880868 = r2880839 / r2880849;
        double r2880869 = fma(r2880868, r2880868, r2880842);
        double r2880870 = r2880869 / r2880864;
        double r2880871 = r2880867 / r2880870;
        double r2880872 = r2880866 * r2880871;
        double r2880873 = sqrt(r2880842);
        double r2880874 = r2880873 / r2880849;
        double r2880875 = r2880845 / r2880847;
        double r2880876 = r2880844 * r2880844;
        double r2880877 = r2880842 * r2880845;
        double r2880878 = r2880851 * r2880877;
        double r2880879 = r2880878 / r2880847;
        double r2880880 = fma(r2880875, r2880876, r2880879);
        double r2880881 = r2880873 / r2880845;
        double r2880882 = r2880880 / r2880881;
        double r2880883 = r2880874 / r2880882;
        double r2880884 = r2880860 ? r2880872 : r2880883;
        double r2880885 = r2880841 ? r2880858 : r2880884;
        return r2880885;
}

Error

Bits error versus t

Bits error versus l

Bits error versus k

Derivation

  1. Split input into 3 regimes
  2. if k < -1.2722592561226503e-48

    1. Initial program 31.4

      \[\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}\]
    2. Simplified20.1

      \[\leadsto \color{blue}{\frac{\frac{2}{\frac{t}{\frac{\ell}{t} \cdot \frac{\ell}{t}} \cdot \sin k}}{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}}\]
    3. Using strategy rm
    4. Applied associate-*l/20.0

      \[\leadsto \frac{\frac{2}{\color{blue}{\frac{t \cdot \sin k}{\frac{\ell}{t} \cdot \frac{\ell}{t}}}}}{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}\]
    5. Applied associate-/r/19.9

      \[\leadsto \frac{\color{blue}{\frac{2}{t \cdot \sin k} \cdot \left(\frac{\ell}{t} \cdot \frac{\ell}{t}\right)}}{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}\]
    6. Applied associate-/l*18.0

      \[\leadsto \color{blue}{\frac{\frac{2}{t \cdot \sin k}}{\frac{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}{\frac{\ell}{t} \cdot \frac{\ell}{t}}}}\]
    7. Taylor expanded around inf 22.6

      \[\leadsto \frac{\frac{2}{t \cdot \sin k}}{\color{blue}{\frac{\sin k \cdot {k}^{2}}{\cos k \cdot {\ell}^{2}} + 2 \cdot \frac{{t}^{2} \cdot \sin k}{{\ell}^{2} \cdot \cos k}}}\]
    8. Simplified5.5

      \[\leadsto \frac{\frac{2}{t \cdot \sin k}}{\color{blue}{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \left(2 \cdot \frac{\sin k}{\cos k}\right)\right)}}\]
    9. Using strategy rm
    10. Applied associate-*r/5.5

      \[\leadsto \frac{\frac{2}{t \cdot \sin k}}{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \color{blue}{\frac{2 \cdot \sin k}{\cos k}}\right)}\]
    11. Applied associate-*r/5.5

      \[\leadsto \frac{\frac{2}{t \cdot \sin k}}{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \color{blue}{\frac{\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \left(2 \cdot \sin k\right)}{\cos k}}\right)}\]
    12. Using strategy rm
    13. Applied div-inv5.5

      \[\leadsto \frac{\color{blue}{2 \cdot \frac{1}{t \cdot \sin k}}}{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \frac{\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \left(2 \cdot \sin k\right)}{\cos k}\right)}\]
    14. Applied associate-/l*5.5

      \[\leadsto \color{blue}{\frac{2}{\frac{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \frac{\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \left(2 \cdot \sin k\right)}{\cos k}\right)}{\frac{1}{t \cdot \sin k}}}}\]
    15. Simplified5.4

      \[\leadsto \frac{2}{\color{blue}{\mathsf{fma}\left(\frac{\sin k \cdot \frac{k}{\ell}}{\cos k}, \frac{k}{\ell}, \frac{\left(\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot 2\right) \cdot \sin k}{\cos k}\right) \cdot \left(\sin k \cdot t\right)}}\]

    if -1.2722592561226503e-48 < k < 1.3938029669432637e-107

    1. Initial program 34.8

      \[\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}\]
    2. Simplified24.8

      \[\leadsto \color{blue}{\frac{\frac{2}{\frac{t}{\frac{\ell}{t} \cdot \frac{\ell}{t}} \cdot \sin k}}{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}}\]
    3. Using strategy rm
    4. Applied associate-*l/19.1

      \[\leadsto \frac{\frac{2}{\color{blue}{\frac{t \cdot \sin k}{\frac{\ell}{t} \cdot \frac{\ell}{t}}}}}{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}\]
    5. Applied associate-/r/19.2

      \[\leadsto \frac{\color{blue}{\frac{2}{t \cdot \sin k} \cdot \left(\frac{\ell}{t} \cdot \frac{\ell}{t}\right)}}{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}\]
    6. Applied associate-/l*17.9

      \[\leadsto \color{blue}{\frac{\frac{2}{t \cdot \sin k}}{\frac{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}{\frac{\ell}{t} \cdot \frac{\ell}{t}}}}\]
    7. Using strategy rm
    8. Applied times-frac6.8

      \[\leadsto \frac{\frac{2}{t \cdot \sin k}}{\color{blue}{\frac{\tan k}{\frac{\ell}{t}} \cdot \frac{\mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}{\frac{\ell}{t}}}}\]
    9. Applied *-un-lft-identity6.8

      \[\leadsto \frac{\frac{\color{blue}{1 \cdot 2}}{t \cdot \sin k}}{\frac{\tan k}{\frac{\ell}{t}} \cdot \frac{\mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}{\frac{\ell}{t}}}\]
    10. Applied times-frac6.9

      \[\leadsto \frac{\color{blue}{\frac{1}{t} \cdot \frac{2}{\sin k}}}{\frac{\tan k}{\frac{\ell}{t}} \cdot \frac{\mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}{\frac{\ell}{t}}}\]
    11. Applied times-frac3.2

      \[\leadsto \color{blue}{\frac{\frac{1}{t}}{\frac{\tan k}{\frac{\ell}{t}}} \cdot \frac{\frac{2}{\sin k}}{\frac{\mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}{\frac{\ell}{t}}}}\]

    if 1.3938029669432637e-107 < k

    1. Initial program 30.9

      \[\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}\]
    2. Simplified18.6

      \[\leadsto \color{blue}{\frac{\frac{2}{\frac{t}{\frac{\ell}{t} \cdot \frac{\ell}{t}} \cdot \sin k}}{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}}\]
    3. Using strategy rm
    4. Applied associate-*l/18.3

      \[\leadsto \frac{\frac{2}{\color{blue}{\frac{t \cdot \sin k}{\frac{\ell}{t} \cdot \frac{\ell}{t}}}}}{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}\]
    5. Applied associate-/r/18.1

      \[\leadsto \frac{\color{blue}{\frac{2}{t \cdot \sin k} \cdot \left(\frac{\ell}{t} \cdot \frac{\ell}{t}\right)}}{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}\]
    6. Applied associate-/l*16.3

      \[\leadsto \color{blue}{\frac{\frac{2}{t \cdot \sin k}}{\frac{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}{\frac{\ell}{t} \cdot \frac{\ell}{t}}}}\]
    7. Taylor expanded around inf 22.7

      \[\leadsto \frac{\frac{2}{t \cdot \sin k}}{\color{blue}{\frac{\sin k \cdot {k}^{2}}{\cos k \cdot {\ell}^{2}} + 2 \cdot \frac{{t}^{2} \cdot \sin k}{{\ell}^{2} \cdot \cos k}}}\]
    8. Simplified5.3

      \[\leadsto \frac{\frac{2}{t \cdot \sin k}}{\color{blue}{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \left(2 \cdot \frac{\sin k}{\cos k}\right)\right)}}\]
    9. Using strategy rm
    10. Applied associate-*r/5.3

      \[\leadsto \frac{\frac{2}{t \cdot \sin k}}{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \color{blue}{\frac{2 \cdot \sin k}{\cos k}}\right)}\]
    11. Applied associate-*r/5.3

      \[\leadsto \frac{\frac{2}{t \cdot \sin k}}{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \color{blue}{\frac{\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \left(2 \cdot \sin k\right)}{\cos k}}\right)}\]
    12. Using strategy rm
    13. Applied add-sqr-sqrt5.4

      \[\leadsto \frac{\frac{\color{blue}{\sqrt{2} \cdot \sqrt{2}}}{t \cdot \sin k}}{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \frac{\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \left(2 \cdot \sin k\right)}{\cos k}\right)}\]
    14. Applied times-frac5.3

      \[\leadsto \frac{\color{blue}{\frac{\sqrt{2}}{t} \cdot \frac{\sqrt{2}}{\sin k}}}{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \frac{\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \left(2 \cdot \sin k\right)}{\cos k}\right)}\]
    15. Applied associate-/l*5.3

      \[\leadsto \color{blue}{\frac{\frac{\sqrt{2}}{t}}{\frac{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \frac{\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \left(2 \cdot \sin k\right)}{\cos k}\right)}{\frac{\sqrt{2}}{\sin k}}}}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification4.8

    \[\leadsto \begin{array}{l} \mathbf{if}\;k \le -1.2722592561226503 \cdot 10^{-48}:\\ \;\;\;\;\frac{2}{\mathsf{fma}\left(\frac{\frac{k}{\ell} \cdot \sin k}{\cos k}, \frac{k}{\ell}, \frac{\sin k \cdot \left(\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot 2\right)}{\cos k}\right) \cdot \left(\sin k \cdot t\right)}\\ \mathbf{elif}\;k \le 1.3938029669432637 \cdot 10^{-107}:\\ \;\;\;\;\frac{\frac{1}{t}}{\frac{\tan k}{\frac{\ell}{t}}} \cdot \frac{\frac{2}{\sin k}}{\frac{\mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}{\frac{\ell}{t}}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\sqrt{2}}{t}}{\frac{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \frac{\left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot \left(2 \cdot \sin k\right)}{\cos k}\right)}{\frac{\sqrt{2}}{\sin k}}}\\ \end{array}\]

Reproduce

herbie shell --seed 2019146 +o rules:numerics
(FPCore (t l k)
  :name "Toniolo and Linder, Equation (10+)"
  (/ 2 (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1))))