\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 -7.529896307330418723638334607719281802794 \cdot 10^{-259}:\\
\;\;\;\;\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{elif}\;t \le 6.290205096341293850941454167523250774551 \cdot 10^{63}:\\
\;\;\;\;\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)}}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\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)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r170677 = 2.0;
double r170678 = n;
double r170679 = r170677 * r170678;
double r170680 = U;
double r170681 = r170679 * r170680;
double r170682 = t;
double r170683 = l;
double r170684 = r170683 * r170683;
double r170685 = Om;
double r170686 = r170684 / r170685;
double r170687 = r170677 * r170686;
double r170688 = r170682 - r170687;
double r170689 = r170683 / r170685;
double r170690 = pow(r170689, r170677);
double r170691 = r170678 * r170690;
double r170692 = U_;
double r170693 = r170680 - r170692;
double r170694 = r170691 * r170693;
double r170695 = r170688 - r170694;
double r170696 = r170681 * r170695;
double r170697 = sqrt(r170696);
return r170697;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r170698 = t;
double r170699 = -7.529896307330419e-259;
bool r170700 = r170698 <= r170699;
double r170701 = 2.0;
double r170702 = n;
double r170703 = r170701 * r170702;
double r170704 = U;
double r170705 = l;
double r170706 = Om;
double r170707 = r170706 / r170705;
double r170708 = r170705 / r170707;
double r170709 = r170701 * r170708;
double r170710 = r170698 - r170709;
double r170711 = r170705 / r170706;
double r170712 = 2.0;
double r170713 = r170701 / r170712;
double r170714 = pow(r170711, r170713);
double r170715 = r170702 * r170714;
double r170716 = U_;
double r170717 = r170704 - r170716;
double r170718 = r170714 * r170717;
double r170719 = r170715 * r170718;
double r170720 = r170710 - r170719;
double r170721 = r170704 * r170720;
double r170722 = r170703 * r170721;
double r170723 = sqrt(r170722);
double r170724 = 6.290205096341294e+63;
bool r170725 = r170698 <= r170724;
double r170726 = r170703 * r170704;
double r170727 = r170726 * r170720;
double r170728 = sqrt(r170727);
double r170729 = sqrt(r170728);
double r170730 = r170729 * r170729;
double r170731 = sqrt(r170726);
double r170732 = sqrt(r170720);
double r170733 = r170731 * r170732;
double r170734 = r170725 ? r170730 : r170733;
double r170735 = r170700 ? r170723 : r170734;
return r170735;
}



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 < -7.529896307330419e-259Initial program 33.8
rmApplied associate-/l*31.2
rmApplied sqr-pow31.2
Applied associate-*r*30.4
rmApplied associate-*l*30.3
rmApplied associate-*l*30.1
if -7.529896307330419e-259 < t < 6.290205096341294e+63Initial program 35.1
rmApplied associate-/l*31.8
rmApplied sqr-pow31.8
Applied associate-*r*30.6
rmApplied associate-*l*30.2
rmApplied add-sqr-sqrt30.4
if 6.290205096341294e+63 < t Initial program 34.4
rmApplied associate-/l*31.9
rmApplied sqr-pow31.9
Applied associate-*r*31.3
rmApplied associate-*l*31.3
rmApplied sqrt-prod24.3
Final simplification29.0
herbie shell --seed 2019346
(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*))))))