\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 3.107259989070679 \cdot 10^{+84}:\\
\;\;\;\;\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(U \cdot n\right) \cdot 2} \cdot \sqrt{t - \left(2 \cdot \ell - \left(U - U*\right) \cdot \left(-n \cdot \frac{\ell}{Om}\right)\right) \cdot \frac{\ell}{Om}}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r8616019 = 2.0;
double r8616020 = n;
double r8616021 = r8616019 * r8616020;
double r8616022 = U;
double r8616023 = r8616021 * r8616022;
double r8616024 = t;
double r8616025 = l;
double r8616026 = r8616025 * r8616025;
double r8616027 = Om;
double r8616028 = r8616026 / r8616027;
double r8616029 = r8616019 * r8616028;
double r8616030 = r8616024 - r8616029;
double r8616031 = r8616025 / r8616027;
double r8616032 = pow(r8616031, r8616019);
double r8616033 = r8616020 * r8616032;
double r8616034 = U_;
double r8616035 = r8616022 - r8616034;
double r8616036 = r8616033 * r8616035;
double r8616037 = r8616030 - r8616036;
double r8616038 = r8616023 * r8616037;
double r8616039 = sqrt(r8616038);
return r8616039;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r8616040 = t;
double r8616041 = 3.107259989070679e+84;
bool r8616042 = r8616040 <= r8616041;
double r8616043 = 2.0;
double r8616044 = n;
double r8616045 = l;
double r8616046 = Om;
double r8616047 = r8616045 / r8616046;
double r8616048 = r8616044 * r8616047;
double r8616049 = U;
double r8616050 = r8616048 * r8616049;
double r8616051 = -2.0;
double r8616052 = r8616045 * r8616051;
double r8616053 = U_;
double r8616054 = r8616049 - r8616053;
double r8616055 = r8616048 * r8616054;
double r8616056 = r8616052 - r8616055;
double r8616057 = r8616050 * r8616056;
double r8616058 = r8616043 * r8616057;
double r8616059 = r8616043 * r8616044;
double r8616060 = r8616059 * r8616049;
double r8616061 = r8616060 * r8616040;
double r8616062 = r8616058 + r8616061;
double r8616063 = sqrt(r8616062);
double r8616064 = sqrt(r8616063);
double r8616065 = r8616064 * r8616064;
double r8616066 = r8616049 * r8616044;
double r8616067 = r8616066 * r8616043;
double r8616068 = sqrt(r8616067);
double r8616069 = r8616043 * r8616045;
double r8616070 = -r8616048;
double r8616071 = r8616054 * r8616070;
double r8616072 = r8616069 - r8616071;
double r8616073 = r8616072 * r8616047;
double r8616074 = r8616040 - r8616073;
double r8616075 = sqrt(r8616074);
double r8616076 = r8616068 * r8616075;
double r8616077 = r8616042 ? r8616065 : r8616076;
return r8616077;
}



Bits error versus n



Bits error versus U



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus U*
Results
if t < 3.107259989070679e+84Initial program 33.0
rmApplied *-un-lft-identity33.0
Applied associate-*r*33.0
Simplified29.3
rmApplied sub-neg29.3
Applied distribute-rgt-in29.3
Simplified25.3
rmApplied add-sqr-sqrt25.3
Applied sqrt-prod25.5
if 3.107259989070679e+84 < t Initial program 34.5
rmApplied *-un-lft-identity34.5
Applied associate-*r*34.5
Simplified32.2
rmApplied sqrt-prod24.6
Simplified24.6
Final simplification25.3
herbie shell --seed 2019112
(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*))))))