c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\begin{array}{l}
\mathbf{if}\;V \le -5.556283518325683243464468114976330835385 \cdot 10^{-309}:\\
\;\;\;\;\left(c0 \cdot \sqrt{\sqrt{\frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{\sqrt[3]{V} \cdot \sqrt[3]{V}} \cdot \frac{\frac{A}{\ell}}{\sqrt[3]{V}}}}\right) \cdot \sqrt{\sqrt{\frac{1}{V} \cdot \frac{A}{\ell}}}\\
\mathbf{elif}\;V \le 3.621419097460427185242147570218797506351 \cdot 10^{-142}:\\
\;\;\;\;c0 \cdot \left(\sqrt{\frac{1}{V}} \cdot \sqrt{\frac{A}{\ell}}\right)\\
\mathbf{elif}\;V \le 2.480087127913832854241189970085787477828 \cdot 10^{154}:\\
\;\;\;\;c0 \cdot \left(\sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V}} \cdot \sqrt{\frac{\sqrt[3]{A}}{\ell}}\right)\\
\mathbf{else}:\\
\;\;\;\;c0 \cdot \left(\sqrt{\frac{1}{V}} \cdot \sqrt{\frac{A}{\ell}}\right)\\
\end{array}double f(double c0, double A, double V, double l) {
double r128405 = c0;
double r128406 = A;
double r128407 = V;
double r128408 = l;
double r128409 = r128407 * r128408;
double r128410 = r128406 / r128409;
double r128411 = sqrt(r128410);
double r128412 = r128405 * r128411;
return r128412;
}
double f(double c0, double A, double V, double l) {
double r128413 = V;
double r128414 = -5.556283518325683e-309;
bool r128415 = r128413 <= r128414;
double r128416 = c0;
double r128417 = 1.0;
double r128418 = cbrt(r128417);
double r128419 = r128418 * r128418;
double r128420 = cbrt(r128413);
double r128421 = r128420 * r128420;
double r128422 = r128419 / r128421;
double r128423 = A;
double r128424 = l;
double r128425 = r128423 / r128424;
double r128426 = r128425 / r128420;
double r128427 = r128422 * r128426;
double r128428 = sqrt(r128427);
double r128429 = sqrt(r128428);
double r128430 = r128416 * r128429;
double r128431 = r128417 / r128413;
double r128432 = r128431 * r128425;
double r128433 = sqrt(r128432);
double r128434 = sqrt(r128433);
double r128435 = r128430 * r128434;
double r128436 = 3.621419097460427e-142;
bool r128437 = r128413 <= r128436;
double r128438 = sqrt(r128431);
double r128439 = sqrt(r128425);
double r128440 = r128438 * r128439;
double r128441 = r128416 * r128440;
double r128442 = 2.480087127913833e+154;
bool r128443 = r128413 <= r128442;
double r128444 = cbrt(r128423);
double r128445 = r128444 * r128444;
double r128446 = r128445 / r128413;
double r128447 = sqrt(r128446);
double r128448 = r128444 / r128424;
double r128449 = sqrt(r128448);
double r128450 = r128447 * r128449;
double r128451 = r128416 * r128450;
double r128452 = r128443 ? r128451 : r128441;
double r128453 = r128437 ? r128441 : r128452;
double r128454 = r128415 ? r128435 : r128453;
return r128454;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
if V < -5.556283518325683e-309Initial program 19.6
rmApplied *-un-lft-identity19.6
Applied times-frac19.6
rmApplied add-sqr-sqrt19.8
Applied associate-*r*19.8
rmApplied add-cube-cbrt19.8
Applied add-cube-cbrt19.8
Applied times-frac19.8
Applied associate-*l*19.8
Simplified19.8
if -5.556283518325683e-309 < V < 3.621419097460427e-142 or 2.480087127913833e+154 < V Initial program 23.6
rmApplied *-un-lft-identity23.6
Applied times-frac23.0
Applied sqrt-prod11.4
if 3.621419097460427e-142 < V < 2.480087127913833e+154Initial program 13.3
rmApplied add-cube-cbrt13.7
Applied times-frac11.8
Applied sqrt-prod4.1
Final simplification13.9
herbie shell --seed 2019354
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
:precision binary64
(* c0 (sqrt (/ A (* V l)))))