\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{\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 r177156 = 2.0;
double r177157 = n;
double r177158 = r177156 * r177157;
double r177159 = U;
double r177160 = r177158 * r177159;
double r177161 = t;
double r177162 = l;
double r177163 = r177162 * r177162;
double r177164 = Om;
double r177165 = r177163 / r177164;
double r177166 = r177156 * r177165;
double r177167 = r177161 - r177166;
double r177168 = r177162 / r177164;
double r177169 = pow(r177168, r177156);
double r177170 = r177157 * r177169;
double r177171 = U_;
double r177172 = r177159 - r177171;
double r177173 = r177170 * r177172;
double r177174 = r177167 - r177173;
double r177175 = r177160 * r177174;
double r177176 = sqrt(r177175);
return r177176;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r177177 = t;
double r177178 = 4.212962541612979e+117;
bool r177179 = r177177 <= r177178;
double r177180 = 2.0;
double r177181 = n;
double r177182 = r177180 * r177181;
double r177183 = U;
double r177184 = r177182 * r177183;
double r177185 = l;
double r177186 = Om;
double r177187 = r177185 / r177186;
double r177188 = r177185 * r177187;
double r177189 = r177180 * r177188;
double r177190 = r177177 - r177189;
double r177191 = cbrt(r177187);
double r177192 = r177191 * r177191;
double r177193 = pow(r177192, r177180);
double r177194 = r177181 * r177193;
double r177195 = pow(r177191, r177180);
double r177196 = r177194 * r177195;
double r177197 = U_;
double r177198 = r177183 - r177197;
double r177199 = r177196 * r177198;
double r177200 = r177190 - r177199;
double r177201 = r177184 * r177200;
double r177202 = sqrt(r177201);
double r177203 = sqrt(r177184);
double r177204 = pow(r177187, r177180);
double r177205 = r177181 * r177204;
double r177206 = r177205 * r177198;
double r177207 = r177190 - r177206;
double r177208 = sqrt(r177207);
double r177209 = r177203 * r177208;
double r177210 = r177179 ? r177202 : r177209;
return r177210;
}



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
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.1
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*))))))