\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 -8.0110620477323 \cdot 10^{-311}:\\
\;\;\;\;\sqrt{\left(n \cdot \mathsf{fma}\left(-2, \frac{\ell}{\frac{Om}{\ell}}, t\right)\right) \cdot \left(2 \cdot U\right) + \left(\left(U* - U\right) \cdot \frac{\ell \cdot n}{Om}\right) \cdot \left(\left(2 \cdot U\right) \cdot \frac{\ell \cdot n}{Om}\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\mathsf{fma}\left(U* - U, \frac{\frac{n}{\frac{Om}{\ell}}}{\frac{Om}{\ell}}, \mathsf{fma}\left(-2, \frac{\ell}{\frac{Om}{\ell}}, t\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 r2343357 = 2.0;
double r2343358 = n;
double r2343359 = r2343357 * r2343358;
double r2343360 = U;
double r2343361 = r2343359 * r2343360;
double r2343362 = t;
double r2343363 = l;
double r2343364 = r2343363 * r2343363;
double r2343365 = Om;
double r2343366 = r2343364 / r2343365;
double r2343367 = r2343357 * r2343366;
double r2343368 = r2343362 - r2343367;
double r2343369 = r2343363 / r2343365;
double r2343370 = pow(r2343369, r2343357);
double r2343371 = r2343358 * r2343370;
double r2343372 = U_;
double r2343373 = r2343360 - r2343372;
double r2343374 = r2343371 * r2343373;
double r2343375 = r2343368 - r2343374;
double r2343376 = r2343361 * r2343375;
double r2343377 = sqrt(r2343376);
return r2343377;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r2343378 = U;
double r2343379 = -8.0110620477323e-311;
bool r2343380 = r2343378 <= r2343379;
double r2343381 = n;
double r2343382 = -2.0;
double r2343383 = l;
double r2343384 = Om;
double r2343385 = r2343384 / r2343383;
double r2343386 = r2343383 / r2343385;
double r2343387 = t;
double r2343388 = fma(r2343382, r2343386, r2343387);
double r2343389 = r2343381 * r2343388;
double r2343390 = 2.0;
double r2343391 = r2343390 * r2343378;
double r2343392 = r2343389 * r2343391;
double r2343393 = U_;
double r2343394 = r2343393 - r2343378;
double r2343395 = r2343383 * r2343381;
double r2343396 = r2343395 / r2343384;
double r2343397 = r2343394 * r2343396;
double r2343398 = r2343391 * r2343396;
double r2343399 = r2343397 * r2343398;
double r2343400 = r2343392 + r2343399;
double r2343401 = sqrt(r2343400);
double r2343402 = r2343381 / r2343385;
double r2343403 = r2343402 / r2343385;
double r2343404 = fma(r2343394, r2343403, r2343388);
double r2343405 = r2343404 * r2343381;
double r2343406 = sqrt(r2343405);
double r2343407 = sqrt(r2343391);
double r2343408 = r2343406 * r2343407;
double r2343409 = r2343380 ? r2343401 : r2343408;
return r2343409;
}



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 < -8.0110620477323e-311Initial program 32.9
Simplified28.7
rmApplied fma-udef28.7
Applied distribute-rgt-in28.7
Simplified28.5
rmApplied associate-*r*27.6
rmApplied associate-/r/28.0
rmApplied distribute-lft-in28.0
Simplified27.5
if -8.0110620477323e-311 < U Initial program 32.6
Simplified28.7
rmApplied sqrt-prod22.3
Final simplification24.9
herbie shell --seed 2019141 +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*))))))