\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 -2.6514126838000239 \cdot 10^{-45}:\\
\;\;\;\;\sqrt{{\left(\left(\left(2 \cdot n\right) \cdot \left(t - \left(2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right) - \left(-\left(U - U*\right)\right) \cdot \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(2 \cdot \frac{2}{2}\right)}\right)\right)\right)\right) \cdot U\right)}^{1}}\\
\mathbf{elif}\;t \le 1.4327238710624412 \cdot 10^{138}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot \left(U \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\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)\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(\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)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r170431 = 2.0;
double r170432 = n;
double r170433 = r170431 * r170432;
double r170434 = U;
double r170435 = r170433 * r170434;
double r170436 = t;
double r170437 = l;
double r170438 = r170437 * r170437;
double r170439 = Om;
double r170440 = r170438 / r170439;
double r170441 = r170431 * r170440;
double r170442 = r170436 - r170441;
double r170443 = r170437 / r170439;
double r170444 = pow(r170443, r170431);
double r170445 = r170432 * r170444;
double r170446 = U_;
double r170447 = r170434 - r170446;
double r170448 = r170445 * r170447;
double r170449 = r170442 - r170448;
double r170450 = r170435 * r170449;
double r170451 = sqrt(r170450);
return r170451;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r170452 = t;
double r170453 = -2.651412683800024e-45;
bool r170454 = r170452 <= r170453;
double r170455 = 2.0;
double r170456 = n;
double r170457 = r170455 * r170456;
double r170458 = l;
double r170459 = Om;
double r170460 = r170458 / r170459;
double r170461 = r170458 * r170460;
double r170462 = r170455 * r170461;
double r170463 = U;
double r170464 = U_;
double r170465 = r170463 - r170464;
double r170466 = -r170465;
double r170467 = 2.0;
double r170468 = r170455 / r170467;
double r170469 = r170467 * r170468;
double r170470 = pow(r170460, r170469);
double r170471 = r170456 * r170470;
double r170472 = r170466 * r170471;
double r170473 = r170462 - r170472;
double r170474 = r170452 - r170473;
double r170475 = r170457 * r170474;
double r170476 = r170475 * r170463;
double r170477 = 1.0;
double r170478 = pow(r170476, r170477);
double r170479 = sqrt(r170478);
double r170480 = 1.4327238710624412e+138;
bool r170481 = r170452 <= r170480;
double r170482 = r170452 - r170462;
double r170483 = pow(r170460, r170468);
double r170484 = r170456 * r170483;
double r170485 = r170483 * r170465;
double r170486 = r170484 * r170485;
double r170487 = r170482 - r170486;
double r170488 = r170463 * r170487;
double r170489 = r170457 * r170488;
double r170490 = sqrt(r170489);
double r170491 = r170457 * r170463;
double r170492 = sqrt(r170491);
double r170493 = r170484 * r170483;
double r170494 = r170493 * r170465;
double r170495 = r170482 - r170494;
double r170496 = sqrt(r170495);
double r170497 = r170492 * r170496;
double r170498 = r170481 ? r170490 : r170497;
double r170499 = r170454 ? r170479 : r170498;
return r170499;
}



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 < -2.651412683800024e-45Initial program 34.3
rmApplied *-un-lft-identity34.3
Applied times-frac31.4
Simplified31.4
rmApplied sqr-pow31.4
Applied associate-*r*31.0
rmApplied pow131.0
Applied pow131.0
Applied pow131.0
Applied pow131.0
Applied pow-prod-down31.0
Applied pow-prod-down31.0
Applied pow-prod-down31.0
Simplified31.1
if -2.651412683800024e-45 < t < 1.4327238710624412e+138Initial program 34.2
rmApplied *-un-lft-identity34.2
Applied times-frac31.8
Simplified31.8
rmApplied sqr-pow31.8
Applied associate-*r*30.9
rmApplied associate-*l*30.5
rmApplied associate-*l*30.3
if 1.4327238710624412e+138 < t Initial program 38.7
rmApplied *-un-lft-identity38.7
Applied times-frac36.4
Simplified36.4
rmApplied sqr-pow36.4
Applied associate-*r*36.0
rmApplied sqrt-prod24.5
Final simplification29.7
herbie shell --seed 2020020 +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*))))))