\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}\;t \le 6.40743567097731682 \cdot 10^{-273}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\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)}\\
\mathbf{elif}\;t \le 6.91051826790831174 \cdot 10^{-202}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(U - U*\right)}\\
\mathbf{elif}\;t \le 8.6860665847203579 \cdot 10^{76}:\\
\;\;\;\;\sqrt{\left(\sqrt[3]{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(U - U*\right)\right)} \cdot \sqrt[3]{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(U - U*\right)\right)}\right) \cdot \sqrt[3]{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(U - U*\right)\right)}}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(U - U*\right)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r168225 = 2.0;
double r168226 = n;
double r168227 = r168225 * r168226;
double r168228 = U;
double r168229 = r168227 * r168228;
double r168230 = t;
double r168231 = l;
double r168232 = r168231 * r168231;
double r168233 = Om;
double r168234 = r168232 / r168233;
double r168235 = r168225 * r168234;
double r168236 = r168230 - r168235;
double r168237 = r168231 / r168233;
double r168238 = pow(r168237, r168225);
double r168239 = r168226 * r168238;
double r168240 = U_;
double r168241 = r168228 - r168240;
double r168242 = r168239 * r168241;
double r168243 = r168236 - r168242;
double r168244 = r168229 * r168243;
double r168245 = sqrt(r168244);
return r168245;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r168246 = t;
double r168247 = 6.407435670977317e-273;
bool r168248 = r168246 <= r168247;
double r168249 = 2.0;
double r168250 = n;
double r168251 = r168249 * r168250;
double r168252 = U;
double r168253 = r168251 * r168252;
double r168254 = l;
double r168255 = Om;
double r168256 = r168255 / r168254;
double r168257 = r168254 / r168256;
double r168258 = r168249 * r168257;
double r168259 = r168246 - r168258;
double r168260 = r168254 / r168255;
double r168261 = 2.0;
double r168262 = r168249 / r168261;
double r168263 = pow(r168260, r168262);
double r168264 = r168250 * r168263;
double r168265 = U_;
double r168266 = r168252 - r168265;
double r168267 = r168263 * r168266;
double r168268 = r168264 * r168267;
double r168269 = r168259 - r168268;
double r168270 = r168253 * r168269;
double r168271 = sqrt(r168270);
double r168272 = 6.910518267908312e-202;
bool r168273 = r168246 <= r168272;
double r168274 = sqrt(r168253);
double r168275 = r168264 * r168263;
double r168276 = r168275 * r168266;
double r168277 = r168259 - r168276;
double r168278 = sqrt(r168277);
double r168279 = r168274 * r168278;
double r168280 = 8.686066584720358e+76;
bool r168281 = r168246 <= r168280;
double r168282 = r168253 * r168277;
double r168283 = cbrt(r168282);
double r168284 = r168283 * r168283;
double r168285 = r168284 * r168283;
double r168286 = sqrt(r168285);
double r168287 = r168281 ? r168286 : r168279;
double r168288 = r168273 ? r168279 : r168287;
double r168289 = r168248 ? r168271 : r168288;
return r168289;
}



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 t < 6.407435670977317e-273Initial program 34.3
rmApplied associate-/l*31.2
rmApplied sqr-pow31.2
Applied associate-*r*30.3
rmApplied associate-*l*30.0
if 6.407435670977317e-273 < t < 6.910518267908312e-202 or 8.686066584720358e+76 < t Initial program 35.6
rmApplied associate-/l*33.0
rmApplied sqr-pow33.0
Applied associate-*r*32.4
rmApplied sqrt-prod25.2
if 6.910518267908312e-202 < t < 8.686066584720358e+76Initial program 31.5
rmApplied associate-/l*28.7
rmApplied sqr-pow28.7
Applied associate-*r*28.0
rmApplied add-cube-cbrt28.3
Final simplification28.4
herbie shell --seed 2020089
(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*))))))