\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 -6.13327481764505281 \cdot 10^{57}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot \left(U \cdot \left(t - \left(2 \cdot \frac{\ell}{\frac{Om}{\ell}} - \left(-n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(2 \cdot \frac{2}{2}\right)}\right) \cdot \left(U - U*\right)\right)\right)\right)}\\
\mathbf{elif}\;t \le -1.45324359345592405 \cdot 10^{-302}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(\left(\left(n \cdot {\ell}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{1}{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)\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \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)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r201788 = 2.0;
double r201789 = n;
double r201790 = r201788 * r201789;
double r201791 = U;
double r201792 = r201790 * r201791;
double r201793 = t;
double r201794 = l;
double r201795 = r201794 * r201794;
double r201796 = Om;
double r201797 = r201795 / r201796;
double r201798 = r201788 * r201797;
double r201799 = r201793 - r201798;
double r201800 = r201794 / r201796;
double r201801 = pow(r201800, r201788);
double r201802 = r201789 * r201801;
double r201803 = U_;
double r201804 = r201791 - r201803;
double r201805 = r201802 * r201804;
double r201806 = r201799 - r201805;
double r201807 = r201792 * r201806;
double r201808 = sqrt(r201807);
return r201808;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r201809 = t;
double r201810 = -6.133274817645053e+57;
bool r201811 = r201809 <= r201810;
double r201812 = 2.0;
double r201813 = n;
double r201814 = r201812 * r201813;
double r201815 = U;
double r201816 = l;
double r201817 = Om;
double r201818 = r201817 / r201816;
double r201819 = r201816 / r201818;
double r201820 = r201812 * r201819;
double r201821 = r201816 / r201817;
double r201822 = 2.0;
double r201823 = r201812 / r201822;
double r201824 = r201822 * r201823;
double r201825 = pow(r201821, r201824);
double r201826 = r201813 * r201825;
double r201827 = -r201826;
double r201828 = U_;
double r201829 = r201815 - r201828;
double r201830 = r201827 * r201829;
double r201831 = r201820 - r201830;
double r201832 = r201809 - r201831;
double r201833 = r201815 * r201832;
double r201834 = r201814 * r201833;
double r201835 = sqrt(r201834);
double r201836 = -1.453243593455924e-302;
bool r201837 = r201809 <= r201836;
double r201838 = r201814 * r201815;
double r201839 = r201809 - r201820;
double r201840 = pow(r201816, r201823);
double r201841 = r201813 * r201840;
double r201842 = 1.0;
double r201843 = r201842 / r201817;
double r201844 = pow(r201843, r201823);
double r201845 = r201841 * r201844;
double r201846 = pow(r201821, r201823);
double r201847 = r201845 * r201846;
double r201848 = r201847 * r201829;
double r201849 = r201839 - r201848;
double r201850 = r201838 * r201849;
double r201851 = sqrt(r201850);
double r201852 = sqrt(r201838);
double r201853 = r201813 * r201846;
double r201854 = r201853 * r201846;
double r201855 = r201854 * r201829;
double r201856 = r201839 - r201855;
double r201857 = sqrt(r201856);
double r201858 = r201852 * r201857;
double r201859 = r201837 ? r201851 : r201858;
double r201860 = r201811 ? r201835 : r201859;
return r201860;
}



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 < -6.133274817645053e+57Initial program 35.3
rmApplied associate-/l*32.9
rmApplied sqr-pow32.9
Applied associate-*r*32.5
rmApplied associate-*l*32.0
Simplified32.6
if -6.133274817645053e+57 < t < -1.453243593455924e-302Initial program 33.4
rmApplied associate-/l*30.8
rmApplied sqr-pow30.8
Applied associate-*r*29.5
rmApplied div-inv29.5
Applied unpow-prod-down29.5
Applied associate-*r*30.9
if -1.453243593455924e-302 < t Initial program 34.4
rmApplied associate-/l*31.7
rmApplied sqr-pow31.7
Applied associate-*r*31.0
rmApplied sqrt-prod29.3
Final simplification30.5
herbie shell --seed 2020027
(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*))))))