\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 -115.2035769670583960078147356398403644562:\\
\;\;\;\;\sqrt{e^{\log \left(\left(\left(U \cdot n\right) \cdot \left(t - \mathsf{fma}\left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right), {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n, \left(\ell \cdot \frac{\ell}{Om}\right) \cdot 2\right)\right)\right) \cdot 2\right)}}\\
\mathbf{elif}\;n \le -1.928586768576104907029448118743871413968 \cdot 10^{-95}:\\
\;\;\;\;\sqrt{U} \cdot \sqrt{2 \cdot \left(n \cdot \left(t - \mathsf{fma}\left(\frac{\ell}{Om}, 2 \cdot \ell, \left(U - U*\right) \cdot \left(\left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right)\right)\right)\right)}\\
\mathbf{elif}\;n \le -1.991223724932492166185779454526004556741 \cdot 10^{-147}:\\
\;\;\;\;\sqrt{\mathsf{fma}\left(\frac{U* \cdot \left(\ell \cdot \ell\right)}{Om} \cdot \frac{\left(n \cdot n\right) \cdot U}{Om}, {\left(\frac{1}{{-1}^{2}}\right)}^{1}, \left(U \cdot n\right) \cdot t\right) \cdot 2 - 4 \cdot \left(\frac{U}{Om} \cdot \left(\left(n \cdot \ell\right) \cdot \ell\right)\right)}\\
\mathbf{elif}\;n \le 1.190270096378231867728639520214394049373 \cdot 10^{-56}:\\
\;\;\;\;\sqrt{U \cdot \left(2 \cdot \left(n \cdot \left(t - \mathsf{fma}\left(\frac{\ell}{Om}, 2 \cdot \ell, \left(U - U*\right) \cdot \left(\left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right)\right)\right)\right)\right)}\\
\mathbf{elif}\;n \le 3.245686032965869293542566860037617070177 \cdot 10^{109}:\\
\;\;\;\;\sqrt{\mathsf{fma}\left(\frac{U* \cdot \left(\ell \cdot \ell\right)}{Om} \cdot \frac{\left(n \cdot n\right) \cdot U}{Om}, {\left(\frac{1}{{-1}^{2}}\right)}^{1}, \left(U \cdot n\right) \cdot t\right) \cdot 2 - 4 \cdot \left(\frac{U}{Om} \cdot \left(\left(n \cdot \ell\right) \cdot \ell\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt[3]{\left(\left(\left(U \cdot n\right) \cdot \left(t - \mathsf{fma}\left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right), {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n, \left(\ell \cdot \frac{\ell}{Om}\right) \cdot 2\right)\right)\right) \cdot 2\right) \cdot \sqrt{\left(\left(U \cdot n\right) \cdot \left(t - \mathsf{fma}\left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right), {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n, \left(\ell \cdot \frac{\ell}{Om}\right) \cdot 2\right)\right)\right) \cdot 2}}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r2976257 = 2.0;
double r2976258 = n;
double r2976259 = r2976257 * r2976258;
double r2976260 = U;
double r2976261 = r2976259 * r2976260;
double r2976262 = t;
double r2976263 = l;
double r2976264 = r2976263 * r2976263;
double r2976265 = Om;
double r2976266 = r2976264 / r2976265;
double r2976267 = r2976257 * r2976266;
double r2976268 = r2976262 - r2976267;
double r2976269 = r2976263 / r2976265;
double r2976270 = pow(r2976269, r2976257);
double r2976271 = r2976258 * r2976270;
double r2976272 = U_;
double r2976273 = r2976260 - r2976272;
double r2976274 = r2976271 * r2976273;
double r2976275 = r2976268 - r2976274;
double r2976276 = r2976261 * r2976275;
double r2976277 = sqrt(r2976276);
return r2976277;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r2976278 = n;
double r2976279 = -115.2035769670584;
bool r2976280 = r2976278 <= r2976279;
double r2976281 = U;
double r2976282 = r2976281 * r2976278;
double r2976283 = t;
double r2976284 = l;
double r2976285 = Om;
double r2976286 = r2976284 / r2976285;
double r2976287 = 2.0;
double r2976288 = 2.0;
double r2976289 = r2976287 / r2976288;
double r2976290 = pow(r2976286, r2976289);
double r2976291 = U_;
double r2976292 = r2976281 - r2976291;
double r2976293 = r2976290 * r2976292;
double r2976294 = r2976290 * r2976278;
double r2976295 = r2976284 * r2976286;
double r2976296 = r2976295 * r2976287;
double r2976297 = fma(r2976293, r2976294, r2976296);
double r2976298 = r2976283 - r2976297;
double r2976299 = r2976282 * r2976298;
double r2976300 = r2976299 * r2976287;
double r2976301 = log(r2976300);
double r2976302 = exp(r2976301);
double r2976303 = sqrt(r2976302);
double r2976304 = -1.928586768576105e-95;
bool r2976305 = r2976278 <= r2976304;
double r2976306 = sqrt(r2976281);
double r2976307 = r2976287 * r2976284;
double r2976308 = r2976294 * r2976290;
double r2976309 = r2976292 * r2976308;
double r2976310 = fma(r2976286, r2976307, r2976309);
double r2976311 = r2976283 - r2976310;
double r2976312 = r2976278 * r2976311;
double r2976313 = r2976287 * r2976312;
double r2976314 = sqrt(r2976313);
double r2976315 = r2976306 * r2976314;
double r2976316 = -1.9912237249324922e-147;
bool r2976317 = r2976278 <= r2976316;
double r2976318 = r2976284 * r2976284;
double r2976319 = r2976291 * r2976318;
double r2976320 = r2976319 / r2976285;
double r2976321 = r2976278 * r2976278;
double r2976322 = r2976321 * r2976281;
double r2976323 = r2976322 / r2976285;
double r2976324 = r2976320 * r2976323;
double r2976325 = 1.0;
double r2976326 = -1.0;
double r2976327 = pow(r2976326, r2976287);
double r2976328 = r2976325 / r2976327;
double r2976329 = 1.0;
double r2976330 = pow(r2976328, r2976329);
double r2976331 = r2976282 * r2976283;
double r2976332 = fma(r2976324, r2976330, r2976331);
double r2976333 = r2976332 * r2976287;
double r2976334 = 4.0;
double r2976335 = r2976281 / r2976285;
double r2976336 = r2976278 * r2976284;
double r2976337 = r2976336 * r2976284;
double r2976338 = r2976335 * r2976337;
double r2976339 = r2976334 * r2976338;
double r2976340 = r2976333 - r2976339;
double r2976341 = sqrt(r2976340);
double r2976342 = 1.1902700963782319e-56;
bool r2976343 = r2976278 <= r2976342;
double r2976344 = r2976281 * r2976313;
double r2976345 = sqrt(r2976344);
double r2976346 = 3.2456860329658693e+109;
bool r2976347 = r2976278 <= r2976346;
double r2976348 = sqrt(r2976300);
double r2976349 = r2976300 * r2976348;
double r2976350 = cbrt(r2976349);
double r2976351 = r2976347 ? r2976341 : r2976350;
double r2976352 = r2976343 ? r2976345 : r2976351;
double r2976353 = r2976317 ? r2976341 : r2976352;
double r2976354 = r2976305 ? r2976315 : r2976353;
double r2976355 = r2976280 ? r2976303 : r2976354;
return r2976355;
}



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 < -115.2035769670584Initial program 32.2
Simplified36.2
rmApplied sqr-pow36.2
Applied associate-*r*35.1
rmApplied add-exp-log35.1
Applied add-exp-log50.8
Applied add-exp-log64.0
Applied prod-exp64.0
Applied prod-exp64.0
Applied add-exp-log64.0
Applied prod-exp64.0
Simplified30.1
if -115.2035769670584 < n < -1.928586768576105e-95Initial program 32.3
Simplified26.7
rmApplied sqr-pow26.7
Applied associate-*r*26.5
rmApplied sqrt-prod38.5
if -1.928586768576105e-95 < n < -1.9912237249324922e-147 or 1.1902700963782319e-56 < n < 3.2456860329658693e+109Initial program 29.9
Simplified27.0
rmApplied sqr-pow27.0
Applied associate-*r*26.5
rmApplied *-un-lft-identity26.5
Applied add-sqr-sqrt45.0
Applied prod-diff45.0
Applied distribute-lft-in45.0
Simplified26.1
Taylor expanded around -inf 35.5
Simplified32.4
if -1.9912237249324922e-147 < n < 1.1902700963782319e-56Initial program 37.3
Simplified29.8
rmApplied sqr-pow29.8
Applied associate-*r*28.3
if 3.2456860329658693e+109 < n Initial program 35.2
Simplified40.6
rmApplied sqr-pow40.6
Applied associate-*r*39.8
rmApplied add-cbrt-cube44.9
Simplified40.1
Final simplification31.5
herbie shell --seed 2019172 +o rules:numerics
(FPCore (n U t l Om U*)
:name "Toniolo and Linder, Equation (13)"
(sqrt (* (* (* 2.0 n) U) (- (- t (* 2.0 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2.0)) (- U U*))))))