\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 1.0522215767467281 \cdot 10^{-274}:\\
\;\;\;\;\sqrt{\left(2 \cdot U\right) \cdot \left(n \cdot \left(t - \left(\left(2 \cdot \frac{\ell}{Om}\right) \cdot \ell + \left(\frac{\ell}{Om} \cdot n\right) \cdot \left(\frac{\ell}{Om} \cdot \left(U - U*\right)\right)\right)\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(t - \left(\left(U - U*\right) \cdot \left(\frac{\ell}{Om} \cdot \left(\frac{\ell}{Om} \cdot n\right)\right) + \left(2 \cdot \frac{\ell}{Om}\right) \cdot \ell\right)\right) \cdot n} \cdot \sqrt{2 \cdot U}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r1312330 = 2.0;
double r1312331 = n;
double r1312332 = r1312330 * r1312331;
double r1312333 = U;
double r1312334 = r1312332 * r1312333;
double r1312335 = t;
double r1312336 = l;
double r1312337 = r1312336 * r1312336;
double r1312338 = Om;
double r1312339 = r1312337 / r1312338;
double r1312340 = r1312330 * r1312339;
double r1312341 = r1312335 - r1312340;
double r1312342 = r1312336 / r1312338;
double r1312343 = pow(r1312342, r1312330);
double r1312344 = r1312331 * r1312343;
double r1312345 = U_;
double r1312346 = r1312333 - r1312345;
double r1312347 = r1312344 * r1312346;
double r1312348 = r1312341 - r1312347;
double r1312349 = r1312334 * r1312348;
double r1312350 = sqrt(r1312349);
return r1312350;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r1312351 = U;
double r1312352 = 1.0522215767467281e-274;
bool r1312353 = r1312351 <= r1312352;
double r1312354 = 2.0;
double r1312355 = r1312354 * r1312351;
double r1312356 = n;
double r1312357 = t;
double r1312358 = l;
double r1312359 = Om;
double r1312360 = r1312358 / r1312359;
double r1312361 = r1312354 * r1312360;
double r1312362 = r1312361 * r1312358;
double r1312363 = r1312360 * r1312356;
double r1312364 = U_;
double r1312365 = r1312351 - r1312364;
double r1312366 = r1312360 * r1312365;
double r1312367 = r1312363 * r1312366;
double r1312368 = r1312362 + r1312367;
double r1312369 = r1312357 - r1312368;
double r1312370 = r1312356 * r1312369;
double r1312371 = r1312355 * r1312370;
double r1312372 = sqrt(r1312371);
double r1312373 = r1312360 * r1312363;
double r1312374 = r1312365 * r1312373;
double r1312375 = r1312374 + r1312362;
double r1312376 = r1312357 - r1312375;
double r1312377 = r1312376 * r1312356;
double r1312378 = sqrt(r1312377);
double r1312379 = sqrt(r1312355);
double r1312380 = r1312378 * r1312379;
double r1312381 = r1312353 ? r1312372 : r1312380;
return r1312381;
}



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 < 1.0522215767467281e-274Initial program 34.0
Simplified30.5
rmApplied associate-*l*30.6
if 1.0522215767467281e-274 < U Initial program 31.6
Simplified28.6
rmApplied sqrt-prod22.3
Final simplification26.8
herbie shell --seed 2019155
(FPCore (n U t l Om U*)
:name "Toniolo and Linder, Equation (13)"
(sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))))