\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 \left(\ell \cdot \frac{\ell}{Om}\right)\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 \left(\ell \cdot \frac{\ell}{Om}\right)\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 r191732 = 2.0;
double r191733 = n;
double r191734 = r191732 * r191733;
double r191735 = U;
double r191736 = r191734 * r191735;
double r191737 = t;
double r191738 = l;
double r191739 = r191738 * r191738;
double r191740 = Om;
double r191741 = r191739 / r191740;
double r191742 = r191732 * r191741;
double r191743 = r191737 - r191742;
double r191744 = r191738 / r191740;
double r191745 = pow(r191744, r191732);
double r191746 = r191733 * r191745;
double r191747 = U_;
double r191748 = r191735 - r191747;
double r191749 = r191746 * r191748;
double r191750 = r191743 - r191749;
double r191751 = r191736 * r191750;
double r191752 = sqrt(r191751);
return r191752;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r191753 = t;
double r191754 = 8.480782664814814e+128;
bool r191755 = r191753 <= r191754;
double r191756 = 2.0;
double r191757 = n;
double r191758 = r191756 * r191757;
double r191759 = U;
double r191760 = l;
double r191761 = Om;
double r191762 = r191760 / r191761;
double r191763 = r191760 * r191762;
double r191764 = r191756 * r191763;
double r191765 = r191753 - r191764;
double r191766 = U_;
double r191767 = r191759 - r191766;
double r191768 = 2.0;
double r191769 = r191756 / r191768;
double r191770 = r191768 * r191769;
double r191771 = pow(r191762, r191770);
double r191772 = r191757 * r191771;
double r191773 = r191767 * r191772;
double r191774 = r191765 - r191773;
double r191775 = r191759 * r191774;
double r191776 = r191758 * r191775;
double r191777 = sqrt(r191776);
double r191778 = r191758 * r191759;
double r191779 = sqrt(r191778);
double r191780 = sqrt(r191774);
double r191781 = r191779 * r191780;
double r191782 = r191755 ? r191777 : r191781;
return r191782;
}



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 *-un-lft-identity34.1
Applied times-frac31.2
Simplified31.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 *-un-lft-identity37.9
Applied times-frac35.2
Simplified35.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*))))))