\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}\;n \le -2.9078355181208308 \cdot 10^{-49}:\\
\;\;\;\;\sqrt{\left(t - \mathsf{fma}\left(\left(\frac{\ell}{Om}\right), \left(2 \cdot \ell\right), \left(\left(\left(\frac{\ell}{Om} \cdot \frac{\ell}{Om}\right) \cdot n\right) \cdot \left(U - U*\right)\right)\right)\right) \cdot \left(\left(U \cdot 2\right) \cdot n\right)}\\
\mathbf{elif}\;n \le 8.345471985498696 \cdot 10^{-126}:\\
\;\;\;\;\sqrt{\left(U \cdot 2\right) \cdot \left(n \cdot \left(t - \mathsf{fma}\left(\left(\frac{\ell}{Om}\right), \left(2 \cdot \ell\right), \left(\left(U - U*\right) \cdot \frac{\left(\ell \cdot \frac{\ell}{Om}\right) \cdot n}{Om}\right)\right)\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(t - \mathsf{fma}\left(\left(\frac{\ell}{Om}\right), \left(2 \cdot \ell\right), \left(\left(\left(\frac{\ell}{Om} \cdot \frac{\ell}{Om}\right) \cdot n\right) \cdot \left(U - U*\right)\right)\right)\right) \cdot \left(\left(U \cdot 2\right) \cdot n\right)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r1408259 = 2.0;
double r1408260 = n;
double r1408261 = r1408259 * r1408260;
double r1408262 = U;
double r1408263 = r1408261 * r1408262;
double r1408264 = t;
double r1408265 = l;
double r1408266 = r1408265 * r1408265;
double r1408267 = Om;
double r1408268 = r1408266 / r1408267;
double r1408269 = r1408259 * r1408268;
double r1408270 = r1408264 - r1408269;
double r1408271 = r1408265 / r1408267;
double r1408272 = pow(r1408271, r1408259);
double r1408273 = r1408260 * r1408272;
double r1408274 = U_;
double r1408275 = r1408262 - r1408274;
double r1408276 = r1408273 * r1408275;
double r1408277 = r1408270 - r1408276;
double r1408278 = r1408263 * r1408277;
double r1408279 = sqrt(r1408278);
return r1408279;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r1408280 = n;
double r1408281 = -2.9078355181208308e-49;
bool r1408282 = r1408280 <= r1408281;
double r1408283 = t;
double r1408284 = l;
double r1408285 = Om;
double r1408286 = r1408284 / r1408285;
double r1408287 = 2.0;
double r1408288 = r1408287 * r1408284;
double r1408289 = r1408286 * r1408286;
double r1408290 = r1408289 * r1408280;
double r1408291 = U;
double r1408292 = U_;
double r1408293 = r1408291 - r1408292;
double r1408294 = r1408290 * r1408293;
double r1408295 = fma(r1408286, r1408288, r1408294);
double r1408296 = r1408283 - r1408295;
double r1408297 = r1408291 * r1408287;
double r1408298 = r1408297 * r1408280;
double r1408299 = r1408296 * r1408298;
double r1408300 = sqrt(r1408299);
double r1408301 = 8.345471985498696e-126;
bool r1408302 = r1408280 <= r1408301;
double r1408303 = r1408284 * r1408286;
double r1408304 = r1408303 * r1408280;
double r1408305 = r1408304 / r1408285;
double r1408306 = r1408293 * r1408305;
double r1408307 = fma(r1408286, r1408288, r1408306);
double r1408308 = r1408283 - r1408307;
double r1408309 = r1408280 * r1408308;
double r1408310 = r1408297 * r1408309;
double r1408311 = sqrt(r1408310);
double r1408312 = r1408302 ? r1408311 : r1408300;
double r1408313 = r1408282 ? r1408300 : r1408312;
return r1408313;
}



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 n < -2.9078355181208308e-49 or 8.345471985498696e-126 < n Initial program 30.6
Simplified31.5
rmApplied associate-*r*28.1
if -2.9078355181208308e-49 < n < 8.345471985498696e-126Initial program 35.7
Simplified29.3
rmApplied associate-*r/29.3
Applied associate-*r/28.3
Final simplification28.2
herbie shell --seed 2019130 +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*))))))