c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\begin{array}{l}
\mathbf{if}\;V \cdot \ell = -\infty:\\
\;\;\;\;\sqrt{\frac{\frac{A}{V}}{\ell}} \cdot c0\\
\mathbf{elif}\;V \cdot \ell \le -3.006299384844621 \cdot 10^{-280}:\\
\;\;\;\;\sqrt{\frac{A}{V \cdot \ell}} \cdot c0\\
\mathbf{elif}\;V \cdot \ell \le 2.1852523515558 \cdot 10^{-320}:\\
\;\;\;\;\frac{\sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V} \cdot \sqrt[3]{A}} \cdot c0}{\sqrt{\ell}}\\
\mathbf{elif}\;V \cdot \ell \le 3.164392076131669 \cdot 10^{+251}:\\
\;\;\;\;\frac{\sqrt{A}}{\sqrt{V \cdot \ell}} \cdot c0\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\frac{\frac{A}{V}}{\ell}} \cdot c0\\
\end{array}double f(double c0, double A, double V, double l) {
double r2395527 = c0;
double r2395528 = A;
double r2395529 = V;
double r2395530 = l;
double r2395531 = r2395529 * r2395530;
double r2395532 = r2395528 / r2395531;
double r2395533 = sqrt(r2395532);
double r2395534 = r2395527 * r2395533;
return r2395534;
}
double f(double c0, double A, double V, double l) {
double r2395535 = V;
double r2395536 = l;
double r2395537 = r2395535 * r2395536;
double r2395538 = -inf.0;
bool r2395539 = r2395537 <= r2395538;
double r2395540 = A;
double r2395541 = r2395540 / r2395535;
double r2395542 = r2395541 / r2395536;
double r2395543 = sqrt(r2395542);
double r2395544 = c0;
double r2395545 = r2395543 * r2395544;
double r2395546 = -3.006299384844621e-280;
bool r2395547 = r2395537 <= r2395546;
double r2395548 = r2395540 / r2395537;
double r2395549 = sqrt(r2395548);
double r2395550 = r2395549 * r2395544;
double r2395551 = 2.1852523515558e-320;
bool r2395552 = r2395537 <= r2395551;
double r2395553 = cbrt(r2395540);
double r2395554 = r2395553 * r2395553;
double r2395555 = r2395554 / r2395535;
double r2395556 = r2395555 * r2395553;
double r2395557 = sqrt(r2395556);
double r2395558 = r2395557 * r2395544;
double r2395559 = sqrt(r2395536);
double r2395560 = r2395558 / r2395559;
double r2395561 = 3.164392076131669e+251;
bool r2395562 = r2395537 <= r2395561;
double r2395563 = sqrt(r2395540);
double r2395564 = sqrt(r2395537);
double r2395565 = r2395563 / r2395564;
double r2395566 = r2395565 * r2395544;
double r2395567 = r2395562 ? r2395566 : r2395545;
double r2395568 = r2395552 ? r2395560 : r2395567;
double r2395569 = r2395547 ? r2395550 : r2395568;
double r2395570 = r2395539 ? r2395545 : r2395569;
return r2395570;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
if (* V l) < -inf.0 or 3.164392076131669e+251 < (* V l) Initial program 38.7
rmApplied associate-/r*22.8
if -inf.0 < (* V l) < -3.006299384844621e-280Initial program 9.0
rmApplied add-cube-cbrt9.4
Applied times-frac14.1
Taylor expanded around -inf 9.0
if -3.006299384844621e-280 < (* V l) < 2.1852523515558e-320Initial program 56.1
rmApplied add-cube-cbrt56.2
Applied times-frac35.7
rmApplied associate-*r/35.7
Applied sqrt-div38.8
Applied associate-*r/39.3
if 2.1852523515558e-320 < (* V l) < 3.164392076131669e+251Initial program 8.9
rmApplied sqrt-div0.6
Final simplification11.0
herbie shell --seed 2019129 +o rules:numerics
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
(* c0 (sqrt (/ A (* V l)))))