\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 -9.379719815826530589603530820932364731187 \cdot 10^{241}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(t - \frac{\ell}{Om} \cdot \left(\ell \cdot 2\right)\right)}\\
\mathbf{elif}\;t \le -3.772245666195913577646904748734404208118 \cdot 10^{-180}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot \left(U \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right)\right)\right)\right)}\\
\mathbf{elif}\;t \le 1.39311700673337772156748504137624422583 \cdot 10^{-4}:\\
\;\;\;\;\sqrt{\left(\left(-\ell \cdot \frac{\ell}{Om}\right) \cdot 2 - \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right)\right)\right) \cdot \left(\left(2 \cdot n\right) \cdot U\right) + \left(\left(2 \cdot n\right) \cdot U\right) \cdot t}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right)\right)} \cdot \sqrt{\left(2 \cdot n\right) \cdot U}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r3679528 = 2.0;
double r3679529 = n;
double r3679530 = r3679528 * r3679529;
double r3679531 = U;
double r3679532 = r3679530 * r3679531;
double r3679533 = t;
double r3679534 = l;
double r3679535 = r3679534 * r3679534;
double r3679536 = Om;
double r3679537 = r3679535 / r3679536;
double r3679538 = r3679528 * r3679537;
double r3679539 = r3679533 - r3679538;
double r3679540 = r3679534 / r3679536;
double r3679541 = pow(r3679540, r3679528);
double r3679542 = r3679529 * r3679541;
double r3679543 = U_;
double r3679544 = r3679531 - r3679543;
double r3679545 = r3679542 * r3679544;
double r3679546 = r3679539 - r3679545;
double r3679547 = r3679532 * r3679546;
double r3679548 = sqrt(r3679547);
return r3679548;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r3679549 = t;
double r3679550 = -9.37971981582653e+241;
bool r3679551 = r3679549 <= r3679550;
double r3679552 = 2.0;
double r3679553 = n;
double r3679554 = r3679552 * r3679553;
double r3679555 = U;
double r3679556 = r3679554 * r3679555;
double r3679557 = l;
double r3679558 = Om;
double r3679559 = r3679557 / r3679558;
double r3679560 = r3679557 * r3679552;
double r3679561 = r3679559 * r3679560;
double r3679562 = r3679549 - r3679561;
double r3679563 = r3679556 * r3679562;
double r3679564 = sqrt(r3679563);
double r3679565 = -3.7722456661959136e-180;
bool r3679566 = r3679549 <= r3679565;
double r3679567 = r3679557 * r3679559;
double r3679568 = r3679552 * r3679567;
double r3679569 = r3679549 - r3679568;
double r3679570 = 2.0;
double r3679571 = r3679552 / r3679570;
double r3679572 = pow(r3679559, r3679571);
double r3679573 = r3679572 * r3679553;
double r3679574 = U_;
double r3679575 = r3679555 - r3679574;
double r3679576 = r3679572 * r3679575;
double r3679577 = r3679573 * r3679576;
double r3679578 = r3679569 - r3679577;
double r3679579 = r3679555 * r3679578;
double r3679580 = r3679554 * r3679579;
double r3679581 = sqrt(r3679580);
double r3679582 = 0.00013931170067333777;
bool r3679583 = r3679549 <= r3679582;
double r3679584 = -r3679567;
double r3679585 = r3679584 * r3679552;
double r3679586 = r3679585 - r3679577;
double r3679587 = r3679586 * r3679556;
double r3679588 = r3679556 * r3679549;
double r3679589 = r3679587 + r3679588;
double r3679590 = sqrt(r3679589);
double r3679591 = sqrt(r3679578);
double r3679592 = sqrt(r3679556);
double r3679593 = r3679591 * r3679592;
double r3679594 = r3679583 ? r3679590 : r3679593;
double r3679595 = r3679566 ? r3679581 : r3679594;
double r3679596 = r3679551 ? r3679564 : r3679595;
return r3679596;
}



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 < -9.37971981582653e+241Initial program 41.0
rmApplied sqr-pow41.0
Applied associate-*r*40.8
rmApplied *-un-lft-identity40.8
Applied times-frac38.5
Simplified38.5
Taylor expanded around 0 40.3
Simplified37.9
if -9.37971981582653e+241 < t < -3.7722456661959136e-180Initial program 32.6
rmApplied sqr-pow32.6
Applied associate-*r*31.8
rmApplied *-un-lft-identity31.8
Applied times-frac29.0
Simplified29.0
rmApplied associate-*l*29.1
rmApplied associate-*l*28.8
if -3.7722456661959136e-180 < t < 0.00013931170067333777Initial program 35.0
rmApplied sqr-pow35.0
Applied associate-*r*33.9
rmApplied *-un-lft-identity33.9
Applied times-frac30.6
Simplified30.6
rmApplied associate-*l*29.8
rmApplied sub-neg29.8
Applied associate--l+29.8
Applied distribute-lft-in29.8
if 0.00013931170067333777 < t Initial program 34.4
rmApplied sqr-pow34.4
Applied associate-*r*34.0
rmApplied *-un-lft-identity34.0
Applied times-frac31.7
Simplified31.7
rmApplied associate-*l*32.0
rmApplied sqrt-prod27.2
Final simplification29.2
herbie shell --seed 2019172
(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*))))))