c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\begin{array}{l}
\mathbf{if}\;V \cdot \ell = -\infty:\\
\;\;\;\;c0 \cdot \frac{\sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V} \cdot \sqrt[3]{A}}}{\sqrt{\ell}}\\
\mathbf{elif}\;V \cdot \ell \le -1.835395593822581832332355453274066870075 \cdot 10^{-314}:\\
\;\;\;\;\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 8.360333116513188518368357839765512541553 \cdot 10^{-312}:\\
\;\;\;\;c0 \cdot \left(\sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V}} \cdot \sqrt{\frac{\sqrt[3]{A}}{\ell}}\right)\\
\mathbf{elif}\;V \cdot \ell \le 1.306286793967515713805092573865699780315 \cdot 10^{304}:\\
\;\;\;\;c0 \cdot \frac{\sqrt{A}}{\sqrt{V \cdot \ell}}\\
\mathbf{else}:\\
\;\;\;\;c0 \cdot \sqrt{\frac{\frac{A}{V}}{\ell}}\\
\end{array}double f(double c0, double A, double V, double l) {
double r133174 = c0;
double r133175 = A;
double r133176 = V;
double r133177 = l;
double r133178 = r133176 * r133177;
double r133179 = r133175 / r133178;
double r133180 = sqrt(r133179);
double r133181 = r133174 * r133180;
return r133181;
}
double f(double c0, double A, double V, double l) {
double r133182 = V;
double r133183 = l;
double r133184 = r133182 * r133183;
double r133185 = -inf.0;
bool r133186 = r133184 <= r133185;
double r133187 = c0;
double r133188 = A;
double r133189 = cbrt(r133188);
double r133190 = r133189 * r133189;
double r133191 = r133190 / r133182;
double r133192 = r133191 * r133189;
double r133193 = sqrt(r133192);
double r133194 = sqrt(r133183);
double r133195 = r133193 / r133194;
double r133196 = r133187 * r133195;
double r133197 = -1.8353955938226e-314;
bool r133198 = r133184 <= r133197;
double r133199 = r133188 / r133184;
double r133200 = sqrt(r133199);
double r133201 = sqrt(r133200);
double r133202 = r133187 * r133201;
double r133203 = r133202 * r133201;
double r133204 = 8.3603331165132e-312;
bool r133205 = r133184 <= r133204;
double r133206 = sqrt(r133191);
double r133207 = r133189 / r133183;
double r133208 = sqrt(r133207);
double r133209 = r133206 * r133208;
double r133210 = r133187 * r133209;
double r133211 = 1.3062867939675157e+304;
bool r133212 = r133184 <= r133211;
double r133213 = sqrt(r133188);
double r133214 = sqrt(r133184);
double r133215 = r133213 / r133214;
double r133216 = r133187 * r133215;
double r133217 = r133188 / r133182;
double r133218 = r133217 / r133183;
double r133219 = sqrt(r133218);
double r133220 = r133187 * r133219;
double r133221 = r133212 ? r133216 : r133220;
double r133222 = r133205 ? r133210 : r133221;
double r133223 = r133198 ? r133203 : r133222;
double r133224 = r133186 ? r133196 : r133223;
return r133224;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
if (* V l) < -inf.0Initial program 43.2
rmApplied add-cube-cbrt43.2
Applied times-frac23.7
rmApplied associate-*r/23.6
Applied sqrt-div34.9
if -inf.0 < (* V l) < -1.8353955938226e-314Initial program 10.0
rmApplied add-sqr-sqrt10.0
Applied sqrt-prod10.2
Applied associate-*r*10.2
if -1.8353955938226e-314 < (* V l) < 8.3603331165132e-312Initial program 62.4
rmApplied add-cube-cbrt62.4
Applied times-frac38.4
rmApplied sqrt-prod40.1
if 8.3603331165132e-312 < (* V l) < 1.3062867939675157e+304Initial program 10.1
rmApplied sqrt-div0.4
if 1.3062867939675157e+304 < (* V l) Initial program 41.4
rmApplied associate-/r*23.5
Final simplification11.6
herbie shell --seed 2019352
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
:precision binary64
(* c0 (sqrt (/ A (* V l)))))