c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\begin{array}{l}
\mathbf{if}\;V \cdot \ell \le -9.58809670087543449 \cdot 10^{-244}:\\
\;\;\;\;c0 \cdot \sqrt{A \cdot \left(\left(\frac{1}{V} \cdot \left(\sqrt[3]{\frac{1}{\ell}} \cdot \sqrt[3]{\frac{1}{\ell}}\right)\right) \cdot \sqrt[3]{\frac{1}{\ell}}\right)}\\
\mathbf{elif}\;V \cdot \ell \le -0.0:\\
\;\;\;\;\frac{c0 \cdot \sqrt{A \cdot \frac{1}{V}}}{\sqrt{\ell}}\\
\mathbf{elif}\;V \cdot \ell \le 3.5878746922481627 \cdot 10^{303}:\\
\;\;\;\;c0 \cdot \frac{\sqrt{A}}{\sqrt{V \cdot \ell}}\\
\mathbf{else}:\\
\;\;\;\;c0 \cdot \sqrt{\frac{\frac{A}{\ell}}{V}}\\
\end{array}double f(double c0, double A, double V, double l) {
double r360 = c0;
double r361 = A;
double r362 = V;
double r363 = l;
double r364 = r362 * r363;
double r365 = r361 / r364;
double r366 = sqrt(r365);
double r367 = r360 * r366;
return r367;
}
double f(double c0, double A, double V, double l) {
double r368 = V;
double r369 = l;
double r370 = r368 * r369;
double r371 = -9.588096700875434e-244;
bool r372 = r370 <= r371;
double r373 = c0;
double r374 = A;
double r375 = 1.0;
double r376 = r375 / r368;
double r377 = r375 / r369;
double r378 = cbrt(r377);
double r379 = r378 * r378;
double r380 = r376 * r379;
double r381 = r380 * r378;
double r382 = r374 * r381;
double r383 = sqrt(r382);
double r384 = r373 * r383;
double r385 = -0.0;
bool r386 = r370 <= r385;
double r387 = r374 * r376;
double r388 = sqrt(r387);
double r389 = r373 * r388;
double r390 = sqrt(r369);
double r391 = r389 / r390;
double r392 = 3.587874692248163e+303;
bool r393 = r370 <= r392;
double r394 = sqrt(r374);
double r395 = sqrt(r370);
double r396 = r394 / r395;
double r397 = r373 * r396;
double r398 = r374 / r369;
double r399 = r398 / r368;
double r400 = sqrt(r399);
double r401 = r373 * r400;
double r402 = r393 ? r397 : r401;
double r403 = r386 ? r391 : r402;
double r404 = r372 ? r384 : r403;
return r404;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
if (* V l) < -9.588096700875434e-244Initial program 14.6
rmApplied div-inv14.6
rmApplied add-cube-cbrt14.6
Applied times-frac14.3
Simplified14.3
Simplified14.3
rmApplied add-cube-cbrt14.7
Applied associate-*r*14.7
if -9.588096700875434e-244 < (* V l) < -0.0Initial program 53.7
rmApplied div-inv54.8
rmApplied add-cube-cbrt54.8
Applied times-frac54.8
Simplified54.8
Simplified54.8
rmApplied un-div-inv54.8
Applied associate-*r/34.1
Applied sqrt-div39.4
Applied associate-*r/39.8
if -0.0 < (* V l) < 3.587874692248163e+303Initial program 10.3
rmApplied sqrt-div0.8
if 3.587874692248163e+303 < (* V l) Initial program 41.6
rmApplied div-inv41.6
rmApplied add-cube-cbrt41.6
Applied times-frac40.0
Simplified40.0
Simplified40.0
rmApplied associate-*l/40.0
Applied associate-*r/23.9
Simplified23.9
Final simplification12.9
herbie shell --seed 2020025
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
:precision binary64
(* c0 (sqrt (/ A (* V l)))))