\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 -2.6514126838000239 \cdot 10^{-45}:\\
\;\;\;\;\sqrt{{\left(\left(\left(2 \cdot n\right) \cdot \left(t - \left(2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right) - \left(-n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(2 \cdot \frac{2}{2}\right)}\right) \cdot \left(U - U*\right)\right)\right)\right) \cdot U\right)}^{1}}\\
\mathbf{elif}\;t \le 1.4327238710624412 \cdot 10^{138}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot \left(U \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\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{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\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 r168682 = 2.0;
double r168683 = n;
double r168684 = r168682 * r168683;
double r168685 = U;
double r168686 = r168684 * r168685;
double r168687 = t;
double r168688 = l;
double r168689 = r168688 * r168688;
double r168690 = Om;
double r168691 = r168689 / r168690;
double r168692 = r168682 * r168691;
double r168693 = r168687 - r168692;
double r168694 = r168688 / r168690;
double r168695 = pow(r168694, r168682);
double r168696 = r168683 * r168695;
double r168697 = U_;
double r168698 = r168685 - r168697;
double r168699 = r168696 * r168698;
double r168700 = r168693 - r168699;
double r168701 = r168686 * r168700;
double r168702 = sqrt(r168701);
return r168702;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r168703 = t;
double r168704 = -2.651412683800024e-45;
bool r168705 = r168703 <= r168704;
double r168706 = 2.0;
double r168707 = n;
double r168708 = r168706 * r168707;
double r168709 = l;
double r168710 = Om;
double r168711 = r168709 / r168710;
double r168712 = r168709 * r168711;
double r168713 = r168706 * r168712;
double r168714 = 2.0;
double r168715 = r168706 / r168714;
double r168716 = r168714 * r168715;
double r168717 = pow(r168711, r168716);
double r168718 = r168707 * r168717;
double r168719 = -r168718;
double r168720 = U;
double r168721 = U_;
double r168722 = r168720 - r168721;
double r168723 = r168719 * r168722;
double r168724 = r168713 - r168723;
double r168725 = r168703 - r168724;
double r168726 = r168708 * r168725;
double r168727 = r168726 * r168720;
double r168728 = 1.0;
double r168729 = pow(r168727, r168728);
double r168730 = sqrt(r168729);
double r168731 = 1.4327238710624412e+138;
bool r168732 = r168703 <= r168731;
double r168733 = r168703 - r168713;
double r168734 = pow(r168711, r168715);
double r168735 = r168707 * r168734;
double r168736 = r168734 * r168722;
double r168737 = r168735 * r168736;
double r168738 = r168733 - r168737;
double r168739 = r168720 * r168738;
double r168740 = r168708 * r168739;
double r168741 = sqrt(r168740);
double r168742 = r168708 * r168720;
double r168743 = sqrt(r168742);
double r168744 = r168735 * r168734;
double r168745 = r168744 * r168722;
double r168746 = r168733 - r168745;
double r168747 = sqrt(r168746);
double r168748 = r168743 * r168747;
double r168749 = r168732 ? r168741 : r168748;
double r168750 = r168705 ? r168730 : r168749;
return r168750;
}



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 < -2.651412683800024e-45Initial program 34.3
rmApplied *-un-lft-identity34.3
Applied times-frac31.4
Simplified31.4
rmApplied sqr-pow31.4
Applied associate-*r*31.0
rmApplied pow131.0
Applied pow131.0
Applied pow131.0
Applied pow131.0
Applied pow-prod-down31.0
Applied pow-prod-down31.0
Applied pow-prod-down31.0
Simplified31.1
if -2.651412683800024e-45 < t < 1.4327238710624412e+138Initial program 34.2
rmApplied *-un-lft-identity34.2
Applied times-frac31.8
Simplified31.8
rmApplied sqr-pow31.8
Applied associate-*r*30.9
rmApplied associate-*l*30.5
rmApplied associate-*l*30.3
if 1.4327238710624412e+138 < t Initial program 38.7
rmApplied *-un-lft-identity38.7
Applied times-frac36.4
Simplified36.4
rmApplied sqr-pow36.4
Applied associate-*r*36.0
rmApplied sqrt-prod24.5
Final simplification29.7
herbie shell --seed 2020020
(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*))))))