\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.0567111237886108 \cdot 10^{-140}:\\
\;\;\;\;\sqrt{\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(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)}} \cdot \sqrt{\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(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 1.59180529795114251 \cdot 10^{187}:\\
\;\;\;\;\sqrt{{\left(\left(\left(2 \cdot n\right) \cdot \left(t - \left(2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right) - \left(-\left(U - U*\right)\right) \cdot \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(2 \cdot \frac{2}{2}\right)}\right)\right)\right)\right) \cdot U\right)}^{1}}\\
\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(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)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r163 = 2.0;
double r164 = n;
double r165 = r163 * r164;
double r166 = U;
double r167 = r165 * r166;
double r168 = t;
double r169 = l;
double r170 = r169 * r169;
double r171 = Om;
double r172 = r170 / r171;
double r173 = r163 * r172;
double r174 = r168 - r173;
double r175 = r169 / r171;
double r176 = pow(r175, r163);
double r177 = r164 * r176;
double r178 = U_;
double r179 = r166 - r178;
double r180 = r177 * r179;
double r181 = r174 - r180;
double r182 = r167 * r181;
double r183 = sqrt(r182);
return r183;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r184 = t;
double r185 = 6.056711123788611e-140;
bool r186 = r184 <= r185;
double r187 = 2.0;
double r188 = n;
double r189 = r187 * r188;
double r190 = U;
double r191 = r189 * r190;
double r192 = l;
double r193 = Om;
double r194 = r192 / r193;
double r195 = r192 * r194;
double r196 = r187 * r195;
double r197 = r184 - r196;
double r198 = 2.0;
double r199 = r187 / r198;
double r200 = pow(r194, r199);
double r201 = r188 * r200;
double r202 = U_;
double r203 = r190 - r202;
double r204 = r200 * r203;
double r205 = r201 * r204;
double r206 = r197 - r205;
double r207 = r191 * r206;
double r208 = sqrt(r207);
double r209 = sqrt(r208);
double r210 = r209 * r209;
double r211 = 1.5918052979511425e+187;
bool r212 = r184 <= r211;
double r213 = -r203;
double r214 = r198 * r199;
double r215 = pow(r194, r214);
double r216 = r188 * r215;
double r217 = r213 * r216;
double r218 = r196 - r217;
double r219 = r184 - r218;
double r220 = r189 * r219;
double r221 = r220 * r190;
double r222 = 1.0;
double r223 = pow(r221, r222);
double r224 = sqrt(r223);
double r225 = sqrt(r191);
double r226 = sqrt(r206);
double r227 = r225 * r226;
double r228 = r212 ? r224 : r227;
double r229 = r186 ? r210 : r228;
return r229;
}



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.056711123788611e-140Initial program 35.3
rmApplied *-un-lft-identity35.3
Applied times-frac32.9
Simplified32.9
rmApplied sqr-pow32.9
Applied associate-*r*32.0
rmApplied associate-*l*31.6
rmApplied add-sqr-sqrt31.7
if 6.056711123788611e-140 < t < 1.5918052979511425e+187Initial program 31.9
rmApplied *-un-lft-identity31.9
Applied times-frac29.1
Simplified29.1
rmApplied sqr-pow29.1
Applied associate-*r*28.4
rmApplied pow128.4
Applied pow128.4
Applied pow128.4
Applied pow128.4
Applied pow-prod-down28.4
Applied pow-prod-down28.4
Applied pow-prod-down28.4
Simplified28.7
if 1.5918052979511425e+187 < t Initial program 38.9
rmApplied *-un-lft-identity38.9
Applied times-frac35.9
Simplified35.9
rmApplied sqr-pow35.9
Applied associate-*r*35.2
rmApplied associate-*l*35.7
rmApplied sqrt-prod23.2
Final simplification30.1
herbie shell --seed 2020025 +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*))))))