\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 4.212962541612979170205416594711283898702 \cdot 10^{117}:\\
\;\;\;\;\sqrt{\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(\sqrt[3]{\frac{\ell}{Om}} \cdot \sqrt[3]{\frac{\ell}{Om}}\right)}^{2}\right) \cdot {\left(\sqrt[3]{\frac{\ell}{Om}}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}} \cdot \sqrt{\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(\sqrt[3]{\frac{\ell}{Om}} \cdot \sqrt[3]{\frac{\ell}{Om}}\right)}^{2}\right) \cdot {\left(\sqrt[3]{\frac{\ell}{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(n \cdot {\left(\frac{\ell}{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 r223056 = 2.0;
double r223057 = n;
double r223058 = r223056 * r223057;
double r223059 = U;
double r223060 = r223058 * r223059;
double r223061 = t;
double r223062 = l;
double r223063 = r223062 * r223062;
double r223064 = Om;
double r223065 = r223063 / r223064;
double r223066 = r223056 * r223065;
double r223067 = r223061 - r223066;
double r223068 = r223062 / r223064;
double r223069 = pow(r223068, r223056);
double r223070 = r223057 * r223069;
double r223071 = U_;
double r223072 = r223059 - r223071;
double r223073 = r223070 * r223072;
double r223074 = r223067 - r223073;
double r223075 = r223060 * r223074;
double r223076 = sqrt(r223075);
return r223076;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r223077 = t;
double r223078 = 4.212962541612979e+117;
bool r223079 = r223077 <= r223078;
double r223080 = 2.0;
double r223081 = n;
double r223082 = r223080 * r223081;
double r223083 = U;
double r223084 = r223082 * r223083;
double r223085 = l;
double r223086 = Om;
double r223087 = r223085 / r223086;
double r223088 = r223085 * r223087;
double r223089 = r223080 * r223088;
double r223090 = r223077 - r223089;
double r223091 = cbrt(r223087);
double r223092 = r223091 * r223091;
double r223093 = pow(r223092, r223080);
double r223094 = r223081 * r223093;
double r223095 = pow(r223091, r223080);
double r223096 = r223094 * r223095;
double r223097 = U_;
double r223098 = r223083 - r223097;
double r223099 = r223096 * r223098;
double r223100 = r223090 - r223099;
double r223101 = r223084 * r223100;
double r223102 = sqrt(r223101);
double r223103 = sqrt(r223102);
double r223104 = r223103 * r223103;
double r223105 = sqrt(r223084);
double r223106 = pow(r223087, r223080);
double r223107 = r223081 * r223106;
double r223108 = r223107 * r223098;
double r223109 = r223090 - r223108;
double r223110 = sqrt(r223109);
double r223111 = r223105 * r223110;
double r223112 = r223079 ? r223104 : r223111;
return r223112;
}



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 < 4.212962541612979e+117Initial program 34.4
rmApplied *-un-lft-identity34.4
Applied times-frac31.7
Simplified31.7
rmApplied add-cube-cbrt31.8
Applied unpow-prod-down31.8
Applied associate-*r*31.0
rmApplied add-sqr-sqrt31.2
if 4.212962541612979e+117 < t Initial program 37.7
rmApplied *-un-lft-identity37.7
Applied times-frac35.3
Simplified35.3
rmApplied sqrt-prod25.4
Final simplification30.2
herbie shell --seed 2019347
(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*))))))