Average Error: 33.1 → 20.9
Time: 1.0m
Precision: 64
\[\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
\[\begin{array}{l} \mathbf{if}\;n \le 7.586071649758195 \cdot 10^{-274}:\\ \;\;\;\;\left|\sqrt[3]{U}\right| \cdot \sqrt{\left(n \cdot \left(t - \frac{\ell}{Om} \cdot \mathsf{fma}\left(\ell, 2, n \cdot \left(\left(U - U*\right) \cdot \frac{\ell}{Om}\right)\right)\right)\right) \cdot \left(2 \cdot \sqrt[3]{U}\right)}\\ \mathbf{else}:\\ \;\;\;\;\left(\sqrt{\left(2 \cdot \sqrt[3]{U}\right) \cdot \left(t - \frac{\ell}{Om} \cdot \mathsf{fma}\left(\ell, 2, n \cdot \left(\left(U - U*\right) \cdot \frac{\ell}{Om}\right)\right)\right)} \cdot \sqrt{n}\right) \cdot \left|\sqrt[3]{U}\right|\\ \end{array}\]
\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}
\begin{array}{l}
\mathbf{if}\;n \le 7.586071649758195 \cdot 10^{-274}:\\
\;\;\;\;\left|\sqrt[3]{U}\right| \cdot \sqrt{\left(n \cdot \left(t - \frac{\ell}{Om} \cdot \mathsf{fma}\left(\ell, 2, n \cdot \left(\left(U - U*\right) \cdot \frac{\ell}{Om}\right)\right)\right)\right) \cdot \left(2 \cdot \sqrt[3]{U}\right)}\\

\mathbf{else}:\\
\;\;\;\;\left(\sqrt{\left(2 \cdot \sqrt[3]{U}\right) \cdot \left(t - \frac{\ell}{Om} \cdot \mathsf{fma}\left(\ell, 2, n \cdot \left(\left(U - U*\right) \cdot \frac{\ell}{Om}\right)\right)\right)} \cdot \sqrt{n}\right) \cdot \left|\sqrt[3]{U}\right|\\

\end{array}
double f(double n, double U, double t, double l, double Om, double U_) {
        double r2252971 = 2.0;
        double r2252972 = n;
        double r2252973 = r2252971 * r2252972;
        double r2252974 = U;
        double r2252975 = r2252973 * r2252974;
        double r2252976 = t;
        double r2252977 = l;
        double r2252978 = r2252977 * r2252977;
        double r2252979 = Om;
        double r2252980 = r2252978 / r2252979;
        double r2252981 = r2252971 * r2252980;
        double r2252982 = r2252976 - r2252981;
        double r2252983 = r2252977 / r2252979;
        double r2252984 = pow(r2252983, r2252971);
        double r2252985 = r2252972 * r2252984;
        double r2252986 = U_;
        double r2252987 = r2252974 - r2252986;
        double r2252988 = r2252985 * r2252987;
        double r2252989 = r2252982 - r2252988;
        double r2252990 = r2252975 * r2252989;
        double r2252991 = sqrt(r2252990);
        return r2252991;
}

double f(double n, double U, double t, double l, double Om, double U_) {
        double r2252992 = n;
        double r2252993 = 7.586071649758195e-274;
        bool r2252994 = r2252992 <= r2252993;
        double r2252995 = U;
        double r2252996 = cbrt(r2252995);
        double r2252997 = fabs(r2252996);
        double r2252998 = t;
        double r2252999 = l;
        double r2253000 = Om;
        double r2253001 = r2252999 / r2253000;
        double r2253002 = 2.0;
        double r2253003 = U_;
        double r2253004 = r2252995 - r2253003;
        double r2253005 = r2253004 * r2253001;
        double r2253006 = r2252992 * r2253005;
        double r2253007 = fma(r2252999, r2253002, r2253006);
        double r2253008 = r2253001 * r2253007;
        double r2253009 = r2252998 - r2253008;
        double r2253010 = r2252992 * r2253009;
        double r2253011 = r2253002 * r2252996;
        double r2253012 = r2253010 * r2253011;
        double r2253013 = sqrt(r2253012);
        double r2253014 = r2252997 * r2253013;
        double r2253015 = r2253011 * r2253009;
        double r2253016 = sqrt(r2253015);
        double r2253017 = sqrt(r2252992);
        double r2253018 = r2253016 * r2253017;
        double r2253019 = r2253018 * r2252997;
        double r2253020 = r2252994 ? r2253014 : r2253019;
        return r2253020;
}

Error

Bits error versus n

Bits error versus U

Bits error versus t

Bits error versus l

Bits error versus Om

Bits error versus U*

