\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}\;\ell \le -6.903174177282536 \cdot 10^{+63}:\\
\;\;\;\;\left|\sqrt{2 \cdot \left(\left(-2 \cdot \ell - \frac{U - U*}{\frac{\frac{Om}{n}}{\ell}}\right) \cdot \frac{U}{\frac{Om}{n \cdot \ell}} + t \cdot \left(U \cdot n\right)\right)}\right|\\
\mathbf{elif}\;\ell \le -5.425968795100289 \cdot 10^{-221}:\\
\;\;\;\;\sqrt{\left(U \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(U - U*\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right)\right)\right) \cdot \left(2 \cdot n\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot t + \left(\left(U \cdot \left(\frac{\ell}{Om} \cdot n\right)\right) \cdot \left(-2 \cdot \ell - \left(U - U*\right) \cdot \left(\frac{\ell}{Om} \cdot n\right)\right)\right) \cdot 2}} \cdot \sqrt{\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot t + \left(\left(U \cdot \left(\frac{\ell}{Om} \cdot n\right)\right) \cdot \left(-2 \cdot \ell - \left(U - U*\right) \cdot \left(\frac{\ell}{Om} \cdot n\right)\right)\right) \cdot 2}}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r7185335 = 2.0;
double r7185336 = n;
double r7185337 = r7185335 * r7185336;
double r7185338 = U;
double r7185339 = r7185337 * r7185338;
double r7185340 = t;
double r7185341 = l;
double r7185342 = r7185341 * r7185341;
double r7185343 = Om;
double r7185344 = r7185342 / r7185343;
double r7185345 = r7185335 * r7185344;
double r7185346 = r7185340 - r7185345;
double r7185347 = r7185341 / r7185343;
double r7185348 = pow(r7185347, r7185335);
double r7185349 = r7185336 * r7185348;
double r7185350 = U_;
double r7185351 = r7185338 - r7185350;
double r7185352 = r7185349 * r7185351;
double r7185353 = r7185346 - r7185352;
double r7185354 = r7185339 * r7185353;
double r7185355 = sqrt(r7185354);
return r7185355;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r7185356 = l;
double r7185357 = -6.903174177282536e+63;
bool r7185358 = r7185356 <= r7185357;
double r7185359 = 2.0;
double r7185360 = -2.0;
double r7185361 = r7185360 * r7185356;
double r7185362 = U;
double r7185363 = U_;
double r7185364 = r7185362 - r7185363;
double r7185365 = Om;
double r7185366 = n;
double r7185367 = r7185365 / r7185366;
double r7185368 = r7185367 / r7185356;
double r7185369 = r7185364 / r7185368;
double r7185370 = r7185361 - r7185369;
double r7185371 = r7185366 * r7185356;
double r7185372 = r7185365 / r7185371;
double r7185373 = r7185362 / r7185372;
double r7185374 = r7185370 * r7185373;
double r7185375 = t;
double r7185376 = r7185362 * r7185366;
double r7185377 = r7185375 * r7185376;
double r7185378 = r7185374 + r7185377;
double r7185379 = r7185359 * r7185378;
double r7185380 = sqrt(r7185379);
double r7185381 = fabs(r7185380);
double r7185382 = -5.425968795100289e-221;
bool r7185383 = r7185356 <= r7185382;
double r7185384 = r7185356 * r7185356;
double r7185385 = r7185384 / r7185365;
double r7185386 = r7185385 * r7185359;
double r7185387 = r7185375 - r7185386;
double r7185388 = r7185356 / r7185365;
double r7185389 = pow(r7185388, r7185359);
double r7185390 = r7185389 * r7185366;
double r7185391 = r7185364 * r7185390;
double r7185392 = r7185387 - r7185391;
double r7185393 = r7185362 * r7185392;
double r7185394 = r7185359 * r7185366;
double r7185395 = r7185393 * r7185394;
double r7185396 = sqrt(r7185395);
double r7185397 = r7185394 * r7185362;
double r7185398 = r7185397 * r7185375;
double r7185399 = r7185388 * r7185366;
double r7185400 = r7185362 * r7185399;
double r7185401 = r7185364 * r7185399;
double r7185402 = r7185361 - r7185401;
double r7185403 = r7185400 * r7185402;
double r7185404 = r7185403 * r7185359;
double r7185405 = r7185398 + r7185404;
double r7185406 = sqrt(r7185405);
double r7185407 = sqrt(r7185406);
double r7185408 = r7185407 * r7185407;
double r7185409 = r7185383 ? r7185396 : r7185408;
double r7185410 = r7185358 ? r7185381 : r7185409;
return r7185410;
}



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 l < -6.903174177282536e+63Initial program 49.0
rmApplied *-un-lft-identity49.0
Applied associate-*r*49.0
Simplified39.5
rmApplied sub-neg39.5
Applied distribute-rgt-in39.5
Simplified31.2
rmApplied add-sqr-sqrt31.2
Applied rem-sqrt-square31.2
Simplified30.3
rmApplied associate-/r*30.3
if -6.903174177282536e+63 < l < -5.425968795100289e-221Initial program 27.0
rmApplied associate-*l*27.0
if -5.425968795100289e-221 < l Initial program 31.7
rmApplied *-un-lft-identity31.7
Applied associate-*r*31.7
Simplified28.2
rmApplied sub-neg28.2
Applied distribute-rgt-in28.2
Simplified24.9
rmApplied add-sqr-sqrt25.1
Final simplification26.4
herbie shell --seed 2019124
(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*))))))