\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 8.120471958061494211765127711129383515551 \cdot 10^{92}:\\
\;\;\;\;\sqrt{\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(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 r178066 = 2.0;
double r178067 = n;
double r178068 = r178066 * r178067;
double r178069 = U;
double r178070 = r178068 * r178069;
double r178071 = t;
double r178072 = l;
double r178073 = r178072 * r178072;
double r178074 = Om;
double r178075 = r178073 / r178074;
double r178076 = r178066 * r178075;
double r178077 = r178071 - r178076;
double r178078 = r178072 / r178074;
double r178079 = pow(r178078, r178066);
double r178080 = r178067 * r178079;
double r178081 = U_;
double r178082 = r178069 - r178081;
double r178083 = r178080 * r178082;
double r178084 = r178077 - r178083;
double r178085 = r178070 * r178084;
double r178086 = sqrt(r178085);
return r178086;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r178087 = t;
double r178088 = 8.120471958061494e+92;
bool r178089 = r178087 <= r178088;
double r178090 = 2.0;
double r178091 = n;
double r178092 = r178090 * r178091;
double r178093 = U;
double r178094 = r178092 * r178093;
double r178095 = l;
double r178096 = Om;
double r178097 = r178096 / r178095;
double r178098 = r178095 / r178097;
double r178099 = r178090 * r178098;
double r178100 = r178087 - r178099;
double r178101 = r178095 / r178096;
double r178102 = 2.0;
double r178103 = r178090 / r178102;
double r178104 = pow(r178101, r178103);
double r178105 = r178091 * r178104;
double r178106 = r178105 * r178104;
double r178107 = U_;
double r178108 = r178093 - r178107;
double r178109 = r178106 * r178108;
double r178110 = r178100 - r178109;
double r178111 = r178094 * r178110;
double r178112 = sqrt(r178111);
double r178113 = sqrt(r178094);
double r178114 = r178102 * r178103;
double r178115 = pow(r178101, r178114);
double r178116 = r178091 * r178115;
double r178117 = r178108 * r178116;
double r178118 = r178100 - r178117;
double r178119 = sqrt(r178118);
double r178120 = r178113 * r178119;
double r178121 = r178089 ? r178112 : r178120;
return r178121;
}



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 < 8.120471958061494e+92Initial program 34.2
rmApplied associate-/l*31.4
rmApplied sqr-pow31.4
Applied associate-*r*30.5
if 8.120471958061494e+92 < t Initial program 37.5
rmApplied associate-/l*35.0
rmApplied sqr-pow35.0
Applied associate-*r*34.4
rmApplied sqrt-prod25.9
Simplified26.4
Final simplification29.8
herbie shell --seed 2019326
(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*))))))