c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\begin{array}{l}
\mathbf{if}\;V \cdot \ell = -\infty:\\
\;\;\;\;c0 \cdot \sqrt{\frac{A}{\ell} \cdot \frac{1}{V}}\\
\mathbf{elif}\;V \cdot \ell \le -2.501882912097141003560534876558580681891 \cdot 10^{-258}:\\
\;\;\;\;\sqrt{\frac{A}{V \cdot \ell}} \cdot c0\\
\mathbf{elif}\;V \cdot \ell \le -0.0:\\
\;\;\;\;\frac{\sqrt{\frac{A}{V}}}{\sqrt{\ell}} \cdot c0\\
\mathbf{else}:\\
\;\;\;\;\frac{\sqrt{A}}{\sqrt{V \cdot \ell}} \cdot c0\\
\end{array}double f(double c0, double A, double V, double l) {
double r5826433 = c0;
double r5826434 = A;
double r5826435 = V;
double r5826436 = l;
double r5826437 = r5826435 * r5826436;
double r5826438 = r5826434 / r5826437;
double r5826439 = sqrt(r5826438);
double r5826440 = r5826433 * r5826439;
return r5826440;
}
double f(double c0, double A, double V, double l) {
double r5826441 = V;
double r5826442 = l;
double r5826443 = r5826441 * r5826442;
double r5826444 = -inf.0;
bool r5826445 = r5826443 <= r5826444;
double r5826446 = c0;
double r5826447 = A;
double r5826448 = r5826447 / r5826442;
double r5826449 = 1.0;
double r5826450 = r5826449 / r5826441;
double r5826451 = r5826448 * r5826450;
double r5826452 = sqrt(r5826451);
double r5826453 = r5826446 * r5826452;
double r5826454 = -2.501882912097141e-258;
bool r5826455 = r5826443 <= r5826454;
double r5826456 = r5826447 / r5826443;
double r5826457 = sqrt(r5826456);
double r5826458 = r5826457 * r5826446;
double r5826459 = -0.0;
bool r5826460 = r5826443 <= r5826459;
double r5826461 = r5826447 / r5826441;
double r5826462 = sqrt(r5826461);
double r5826463 = sqrt(r5826442);
double r5826464 = r5826462 / r5826463;
double r5826465 = r5826464 * r5826446;
double r5826466 = sqrt(r5826447);
double r5826467 = sqrt(r5826443);
double r5826468 = r5826466 / r5826467;
double r5826469 = r5826468 * r5826446;
double r5826470 = r5826460 ? r5826465 : r5826469;
double r5826471 = r5826455 ? r5826458 : r5826470;
double r5826472 = r5826445 ? r5826453 : r5826471;
return r5826472;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
if (* V l) < -inf.0Initial program 40.2
rmApplied *-un-lft-identity40.2
Applied times-frac23.2
if -inf.0 < (* V l) < -2.501882912097141e-258Initial program 9.2
if -2.501882912097141e-258 < (* V l) < -0.0Initial program 55.9
rmApplied *-un-lft-identity55.9
Applied times-frac35.9
rmApplied associate-*r/35.9
Applied sqrt-div40.0
Simplified40.0
if -0.0 < (* V l) Initial program 15.1
rmApplied sqrt-div7.2
Final simplification12.6
herbie shell --seed 2019172
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
(* c0 (sqrt (/ A (* V l)))))