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 r5670816 = c0;
double r5670817 = A;
double r5670818 = V;
double r5670819 = l;
double r5670820 = r5670818 * r5670819;
double r5670821 = r5670817 / r5670820;
double r5670822 = sqrt(r5670821);
double r5670823 = r5670816 * r5670822;
return r5670823;
}
double f(double c0, double A, double V, double l) {
double r5670824 = l;
double r5670825 = V;
double r5670826 = r5670824 * r5670825;
double r5670827 = -inf.0;
bool r5670828 = r5670826 <= r5670827;
double r5670829 = A;
double r5670830 = r5670829 / r5670824;
double r5670831 = sqrt(r5670830);
double r5670832 = 1.0;
double r5670833 = r5670832 / r5670825;
double r5670834 = sqrt(r5670833);
double r5670835 = r5670831 * r5670834;
double r5670836 = c0;
double r5670837 = r5670835 * r5670836;
double r5670838 = -5.601891409264343e-287;
bool r5670839 = r5670826 <= r5670838;
double r5670840 = r5670832 / r5670826;
double r5670841 = cbrt(r5670840);
double r5670842 = cbrt(r5670829);
double r5670843 = r5670841 * r5670842;
double r5670844 = sqrt(r5670843);
double r5670845 = fabs(r5670842);
double r5670846 = cbrt(r5670826);
double r5670847 = fabs(r5670846);
double r5670848 = r5670845 / r5670847;
double r5670849 = r5670836 * r5670848;
double r5670850 = r5670844 * r5670849;
double r5670851 = 2.4427741881377e-317;
bool r5670852 = r5670826 <= r5670851;
double r5670853 = sqrt(r5670829);
double r5670854 = sqrt(r5670826);
double r5670855 = r5670853 / r5670854;
double r5670856 = r5670836 * r5670855;
double r5670857 = r5670852 ? r5670837 : r5670856;
double r5670858 = r5670839 ? r5670850 : r5670857;
double r5670859 = r5670828 ? r5670837 : r5670858;
return r5670859;
}



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)))))