\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 -311690872571746179874816 \lor \neg \left(U \le 6.172668847283660136156694814890219267888 \cdot 10^{-122}\right):\\
\;\;\;\;\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)}\\
\mathbf{else}:\\
\;\;\;\;\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)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r169974 = 2.0;
double r169975 = n;
double r169976 = r169974 * r169975;
double r169977 = U;
double r169978 = r169976 * r169977;
double r169979 = t;
double r169980 = l;
double r169981 = r169980 * r169980;
double r169982 = Om;
double r169983 = r169981 / r169982;
double r169984 = r169974 * r169983;
double r169985 = r169979 - r169984;
double r169986 = r169980 / r169982;
double r169987 = pow(r169986, r169974);
double r169988 = r169975 * r169987;
double r169989 = U_;
double r169990 = r169977 - r169989;
double r169991 = r169988 * r169990;
double r169992 = r169985 - r169991;
double r169993 = r169978 * r169992;
double r169994 = sqrt(r169993);
return r169994;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r169995 = U;
double r169996 = -3.116908725717462e+23;
bool r169997 = r169995 <= r169996;
double r169998 = 6.17266884728366e-122;
bool r169999 = r169995 <= r169998;
double r170000 = !r169999;
bool r170001 = r169997 || r170000;
double r170002 = 2.0;
double r170003 = n;
double r170004 = r170002 * r170003;
double r170005 = r170004 * r169995;
double r170006 = t;
double r170007 = l;
double r170008 = Om;
double r170009 = r170008 / r170007;
double r170010 = r170007 / r170009;
double r170011 = r170002 * r170010;
double r170012 = r170006 - r170011;
double r170013 = r170007 / r170008;
double r170014 = 2.0;
double r170015 = r170002 / r170014;
double r170016 = pow(r170013, r170015);
double r170017 = r170003 * r170016;
double r170018 = U_;
double r170019 = r169995 - r170018;
double r170020 = r170016 * r170019;
double r170021 = r170017 * r170020;
double r170022 = r170012 - r170021;
double r170023 = r170005 * r170022;
double r170024 = sqrt(r170023);
double r170025 = r169995 * r170022;
double r170026 = r170004 * r170025;
double r170027 = sqrt(r170026);
double r170028 = r170001 ? r170024 : r170027;
return r170028;
}



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 < -3.116908725717462e+23 or 6.17266884728366e-122 < U Initial program 30.2
rmApplied sqr-pow30.2
Applied associate-*r*29.6
rmApplied associate-*l*29.9
rmApplied associate-/l*27.3
if -3.116908725717462e+23 < U < 6.17266884728366e-122Initial program 38.0
rmApplied sqr-pow38.0
Applied associate-*r*37.0
rmApplied associate-*l*36.5
rmApplied associate-/l*33.9
rmApplied associate-*l*29.7
Final simplification28.6
herbie shell --seed 2019362 +o rules:numerics
(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*))))))