\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 -5.089418877320290045251715767332814468357 \cdot 10^{-171}:\\
\;\;\;\;\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)}\\
\mathbf{elif}\;n \le 1.179676635946517570917057403006970984701 \cdot 10^{-154}:\\
\;\;\;\;\sqrt{2 \cdot \left(\left(n \cdot \left(t - \left(2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right) - \left(-n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(2 \cdot \frac{2}{2}\right)}\right) \cdot \left(U - U*\right)\right)\right)\right) \cdot U\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{2 \cdot n} \cdot \sqrt{U \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r208238 = 2.0;
double r208239 = n;
double r208240 = r208238 * r208239;
double r208241 = U;
double r208242 = r208240 * r208241;
double r208243 = t;
double r208244 = l;
double r208245 = r208244 * r208244;
double r208246 = Om;
double r208247 = r208245 / r208246;
double r208248 = r208238 * r208247;
double r208249 = r208243 - r208248;
double r208250 = r208244 / r208246;
double r208251 = pow(r208250, r208238);
double r208252 = r208239 * r208251;
double r208253 = U_;
double r208254 = r208241 - r208253;
double r208255 = r208252 * r208254;
double r208256 = r208249 - r208255;
double r208257 = r208242 * r208256;
double r208258 = sqrt(r208257);
return r208258;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r208259 = n;
double r208260 = -5.08941887732029e-171;
bool r208261 = r208259 <= r208260;
double r208262 = 2.0;
double r208263 = r208262 * r208259;
double r208264 = U;
double r208265 = t;
double r208266 = l;
double r208267 = Om;
double r208268 = r208266 / r208267;
double r208269 = r208266 * r208268;
double r208270 = r208262 * r208269;
double r208271 = r208265 - r208270;
double r208272 = 2.0;
double r208273 = r208262 / r208272;
double r208274 = pow(r208268, r208273);
double r208275 = r208259 * r208274;
double r208276 = U_;
double r208277 = r208264 - r208276;
double r208278 = r208274 * r208277;
double r208279 = r208275 * r208278;
double r208280 = r208271 - r208279;
double r208281 = r208264 * r208280;
double r208282 = r208263 * r208281;
double r208283 = sqrt(r208282);
double r208284 = 1.1796766359465176e-154;
bool r208285 = r208259 <= r208284;
double r208286 = r208272 * r208273;
double r208287 = pow(r208268, r208286);
double r208288 = r208259 * r208287;
double r208289 = -r208288;
double r208290 = r208289 * r208277;
double r208291 = r208270 - r208290;
double r208292 = r208265 - r208291;
double r208293 = r208259 * r208292;
double r208294 = r208293 * r208264;
double r208295 = r208262 * r208294;
double r208296 = sqrt(r208295);
double r208297 = sqrt(r208263);
double r208298 = pow(r208268, r208262);
double r208299 = r208259 * r208298;
double r208300 = r208299 * r208277;
double r208301 = r208271 - r208300;
double r208302 = r208264 * r208301;
double r208303 = sqrt(r208302);
double r208304 = r208297 * r208303;
double r208305 = r208285 ? r208296 : r208304;
double r208306 = r208261 ? r208283 : r208305;
return r208306;
}



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 n < -5.08941887732029e-171Initial program 33.4
rmApplied *-un-lft-identity33.4
Applied times-frac30.3
Simplified30.3
rmApplied associate-*l*30.7
rmApplied sqr-pow30.7
Applied associate-*r*29.7
rmApplied associate-*l*29.2
if -5.08941887732029e-171 < n < 1.1796766359465176e-154Initial program 38.5
rmApplied *-un-lft-identity38.5
Applied times-frac35.4
Simplified35.4
rmApplied associate-*l*36.0
rmApplied sqr-pow36.0
Applied associate-*r*34.8
rmApplied associate-*l*34.8
Simplified31.8
if 1.1796766359465176e-154 < n Initial program 33.3
rmApplied *-un-lft-identity33.3
Applied times-frac30.7
Simplified30.7
rmApplied associate-*l*30.8
rmApplied sqrt-prod24.4
Final simplification28.4
herbie shell --seed 2019356
(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*))))))