\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 -4.4451804611309516 \cdot 10^{+70}:\\
\;\;\;\;\sqrt{\left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \frac{\left(n \cdot \ell\right) \cdot \frac{\ell}{Om}}{\sqrt[3]{Om} \cdot \sqrt[3]{Om}} \cdot \frac{U - U*}{\sqrt[3]{Om}}\right) \cdot \left(\left(2 \cdot n\right) \cdot U\right)}\\
\mathbf{elif}\;U \le -3.1769776407334526 \cdot 10^{-289}:\\
\;\;\;\;\sqrt{\left(U \cdot \left(t - \mathsf{fma}\left(\ell \cdot 2, \frac{\ell}{Om}, \left(\frac{\ell}{Om} \cdot \left(n \cdot \frac{\ell}{Om}\right)\right) \cdot \left(U - U*\right)\right)\right)\right) \cdot \left(2 \cdot n\right)}\\
\mathbf{elif}\;U \le 3.336337607476201 \cdot 10^{-207}:\\
\;\;\;\;\sqrt{\left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \frac{\left(\left(U - U*\right) \cdot \frac{\ell}{Om}\right) \cdot \left(n \cdot \ell\right)}{Om}\right) \cdot \left(\left(2 \cdot n\right) \cdot U\right)}\\
\mathbf{elif}\;U \le 3.2878796761193827 \cdot 10^{+96}:\\
\;\;\;\;\sqrt{\left(U \cdot \left(t - \mathsf{fma}\left(\ell \cdot 2, \frac{\ell}{Om}, \left(\frac{\ell}{Om} \cdot \left(n \cdot \frac{\ell}{Om}\right)\right) \cdot \left(U - U*\right)\right)\right)\right) \cdot \left(2 \cdot n\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\mathsf{fma}\left(\frac{\ell \cdot \ell}{Om}, -2, t\right) - \left(\frac{\frac{\ell \cdot \ell}{Om}}{Om} \cdot n\right) \cdot \left(U - U*\right)\right)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r1277256 = 2.0;
double r1277257 = n;
double r1277258 = r1277256 * r1277257;
double r1277259 = U;
double r1277260 = r1277258 * r1277259;
double r1277261 = t;
double r1277262 = l;
double r1277263 = r1277262 * r1277262;
double r1277264 = Om;
double r1277265 = r1277263 / r1277264;
double r1277266 = r1277256 * r1277265;
double r1277267 = r1277261 - r1277266;
double r1277268 = r1277262 / r1277264;
double r1277269 = pow(r1277268, r1277256);
double r1277270 = r1277257 * r1277269;
double r1277271 = U_;
double r1277272 = r1277259 - r1277271;
double r1277273 = r1277270 * r1277272;
double r1277274 = r1277267 - r1277273;
double r1277275 = r1277260 * r1277274;
double r1277276 = sqrt(r1277275);
return r1277276;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r1277277 = U;
double r1277278 = -4.4451804611309516e+70;
bool r1277279 = r1277277 <= r1277278;
double r1277280 = t;
double r1277281 = 2.0;
double r1277282 = l;
double r1277283 = Om;
double r1277284 = r1277282 / r1277283;
double r1277285 = r1277282 * r1277284;
double r1277286 = r1277281 * r1277285;
double r1277287 = r1277280 - r1277286;
double r1277288 = n;
double r1277289 = r1277288 * r1277282;
double r1277290 = r1277289 * r1277284;
double r1277291 = cbrt(r1277283);
double r1277292 = r1277291 * r1277291;
double r1277293 = r1277290 / r1277292;
double r1277294 = U_;
double r1277295 = r1277277 - r1277294;
double r1277296 = r1277295 / r1277291;
double r1277297 = r1277293 * r1277296;
double r1277298 = r1277287 - r1277297;
double r1277299 = r1277281 * r1277288;
double r1277300 = r1277299 * r1277277;
double r1277301 = r1277298 * r1277300;
double r1277302 = sqrt(r1277301);
double r1277303 = -3.1769776407334526e-289;
bool r1277304 = r1277277 <= r1277303;
double r1277305 = r1277282 * r1277281;
double r1277306 = r1277288 * r1277284;
double r1277307 = r1277284 * r1277306;
double r1277308 = r1277307 * r1277295;
double r1277309 = fma(r1277305, r1277284, r1277308);
double r1277310 = r1277280 - r1277309;
double r1277311 = r1277277 * r1277310;
double r1277312 = r1277311 * r1277299;
double r1277313 = sqrt(r1277312);
double r1277314 = 3.336337607476201e-207;
bool r1277315 = r1277277 <= r1277314;
double r1277316 = r1277295 * r1277284;
double r1277317 = r1277316 * r1277289;
double r1277318 = r1277317 / r1277283;
double r1277319 = r1277287 - r1277318;
double r1277320 = r1277319 * r1277300;
double r1277321 = sqrt(r1277320);
double r1277322 = 3.2878796761193827e+96;
bool r1277323 = r1277277 <= r1277322;
double r1277324 = r1277282 * r1277282;
double r1277325 = r1277324 / r1277283;
double r1277326 = -2.0;
double r1277327 = fma(r1277325, r1277326, r1277280);
double r1277328 = r1277325 / r1277283;
double r1277329 = r1277328 * r1277288;
double r1277330 = r1277329 * r1277295;
double r1277331 = r1277327 - r1277330;
double r1277332 = r1277300 * r1277331;
double r1277333 = sqrt(r1277332);
double r1277334 = r1277323 ? r1277313 : r1277333;
double r1277335 = r1277315 ? r1277321 : r1277334;
double r1277336 = r1277304 ? r1277313 : r1277335;
double r1277337 = r1277279 ? r1277302 : r1277336;
return r1277337;
}



Bits error versus n



Bits error versus U



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus U*
if U < -4.4451804611309516e+70Initial program 27.5
rmApplied *-un-lft-identity27.5
Applied times-frac24.8
Simplified24.8
rmApplied unpow224.8
Applied associate-*r*24.4
rmApplied associate-*r/24.7
Applied associate-*l/24.8
Applied associate-*l/24.9
rmApplied add-cube-cbrt24.9
Applied times-frac25.7
if -4.4451804611309516e+70 < U < -3.1769776407334526e-289 or 3.336337607476201e-207 < U < 3.2878796761193827e+96Initial program 33.1
rmApplied *-un-lft-identity33.1
Applied times-frac30.3
Simplified30.3
rmApplied unpow230.3
Applied associate-*r*29.2
rmApplied associate-*l*26.9
Simplified26.9
if -3.1769776407334526e-289 < U < 3.336337607476201e-207Initial program 42.8
rmApplied *-un-lft-identity42.8
Applied times-frac41.6
Simplified41.6
rmApplied unpow241.6
Applied associate-*r*40.7
rmApplied associate-*r/41.7
Applied associate-*l/41.9
Applied associate-*l/41.6
rmApplied associate-*l*41.1
if 3.2878796761193827e+96 < U Initial program 26.1
Simplified26.6
Final simplification28.6
herbie shell --seed 2019155 +o rules:numerics
(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*))))))