\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 -4.44068621170469637 \cdot 10^{100}:\\
\;\;\;\;\sqrt{{\left(\left(\left(2 \cdot n\right) \cdot \left(t - \left(2 \cdot \frac{\ell}{\frac{Om}{\ell}} - \left(-n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(2 \cdot \frac{2}{2}\right)}\right) \cdot \left(U - U*\right)\right)\right)\right) \cdot U\right)}^{1}}\\
\mathbf{elif}\;U \le 2.37394053447986514 \cdot 10^{-64}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot \left(U \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)\right)}\\
\mathbf{else}:\\
\;\;\;\;\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({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(\sqrt[3]{U - U*} \cdot \sqrt[3]{U - U*}\right)\right) \cdot \sqrt[3]{U - U*}\right)\right)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r169527 = 2.0;
double r169528 = n;
double r169529 = r169527 * r169528;
double r169530 = U;
double r169531 = r169529 * r169530;
double r169532 = t;
double r169533 = l;
double r169534 = r169533 * r169533;
double r169535 = Om;
double r169536 = r169534 / r169535;
double r169537 = r169527 * r169536;
double r169538 = r169532 - r169537;
double r169539 = r169533 / r169535;
double r169540 = pow(r169539, r169527);
double r169541 = r169528 * r169540;
double r169542 = U_;
double r169543 = r169530 - r169542;
double r169544 = r169541 * r169543;
double r169545 = r169538 - r169544;
double r169546 = r169531 * r169545;
double r169547 = sqrt(r169546);
return r169547;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r169548 = U;
double r169549 = -4.440686211704696e+100;
bool r169550 = r169548 <= r169549;
double r169551 = 2.0;
double r169552 = n;
double r169553 = r169551 * r169552;
double r169554 = t;
double r169555 = l;
double r169556 = Om;
double r169557 = r169556 / r169555;
double r169558 = r169555 / r169557;
double r169559 = r169551 * r169558;
double r169560 = r169555 / r169556;
double r169561 = 2.0;
double r169562 = r169551 / r169561;
double r169563 = r169561 * r169562;
double r169564 = pow(r169560, r169563);
double r169565 = r169552 * r169564;
double r169566 = -r169565;
double r169567 = U_;
double r169568 = r169548 - r169567;
double r169569 = r169566 * r169568;
double r169570 = r169559 - r169569;
double r169571 = r169554 - r169570;
double r169572 = r169553 * r169571;
double r169573 = r169572 * r169548;
double r169574 = 1.0;
double r169575 = pow(r169573, r169574);
double r169576 = sqrt(r169575);
double r169577 = 2.373940534479865e-64;
bool r169578 = r169548 <= r169577;
double r169579 = r169554 - r169559;
double r169580 = pow(r169560, r169562);
double r169581 = r169552 * r169580;
double r169582 = r169580 * r169568;
double r169583 = r169581 * r169582;
double r169584 = r169579 - r169583;
double r169585 = r169548 * r169584;
double r169586 = r169553 * r169585;
double r169587 = sqrt(r169586);
double r169588 = r169553 * r169548;
double r169589 = cbrt(r169568);
double r169590 = r169589 * r169589;
double r169591 = r169580 * r169590;
double r169592 = r169591 * r169589;
double r169593 = r169581 * r169592;
double r169594 = r169579 - r169593;
double r169595 = r169588 * r169594;
double r169596 = sqrt(r169595);
double r169597 = r169578 ? r169587 : r169596;
double r169598 = r169550 ? r169576 : r169597;
return r169598;
}



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 U < -4.440686211704696e+100Initial program 31.0
rmApplied associate-/l*28.5
rmApplied sqr-pow28.5
Applied associate-*r*28.4
rmApplied pow128.4
Applied pow128.4
Applied pow128.4
Applied pow128.4
Applied pow-prod-down28.4
Applied pow-prod-down28.4
Applied pow-prod-down28.4
Simplified29.3
if -4.440686211704696e+100 < U < 2.373940534479865e-64Initial program 37.4
rmApplied associate-/l*34.8
rmApplied sqr-pow34.8
Applied associate-*r*33.8
rmApplied associate-*l*33.3
rmApplied associate-*l*30.0
if 2.373940534479865e-64 < U Initial program 29.7
rmApplied associate-/l*26.8
rmApplied sqr-pow26.8
Applied associate-*r*26.0
rmApplied associate-*l*26.2
rmApplied add-cube-cbrt26.3
Applied associate-*r*26.3
Final simplification29.0
herbie shell --seed 2020003
(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*))))))