\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 -6.21551044263864697 \cdot 10^{-75} \lor \neg \left(U \le 7.2198317465463825 \cdot 10^{45}\right):\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \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)}\\
\mathbf{else}:\\
\;\;\;\;\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)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r212297 = 2.0;
double r212298 = n;
double r212299 = r212297 * r212298;
double r212300 = U;
double r212301 = r212299 * r212300;
double r212302 = t;
double r212303 = l;
double r212304 = r212303 * r212303;
double r212305 = Om;
double r212306 = r212304 / r212305;
double r212307 = r212297 * r212306;
double r212308 = r212302 - r212307;
double r212309 = r212303 / r212305;
double r212310 = pow(r212309, r212297);
double r212311 = r212298 * r212310;
double r212312 = U_;
double r212313 = r212300 - r212312;
double r212314 = r212311 * r212313;
double r212315 = r212308 - r212314;
double r212316 = r212301 * r212315;
double r212317 = sqrt(r212316);
return r212317;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r212318 = U;
double r212319 = -6.215510442638647e-75;
bool r212320 = r212318 <= r212319;
double r212321 = 7.219831746546383e+45;
bool r212322 = r212318 <= r212321;
double r212323 = !r212322;
bool r212324 = r212320 || r212323;
double r212325 = 2.0;
double r212326 = n;
double r212327 = r212325 * r212326;
double r212328 = r212327 * r212318;
double r212329 = t;
double r212330 = l;
double r212331 = Om;
double r212332 = r212330 / r212331;
double r212333 = r212330 * r212332;
double r212334 = r212325 * r212333;
double r212335 = r212329 - r212334;
double r212336 = 2.0;
double r212337 = r212325 / r212336;
double r212338 = pow(r212332, r212337);
double r212339 = r212326 * r212338;
double r212340 = U_;
double r212341 = r212318 - r212340;
double r212342 = r212338 * r212341;
double r212343 = r212339 * r212342;
double r212344 = r212335 - r212343;
double r212345 = r212328 * r212344;
double r212346 = sqrt(r212345);
double r212347 = r212318 * r212344;
double r212348 = r212327 * r212347;
double r212349 = sqrt(r212348);
double r212350 = r212324 ? r212346 : r212349;
return r212350;
}



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 < -6.215510442638647e-75 or 7.219831746546383e+45 < U Initial program 30.5
rmApplied *-un-lft-identity30.5
Applied times-frac28.0
Simplified28.0
rmApplied sqr-pow28.0
Applied associate-*r*27.2
rmApplied associate-*l*27.4
if -6.215510442638647e-75 < U < 7.219831746546383e+45Initial program 37.8
rmApplied *-un-lft-identity37.8
Applied times-frac35.3
Simplified35.3
rmApplied sqr-pow35.3
Applied associate-*r*34.4
rmApplied associate-*l*33.9
rmApplied associate-*l*30.4
Final simplification29.2
herbie shell --seed 2020021 +o rules:numerics
(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*))))))