\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.747196773397988555579189242829971406162 \cdot 10^{-277}:\\
\;\;\;\;\sqrt{\sqrt{\left(\left(n \cdot \left(t - \mathsf{fma}\left(\frac{\ell}{Om}, 2 \cdot \ell, \left(\left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(U - U*\right)\right)\right)\right) \cdot 2\right) \cdot U}} \cdot \sqrt{\sqrt{\left(\left(n \cdot \left(t - \mathsf{fma}\left(\frac{\ell}{Om}, 2 \cdot \ell, \left(\left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(U - U*\right)\right)\right)\right) \cdot 2\right) \cdot U}}\\
\mathbf{elif}\;U \le 4.23622323501100973617753573159479706023 \cdot 10^{-287}:\\
\;\;\;\;\sqrt{\left(U \cdot \left(2 \cdot n\right)\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(U - U*\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{U} \cdot \sqrt{\left(n \cdot \left(t - \mathsf{fma}\left(\frac{\ell}{Om}, 2 \cdot \ell, \left(\left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(U - U*\right)\right)\right)\right) \cdot 2}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r2909175 = 2.0;
double r2909176 = n;
double r2909177 = r2909175 * r2909176;
double r2909178 = U;
double r2909179 = r2909177 * r2909178;
double r2909180 = t;
double r2909181 = l;
double r2909182 = r2909181 * r2909181;
double r2909183 = Om;
double r2909184 = r2909182 / r2909183;
double r2909185 = r2909175 * r2909184;
double r2909186 = r2909180 - r2909185;
double r2909187 = r2909181 / r2909183;
double r2909188 = pow(r2909187, r2909175);
double r2909189 = r2909176 * r2909188;
double r2909190 = U_;
double r2909191 = r2909178 - r2909190;
double r2909192 = r2909189 * r2909191;
double r2909193 = r2909186 - r2909192;
double r2909194 = r2909179 * r2909193;
double r2909195 = sqrt(r2909194);
return r2909195;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r2909196 = U;
double r2909197 = -2.7471967733979886e-277;
bool r2909198 = r2909196 <= r2909197;
double r2909199 = n;
double r2909200 = t;
double r2909201 = l;
double r2909202 = Om;
double r2909203 = r2909201 / r2909202;
double r2909204 = 2.0;
double r2909205 = r2909204 * r2909201;
double r2909206 = 2.0;
double r2909207 = r2909204 / r2909206;
double r2909208 = pow(r2909203, r2909207);
double r2909209 = r2909208 * r2909199;
double r2909210 = r2909209 * r2909208;
double r2909211 = U_;
double r2909212 = r2909196 - r2909211;
double r2909213 = r2909210 * r2909212;
double r2909214 = fma(r2909203, r2909205, r2909213);
double r2909215 = r2909200 - r2909214;
double r2909216 = r2909199 * r2909215;
double r2909217 = r2909216 * r2909204;
double r2909218 = r2909217 * r2909196;
double r2909219 = sqrt(r2909218);
double r2909220 = sqrt(r2909219);
double r2909221 = r2909220 * r2909220;
double r2909222 = 4.23622323501101e-287;
bool r2909223 = r2909196 <= r2909222;
double r2909224 = r2909204 * r2909199;
double r2909225 = r2909196 * r2909224;
double r2909226 = r2909201 * r2909201;
double r2909227 = r2909226 / r2909202;
double r2909228 = r2909204 * r2909227;
double r2909229 = r2909200 - r2909228;
double r2909230 = pow(r2909203, r2909204);
double r2909231 = r2909230 * r2909199;
double r2909232 = r2909212 * r2909231;
double r2909233 = r2909229 - r2909232;
double r2909234 = r2909225 * r2909233;
double r2909235 = sqrt(r2909234);
double r2909236 = sqrt(r2909196);
double r2909237 = sqrt(r2909217);
double r2909238 = r2909236 * r2909237;
double r2909239 = r2909223 ? r2909235 : r2909238;
double r2909240 = r2909198 ? r2909221 : r2909239;
return r2909240;
}



Bits error versus n



Bits error versus U



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus U*
if U < -2.7471967733979886e-277Initial program 33.8
Simplified30.8
rmApplied sqr-pow30.8
Applied associate-*r*29.6
rmApplied add-sqr-sqrt29.8
if -2.7471967733979886e-277 < U < 4.23622323501101e-287Initial program 42.2
if 4.23622323501101e-287 < U Initial program 34.4
Simplified31.8
rmApplied sqr-pow31.8
Applied associate-*r*30.7
rmApplied sqrt-prod24.1
Final simplification27.8
herbie shell --seed 2019169 +o rules:numerics
(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*))))))