Average Error: 34.6 → 30.6
Time: 2.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}\;U \le -1.564653566373805159820092121040850211815 \cdot 10^{-275}:\\ \;\;\;\;\sqrt{\left(\left(n \cdot 2\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \sqrt[3]{U - U*} \cdot \left(\left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right) \cdot \left(\sqrt[3]{U - U*} \cdot \sqrt[3]{U - U*}\right)\right)\right)}\\ \mathbf{elif}\;U \le 1.393978406215339989310274239867953934656 \cdot 10^{-167}:\\ \;\;\;\;\sqrt{\left(n \cdot 2\right) \cdot \left(\left(t - \left(\left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right) \cdot \left(U - U*\right) + \frac{\ell \cdot 2}{\frac{Om}{\ell}}\right)\right) \cdot U\right)}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{\left(\left(n \cdot 2\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \sqrt[3]{U - U*} \cdot \left(\left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right) \cdot \left(\sqrt[3]{U - U*} \cdot \sqrt[3]{U - U*}\right)\right)\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}\;U \le -1.564653566373805159820092121040850211815 \cdot 10^{-275}:\\
\;\;\;\;\sqrt{\left(\left(n \cdot 2\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \sqrt[3]{U - U*} \cdot \left(\left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right) \cdot \left(\sqrt[3]{U - U*} \cdot \sqrt[3]{U - U*}\right)\right)\right)}\\

\mathbf{elif}\;U \le 1.393978406215339989310274239867953934656 \cdot 10^{-167}:\\
\;\;\;\;\sqrt{\left(n \cdot 2\right) \cdot \left(\left(t - \left(\left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right) \cdot \left(U - U*\right) + \frac{\ell \cdot 2}{\frac{Om}{\ell}}\right)\right) \cdot U\right)}\\

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

\end{array}
double f(double n, double U, double t, double l, double Om, double U_) {
        double r4511486 = 2.0;
        double r4511487 = n;
        double r4511488 = r4511486 * r4511487;
        double r4511489 = U;
        double r4511490 = r4511488 * r4511489;
        double r4511491 = t;
        double r4511492 = l;
        double r4511493 = r4511492 * r4511492;
        double r4511494 = Om;
        double r4511495 = r4511493 / r4511494;
        double r4511496 = r4511486 * r4511495;
        double r4511497 = r4511491 - r4511496;
        double r4511498 = r4511492 / r4511494;
        double r4511499 = pow(r4511498, r4511486);
        double r4511500 = r4511487 * r4511499;
        double r4511501 = U_;
        double r4511502 = r4511489 - r4511501;
        double r4511503 = r4511500 * r4511502;
        double r4511504 = r4511497 - r4511503;
        double r4511505 = r4511490 * r4511504;
        double r4511506 = sqrt(r4511505);
        return r4511506;
}

double f(double n, double U, double t, double l, double Om, double U_) {
        double r4511507 = U;
        double r4511508 = -1.564653566373805e-275;
        bool r4511509 = r4511507 <= r4511508;
        double r4511510 = n;
        double r4511511 = 2.0;
        double r4511512 = r4511510 * r4511511;
        double r4511513 = r4511512 * r4511507;
        double r4511514 = t;
        double r4511515 = l;
        double r4511516 = Om;
        double r4511517 = r4511516 / r4511515;
        double r4511518 = r4511515 / r4511517;
        double r4511519 = r4511511 * r4511518;
        double r4511520 = r4511514 - r4511519;
        double r4511521 = U_;
        double r4511522 = r4511507 - r4511521;
        double r4511523 = cbrt(r4511522);
        double r4511524 = r4511515 / r4511516;
        double r4511525 = pow(r4511524, r4511511);
        double r4511526 = r4511525 * r4511510;
        double r4511527 = r4511523 * r4511523;
        double r4511528 = r4511526 * r4511527;
        double r4511529 = r4511523 * r4511528;
        double r4511530 = r4511520 - r4511529;
        double r4511531 = r4511513 * r4511530;
        double r4511532 = sqrt(r4511531);
        double r4511533 = 1.39397840621534e-167;
        bool r4511534 = r4511507 <= r4511533;
        double r4511535 = r4511526 * r4511522;
        double r4511536 = r4511515 * r4511511;
        double r4511537 = r4511536 / r4511517;
        double r4511538 = r4511535 + r4511537;
        double r4511539 = r4511514 - r4511538;
        double r4511540 = r4511539 * r4511507;
        double r4511541 = r4511512 * r4511540;
        double r4511542 = sqrt(r4511541);
        double r4511543 = r4511534 ? r4511542 : r4511532;
        double r4511544 = r4511509 ? r4511532 : r4511543;
        return r4511544;
}

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*

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if U < -1.564653566373805e-275 or 1.39397840621534e-167 < U

    1. Initial program 32.8

      \[\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. Using strategy rm
    3. Applied associate-/l*29.6

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \color{blue}{\frac{\ell}{\frac{Om}{\ell}}}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
    4. Using strategy rm
    5. Applied add-cube-cbrt29.6

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \color{blue}{\left(\left(\sqrt[3]{U - U*} \cdot \sqrt[3]{U - U*}\right) \cdot \sqrt[3]{U - U*}\right)}\right)}\]
    6. Applied associate-*r*29.6

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

    if -1.564653566373805e-275 < U < 1.39397840621534e-167

    1. Initial program 42.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. Using strategy rm
    3. Applied associate-/l*40.6

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \color{blue}{\frac{\ell}{\frac{Om}{\ell}}}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
    4. Using strategy rm
    5. Applied add-cube-cbrt40.6

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \color{blue}{\left(\left(\sqrt[3]{U - U*} \cdot \sqrt[3]{U - U*}\right) \cdot \sqrt[3]{U - U*}\right)}\right)}\]
    6. Applied associate-*r*40.6

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

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;U \le -1.564653566373805159820092121040850211815 \cdot 10^{-275}:\\ \;\;\;\;\sqrt{\left(\left(n \cdot 2\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \sqrt[3]{U - U*} \cdot \left(\left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right) \cdot \left(\sqrt[3]{U - U*} \cdot \sqrt[3]{U - U*}\right)\right)\right)}\\ \mathbf{elif}\;U \le 1.393978406215339989310274239867953934656 \cdot 10^{-167}:\\ \;\;\;\;\sqrt{\left(n \cdot 2\right) \cdot \left(\left(t - \left(\left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right) \cdot \left(U - U*\right) + \frac{\ell \cdot 2}{\frac{Om}{\ell}}\right)\right) \cdot U\right)}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{\left(\left(n \cdot 2\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \sqrt[3]{U - U*} \cdot \left(\left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right) \cdot \left(\sqrt[3]{U - U*} \cdot \sqrt[3]{U - U*}\right)\right)\right)}\\ \end{array}\]

Reproduce

herbie shell --seed 2019200 
(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*))))))