c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\begin{array}{l}
\mathbf{if}\;V \cdot \ell \le -1.4821969375237 \cdot 10^{-323}:\\
\;\;\;\;\left(\sqrt{\sqrt{\frac{A}{V \cdot \ell}}} \cdot c0\right) \cdot \sqrt{\sqrt{\frac{1}{V \cdot \ell} \cdot A}}\\
\mathbf{elif}\;V \cdot \ell \le 6.0030458166649 \cdot 10^{-319}:\\
\;\;\;\;\sqrt{\frac{A}{\ell}} \cdot \left(c0 \cdot \sqrt{\frac{1}{V}}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{\sqrt{A}}{\sqrt{V \cdot \ell}} \cdot c0\\
\end{array}double f(double c0, double A, double V, double l) {
double r5115393 = c0;
double r5115394 = A;
double r5115395 = V;
double r5115396 = l;
double r5115397 = r5115395 * r5115396;
double r5115398 = r5115394 / r5115397;
double r5115399 = sqrt(r5115398);
double r5115400 = r5115393 * r5115399;
return r5115400;
}
double f(double c0, double A, double V, double l) {
double r5115401 = V;
double r5115402 = l;
double r5115403 = r5115401 * r5115402;
double r5115404 = -1.4821969375237e-323;
bool r5115405 = r5115403 <= r5115404;
double r5115406 = A;
double r5115407 = r5115406 / r5115403;
double r5115408 = sqrt(r5115407);
double r5115409 = sqrt(r5115408);
double r5115410 = c0;
double r5115411 = r5115409 * r5115410;
double r5115412 = 1.0;
double r5115413 = r5115412 / r5115403;
double r5115414 = r5115413 * r5115406;
double r5115415 = sqrt(r5115414);
double r5115416 = sqrt(r5115415);
double r5115417 = r5115411 * r5115416;
double r5115418 = 6.0030458166649e-319;
bool r5115419 = r5115403 <= r5115418;
double r5115420 = r5115406 / r5115402;
double r5115421 = sqrt(r5115420);
double r5115422 = r5115412 / r5115401;
double r5115423 = sqrt(r5115422);
double r5115424 = r5115410 * r5115423;
double r5115425 = r5115421 * r5115424;
double r5115426 = sqrt(r5115406);
double r5115427 = sqrt(r5115403);
double r5115428 = r5115426 / r5115427;
double r5115429 = r5115428 * r5115410;
double r5115430 = r5115419 ? r5115425 : r5115429;
double r5115431 = r5115405 ? r5115417 : r5115430;
return r5115431;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
if (* V l) < -1.4821969375237e-323Initial program 14.9
rmApplied add-sqr-sqrt15.1
Applied associate-*r*15.1
rmApplied div-inv15.2
if -1.4821969375237e-323 < (* V l) < 6.0030458166649e-319Initial program 60.6
rmApplied *-un-lft-identity60.6
Applied times-frac38.4
Applied sqrt-prod41.1
Applied associate-*r*41.7
if 6.0030458166649e-319 < (* V l) Initial program 14.5
rmApplied sqrt-div6.1
Final simplification13.3
herbie shell --seed 2019143
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
(* c0 (sqrt (/ A (* V l)))))