Average Error: 34.0 → 27.2
Time: 1.8m
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 -8.761276549602833524386767464963015900073 \cdot 10^{-54}:\\ \;\;\;\;\sqrt{\left(\left(\left(\left(U* - U\right) \cdot \left(\left(\left(n \cdot {\ell}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{1}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) - \frac{\ell}{Om} \cdot \left(2 \cdot \ell\right)\right) + t\right) \cdot \left(2 \cdot n\right)\right) \cdot U}\\ \mathbf{elif}\;U \le 1.188289134364555924225184345803502950244 \cdot 10^{-207}:\\ \;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot \left(\left(t + \left(\left(U* - U\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right)\right) - \frac{\ell}{Om} \cdot \left(2 \cdot \ell\right)\right)\right) \cdot U\right)}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{\left(t + \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U* - U\right) - \frac{\ell}{Om} \cdot \left(2 \cdot \ell\right)\right)\right) \cdot \left(2 \cdot n\right)} \cdot \sqrt{U}\\ \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 -8.761276549602833524386767464963015900073 \cdot 10^{-54}:\\
\;\;\;\;\sqrt{\left(\left(\left(\left(U* - U\right) \cdot \left(\left(\left(n \cdot {\ell}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{1}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) - \frac{\ell}{Om} \cdot \left(2 \cdot \ell\right)\right) + t\right) \cdot \left(2 \cdot n\right)\right) \cdot U}\\

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

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

\end{array}
double f(double n, double U, double t, double l, double Om, double U_) {
        double r2599713 = 2.0;
        double r2599714 = n;
        double r2599715 = r2599713 * r2599714;
        double r2599716 = U;
        double r2599717 = r2599715 * r2599716;
        double r2599718 = t;
        double r2599719 = l;
        double r2599720 = r2599719 * r2599719;
        double r2599721 = Om;
        double r2599722 = r2599720 / r2599721;
        double r2599723 = r2599713 * r2599722;
        double r2599724 = r2599718 - r2599723;
        double r2599725 = r2599719 / r2599721;
        double r2599726 = pow(r2599725, r2599713);
        double r2599727 = r2599714 * r2599726;
        double r2599728 = U_;
        double r2599729 = r2599716 - r2599728;
        double r2599730 = r2599727 * r2599729;
        double r2599731 = r2599724 - r2599730;
        double r2599732 = r2599717 * r2599731;
        double r2599733 = sqrt(r2599732);
        return r2599733;
}

double f(double n, double U, double t, double l, double Om, double U_) {
        double r2599734 = U;
        double r2599735 = -8.761276549602834e-54;
        bool r2599736 = r2599734 <= r2599735;
        double r2599737 = U_;
        double r2599738 = r2599737 - r2599734;
        double r2599739 = n;
        double r2599740 = l;
        double r2599741 = 2.0;
        double r2599742 = 2.0;
        double r2599743 = r2599741 / r2599742;
        double r2599744 = pow(r2599740, r2599743);
        double r2599745 = r2599739 * r2599744;
        double r2599746 = 1.0;
        double r2599747 = Om;
        double r2599748 = r2599746 / r2599747;
        double r2599749 = pow(r2599748, r2599743);
        double r2599750 = r2599745 * r2599749;
        double r2599751 = r2599740 / r2599747;
        double r2599752 = pow(r2599751, r2599743);
        double r2599753 = r2599750 * r2599752;
        double r2599754 = r2599738 * r2599753;
        double r2599755 = r2599741 * r2599740;
        double r2599756 = r2599751 * r2599755;
        double r2599757 = r2599754 - r2599756;
        double r2599758 = t;
        double r2599759 = r2599757 + r2599758;
        double r2599760 = r2599741 * r2599739;
        double r2599761 = r2599759 * r2599760;
        double r2599762 = r2599761 * r2599734;
        double r2599763 = sqrt(r2599762);
        double r2599764 = 1.188289134364556e-207;
        bool r2599765 = r2599734 <= r2599764;
        double r2599766 = r2599739 * r2599752;
        double r2599767 = r2599752 * r2599766;
        double r2599768 = r2599738 * r2599767;
        double r2599769 = r2599768 - r2599756;
        double r2599770 = r2599758 + r2599769;
        double r2599771 = r2599770 * r2599734;
        double r2599772 = r2599760 * r2599771;
        double r2599773 = sqrt(r2599772);
        double r2599774 = pow(r2599751, r2599741);
        double r2599775 = r2599739 * r2599774;
        double r2599776 = r2599775 * r2599738;
        double r2599777 = r2599776 - r2599756;
        double r2599778 = r2599758 + r2599777;
        double r2599779 = r2599778 * r2599760;
        double r2599780 = sqrt(r2599779);
        double r2599781 = sqrt(r2599734);
        double r2599782 = r2599780 * r2599781;
        double r2599783 = r2599765 ? r2599773 : r2599782;
        double r2599784 = r2599736 ? r2599763 : r2599783;
        return r2599784;
}

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 3 regimes
  2. if U < -8.761276549602834e-54

    1. Initial program 28.9

      \[\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. Simplified27.1

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

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot \left(t + \left(\left(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)}\right) \cdot \left(U* - U\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)\right) \cdot U}\]
    5. Applied associate-*r*26.4

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot \left(t + \left(\color{blue}{\left(\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)}\right)} \cdot \left(U* - U\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)\right) \cdot U}\]
    6. Using strategy rm
    7. Applied div-inv26.4

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot \left(t + \left(\left(\left(n \cdot {\color{blue}{\left(\ell \cdot \frac{1}{Om}\right)}}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(U* - U\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)\right) \cdot U}\]
    8. Applied unpow-prod-down26.4

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

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

    if -8.761276549602834e-54 < U < 1.188289134364556e-207

    1. Initial program 40.5

      \[\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. Simplified37.1

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

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot \left(t + \left(\left(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)}\right) \cdot \left(U* - U\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)\right) \cdot U}\]
    5. Applied associate-*r*35.7

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot \left(t + \left(\color{blue}{\left(\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)}\right)} \cdot \left(U* - U\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)\right) \cdot U}\]
    6. Using strategy rm
    7. Applied associate-*l*31.4

      \[\leadsto \sqrt{\color{blue}{\left(2 \cdot n\right) \cdot \left(\left(t + \left(\left(\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)}\right) \cdot \left(U* - U\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right) \cdot U\right)}}\]

    if 1.188289134364556e-207 < U

    1. Initial program 31.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. Simplified29.1

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

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

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

Reproduce

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