\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 -9.95931678236544397 \cdot 10^{54}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - 0\right)}\\
\mathbf{elif}\;U \le 7.7008530070172207 \cdot 10^{77}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot \left(U \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \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)\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\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)}^{\left(\frac{2}{2}\right)}\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right)\right)\right)}} \cdot \sqrt{\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)}^{\left(\frac{2}{2}\right)}\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right)\right)\right)}}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r170004 = 2.0;
double r170005 = n;
double r170006 = r170004 * r170005;
double r170007 = U;
double r170008 = r170006 * r170007;
double r170009 = t;
double r170010 = l;
double r170011 = r170010 * r170010;
double r170012 = Om;
double r170013 = r170011 / r170012;
double r170014 = r170004 * r170013;
double r170015 = r170009 - r170014;
double r170016 = r170010 / r170012;
double r170017 = pow(r170016, r170004);
double r170018 = r170005 * r170017;
double r170019 = U_;
double r170020 = r170007 - r170019;
double r170021 = r170018 * r170020;
double r170022 = r170015 - r170021;
double r170023 = r170008 * r170022;
double r170024 = sqrt(r170023);
return r170024;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r170025 = U;
double r170026 = -9.959316782365444e+54;
bool r170027 = r170025 <= r170026;
double r170028 = 2.0;
double r170029 = n;
double r170030 = r170028 * r170029;
double r170031 = r170030 * r170025;
double r170032 = t;
double r170033 = l;
double r170034 = Om;
double r170035 = r170034 / r170033;
double r170036 = r170033 / r170035;
double r170037 = r170028 * r170036;
double r170038 = r170032 - r170037;
double r170039 = 0.0;
double r170040 = r170038 - r170039;
double r170041 = r170031 * r170040;
double r170042 = sqrt(r170041);
double r170043 = 7.700853007017221e+77;
bool r170044 = r170025 <= r170043;
double r170045 = r170033 / r170034;
double r170046 = 2.0;
double r170047 = r170028 / r170046;
double r170048 = pow(r170045, r170047);
double r170049 = r170029 * r170048;
double r170050 = U_;
double r170051 = r170025 - r170050;
double r170052 = r170048 * r170051;
double r170053 = r170049 * r170052;
double r170054 = r170038 - r170053;
double r170055 = r170025 * r170054;
double r170056 = r170030 * r170055;
double r170057 = sqrt(r170056);
double r170058 = r170031 * r170054;
double r170059 = sqrt(r170058);
double r170060 = sqrt(r170059);
double r170061 = r170060 * r170060;
double r170062 = r170044 ? r170057 : r170061;
double r170063 = r170027 ? r170042 : r170062;
return r170063;
}



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 U < -9.959316782365444e+54Initial program 29.3
rmApplied associate-/l*26.8
Taylor expanded around 0 28.1
if -9.959316782365444e+54 < U < 7.700853007017221e+77Initial program 36.9
rmApplied associate-/l*34.0
rmApplied sqr-pow34.0
Applied associate-*r*33.0
rmApplied associate-*l*32.5
rmApplied associate-*l*28.9
if 7.700853007017221e+77 < U Initial program 29.8
rmApplied associate-/l*27.4
rmApplied sqr-pow27.4
Applied associate-*r*27.1
rmApplied associate-*l*27.7
rmApplied add-sqr-sqrt27.9
Final simplification28.7
herbie shell --seed 2020081
(FPCore (n U t l Om U*)
:name "Toniolo and Linder, Equation (13)"
:precision binary64
(sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))))