\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 8.48078266481481385711732205638014053282 \cdot 10^{128}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot \left(U \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(U - U*\right) \cdot \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(2 \cdot \frac{2}{2}\right)}\right)\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(U - U*\right) \cdot \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(2 \cdot \frac{2}{2}\right)}\right)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r209804 = 2.0;
double r209805 = n;
double r209806 = r209804 * r209805;
double r209807 = U;
double r209808 = r209806 * r209807;
double r209809 = t;
double r209810 = l;
double r209811 = r209810 * r209810;
double r209812 = Om;
double r209813 = r209811 / r209812;
double r209814 = r209804 * r209813;
double r209815 = r209809 - r209814;
double r209816 = r209810 / r209812;
double r209817 = pow(r209816, r209804);
double r209818 = r209805 * r209817;
double r209819 = U_;
double r209820 = r209807 - r209819;
double r209821 = r209818 * r209820;
double r209822 = r209815 - r209821;
double r209823 = r209808 * r209822;
double r209824 = sqrt(r209823);
return r209824;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r209825 = t;
double r209826 = 8.480782664814814e+128;
bool r209827 = r209825 <= r209826;
double r209828 = 2.0;
double r209829 = n;
double r209830 = r209828 * r209829;
double r209831 = U;
double r209832 = l;
double r209833 = Om;
double r209834 = r209833 / r209832;
double r209835 = r209832 / r209834;
double r209836 = r209828 * r209835;
double r209837 = r209825 - r209836;
double r209838 = U_;
double r209839 = r209831 - r209838;
double r209840 = r209832 / r209833;
double r209841 = 2.0;
double r209842 = r209828 / r209841;
double r209843 = r209841 * r209842;
double r209844 = pow(r209840, r209843);
double r209845 = r209829 * r209844;
double r209846 = r209839 * r209845;
double r209847 = r209837 - r209846;
double r209848 = r209831 * r209847;
double r209849 = r209830 * r209848;
double r209850 = sqrt(r209849);
double r209851 = r209830 * r209831;
double r209852 = sqrt(r209851);
double r209853 = sqrt(r209847);
double r209854 = r209852 * r209853;
double r209855 = r209827 ? r209850 : r209854;
return r209855;
}



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 < 8.480782664814814e+128Initial program 34.1
rmApplied associate-/l*31.2
rmApplied sqr-pow31.2
Applied associate-*r*30.4
rmApplied associate-*l*29.9
Simplified31.0
if 8.480782664814814e+128 < t Initial program 37.9
rmApplied associate-/l*35.2
rmApplied sqr-pow35.2
Applied associate-*r*34.6
rmApplied sqrt-prod22.9
Simplified23.4
Final simplification29.9
herbie shell --seed 2019325
(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*))))))