\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 3.366362909823730272757434845121918146511 \cdot 10^{85}:\\
\;\;\;\;\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{\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)\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{t - \mathsf{fma}\left(\ell \cdot \frac{\ell}{Om}, 2, \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)\right)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r207496 = 2.0;
double r207497 = n;
double r207498 = r207496 * r207497;
double r207499 = U;
double r207500 = r207498 * r207499;
double r207501 = t;
double r207502 = l;
double r207503 = r207502 * r207502;
double r207504 = Om;
double r207505 = r207503 / r207504;
double r207506 = r207496 * r207505;
double r207507 = r207501 - r207506;
double r207508 = r207502 / r207504;
double r207509 = pow(r207508, r207496);
double r207510 = r207497 * r207509;
double r207511 = U_;
double r207512 = r207499 - r207511;
double r207513 = r207510 * r207512;
double r207514 = r207507 - r207513;
double r207515 = r207500 * r207514;
double r207516 = sqrt(r207515);
return r207516;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r207517 = t;
double r207518 = 3.36636290982373e+85;
bool r207519 = r207517 <= r207518;
double r207520 = 2.0;
double r207521 = n;
double r207522 = r207520 * r207521;
double r207523 = U;
double r207524 = r207522 * r207523;
double r207525 = l;
double r207526 = Om;
double r207527 = r207525 / r207526;
double r207528 = r207525 * r207527;
double r207529 = r207520 * r207528;
double r207530 = r207517 - r207529;
double r207531 = 2.0;
double r207532 = r207520 / r207531;
double r207533 = pow(r207527, r207532);
double r207534 = r207521 * r207533;
double r207535 = r207534 * r207533;
double r207536 = U_;
double r207537 = r207523 - r207536;
double r207538 = r207535 * r207537;
double r207539 = r207530 - r207538;
double r207540 = r207524 * r207539;
double r207541 = sqrt(r207540);
double r207542 = sqrt(r207524);
double r207543 = fma(r207528, r207520, r207538);
double r207544 = r207517 - r207543;
double r207545 = sqrt(r207544);
double r207546 = r207542 * r207545;
double r207547 = r207519 ? r207541 : r207546;
return r207547;
}



Bits error versus n



Bits error versus U



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus U*
if t < 3.36636290982373e+85Initial program 34.4
rmApplied *-un-lft-identity34.4
Applied times-frac31.5
Simplified31.5
rmApplied sqr-pow31.5
Applied associate-*r*30.6
if 3.36636290982373e+85 < t Initial program 36.7
rmApplied *-un-lft-identity36.7
Applied times-frac34.3
Simplified34.3
rmApplied sqr-pow34.3
Applied associate-*r*33.8
rmApplied add-cube-cbrt33.8
rmApplied sqrt-prod25.2
Simplified25.2
Final simplification29.6
herbie shell --seed 2019323 +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*))))))