\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 -9.379719815826530589603530820932364731187 \cdot 10^{241}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(t - \frac{\ell}{Om} \cdot \left(\ell \cdot 2\right)\right)}\\
\mathbf{elif}\;t \le -3.772245666195913577646904748734404208118 \cdot 10^{-180}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot \left(U \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right)\right)\right)\right)}\\
\mathbf{elif}\;t \le 1.39311700673337772156748504137624422583 \cdot 10^{-4}:\\
\;\;\;\;\sqrt{\left(\left(-\ell \cdot \frac{\ell}{Om}\right) \cdot 2 - \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right)\right)\right) \cdot \left(\left(2 \cdot n\right) \cdot U\right) + \left(\left(2 \cdot n\right) \cdot U\right) \cdot t}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right)\right)} \cdot \sqrt{\left(2 \cdot n\right) \cdot U}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r2791100 = 2.0;
double r2791101 = n;
double r2791102 = r2791100 * r2791101;
double r2791103 = U;
double r2791104 = r2791102 * r2791103;
double r2791105 = t;
double r2791106 = l;
double r2791107 = r2791106 * r2791106;
double r2791108 = Om;
double r2791109 = r2791107 / r2791108;
double r2791110 = r2791100 * r2791109;
double r2791111 = r2791105 - r2791110;
double r2791112 = r2791106 / r2791108;
double r2791113 = pow(r2791112, r2791100);
double r2791114 = r2791101 * r2791113;
double r2791115 = U_;
double r2791116 = r2791103 - r2791115;
double r2791117 = r2791114 * r2791116;
double r2791118 = r2791111 - r2791117;
double r2791119 = r2791104 * r2791118;
double r2791120 = sqrt(r2791119);
return r2791120;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r2791121 = t;
double r2791122 = -9.37971981582653e+241;
bool r2791123 = r2791121 <= r2791122;
double r2791124 = 2.0;
double r2791125 = n;
double r2791126 = r2791124 * r2791125;
double r2791127 = U;
double r2791128 = r2791126 * r2791127;
double r2791129 = l;
double r2791130 = Om;
double r2791131 = r2791129 / r2791130;
double r2791132 = r2791129 * r2791124;
double r2791133 = r2791131 * r2791132;
double r2791134 = r2791121 - r2791133;
double r2791135 = r2791128 * r2791134;
double r2791136 = sqrt(r2791135);
double r2791137 = -3.7722456661959136e-180;
bool r2791138 = r2791121 <= r2791137;
double r2791139 = r2791129 * r2791131;
double r2791140 = r2791124 * r2791139;
double r2791141 = r2791121 - r2791140;
double r2791142 = 2.0;
double r2791143 = r2791124 / r2791142;
double r2791144 = pow(r2791131, r2791143);
double r2791145 = r2791144 * r2791125;
double r2791146 = U_;
double r2791147 = r2791127 - r2791146;
double r2791148 = r2791144 * r2791147;
double r2791149 = r2791145 * r2791148;
double r2791150 = r2791141 - r2791149;
double r2791151 = r2791127 * r2791150;
double r2791152 = r2791126 * r2791151;
double r2791153 = sqrt(r2791152);
double r2791154 = 0.00013931170067333777;
bool r2791155 = r2791121 <= r2791154;
double r2791156 = -r2791139;
double r2791157 = r2791156 * r2791124;
double r2791158 = r2791157 - r2791149;
double r2791159 = r2791158 * r2791128;
double r2791160 = r2791128 * r2791121;
double r2791161 = r2791159 + r2791160;
double r2791162 = sqrt(r2791161);
double r2791163 = sqrt(r2791150);
double r2791164 = sqrt(r2791128);
double r2791165 = r2791163 * r2791164;
double r2791166 = r2791155 ? r2791162 : r2791165;
double r2791167 = r2791138 ? r2791153 : r2791166;
double r2791168 = r2791123 ? r2791136 : r2791167;
return r2791168;
}



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 < -9.37971981582653e+241Initial program 41.0
rmApplied sqr-pow41.0
Applied associate-*r*40.8
rmApplied *-un-lft-identity40.8
Applied times-frac38.5
Simplified38.5
Taylor expanded around 0 40.3
Simplified37.9
if -9.37971981582653e+241 < t < -3.7722456661959136e-180Initial program 32.6
rmApplied sqr-pow32.6
Applied associate-*r*31.8
rmApplied *-un-lft-identity31.8
Applied times-frac29.0
Simplified29.0
rmApplied associate-*l*29.1
rmApplied associate-*l*28.8
if -3.7722456661959136e-180 < t < 0.00013931170067333777Initial program 35.0
rmApplied sqr-pow35.0
Applied associate-*r*33.9
rmApplied *-un-lft-identity33.9
Applied times-frac30.6
Simplified30.6
rmApplied associate-*l*29.8
rmApplied sub-neg29.8
Applied associate--l+29.8
Applied distribute-lft-in29.8
if 0.00013931170067333777 < t Initial program 34.4
rmApplied sqr-pow34.4
Applied associate-*r*34.0
rmApplied *-un-lft-identity34.0
Applied times-frac31.7
Simplified31.7
rmApplied associate-*l*32.0
rmApplied sqrt-prod27.2
Final simplification29.2
herbie shell --seed 2019172
(FPCore (n U t l Om U*)
:name "Toniolo and Linder, Equation (13)"
(sqrt (* (* (* 2.0 n) U) (- (- t (* 2.0 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2.0)) (- U U*))))))