\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.48078266481481385711732205638014053282 \cdot 10^{128}:\\
\;\;\;\;\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{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 r166824 = 2.0;
double r166825 = n;
double r166826 = r166824 * r166825;
double r166827 = U;
double r166828 = r166826 * r166827;
double r166829 = t;
double r166830 = l;
double r166831 = r166830 * r166830;
double r166832 = Om;
double r166833 = r166831 / r166832;
double r166834 = r166824 * r166833;
double r166835 = r166829 - r166834;
double r166836 = r166830 / r166832;
double r166837 = pow(r166836, r166824);
double r166838 = r166825 * r166837;
double r166839 = U_;
double r166840 = r166827 - r166839;
double r166841 = r166838 * r166840;
double r166842 = r166835 - r166841;
double r166843 = r166828 * r166842;
double r166844 = sqrt(r166843);
return r166844;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r166845 = t;
double r166846 = 8.480782664814814e+128;
bool r166847 = r166845 <= r166846;
double r166848 = 2.0;
double r166849 = n;
double r166850 = r166848 * r166849;
double r166851 = U;
double r166852 = l;
double r166853 = Om;
double r166854 = r166852 / r166853;
double r166855 = r166852 * r166854;
double r166856 = r166848 * r166855;
double r166857 = r166845 - r166856;
double r166858 = U_;
double r166859 = r166851 - r166858;
double r166860 = 2.0;
double r166861 = r166848 / r166860;
double r166862 = r166860 * r166861;
double r166863 = pow(r166854, r166862);
double r166864 = r166849 * r166863;
double r166865 = r166859 * r166864;
double r166866 = r166857 - r166865;
double r166867 = r166851 * r166866;
double r166868 = r166850 * r166867;
double r166869 = sqrt(r166868);
double r166870 = r166850 * r166851;
double r166871 = sqrt(r166870);
double r166872 = sqrt(r166866);
double r166873 = r166871 * r166872;
double r166874 = r166847 ? r166869 : r166873;
return r166874;
}



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.480782664814814e+128Initial program 34.1
rmApplied *-un-lft-identity34.1
Applied times-frac31.2
Simplified31.2
rmApplied sqr-pow31.2
Applied associate-*r*30.4
rmApplied associate-*l*29.9
Simplified31.0
if 8.480782664814814e+128 < t Initial program 37.9
rmApplied *-un-lft-identity37.9
Applied times-frac35.2
Simplified35.2
rmApplied sqr-pow35.2
Applied associate-*r*34.6
rmApplied sqrt-prod22.9
Simplified23.4
Final simplification29.9
herbie shell --seed 2019325
(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*))))))