c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\begin{array}{l}
\mathbf{if}\;\ell \cdot V = -\infty:\\
\;\;\;\;\left(\sqrt{\frac{A}{\ell}} \cdot \sqrt{\frac{1}{V}}\right) \cdot c0\\
\mathbf{elif}\;\ell \cdot V \le -5.601891409264343123426103753339848933114 \cdot 10^{-287}:\\
\;\;\;\;\sqrt{\sqrt[3]{\frac{1}{\ell \cdot V}} \cdot \sqrt[3]{A}} \cdot \left(c0 \cdot \frac{\left|\sqrt[3]{A}\right|}{\left|\sqrt[3]{\ell \cdot V}\right|}\right)\\
\mathbf{elif}\;\ell \cdot V \le 2.442774188137666401114116722762846155888 \cdot 10^{-317}:\\
\;\;\;\;\left(\sqrt{\frac{A}{\ell}} \cdot \sqrt{\frac{1}{V}}\right) \cdot c0\\
\mathbf{else}:\\
\;\;\;\;c0 \cdot \frac{\sqrt{A}}{\sqrt{\ell \cdot V}}\\
\end{array}double f(double c0, double A, double V, double l) {
double r5706413 = c0;
double r5706414 = A;
double r5706415 = V;
double r5706416 = l;
double r5706417 = r5706415 * r5706416;
double r5706418 = r5706414 / r5706417;
double r5706419 = sqrt(r5706418);
double r5706420 = r5706413 * r5706419;
return r5706420;
}
double f(double c0, double A, double V, double l) {
double r5706421 = l;
double r5706422 = V;
double r5706423 = r5706421 * r5706422;
double r5706424 = -inf.0;
bool r5706425 = r5706423 <= r5706424;
double r5706426 = A;
double r5706427 = r5706426 / r5706421;
double r5706428 = sqrt(r5706427);
double r5706429 = 1.0;
double r5706430 = r5706429 / r5706422;
double r5706431 = sqrt(r5706430);
double r5706432 = r5706428 * r5706431;
double r5706433 = c0;
double r5706434 = r5706432 * r5706433;
double r5706435 = -5.601891409264343e-287;
bool r5706436 = r5706423 <= r5706435;
double r5706437 = r5706429 / r5706423;
double r5706438 = cbrt(r5706437);
double r5706439 = cbrt(r5706426);
double r5706440 = r5706438 * r5706439;
double r5706441 = sqrt(r5706440);
double r5706442 = fabs(r5706439);
double r5706443 = cbrt(r5706423);
double r5706444 = fabs(r5706443);
double r5706445 = r5706442 / r5706444;
double r5706446 = r5706433 * r5706445;
double r5706447 = r5706441 * r5706446;
double r5706448 = 2.4427741881377e-317;
bool r5706449 = r5706423 <= r5706448;
double r5706450 = sqrt(r5706426);
double r5706451 = sqrt(r5706423);
double r5706452 = r5706450 / r5706451;
double r5706453 = r5706433 * r5706452;
double r5706454 = r5706449 ? r5706434 : r5706453;
double r5706455 = r5706436 ? r5706447 : r5706454;
double r5706456 = r5706425 ? r5706434 : r5706455;
return r5706456;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
if (* V l) < -inf.0 or -5.601891409264343e-287 < (* V l) < 2.4427741881377e-317Initial program 53.0
rmApplied *-un-lft-identity53.0
Applied times-frac30.9
Applied sqrt-prod38.2
if -inf.0 < (* V l) < -5.601891409264343e-287Initial program 9.7
rmApplied add-cube-cbrt10.2
Applied sqrt-prod10.2
Applied associate-*r*10.2
rmApplied div-inv10.2
Applied cbrt-prod10.1
rmApplied cbrt-div10.1
Applied cbrt-div2.6
Applied frac-times2.6
Applied sqrt-div1.0
Simplified1.0
Simplified1.0
if 2.4427741881377e-317 < (* V l) Initial program 14.9
rmApplied sqrt-div6.6
Final simplification9.8
herbie shell --seed 2019200
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
(* c0 (sqrt (/ A (* V l)))))