\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}\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)} \le 0.0:\\
\;\;\;\;\sqrt{\left(2 \cdot \left(n \cdot \left(\frac{-2}{\frac{Om}{\ell \cdot \ell}} + \left(t - \frac{\ell \cdot \frac{n}{Om}}{\frac{Om}{\ell}} \cdot \left(U - U*\right)\right)\right)\right)\right) \cdot U}\\
\mathbf{elif}\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)} \le 5.7155522405275665 \cdot 10^{+152}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(n \cdot \left(\left(t + \frac{-2}{\frac{Om}{\ell} \cdot \frac{1}{\ell}}\right) - \left(\frac{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}{Om} \cdot \frac{\sqrt[3]{n} \cdot \sqrt[3]{n}}{\frac{1}{\sqrt[3]{\sqrt[3]{\ell}} \cdot \sqrt[3]{\sqrt[3]{\ell}}}}\right) \cdot \frac{\frac{\sqrt[3]{n}}{\frac{Om}{\sqrt[3]{\sqrt[3]{\ell}}}} \cdot \left(U - U*\right)}{\frac{1}{\ell}}\right)\right) \cdot 2} \cdot \sqrt{U}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r4837278 = 2.0;
double r4837279 = n;
double r4837280 = r4837278 * r4837279;
double r4837281 = U;
double r4837282 = r4837280 * r4837281;
double r4837283 = t;
double r4837284 = l;
double r4837285 = r4837284 * r4837284;
double r4837286 = Om;
double r4837287 = r4837285 / r4837286;
double r4837288 = r4837278 * r4837287;
double r4837289 = r4837283 - r4837288;
double r4837290 = r4837284 / r4837286;
double r4837291 = pow(r4837290, r4837278);
double r4837292 = r4837279 * r4837291;
double r4837293 = U_;
double r4837294 = r4837281 - r4837293;
double r4837295 = r4837292 * r4837294;
double r4837296 = r4837289 - r4837295;
double r4837297 = r4837282 * r4837296;
double r4837298 = sqrt(r4837297);
return r4837298;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r4837299 = 2.0;
double r4837300 = n;
double r4837301 = r4837299 * r4837300;
double r4837302 = U;
double r4837303 = r4837301 * r4837302;
double r4837304 = t;
double r4837305 = l;
double r4837306 = r4837305 * r4837305;
double r4837307 = Om;
double r4837308 = r4837306 / r4837307;
double r4837309 = r4837308 * r4837299;
double r4837310 = r4837304 - r4837309;
double r4837311 = r4837305 / r4837307;
double r4837312 = pow(r4837311, r4837299);
double r4837313 = r4837300 * r4837312;
double r4837314 = U_;
double r4837315 = r4837302 - r4837314;
double r4837316 = r4837313 * r4837315;
double r4837317 = r4837310 - r4837316;
double r4837318 = r4837303 * r4837317;
double r4837319 = sqrt(r4837318);
double r4837320 = 0.0;
bool r4837321 = r4837319 <= r4837320;
double r4837322 = -2.0;
double r4837323 = r4837307 / r4837306;
double r4837324 = r4837322 / r4837323;
double r4837325 = r4837300 / r4837307;
double r4837326 = r4837305 * r4837325;
double r4837327 = r4837307 / r4837305;
double r4837328 = r4837326 / r4837327;
double r4837329 = r4837328 * r4837315;
double r4837330 = r4837304 - r4837329;
double r4837331 = r4837324 + r4837330;
double r4837332 = r4837300 * r4837331;
double r4837333 = r4837299 * r4837332;
double r4837334 = r4837333 * r4837302;
double r4837335 = sqrt(r4837334);
double r4837336 = 5.7155522405275665e+152;
bool r4837337 = r4837319 <= r4837336;
double r4837338 = 1.0;
double r4837339 = r4837338 / r4837305;
double r4837340 = r4837327 * r4837339;
double r4837341 = r4837322 / r4837340;
double r4837342 = r4837304 + r4837341;
double r4837343 = cbrt(r4837305);
double r4837344 = r4837343 * r4837343;
double r4837345 = r4837344 / r4837307;
double r4837346 = cbrt(r4837300);
double r4837347 = r4837346 * r4837346;
double r4837348 = cbrt(r4837343);
double r4837349 = r4837348 * r4837348;
double r4837350 = r4837338 / r4837349;
double r4837351 = r4837347 / r4837350;
double r4837352 = r4837345 * r4837351;
double r4837353 = r4837307 / r4837348;
double r4837354 = r4837346 / r4837353;
double r4837355 = r4837354 * r4837315;
double r4837356 = r4837355 / r4837339;
double r4837357 = r4837352 * r4837356;
double r4837358 = r4837342 - r4837357;
double r4837359 = r4837300 * r4837358;
double r4837360 = r4837359 * r4837299;
double r4837361 = sqrt(r4837360);
double r4837362 = sqrt(r4837302);
double r4837363 = r4837361 * r4837362;
double r4837364 = r4837337 ? r4837319 : r4837363;
double r4837365 = r4837321 ? r4837335 : r4837364;
return r4837365;
}



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 (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))) < 0.0Initial program 57.1
Simplified39.4
rmApplied associate-/r/39.4
if 0.0 < (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))) < 5.7155522405275665e+152Initial program 1.7
if 5.7155522405275665e+152 < (sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))) Initial program 60.5
Simplified56.7
rmApplied div-inv56.7
Applied add-cube-cbrt56.7
Applied *-un-lft-identity56.7
Applied times-frac56.7
Applied *-un-lft-identity56.7
Applied times-frac56.7
Applied times-frac56.7
Applied associate-*l*56.0
rmApplied *-un-lft-identity56.0
Applied times-frac48.9
rmApplied *-un-lft-identity48.9
Applied add-cube-cbrt48.9
Applied *-un-lft-identity48.9
Applied times-frac48.9
Applied add-cube-cbrt48.9
Applied times-frac48.9
Applied times-frac48.9
Applied associate-*l*49.0
rmApplied sqrt-prod50.9
Simplified51.2
Final simplification26.8
herbie shell --seed 2019137
(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*))))))