c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\begin{array}{l}
\mathbf{if}\;V \cdot \ell \le -6.472040851531678203958266160893295162867 \cdot 10^{-271}:\\
\;\;\;\;\left(c0 \cdot \sqrt{\sqrt{\frac{A}{V \cdot \ell}}}\right) \cdot \sqrt{\sqrt{\frac{A}{V \cdot \ell}}}\\
\mathbf{elif}\;V \cdot \ell \le 0.0:\\
\;\;\;\;\left(c0 \cdot \sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V}}\right) \cdot \sqrt{\frac{\sqrt[3]{A}}{\ell}}\\
\mathbf{elif}\;V \cdot \ell \le 2.700786048354441713096879449910575204342 \cdot 10^{293}:\\
\;\;\;\;c0 \cdot \left(\sqrt{A} \cdot \sqrt{\frac{1}{V \cdot \ell}}\right)\\
\mathbf{else}:\\
\;\;\;\;c0 \cdot \left(\sqrt{\frac{\sqrt{A}}{V}} \cdot \sqrt{\frac{\sqrt{A}}{\ell}}\right)\\
\end{array}double f(double c0, double A, double V, double l) {
double r140998 = c0;
double r140999 = A;
double r141000 = V;
double r141001 = l;
double r141002 = r141000 * r141001;
double r141003 = r140999 / r141002;
double r141004 = sqrt(r141003);
double r141005 = r140998 * r141004;
return r141005;
}
double f(double c0, double A, double V, double l) {
double r141006 = V;
double r141007 = l;
double r141008 = r141006 * r141007;
double r141009 = -6.472040851531678e-271;
bool r141010 = r141008 <= r141009;
double r141011 = c0;
double r141012 = A;
double r141013 = r141012 / r141008;
double r141014 = sqrt(r141013);
double r141015 = sqrt(r141014);
double r141016 = r141011 * r141015;
double r141017 = r141016 * r141015;
double r141018 = 0.0;
bool r141019 = r141008 <= r141018;
double r141020 = cbrt(r141012);
double r141021 = r141020 * r141020;
double r141022 = r141021 / r141006;
double r141023 = sqrt(r141022);
double r141024 = r141011 * r141023;
double r141025 = r141020 / r141007;
double r141026 = sqrt(r141025);
double r141027 = r141024 * r141026;
double r141028 = 2.7007860483544417e+293;
bool r141029 = r141008 <= r141028;
double r141030 = sqrt(r141012);
double r141031 = 1.0;
double r141032 = r141031 / r141008;
double r141033 = sqrt(r141032);
double r141034 = r141030 * r141033;
double r141035 = r141011 * r141034;
double r141036 = r141030 / r141006;
double r141037 = sqrt(r141036);
double r141038 = r141030 / r141007;
double r141039 = sqrt(r141038);
double r141040 = r141037 * r141039;
double r141041 = r141011 * r141040;
double r141042 = r141029 ? r141035 : r141041;
double r141043 = r141019 ? r141027 : r141042;
double r141044 = r141010 ? r141017 : r141043;
return r141044;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
if (* V l) < -6.472040851531678e-271Initial program 13.9
rmApplied add-sqr-sqrt13.9
Applied sqrt-prod14.1
Applied associate-*r*14.1
if -6.472040851531678e-271 < (* V l) < 0.0Initial program 53.8
rmApplied add-cube-cbrt53.9
Applied times-frac34.1
Applied sqrt-prod38.4
Applied associate-*r*38.5
if 0.0 < (* V l) < 2.7007860483544417e+293Initial program 16.2
rmApplied div-inv16.5
Applied sqrt-prod7.3
if 2.7007860483544417e+293 < (* V l) Initial program 37.6
rmApplied add-sqr-sqrt37.6
Applied times-frac22.8
Applied sqrt-prod33.0
Final simplification13.0
herbie shell --seed 2019305
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
:precision binary64
(* c0 (sqrt (/ A (* V l)))))