c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\left(\left|\frac{\frac{\sqrt[3]{A}}{\sqrt[3]{\ell}}}{\left(\sqrt[3]{\sqrt[3]{V}} \cdot \sqrt[3]{\sqrt[3]{V}}\right) \cdot \sqrt[3]{\sqrt[3]{V}}}\right| \cdot c0\right) \cdot \sqrt{\frac{\frac{\sqrt[3]{A}}{\sqrt[3]{V}}}{\sqrt[3]{\ell}}}double f(double c0, double A, double V, double l) {
double r1804235 = c0;
double r1804236 = A;
double r1804237 = V;
double r1804238 = l;
double r1804239 = r1804237 * r1804238;
double r1804240 = r1804236 / r1804239;
double r1804241 = sqrt(r1804240);
double r1804242 = r1804235 * r1804241;
return r1804242;
}
double f(double c0, double A, double V, double l) {
double r1804243 = A;
double r1804244 = cbrt(r1804243);
double r1804245 = l;
double r1804246 = cbrt(r1804245);
double r1804247 = r1804244 / r1804246;
double r1804248 = V;
double r1804249 = cbrt(r1804248);
double r1804250 = cbrt(r1804249);
double r1804251 = r1804250 * r1804250;
double r1804252 = r1804251 * r1804250;
double r1804253 = r1804247 / r1804252;
double r1804254 = fabs(r1804253);
double r1804255 = c0;
double r1804256 = r1804254 * r1804255;
double r1804257 = r1804244 / r1804249;
double r1804258 = r1804257 / r1804246;
double r1804259 = sqrt(r1804258);
double r1804260 = r1804256 * r1804259;
return r1804260;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
Initial program 18.5
rmApplied associate-/r*18.5
rmApplied add-cube-cbrt18.8
Applied add-cube-cbrt18.9
Applied add-cube-cbrt19.0
Applied times-frac19.0
Applied times-frac14.9
Applied sqrt-prod7.0
Applied associate-*r*7.0
Simplified1.1
rmApplied add-cube-cbrt1.5
Final simplification1.5
herbie shell --seed 2019152
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
(* c0 (sqrt (/ A (* V l)))))