Derivation

  1. Split input into 2 regimes
  2. if n < 7.586071649758195e-274

    1. Initial program 33.7

      \[\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
    2. Simplified30.8

      \[\leadsto \color{blue}{\sqrt{U \cdot \left(2 \cdot \left(n \cdot \left(t - \mathsf{fma}\left(\frac{\ell}{Om}, 2 \cdot \ell, \frac{\ell}{Om} \cdot \left(\frac{\ell}{Om} \cdot \left(\left(U - U*\right) \cdot n\right)\right)\right)\right)\right)\right)}}\]
    3. Using strategy rm
    4. Applied add-cube-cbrt31.1

      \[\leadsto \sqrt{\color{blue}{\left(\left(\sqrt[3]{U} \cdot \sqrt[3]{U}\right) \cdot \sqrt[3]{U}\right)} \cdot \left(2 \cdot \left(n \cdot \left(t - \mathsf{fma}\left(\frac{\ell}{Om}, 2 \cdot \ell, \frac{\ell}{Om} \cdot \left(\frac{\ell}{Om} \cdot \left(\left(U - U*\right) \cdot n\right)\right)\right)\right)\right)\right)}\]
    5. Applied associate-*l*31.1

      \[\leadsto \sqrt{\color{blue}{\left(\sqrt[3]{U} \cdot \sqrt[3]{U}\right) \cdot \left(\sqrt[3]{U} \cdot \left(2 \cdot \left(n \cdot \left(t - \mathsf{fma}\left(\frac{\ell}{Om}, 2 \cdot \ell, \frac{\ell}{Om} \cdot \left(\frac{\ell}{Om} \cdot \left(\left(U - U*\right) \cdot n\right)\right)\right)\right)\right)\right)\right)}}\]
    6. Simplified29.2

      \[\leadsto \sqrt{\left(\sqrt[3]{U} \cdot \sqrt[3]{U}\right) \cdot \color{blue}{\left(\left(2 \cdot \sqrt[3]{U}\right) \cdot \left(\left(t - \frac{\ell}{Om} \cdot \left(2 \cdot \ell + \left(\frac{\ell}{Om} \cdot n\right) \cdot \left(U - U*\right)\right)\right) \cdot n\right)\right)}}\]
    7. Using strategy rm
    8. Applied sqrt-prod24.3

      \[\leadsto \color{blue}{\sqrt{\sqrt[3]{U} \cdot \sqrt[3]{U}} \cdot \sqrt{\left(2 \cdot \sqrt[3]{U}\right) \cdot \left(\left(t - \frac{\ell}{Om} \cdot \left(2 \cdot \ell + \left(\frac{\ell}{Om} \cdot n\right) \cdot \left(U - U*\right)\right)\right) \cdot n\right)}}\]
    9. Simplified24.3

      \[\leadsto \color{blue}{\left|\sqrt[3]{U}\right|} \cdot \sqrt{\left(2 \cdot \sqrt[3]{U}\right) \cdot \left(\left(t - \frac{\ell}{Om} \cdot \left(2 \cdot \ell + \left(\frac{\ell}{Om} \cdot n\right) \cdot \left(U - U*\right)\right)\right) \cdot n\right)}\]
    10. Simplified25.0

      \[\leadsto \left|\sqrt[3]{U}\right| \cdot \color{blue}{\sqrt{\left(\left(2 \cdot \sqrt[3]{U}\right) \cdot \left(t - \mathsf{fma}\left(\ell, 2, \left(\left(U - U*\right) \cdot \frac{\ell}{Om}\right) \cdot n\right) \cdot \frac{\ell}{Om}\right)\right) \cdot n}}\]
    11. Using strategy rm
    12. Applied associate-*l*25.1

      \[\leadsto \left|\sqrt[3]{U}\right| \cdot \sqrt{\color{blue}{\left(2 \cdot \sqrt[3]{U}\right) \cdot \left(\left(t - \mathsf{fma}\left(\ell, 2, \left(\left(U - U*\right) \cdot \frac{\ell}{Om}\right) \cdot n\right) \cdot \frac{\ell}{Om}\right) \cdot n\right)}}\]

    if 7.586071649758195e-274 < n

    1. Initial program 32.2

      \[\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
    2. Simplified30.8

      \[\leadsto \color{blue}{\sqrt{U \cdot \left(2 \cdot \left(n \cdot \left(t - \mathsf{fma}\left(\frac{\ell}{Om}, 2 \cdot \ell, \frac{\ell}{Om} \cdot \left(\frac{\ell}{Om} \cdot \left(\left(U - U*\right) \cdot n\right)\right)\right)\right)\right)\right)}}\]
    3. Using strategy rm
    4. Applied add-cube-cbrt31.1

      \[\leadsto \sqrt{\color{blue}{\left(\left(\sqrt[3]{U} \cdot \sqrt[3]{U}\right) \cdot \sqrt[3]{U}\right)} \cdot \left(2 \cdot \left(n \cdot \left(t - \mathsf{fma}\left(\frac{\ell}{Om}, 2 \cdot \ell, \frac{\ell}{Om} \cdot \left(\frac{\ell}{Om} \cdot \left(\left(U - U*\right) \cdot n\right)\right)\right)\right)\right)\right)}\]
    5. Applied associate-*l*31.1

      \[\leadsto \sqrt{\color{blue}{\left(\sqrt[3]{U} \cdot \sqrt[3]{U}\right) \cdot \left(\sqrt[3]{U} \cdot \left(2 \cdot \left(n \cdot \left(t - \mathsf{fma}\left(\frac{\ell}{Om}, 2 \cdot \ell, \frac{\ell}{Om} \cdot \left(\frac{\ell}{Om} \cdot \left(\left(U - U*\right) \cdot n\right)\right)\right)\right)\right)\right)\right)}}\]
    6. Simplified29.1

      \[\leadsto \sqrt{\left(\sqrt[3]{U} \cdot \sqrt[3]{U}\right) \cdot \color{blue}{\left(\left(2 \cdot \sqrt[3]{U}\right) \cdot \left(\left(t - \frac{\ell}{Om} \cdot \left(2 \cdot \ell + \left(\frac{\ell}{Om} \cdot n\right) \cdot \left(U - U*\right)\right)\right) \cdot n\right)\right)}}\]
    7. Using strategy rm
    8. Applied sqrt-prod23.9

      \[\leadsto \color{blue}{\sqrt{\sqrt[3]{U} \cdot \sqrt[3]{U}} \cdot \sqrt{\left(2 \cdot \sqrt[3]{U}\right) \cdot \left(\left(t - \frac{\ell}{Om} \cdot \left(2 \cdot \ell + \left(\frac{\ell}{Om} \cdot n\right) \cdot \left(U - U*\right)\right)\right) \cdot n\right)}}\]
    9. Simplified23.9

      \[\leadsto \color{blue}{\left|\sqrt[3]{U}\right|} \cdot \sqrt{\left(2 \cdot \sqrt[3]{U}\right) \cdot \left(\left(t - \frac{\ell}{Om} \cdot \left(2 \cdot \ell + \left(\frac{\ell}{Om} \cdot n\right) \cdot \left(U - U*\right)\right)\right) \cdot n\right)}\]
    10. Simplified23.8

      \[\leadsto \left|\sqrt[3]{U}\right| \cdot \color{blue}{\sqrt{\left(\left(2 \cdot \sqrt[3]{U}\right) \cdot \left(t - \mathsf{fma}\left(\ell, 2, \left(\left(U - U*\right) \cdot \frac{\ell}{Om}\right) \cdot n\right) \cdot \frac{\ell}{Om}\right)\right) \cdot n}}\]
    11. Using strategy rm
    12. Applied sqrt-prod15.8

      \[\leadsto \left|\sqrt[3]{U}\right| \cdot \color{blue}{\left(\sqrt{\left(2 \cdot \sqrt[3]{U}\right) \cdot \left(t - \mathsf{fma}\left(\ell, 2, \left(\left(U - U*\right) \cdot \frac{\ell}{Om}\right) \cdot n\right) \cdot \frac{\ell}{Om}\right)} \cdot \sqrt{n}\right)}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification20.9

    \[\leadsto \begin{array}{l} \mathbf{if}\;n \le 7.586071649758195 \cdot 10^{-274}:\\ \;\;\;\;\left|\sqrt[3]{U}\right| \cdot \sqrt{\left(n \cdot \left(t - \frac{\ell}{Om} \cdot \mathsf{fma}\left(\ell, 2, n \cdot \left(\left(U - U*\right) \cdot \frac{\ell}{Om}\right)\right)\right)\right) \cdot \left(2 \cdot \sqrt[3]{U}\right)}\\ \mathbf{else}:\\ \;\;\;\;\left(\sqrt{\left(2 \cdot \sqrt[3]{U}\right) \cdot \left(t - \frac{\ell}{Om} \cdot \mathsf{fma}\left(\ell, 2, n \cdot \left(\left(U - U*\right) \cdot \frac{\ell}{Om}\right)\right)\right)} \cdot \sqrt{n}\right) \cdot \left|\sqrt[3]{U}\right|\\ \end{array}\]

Reproduce

herbie shell --seed 2019134 +o rules:numerics
(FPCore (n U t l Om U*)
  :name "Toniolo and Linder, Equation (13)"
  (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))))