\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}\;U \le -2.56376693799834257 \cdot 10^{-130}:\\
\;\;\;\;\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 \sqrt[3]{n}\right) \cdot \left(\sqrt[3]{n} \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right)\right) \cdot \left(U - U*\right)\right)}\\
\mathbf{elif}\;U \le 8.6898223191579737 \cdot 10^{-140}:\\
\;\;\;\;\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)}^{2}\right) \cdot \left(U - U*\right)\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(\sqrt[3]{\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\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)} \cdot \sqrt[3]{\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\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(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\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)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r171519 = 2.0;
double r171520 = n;
double r171521 = r171519 * r171520;
double r171522 = U;
double r171523 = r171521 * r171522;
double r171524 = t;
double r171525 = l;
double r171526 = r171525 * r171525;
double r171527 = Om;
double r171528 = r171526 / r171527;
double r171529 = r171519 * r171528;
double r171530 = r171524 - r171529;
double r171531 = r171525 / r171527;
double r171532 = pow(r171531, r171519);
double r171533 = r171520 * r171532;
double r171534 = U_;
double r171535 = r171522 - r171534;
double r171536 = r171533 * r171535;
double r171537 = r171530 - r171536;
double r171538 = r171523 * r171537;
double r171539 = sqrt(r171538);
return r171539;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r171540 = U;
double r171541 = -2.5637669379983426e-130;
bool r171542 = r171540 <= r171541;
double r171543 = 2.0;
double r171544 = n;
double r171545 = r171543 * r171544;
double r171546 = r171545 * r171540;
double r171547 = t;
double r171548 = l;
double r171549 = Om;
double r171550 = r171548 / r171549;
double r171551 = r171548 * r171550;
double r171552 = r171543 * r171551;
double r171553 = r171547 - r171552;
double r171554 = cbrt(r171544);
double r171555 = r171554 * r171554;
double r171556 = pow(r171550, r171543);
double r171557 = r171554 * r171556;
double r171558 = r171555 * r171557;
double r171559 = U_;
double r171560 = r171540 - r171559;
double r171561 = r171558 * r171560;
double r171562 = r171553 - r171561;
double r171563 = r171546 * r171562;
double r171564 = sqrt(r171563);
double r171565 = 8.689822319157974e-140;
bool r171566 = r171540 <= r171565;
double r171567 = r171544 * r171556;
double r171568 = r171567 * r171560;
double r171569 = r171553 - r171568;
double r171570 = r171540 * r171569;
double r171571 = r171545 * r171570;
double r171572 = sqrt(r171571);
double r171573 = 2.0;
double r171574 = r171543 / r171573;
double r171575 = pow(r171550, r171574);
double r171576 = r171544 * r171575;
double r171577 = r171576 * r171575;
double r171578 = r171577 * r171560;
double r171579 = r171553 - r171578;
double r171580 = cbrt(r171579);
double r171581 = r171580 * r171580;
double r171582 = r171581 * r171580;
double r171583 = r171546 * r171582;
double r171584 = sqrt(r171583);
double r171585 = r171566 ? r171572 : r171584;
double r171586 = r171542 ? r171564 : r171585;
return r171586;
}



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 U < -2.5637669379983426e-130Initial program 30.0
rmApplied *-un-lft-identity30.0
Applied times-frac27.3
Simplified27.3
rmApplied add-cube-cbrt27.3
Applied associate-*l*27.3
if -2.5637669379983426e-130 < U < 8.689822319157974e-140Initial program 41.0
rmApplied *-un-lft-identity41.0
Applied times-frac39.0
Simplified39.0
rmApplied associate-*l*33.9
if 8.689822319157974e-140 < U Initial program 30.8
rmApplied *-un-lft-identity30.8
Applied times-frac27.9
Simplified27.9
rmApplied sqr-pow27.9
Applied associate-*r*27.0
rmApplied add-cube-cbrt27.4
Final simplification29.9
herbie shell --seed 2020036
(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*))))))