\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}\;U \le -2.7050839287957 \cdot 10^{-310}:\\
\;\;\;\;\sqrt{\sqrt{\left(2 \cdot U\right) \cdot \left(n \cdot \left(t - \mathsf{fma}\left(\left(\frac{\ell}{Om}\right), \left(2 \cdot \ell\right), \left(\left(\left(\frac{\ell}{Om} \cdot n\right) \cdot \frac{\ell}{Om}\right) \cdot \left(U - U*\right)\right)\right)\right)\right)}} \cdot \sqrt{\sqrt{\left(2 \cdot U\right) \cdot \left(n \cdot \left(t - \mathsf{fma}\left(\left(\frac{\ell}{Om}\right), \left(2 \cdot \ell\right), \left(\left(\left(\frac{\ell}{Om} \cdot n\right) \cdot \frac{\ell}{Om}\right) \cdot \left(U - U*\right)\right)\right)\right)\right)}}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(t - \mathsf{fma}\left(\left(\frac{\ell}{Om}\right), \left(2 \cdot \ell\right), \left(\left(\frac{\ell}{Om} \cdot n\right) \cdot \left(\left(U - U*\right) \cdot \frac{\ell}{Om}\right)\right)\right)\right) \cdot n} \cdot \sqrt{2 \cdot U}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r1638382 = 2.0;
double r1638383 = n;
double r1638384 = r1638382 * r1638383;
double r1638385 = U;
double r1638386 = r1638384 * r1638385;
double r1638387 = t;
double r1638388 = l;
double r1638389 = r1638388 * r1638388;
double r1638390 = Om;
double r1638391 = r1638389 / r1638390;
double r1638392 = r1638382 * r1638391;
double r1638393 = r1638387 - r1638392;
double r1638394 = r1638388 / r1638390;
double r1638395 = pow(r1638394, r1638382);
double r1638396 = r1638383 * r1638395;
double r1638397 = U_;
double r1638398 = r1638385 - r1638397;
double r1638399 = r1638396 * r1638398;
double r1638400 = r1638393 - r1638399;
double r1638401 = r1638386 * r1638400;
double r1638402 = sqrt(r1638401);
return r1638402;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r1638403 = U;
double r1638404 = -2.7050839287957e-310;
bool r1638405 = r1638403 <= r1638404;
double r1638406 = 2.0;
double r1638407 = r1638406 * r1638403;
double r1638408 = n;
double r1638409 = t;
double r1638410 = l;
double r1638411 = Om;
double r1638412 = r1638410 / r1638411;
double r1638413 = r1638406 * r1638410;
double r1638414 = r1638412 * r1638408;
double r1638415 = r1638414 * r1638412;
double r1638416 = U_;
double r1638417 = r1638403 - r1638416;
double r1638418 = r1638415 * r1638417;
double r1638419 = fma(r1638412, r1638413, r1638418);
double r1638420 = r1638409 - r1638419;
double r1638421 = r1638408 * r1638420;
double r1638422 = r1638407 * r1638421;
double r1638423 = sqrt(r1638422);
double r1638424 = sqrt(r1638423);
double r1638425 = r1638424 * r1638424;
double r1638426 = r1638417 * r1638412;
double r1638427 = r1638414 * r1638426;
double r1638428 = fma(r1638412, r1638413, r1638427);
double r1638429 = r1638409 - r1638428;
double r1638430 = r1638429 * r1638408;
double r1638431 = sqrt(r1638430);
double r1638432 = sqrt(r1638407);
double r1638433 = r1638431 * r1638432;
double r1638434 = r1638405 ? r1638425 : r1638433;
return r1638434;
}



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 U < -2.7050839287957e-310Initial program 33.7
Simplified31.2
rmApplied associate-*r*30.0
rmApplied add-sqr-sqrt30.1
if -2.7050839287957e-310 < U Initial program 33.6
Simplified30.6
rmApplied associate-*r*29.4
rmApplied associate-*l*29.7
rmApplied sqrt-prod23.1
Final simplification26.6
herbie shell --seed 2019132 +o rules:numerics
(FPCore (n U t l Om U*)
:name "Toniolo and Linder, Equation (13)"
(sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))))