Average Error: 33.2 → 25.2
Time: 1.5m
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}\;t \le 9.680598668789347 \cdot 10^{+126}:\\ \;\;\;\;\sqrt{\sqrt{2 \cdot \left(\left(\left(n \cdot \frac{\ell}{Om}\right) \cdot U\right) \cdot \left(\ell \cdot -2 - \left(n \cdot \frac{\ell}{Om}\right) \cdot \left(U - U*\right)\right)\right) + \left(\left(2 \cdot n\right) \cdot U\right) \cdot t}} \cdot \sqrt{\sqrt{2 \cdot \left(\left(\left(n \cdot \frac{\ell}{Om}\right) \cdot U\right) \cdot \left(\ell \cdot -2 - \left(n \cdot \frac{\ell}{Om}\right) \cdot \left(U - U*\right)\right)\right) + \left(\left(2 \cdot n\right) \cdot U\right) \cdot t}}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(U - U*\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\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}\;t \le 9.680598668789347 \cdot 10^{+126}:\\
\;\;\;\;\sqrt{\sqrt{2 \cdot \left(\left(\left(n \cdot \frac{\ell}{Om}\right) \cdot U\right) \cdot \left(\ell \cdot -2 - \left(n \cdot \frac{\ell}{Om}\right) \cdot \left(U - U*\right)\right)\right) + \left(\left(2 \cdot n\right) \cdot U\right) \cdot t}} \cdot \sqrt{\sqrt{2 \cdot \left(\left(\left(n \cdot \frac{\ell}{Om}\right) \cdot U\right) \cdot \left(\ell \cdot -2 - \left(n \cdot \frac{\ell}{Om}\right) \cdot \left(U - U*\right)\right)\right) + \left(\left(2 \cdot n\right) \cdot U\right) \cdot t}}\\

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

\end{array}
double f(double n, double U, double t, double l, double Om, double U_) {
        double r8468602 = 2.0;
        double r8468603 = n;
        double r8468604 = r8468602 * r8468603;
        double r8468605 = U;
        double r8468606 = r8468604 * r8468605;
        double r8468607 = t;
        double r8468608 = l;
        double r8468609 = r8468608 * r8468608;
        double r8468610 = Om;
        double r8468611 = r8468609 / r8468610;
        double r8468612 = r8468602 * r8468611;
        double r8468613 = r8468607 - r8468612;
        double r8468614 = r8468608 / r8468610;
        double r8468615 = pow(r8468614, r8468602);
        double r8468616 = r8468603 * r8468615;
        double r8468617 = U_;
        double r8468618 = r8468605 - r8468617;
        double r8468619 = r8468616 * r8468618;
        double r8468620 = r8468613 - r8468619;
        double r8468621 = r8468606 * r8468620;
        double r8468622 = sqrt(r8468621);
        return r8468622;
}

double f(double n, double U, double t, double l, double Om, double U_) {
        double r8468623 = t;
        double r8468624 = 9.680598668789347e+126;
        bool r8468625 = r8468623 <= r8468624;
        double r8468626 = 2.0;
        double r8468627 = n;
        double r8468628 = l;
        double r8468629 = Om;
        double r8468630 = r8468628 / r8468629;
        double r8468631 = r8468627 * r8468630;
        double r8468632 = U;
        double r8468633 = r8468631 * r8468632;
        double r8468634 = -2.0;
        double r8468635 = r8468628 * r8468634;
        double r8468636 = U_;
        double r8468637 = r8468632 - r8468636;
        double r8468638 = r8468631 * r8468637;
        double r8468639 = r8468635 - r8468638;
        double r8468640 = r8468633 * r8468639;
        double r8468641 = r8468626 * r8468640;
        double r8468642 = r8468626 * r8468627;
        double r8468643 = r8468642 * r8468632;
        double r8468644 = r8468643 * r8468623;
        double r8468645 = r8468641 + r8468644;
        double r8468646 = sqrt(r8468645);
        double r8468647 = sqrt(r8468646);
        double r8468648 = r8468647 * r8468647;
        double r8468649 = sqrt(r8468643);
        double r8468650 = r8468628 * r8468628;
        double r8468651 = r8468650 / r8468629;
        double r8468652 = r8468651 * r8468626;
        double r8468653 = r8468623 - r8468652;
        double r8468654 = pow(r8468630, r8468626);
        double r8468655 = r8468654 * r8468627;
        double r8468656 = r8468637 * r8468655;
        double r8468657 = r8468653 - r8468656;
        double r8468658 = sqrt(r8468657);
        double r8468659 = r8468649 * r8468658;
        double r8468660 = r8468625 ? r8468648 : r8468659;
        return r8468660;
}

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 t < 9.680598668789347e+126

    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 *-un-lft-identity32.8

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \color{blue}{\left(1 \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)\right)}}\]
    4. Applied associate-*r*32.8

      \[\leadsto \sqrt{\color{blue}{\left(\left(\left(2 \cdot n\right) \cdot U\right) \cdot 1\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)}}\]
    5. Simplified28.6

      \[\leadsto \sqrt{\left(\left(\left(2 \cdot n\right) \cdot U\right) \cdot 1\right) \cdot \color{blue}{\left(t - \frac{\ell}{Om} \cdot \left(\ell \cdot 2 - \left(-\left(U - U*\right) \cdot \left(\frac{\ell}{Om} \cdot n\right)\right)\right)\right)}}\]
    6. Using strategy rm
    7. Applied sub-neg28.6

      \[\leadsto \sqrt{\left(\left(\left(2 \cdot n\right) \cdot U\right) \cdot 1\right) \cdot \color{blue}{\left(t + \left(-\frac{\ell}{Om} \cdot \left(\ell \cdot 2 - \left(-\left(U - U*\right) \cdot \left(\frac{\ell}{Om} \cdot n\right)\right)\right)\right)\right)}}\]
    8. Applied distribute-rgt-in28.6

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

      \[\leadsto \sqrt{t \cdot \left(\left(\left(2 \cdot n\right) \cdot U\right) \cdot 1\right) + \color{blue}{\left(\left(\left(\frac{\ell}{Om} \cdot n\right) \cdot U\right) \cdot \left(\ell \cdot -2 - \left(\frac{\ell}{Om} \cdot n\right) \cdot \left(U - U*\right)\right)\right) \cdot 2}}\]
    10. Using strategy rm
    11. Applied add-sqr-sqrt24.9

      \[\leadsto \sqrt{\color{blue}{\sqrt{t \cdot \left(\left(\left(2 \cdot n\right) \cdot U\right) \cdot 1\right) + \left(\left(\left(\frac{\ell}{Om} \cdot n\right) \cdot U\right) \cdot \left(\ell \cdot -2 - \left(\frac{\ell}{Om} \cdot n\right) \cdot \left(U - U*\right)\right)\right) \cdot 2} \cdot \sqrt{t \cdot \left(\left(\left(2 \cdot n\right) \cdot U\right) \cdot 1\right) + \left(\left(\left(\frac{\ell}{Om} \cdot n\right) \cdot U\right) \cdot \left(\ell \cdot -2 - \left(\frac{\ell}{Om} \cdot n\right) \cdot \left(U - U*\right)\right)\right) \cdot 2}}}\]
    12. Applied sqrt-prod25.1

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

    if 9.680598668789347e+126 < t

    1. Initial program 35.6

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

      \[\leadsto \color{blue}{\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\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)}}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification25.2

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

Reproduce

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