\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 1.00301458462838517 \cdot 10^{-132}:\\
\;\;\;\;\sqrt{\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right)\right)\right)}} \cdot \sqrt{\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right)\right)\right)}}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right)\right)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r185415 = 2.0;
double r185416 = n;
double r185417 = r185415 * r185416;
double r185418 = U;
double r185419 = r185417 * r185418;
double r185420 = t;
double r185421 = l;
double r185422 = r185421 * r185421;
double r185423 = Om;
double r185424 = r185422 / r185423;
double r185425 = r185415 * r185424;
double r185426 = r185420 - r185425;
double r185427 = r185421 / r185423;
double r185428 = pow(r185427, r185415);
double r185429 = r185416 * r185428;
double r185430 = U_;
double r185431 = r185418 - r185430;
double r185432 = r185429 * r185431;
double r185433 = r185426 - r185432;
double r185434 = r185419 * r185433;
double r185435 = sqrt(r185434);
return r185435;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r185436 = t;
double r185437 = 1.0030145846283852e-132;
bool r185438 = r185436 <= r185437;
double r185439 = 2.0;
double r185440 = n;
double r185441 = r185439 * r185440;
double r185442 = U;
double r185443 = r185441 * r185442;
double r185444 = l;
double r185445 = Om;
double r185446 = r185445 / r185444;
double r185447 = r185444 / r185446;
double r185448 = r185439 * r185447;
double r185449 = r185436 - r185448;
double r185450 = r185444 / r185445;
double r185451 = 2.0;
double r185452 = r185439 / r185451;
double r185453 = pow(r185450, r185452);
double r185454 = r185440 * r185453;
double r185455 = U_;
double r185456 = r185442 - r185455;
double r185457 = r185453 * r185456;
double r185458 = r185454 * r185457;
double r185459 = r185449 - r185458;
double r185460 = r185443 * r185459;
double r185461 = sqrt(r185460);
double r185462 = sqrt(r185461);
double r185463 = r185462 * r185462;
double r185464 = sqrt(r185443);
double r185465 = sqrt(r185459);
double r185466 = r185464 * r185465;
double r185467 = r185438 ? r185463 : r185466;
return r185467;
}



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 < 1.0030145846283852e-132Initial program 34.8
rmApplied associate-/l*32.2
rmApplied sqr-pow32.2
Applied associate-*r*31.2
rmApplied associate-*l*31.2
rmApplied add-sqr-sqrt31.4
if 1.0030145846283852e-132 < t Initial program 34.3
rmApplied associate-/l*31.3
rmApplied sqr-pow31.3
Applied associate-*r*30.6
rmApplied associate-*l*30.7
rmApplied sqrt-prod27.6
Final simplification30.0
herbie shell --seed 2019195
(FPCore (n U t l Om U*)
:name "Toniolo and Linder, Equation (13)"
(sqrt (* (* (* 2.0 n) U) (- (- t (* 2.0 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2.0)) (- U U*))))))