\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 1.046851420498615714316814028696381542136 \cdot 10^{-148}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \left(\left(n \cdot {\left(\frac{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}{\sqrt[3]{Om} \cdot \sqrt[3]{Om}}\right)}^{2}\right) \cdot {\left(\frac{\sqrt[3]{\ell}}{\sqrt[3]{Om}}\right)}^{2}\right) \cdot \left(U - U*\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{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}{\sqrt[3]{Om} \cdot \sqrt[3]{Om}}\right)}^{2}\right) \cdot {\left(\frac{\sqrt[3]{\ell}}{\sqrt[3]{Om}}\right)}^{2}\right) \cdot \left(U - U*\right)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r175991 = 2.0;
double r175992 = n;
double r175993 = r175991 * r175992;
double r175994 = U;
double r175995 = r175993 * r175994;
double r175996 = t;
double r175997 = l;
double r175998 = r175997 * r175997;
double r175999 = Om;
double r176000 = r175998 / r175999;
double r176001 = r175991 * r176000;
double r176002 = r175996 - r176001;
double r176003 = r175997 / r175999;
double r176004 = pow(r176003, r175991);
double r176005 = r175992 * r176004;
double r176006 = U_;
double r176007 = r175994 - r176006;
double r176008 = r176005 * r176007;
double r176009 = r176002 - r176008;
double r176010 = r175995 * r176009;
double r176011 = sqrt(r176010);
return r176011;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r176012 = t;
double r176013 = 1.0468514204986157e-148;
bool r176014 = r176012 <= r176013;
double r176015 = 2.0;
double r176016 = n;
double r176017 = r176015 * r176016;
double r176018 = U;
double r176019 = r176017 * r176018;
double r176020 = l;
double r176021 = Om;
double r176022 = r176020 / r176021;
double r176023 = r176020 * r176022;
double r176024 = r176015 * r176023;
double r176025 = r176012 - r176024;
double r176026 = cbrt(r176020);
double r176027 = r176026 * r176026;
double r176028 = cbrt(r176021);
double r176029 = r176028 * r176028;
double r176030 = r176027 / r176029;
double r176031 = pow(r176030, r176015);
double r176032 = r176016 * r176031;
double r176033 = r176026 / r176028;
double r176034 = pow(r176033, r176015);
double r176035 = r176032 * r176034;
double r176036 = U_;
double r176037 = r176018 - r176036;
double r176038 = r176035 * r176037;
double r176039 = r176025 - r176038;
double r176040 = r176019 * r176039;
double r176041 = sqrt(r176040);
double r176042 = sqrt(r176019);
double r176043 = sqrt(r176039);
double r176044 = r176042 * r176043;
double r176045 = r176014 ? r176041 : r176044;
return r176045;
}



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 < 1.0468514204986157e-148Initial program 36.0
rmApplied *-un-lft-identity36.0
Applied times-frac32.9
Simplified32.9
rmApplied add-cube-cbrt32.9
Applied add-cube-cbrt33.0
Applied times-frac33.0
Applied unpow-prod-down33.0
Applied associate-*r*32.0
if 1.0468514204986157e-148 < t Initial program 32.9
rmApplied *-un-lft-identity32.9
Applied times-frac30.3
Simplified30.3
rmApplied add-cube-cbrt30.3
Applied add-cube-cbrt30.3
Applied times-frac30.3
Applied unpow-prod-down30.3
Applied associate-*r*29.9
rmApplied sqrt-prod27.3
Final simplification30.2
herbie shell --seed 2020002 +o rules:numerics
(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*))))))