Average Error: 34.3 → 27.6
Time: 1.9m
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}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 0.0:\\ \;\;\;\;\sqrt{U \cdot \left(\left(t + \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(\left(\left(U* - U\right) \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right) \cdot \left(\sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}} \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right)\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right) \cdot \left(2 \cdot n\right)\right)}\\ \mathbf{elif}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 5.527558626767575315212582232479434470364 \cdot 10^{298}:\\ \;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{U} \cdot \sqrt{\left(2 \cdot n\right) \cdot \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) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\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}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 0.0:\\
\;\;\;\;\sqrt{U \cdot \left(\left(t + \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(\left(\left(U* - U\right) \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right) \cdot \left(\sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}} \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right)\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right) \cdot \left(2 \cdot n\right)\right)}\\

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

\mathbf{else}:\\
\;\;\;\;\sqrt{U} \cdot \sqrt{\left(2 \cdot n\right) \cdot \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) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)}\\

\end{array}
double f(double n, double U, double t, double l, double Om, double U_) {
        double r5505120 = 2.0;
        double r5505121 = n;
        double r5505122 = r5505120 * r5505121;
        double r5505123 = U;
        double r5505124 = r5505122 * r5505123;
        double r5505125 = t;
        double r5505126 = l;
        double r5505127 = r5505126 * r5505126;
        double r5505128 = Om;
        double r5505129 = r5505127 / r5505128;
        double r5505130 = r5505120 * r5505129;
        double r5505131 = r5505125 - r5505130;
        double r5505132 = r5505126 / r5505128;
        double r5505133 = pow(r5505132, r5505120);
        double r5505134 = r5505121 * r5505133;
        double r5505135 = U_;
        double r5505136 = r5505123 - r5505135;
        double r5505137 = r5505134 * r5505136;
        double r5505138 = r5505131 - r5505137;
        double r5505139 = r5505124 * r5505138;
        double r5505140 = sqrt(r5505139);
        return r5505140;
}

double f(double n, double U, double t, double l, double Om, double U_) {
        double r5505141 = 2.0;
        double r5505142 = n;
        double r5505143 = r5505141 * r5505142;
        double r5505144 = U;
        double r5505145 = r5505143 * r5505144;
        double r5505146 = t;
        double r5505147 = l;
        double r5505148 = r5505147 * r5505147;
        double r5505149 = Om;
        double r5505150 = r5505148 / r5505149;
        double r5505151 = r5505150 * r5505141;
        double r5505152 = r5505146 - r5505151;
        double r5505153 = r5505147 / r5505149;
        double r5505154 = pow(r5505153, r5505141);
        double r5505155 = r5505142 * r5505154;
        double r5505156 = U_;
        double r5505157 = r5505144 - r5505156;
        double r5505158 = r5505155 * r5505157;
        double r5505159 = r5505152 - r5505158;
        double r5505160 = r5505145 * r5505159;
        double r5505161 = 0.0;
        bool r5505162 = r5505160 <= r5505161;
        double r5505163 = 2.0;
        double r5505164 = r5505141 / r5505163;
        double r5505165 = pow(r5505153, r5505164);
        double r5505166 = r5505142 * r5505165;
        double r5505167 = r5505156 - r5505144;
        double r5505168 = cbrt(r5505165);
        double r5505169 = r5505167 * r5505168;
        double r5505170 = r5505168 * r5505168;
        double r5505171 = r5505169 * r5505170;
        double r5505172 = r5505166 * r5505171;
        double r5505173 = r5505141 * r5505147;
        double r5505174 = r5505173 * r5505153;
        double r5505175 = r5505172 - r5505174;
        double r5505176 = r5505146 + r5505175;
        double r5505177 = r5505176 * r5505143;
        double r5505178 = r5505144 * r5505177;
        double r5505179 = sqrt(r5505178);
        double r5505180 = 5.527558626767575e+298;
        bool r5505181 = r5505160 <= r5505180;
        double r5505182 = sqrt(r5505160);
        double r5505183 = sqrt(r5505144);
        double r5505184 = r5505165 * r5505166;
        double r5505185 = r5505167 * r5505184;
        double r5505186 = r5505185 - r5505174;
        double r5505187 = r5505146 + r5505186;
        double r5505188 = r5505143 * r5505187;
        double r5505189 = sqrt(r5505188);
        double r5505190 = r5505183 * r5505189;
        double r5505191 = r5505181 ? r5505182 : r5505190;
        double r5505192 = r5505162 ? r5505179 : r5505191;
        return r5505192;
}

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 (* (* (* 2.0 n) U) (- (- t (* 2.0 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2.0)) (- U U*)))) < 0.0

    1. Initial program 56.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. Simplified39.7

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

      \[\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*37.0

      \[\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*36.5

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

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

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

    if 0.0 < (* (* (* 2.0 n) U) (- (- t (* 2.0 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2.0)) (- U U*)))) < 5.527558626767575e+298

    1. Initial program 1.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)}\]

    if 5.527558626767575e+298 < (* (* (* 2.0 n) U) (- (- t (* 2.0 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2.0)) (- U U*))))

    1. Initial program 63.1

      \[\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. Simplified54.8

      \[\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-pow54.8

      \[\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*53.5

      \[\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 sqrt-prod54.3

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 0.0:\\ \;\;\;\;\sqrt{U \cdot \left(\left(t + \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(\left(\left(U* - U\right) \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right) \cdot \left(\sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}} \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right)\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right) \cdot \left(2 \cdot n\right)\right)}\\ \mathbf{elif}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 5.527558626767575315212582232479434470364 \cdot 10^{298}:\\ \;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{U} \cdot \sqrt{\left(2 \cdot n\right) \cdot \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) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)}\\ \end{array}\]

Reproduce

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