\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 5.229466985459748179433505205842528722311 \cdot 10^{138}:\\
\;\;\;\;\sqrt{\left(U \cdot \left(\left(t - \left(\frac{\ell}{Om} \cdot \ell\right) \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(\left(U - U*\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right)\right)\right) \cdot \left(2 \cdot n\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(t - \left(\frac{\ell}{Om} \cdot \ell\right) \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(\left(U - U*\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\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 r2862493 = 2.0;
double r2862494 = n;
double r2862495 = r2862493 * r2862494;
double r2862496 = U;
double r2862497 = r2862495 * r2862496;
double r2862498 = t;
double r2862499 = l;
double r2862500 = r2862499 * r2862499;
double r2862501 = Om;
double r2862502 = r2862500 / r2862501;
double r2862503 = r2862493 * r2862502;
double r2862504 = r2862498 - r2862503;
double r2862505 = r2862499 / r2862501;
double r2862506 = pow(r2862505, r2862493);
double r2862507 = r2862494 * r2862506;
double r2862508 = U_;
double r2862509 = r2862496 - r2862508;
double r2862510 = r2862507 * r2862509;
double r2862511 = r2862504 - r2862510;
double r2862512 = r2862497 * r2862511;
double r2862513 = sqrt(r2862512);
return r2862513;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r2862514 = t;
double r2862515 = 5.229466985459748e+138;
bool r2862516 = r2862514 <= r2862515;
double r2862517 = U;
double r2862518 = l;
double r2862519 = Om;
double r2862520 = r2862518 / r2862519;
double r2862521 = r2862520 * r2862518;
double r2862522 = 2.0;
double r2862523 = r2862521 * r2862522;
double r2862524 = r2862514 - r2862523;
double r2862525 = n;
double r2862526 = 2.0;
double r2862527 = r2862522 / r2862526;
double r2862528 = pow(r2862520, r2862527);
double r2862529 = r2862525 * r2862528;
double r2862530 = U_;
double r2862531 = r2862517 - r2862530;
double r2862532 = r2862531 * r2862528;
double r2862533 = r2862529 * r2862532;
double r2862534 = r2862524 - r2862533;
double r2862535 = r2862517 * r2862534;
double r2862536 = r2862522 * r2862525;
double r2862537 = r2862535 * r2862536;
double r2862538 = sqrt(r2862537);
double r2862539 = sqrt(r2862534);
double r2862540 = r2862536 * r2862517;
double r2862541 = sqrt(r2862540);
double r2862542 = r2862539 * r2862541;
double r2862543 = r2862516 ? r2862538 : r2862542;
return r2862543;
}



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 < 5.229466985459748e+138Initial program 33.9
rmApplied *-un-lft-identity33.9
Applied times-frac30.8
Simplified30.8
rmApplied sqr-pow30.8
Applied associate-*r*30.1
rmApplied associate-*l*29.8
rmApplied associate-*l*30.1
if 5.229466985459748e+138 < t Initial program 36.5
rmApplied *-un-lft-identity36.5
Applied times-frac33.9
Simplified33.9
rmApplied sqr-pow33.9
Applied associate-*r*33.5
rmApplied associate-*l*33.9
rmApplied sqrt-prod24.5
Final simplification29.3
herbie shell --seed 2019171
(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*))))))