Average Error: 34.6 → 28.4
Time: 1.1m
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 -2.776184263616495583834663238899089510483 \cdot 10^{-228}:\\ \;\;\;\;\sqrt{\left(U \cdot \mathsf{fma}\left(U* - U, \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right)\right) \cdot \left(2 \cdot n\right)}\\ \mathbf{elif}\;n \le 7.786798218553425520162161300387875418626 \cdot 10^{-276}:\\ \;\;\;\;\sqrt{\left(2 \cdot t\right) \cdot \left(U \cdot n\right) - \frac{U \cdot 4}{\frac{Om}{\left(\ell \cdot \ell\right) \cdot n}}}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{U \cdot \mathsf{fma}\left(U* - U, \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right)} \cdot \sqrt{2 \cdot n}\\ \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 -2.776184263616495583834663238899089510483 \cdot 10^{-228}:\\
\;\;\;\;\sqrt{\left(U \cdot \mathsf{fma}\left(U* - U, \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right)\right) \cdot \left(2 \cdot n\right)}\\

\mathbf{elif}\;n \le 7.786798218553425520162161300387875418626 \cdot 10^{-276}:\\
\;\;\;\;\sqrt{\left(2 \cdot t\right) \cdot \left(U \cdot n\right) - \frac{U \cdot 4}{\frac{Om}{\left(\ell \cdot \ell\right) \cdot n}}}\\

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

\end{array}
double f(double n, double U, double t, double l, double Om, double U_) {
        double r2862021 = 2.0;
        double r2862022 = n;
        double r2862023 = r2862021 * r2862022;
        double r2862024 = U;
        double r2862025 = r2862023 * r2862024;
        double r2862026 = t;
        double r2862027 = l;
        double r2862028 = r2862027 * r2862027;
        double r2862029 = Om;
        double r2862030 = r2862028 / r2862029;
        double r2862031 = r2862021 * r2862030;
        double r2862032 = r2862026 - r2862031;
        double r2862033 = r2862027 / r2862029;
        double r2862034 = pow(r2862033, r2862021);
        double r2862035 = r2862022 * r2862034;
        double r2862036 = U_;
        double r2862037 = r2862024 - r2862036;
        double r2862038 = r2862035 * r2862037;
        double r2862039 = r2862032 - r2862038;
        double r2862040 = r2862025 * r2862039;
        double r2862041 = sqrt(r2862040);
        return r2862041;
}

double f(double n, double U, double t, double l, double Om, double U_) {
        double r2862042 = n;
        double r2862043 = -2.7761842636164956e-228;
        bool r2862044 = r2862042 <= r2862043;
        double r2862045 = U;
        double r2862046 = U_;
        double r2862047 = r2862046 - r2862045;
        double r2862048 = l;
        double r2862049 = Om;
        double r2862050 = r2862048 / r2862049;
        double r2862051 = 2.0;
        double r2862052 = 2.0;
        double r2862053 = r2862051 / r2862052;
        double r2862054 = pow(r2862050, r2862053);
        double r2862055 = r2862054 * r2862042;
        double r2862056 = r2862055 * r2862054;
        double r2862057 = t;
        double r2862058 = r2862048 * r2862050;
        double r2862059 = r2862051 * r2862058;
        double r2862060 = r2862057 - r2862059;
        double r2862061 = fma(r2862047, r2862056, r2862060);
        double r2862062 = r2862045 * r2862061;
        double r2862063 = r2862051 * r2862042;
        double r2862064 = r2862062 * r2862063;
        double r2862065 = sqrt(r2862064);
        double r2862066 = 7.786798218553426e-276;
        bool r2862067 = r2862042 <= r2862066;
        double r2862068 = r2862051 * r2862057;
        double r2862069 = r2862045 * r2862042;
        double r2862070 = r2862068 * r2862069;
        double r2862071 = 4.0;
        double r2862072 = r2862045 * r2862071;
        double r2862073 = r2862048 * r2862048;
        double r2862074 = r2862073 * r2862042;
        double r2862075 = r2862049 / r2862074;
        double r2862076 = r2862072 / r2862075;
        double r2862077 = r2862070 - r2862076;
        double r2862078 = sqrt(r2862077);
        double r2862079 = sqrt(r2862062);
        double r2862080 = sqrt(r2862063);
        double r2862081 = r2862079 * r2862080;
        double r2862082 = r2862067 ? r2862078 : r2862081;
        double r2862083 = r2862044 ? r2862065 : r2862082;
        return r2862083;
}

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 3 regimes
  2. if n < -2.7761842636164956e-228

    1. Initial program 33.0

      \[\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.0

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

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

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(U* - U, \color{blue}{\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}, t - \left(\frac{\ell}{Om} \cdot \ell\right) \cdot 2\right)}\]
    6. Using strategy rm
    7. Applied associate-*l*30.1

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

    if -2.7761842636164956e-228 < n < 7.786798218553426e-276

    1. Initial program 41.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. Simplified38.9

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

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

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(U* - U, \color{blue}{\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}, t - \left(\frac{\ell}{Om} \cdot \ell\right) \cdot 2\right)}\]
    6. Taylor expanded around inf 39.4

      \[\leadsto \sqrt{\color{blue}{2 \cdot \left(t \cdot \left(U \cdot n\right)\right) - 4 \cdot \frac{U \cdot \left(n \cdot {\ell}^{2}\right)}{Om}}}\]
    7. Simplified39.6

      \[\leadsto \sqrt{\color{blue}{\left(U \cdot n\right) \cdot \left(t \cdot 2\right) - \frac{4 \cdot U}{\frac{Om}{n \cdot \left(\ell \cdot \ell\right)}}}}\]

    if 7.786798218553426e-276 < n

    1. Initial program 34.3

      \[\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. Simplified31.4

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

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

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(U* - U, \color{blue}{\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}, t - \left(\frac{\ell}{Om} \cdot \ell\right) \cdot 2\right)}\]
    6. Using strategy rm
    7. Applied associate-*l*30.5

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;n \le -2.776184263616495583834663238899089510483 \cdot 10^{-228}:\\ \;\;\;\;\sqrt{\left(U \cdot \mathsf{fma}\left(U* - U, \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right)\right) \cdot \left(2 \cdot n\right)}\\ \mathbf{elif}\;n \le 7.786798218553425520162161300387875418626 \cdot 10^{-276}:\\ \;\;\;\;\sqrt{\left(2 \cdot t\right) \cdot \left(U \cdot n\right) - \frac{U \cdot 4}{\frac{Om}{\left(\ell \cdot \ell\right) \cdot n}}}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{U \cdot \mathsf{fma}\left(U* - U, \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right)} \cdot \sqrt{2 \cdot n}\\ \end{array}\]

Reproduce

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