c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\begin{array}{l}
\mathbf{if}\;V \cdot \ell \le 2.96439387504747926505941275720932823419 \cdot 10^{-323}:\\
\;\;\;\;c0 \cdot \sqrt{\frac{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}{V} \cdot \frac{\sqrt[3]{A}}{\sqrt[3]{\ell}}}\\
\mathbf{elif}\;V \cdot \ell \le 1.666028060170161707591813005969240947671 \cdot 10^{121}:\\
\;\;\;\;\frac{c0 \cdot \sqrt{A}}{\sqrt{V \cdot \ell}}\\
\mathbf{else}:\\
\;\;\;\;c0 \cdot \frac{\sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \sqrt[3]{A}}}{\sqrt{V \cdot \sqrt[3]{\ell}}}\\
\end{array}double f(double c0, double A, double V, double l) {
double r175358 = c0;
double r175359 = A;
double r175360 = V;
double r175361 = l;
double r175362 = r175360 * r175361;
double r175363 = r175359 / r175362;
double r175364 = sqrt(r175363);
double r175365 = r175358 * r175364;
return r175365;
}
double f(double c0, double A, double V, double l) {
double r175366 = V;
double r175367 = l;
double r175368 = r175366 * r175367;
double r175369 = 2.9643938750475e-323;
bool r175370 = r175368 <= r175369;
double r175371 = c0;
double r175372 = A;
double r175373 = cbrt(r175372);
double r175374 = r175373 * r175373;
double r175375 = cbrt(r175367);
double r175376 = r175375 * r175375;
double r175377 = r175374 / r175376;
double r175378 = r175377 / r175366;
double r175379 = r175373 / r175375;
double r175380 = r175378 * r175379;
double r175381 = sqrt(r175380);
double r175382 = r175371 * r175381;
double r175383 = 1.6660280601701617e+121;
bool r175384 = r175368 <= r175383;
double r175385 = sqrt(r175372);
double r175386 = r175371 * r175385;
double r175387 = sqrt(r175368);
double r175388 = r175386 / r175387;
double r175389 = r175377 * r175373;
double r175390 = sqrt(r175389);
double r175391 = r175366 * r175375;
double r175392 = sqrt(r175391);
double r175393 = r175390 / r175392;
double r175394 = r175371 * r175393;
double r175395 = r175384 ? r175388 : r175394;
double r175396 = r175370 ? r175382 : r175395;
return r175396;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
if (* V l) < 2.9643938750475e-323Initial program 23.8
rmApplied *-un-lft-identity23.8
Applied times-frac21.4
rmApplied add-cube-cbrt21.7
Applied add-cube-cbrt21.8
Applied times-frac21.8
Applied associate-*r*18.1
Simplified18.1
if 2.9643938750475e-323 < (* V l) < 1.6660280601701617e+121Initial program 9.0
rmApplied sqrt-div0.8
Applied associate-*r/2.8
if 1.6660280601701617e+121 < (* V l) Initial program 23.2
rmApplied *-un-lft-identity23.2
Applied times-frac19.1
rmApplied add-cube-cbrt19.3
Applied add-cube-cbrt19.4
Applied times-frac19.4
Applied associate-*r*17.4
Simplified17.4
rmApplied frac-times19.0
Applied sqrt-div9.9
Final simplification12.2
herbie shell --seed 2019362
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
:precision binary64
(* c0 (sqrt (/ A (* V l)))))