\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}\;n \le 1.980056013607703 \cdot 10^{-310}:\\
\;\;\;\;\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{2 \cdot n} \cdot \sqrt{U \cdot \left(\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)\right)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r173523 = 2.0;
double r173524 = n;
double r173525 = r173523 * r173524;
double r173526 = U;
double r173527 = r173525 * r173526;
double r173528 = t;
double r173529 = l;
double r173530 = r173529 * r173529;
double r173531 = Om;
double r173532 = r173530 / r173531;
double r173533 = r173523 * r173532;
double r173534 = r173528 - r173533;
double r173535 = r173529 / r173531;
double r173536 = pow(r173535, r173523);
double r173537 = r173524 * r173536;
double r173538 = U_;
double r173539 = r173526 - r173538;
double r173540 = r173537 * r173539;
double r173541 = r173534 - r173540;
double r173542 = r173527 * r173541;
double r173543 = sqrt(r173542);
return r173543;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r173544 = n;
double r173545 = 1.9800560136077e-310;
bool r173546 = r173544 <= r173545;
double r173547 = 2.0;
double r173548 = r173547 * r173544;
double r173549 = U;
double r173550 = t;
double r173551 = l;
double r173552 = Om;
double r173553 = r173551 / r173552;
double r173554 = r173551 * r173553;
double r173555 = r173547 * r173554;
double r173556 = r173550 - r173555;
double r173557 = 2.0;
double r173558 = r173547 / r173557;
double r173559 = pow(r173553, r173558);
double r173560 = r173544 * r173559;
double r173561 = U_;
double r173562 = r173549 - r173561;
double r173563 = r173559 * r173562;
double r173564 = r173560 * r173563;
double r173565 = r173556 - r173564;
double r173566 = r173549 * r173565;
double r173567 = r173548 * r173566;
double r173568 = sqrt(r173567);
double r173569 = sqrt(r173548);
double r173570 = r173560 * r173559;
double r173571 = r173570 * r173562;
double r173572 = r173556 - r173571;
double r173573 = r173549 * r173572;
double r173574 = sqrt(r173573);
double r173575 = r173569 * r173574;
double r173576 = r173546 ? r173568 : r173575;
return r173576;
}



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 n < 1.9800560136077e-310Initial program 34.6
rmApplied *-un-lft-identity34.6
Applied times-frac31.6
Simplified31.6
rmApplied associate-*l*31.6
rmApplied sqr-pow31.6
Applied associate-*r*30.6
rmApplied associate-*l*30.3
if 1.9800560136077e-310 < n Initial program 34.5
rmApplied *-un-lft-identity34.5
Applied times-frac31.6
Simplified31.6
rmApplied associate-*l*32.0
rmApplied sqr-pow32.0
Applied associate-*r*31.1
rmApplied sqrt-prod23.5
Final simplification26.9
herbie shell --seed 2020046
(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*))))))