\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 -7.7186020624409743 \cdot 10^{211}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right)}\\
\mathbf{elif}\;t \le -4.4828637577847008 \cdot 10^{49}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot \left(U \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \left(U - U*\right) \cdot \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(2 \cdot \frac{2}{2}\right)}\right)\right)\right)}\\
\mathbf{elif}\;t \le 2.85659231871301485 \cdot 10^{41}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \left(\left(\sqrt[3]{n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}} \cdot \sqrt[3]{n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right) \cdot \sqrt[3]{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{else}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \left(U - U*\right) \cdot \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(2 \cdot \frac{2}{2}\right)}\right)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r172228 = 2.0;
double r172229 = n;
double r172230 = r172228 * r172229;
double r172231 = U;
double r172232 = r172230 * r172231;
double r172233 = t;
double r172234 = l;
double r172235 = r172234 * r172234;
double r172236 = Om;
double r172237 = r172235 / r172236;
double r172238 = r172228 * r172237;
double r172239 = r172233 - r172238;
double r172240 = r172234 / r172236;
double r172241 = pow(r172240, r172228);
double r172242 = r172229 * r172241;
double r172243 = U_;
double r172244 = r172231 - r172243;
double r172245 = r172242 * r172244;
double r172246 = r172239 - r172245;
double r172247 = r172232 * r172246;
double r172248 = sqrt(r172247);
return r172248;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r172249 = t;
double r172250 = -7.718602062440974e+211;
bool r172251 = r172249 <= r172250;
double r172252 = 2.0;
double r172253 = n;
double r172254 = r172252 * r172253;
double r172255 = U;
double r172256 = r172254 * r172255;
double r172257 = l;
double r172258 = Om;
double r172259 = r172257 / r172258;
double r172260 = r172257 * r172259;
double r172261 = r172252 * r172260;
double r172262 = r172249 - r172261;
double r172263 = r172256 * r172262;
double r172264 = sqrt(r172263);
double r172265 = -4.482863757784701e+49;
bool r172266 = r172249 <= r172265;
double r172267 = U_;
double r172268 = r172255 - r172267;
double r172269 = 2.0;
double r172270 = r172252 / r172269;
double r172271 = r172269 * r172270;
double r172272 = pow(r172259, r172271);
double r172273 = r172253 * r172272;
double r172274 = r172268 * r172273;
double r172275 = r172262 - r172274;
double r172276 = r172255 * r172275;
double r172277 = r172254 * r172276;
double r172278 = sqrt(r172277);
double r172279 = 2.856592318713015e+41;
bool r172280 = r172249 <= r172279;
double r172281 = pow(r172259, r172270);
double r172282 = r172253 * r172281;
double r172283 = cbrt(r172282);
double r172284 = r172283 * r172283;
double r172285 = r172284 * r172283;
double r172286 = r172281 * r172268;
double r172287 = r172285 * r172286;
double r172288 = r172262 - r172287;
double r172289 = r172256 * r172288;
double r172290 = sqrt(r172289);
double r172291 = sqrt(r172256);
double r172292 = sqrt(r172275);
double r172293 = r172291 * r172292;
double r172294 = r172280 ? r172290 : r172293;
double r172295 = r172266 ? r172278 : r172294;
double r172296 = r172251 ? r172264 : r172295;
return r172296;
}



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 < -7.718602062440974e+211Initial program 40.3
rmApplied *-un-lft-identity40.3
Applied times-frac37.1
Simplified37.1
rmApplied sqr-pow37.1
Applied associate-*r*36.5
Taylor expanded around 0 36.3
if -7.718602062440974e+211 < t < -4.482863757784701e+49Initial program 33.8
rmApplied *-un-lft-identity33.8
Applied times-frac30.7
Simplified30.7
rmApplied sqr-pow30.7
Applied associate-*r*30.4
rmApplied associate-*l*30.4
Simplified31.0
if -4.482863757784701e+49 < t < 2.856592318713015e+41Initial program 33.4
rmApplied *-un-lft-identity33.4
Applied times-frac30.7
Simplified30.7
rmApplied sqr-pow30.7
Applied associate-*r*29.4
rmApplied associate-*l*29.1
rmApplied add-cube-cbrt29.1
if 2.856592318713015e+41 < t Initial program 35.2
rmApplied *-un-lft-identity35.2
Applied times-frac32.3
Simplified32.3
rmApplied sqr-pow32.3
Applied associate-*r*31.9
rmApplied sqrt-prod24.4
Simplified24.6
Final simplification28.9
herbie shell --seed 2020046 +o rules:numerics
(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*))))))