c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\begin{array}{l}
\mathbf{if}\;V \cdot \ell \le -9.06360601863790799 \cdot 10^{284}:\\
\;\;\;\;\left(c0 \cdot \sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V}}\right) \cdot \sqrt{\frac{\sqrt[3]{A}}{\ell}}\\
\mathbf{elif}\;V \cdot \ell \le -3.08257491941769578 \cdot 10^{-195}:\\
\;\;\;\;\left(\left|\sqrt[3]{\frac{A}{V \cdot \ell}}\right| \cdot c0\right) \cdot \sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}}}\\
\mathbf{elif}\;V \cdot \ell \le 6.900941 \cdot 10^{-318}:\\
\;\;\;\;c0 \cdot \sqrt{\frac{A}{V} \cdot \frac{1}{\ell}}\\
\mathbf{elif}\;V \cdot \ell \le 1.3470627133444004 \cdot 10^{300}:\\
\;\;\;\;c0 \cdot \frac{\sqrt{A}}{\sqrt{V \cdot \ell}}\\
\mathbf{else}:\\
\;\;\;\;c0 \cdot \frac{\sqrt{\frac{A}{V}}}{\sqrt{\ell}}\\
\end{array}double f(double c0, double A, double V, double l) {
double r213110 = c0;
double r213111 = A;
double r213112 = V;
double r213113 = l;
double r213114 = r213112 * r213113;
double r213115 = r213111 / r213114;
double r213116 = sqrt(r213115);
double r213117 = r213110 * r213116;
return r213117;
}
double f(double c0, double A, double V, double l) {
double r213118 = V;
double r213119 = l;
double r213120 = r213118 * r213119;
double r213121 = -9.063606018637908e+284;
bool r213122 = r213120 <= r213121;
double r213123 = c0;
double r213124 = A;
double r213125 = cbrt(r213124);
double r213126 = r213125 * r213125;
double r213127 = r213126 / r213118;
double r213128 = sqrt(r213127);
double r213129 = r213123 * r213128;
double r213130 = r213125 / r213119;
double r213131 = sqrt(r213130);
double r213132 = r213129 * r213131;
double r213133 = -3.0825749194176958e-195;
bool r213134 = r213120 <= r213133;
double r213135 = r213124 / r213120;
double r213136 = cbrt(r213135);
double r213137 = fabs(r213136);
double r213138 = r213137 * r213123;
double r213139 = sqrt(r213136);
double r213140 = r213138 * r213139;
double r213141 = 6.9009409587909e-318;
bool r213142 = r213120 <= r213141;
double r213143 = r213124 / r213118;
double r213144 = 1.0;
double r213145 = r213144 / r213119;
double r213146 = r213143 * r213145;
double r213147 = sqrt(r213146);
double r213148 = r213123 * r213147;
double r213149 = 1.3470627133444004e+300;
bool r213150 = r213120 <= r213149;
double r213151 = sqrt(r213124);
double r213152 = sqrt(r213120);
double r213153 = r213151 / r213152;
double r213154 = r213123 * r213153;
double r213155 = sqrt(r213143);
double r213156 = sqrt(r213119);
double r213157 = r213155 / r213156;
double r213158 = r213123 * r213157;
double r213159 = r213150 ? r213154 : r213158;
double r213160 = r213142 ? r213148 : r213159;
double r213161 = r213134 ? r213140 : r213160;
double r213162 = r213122 ? r213132 : r213161;
return r213162;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
if (* V l) < -9.063606018637908e+284Initial program 39.1
rmApplied add-cube-cbrt39.2
Applied times-frac22.6
Applied sqrt-prod35.2
Applied associate-*r*35.5
if -9.063606018637908e+284 < (* V l) < -3.0825749194176958e-195Initial program 7.9
rmApplied add-cube-cbrt8.3
Applied sqrt-prod8.3
Applied associate-*r*8.3
Simplified8.3
if -3.0825749194176958e-195 < (* V l) < 6.9009409587909e-318Initial program 46.9
rmApplied add-cube-cbrt47.1
Applied times-frac28.8
rmApplied div-inv28.9
Applied associate-*r*29.2
Simplified28.9
if 6.9009409587909e-318 < (* V l) < 1.3470627133444004e+300Initial program 10.5
rmApplied sqrt-div0.5
if 1.3470627133444004e+300 < (* V l) Initial program 38.5
rmApplied add-cube-cbrt38.6
Applied times-frac21.7
rmApplied div-inv21.7
Applied associate-*r*21.7
Simplified21.5
rmApplied un-div-inv21.5
Applied sqrt-div36.9
Final simplification12.5
herbie shell --seed 2020047 +o rules:numerics
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
:precision binary64
(* c0 (sqrt (/ A (* V l)))))