c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\begin{array}{l}
\mathbf{if}\;V \cdot \ell \le -6.314215375296836 \cdot 10^{-308}:\\
\;\;\;\;\sqrt{\frac{A}{V \cdot \ell}} \cdot c0\\
\mathbf{elif}\;V \cdot \ell \le -0.0:\\
\;\;\;\;c0 \cdot \left(\sqrt{\frac{1}{V}} \cdot \sqrt{\frac{A}{\ell}}\right)\\
\mathbf{elif}\;V \cdot \ell \le 2.865259651682613 \cdot 10^{+262}:\\
\;\;\;\;\frac{\sqrt{A}}{\sqrt{V \cdot \ell}} \cdot c0\\
\mathbf{else}:\\
\;\;\;\;c0 \cdot \sqrt{\frac{\frac{A}{V}}{\ell}}\\
\end{array}double f(double c0, double A, double V, double l) {
double r22497436 = c0;
double r22497437 = A;
double r22497438 = V;
double r22497439 = l;
double r22497440 = r22497438 * r22497439;
double r22497441 = r22497437 / r22497440;
double r22497442 = sqrt(r22497441);
double r22497443 = r22497436 * r22497442;
return r22497443;
}
double f(double c0, double A, double V, double l) {
double r22497444 = V;
double r22497445 = l;
double r22497446 = r22497444 * r22497445;
double r22497447 = -6.314215375296836e-308;
bool r22497448 = r22497446 <= r22497447;
double r22497449 = A;
double r22497450 = r22497449 / r22497446;
double r22497451 = sqrt(r22497450);
double r22497452 = c0;
double r22497453 = r22497451 * r22497452;
double r22497454 = -0.0;
bool r22497455 = r22497446 <= r22497454;
double r22497456 = 1.0;
double r22497457 = r22497456 / r22497444;
double r22497458 = sqrt(r22497457);
double r22497459 = r22497449 / r22497445;
double r22497460 = sqrt(r22497459);
double r22497461 = r22497458 * r22497460;
double r22497462 = r22497452 * r22497461;
double r22497463 = 2.865259651682613e+262;
bool r22497464 = r22497446 <= r22497463;
double r22497465 = sqrt(r22497449);
double r22497466 = sqrt(r22497446);
double r22497467 = r22497465 / r22497466;
double r22497468 = r22497467 * r22497452;
double r22497469 = r22497449 / r22497444;
double r22497470 = r22497469 / r22497445;
double r22497471 = sqrt(r22497470);
double r22497472 = r22497452 * r22497471;
double r22497473 = r22497464 ? r22497468 : r22497472;
double r22497474 = r22497455 ? r22497462 : r22497473;
double r22497475 = r22497448 ? r22497453 : r22497474;
return r22497475;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
if (* V l) < -6.314215375296836e-308Initial program 14.8
Taylor expanded around 0 14.8
if -6.314215375296836e-308 < (* V l) < -0.0Initial program 59.4
rmApplied *-un-lft-identity59.4
Applied times-frac36.1
Applied sqrt-prod37.1
if -0.0 < (* V l) < 2.865259651682613e+262Initial program 10.1
Taylor expanded around 0 10.1
rmApplied sqrt-div0.7
if 2.865259651682613e+262 < (* V l) Initial program 34.6
rmApplied associate-/r*21.2
Final simplification12.4
herbie shell --seed 2019112 +o rules:numerics
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
(* c0 (sqrt (/ A (* V l)))))