c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\left(\left|\frac{\frac{\sqrt[3]{A}}{\sqrt[3]{\ell}}}{\sqrt[3]{V}}\right| \cdot c0\right) \cdot \sqrt{\frac{\frac{\left(\sqrt[3]{\sqrt[3]{A}} \cdot \sqrt[3]{\sqrt[3]{A}}\right) \cdot \sqrt[3]{\sqrt[3]{A}}}{\sqrt[3]{\ell}}}{\sqrt[3]{V}}}double f(double c0, double A, double V, double l) {
double r135269 = c0;
double r135270 = A;
double r135271 = V;
double r135272 = l;
double r135273 = r135271 * r135272;
double r135274 = r135270 / r135273;
double r135275 = sqrt(r135274);
double r135276 = r135269 * r135275;
return r135276;
}
double f(double c0, double A, double V, double l) {
double r135277 = A;
double r135278 = cbrt(r135277);
double r135279 = l;
double r135280 = cbrt(r135279);
double r135281 = r135278 / r135280;
double r135282 = V;
double r135283 = cbrt(r135282);
double r135284 = r135281 / r135283;
double r135285 = fabs(r135284);
double r135286 = c0;
double r135287 = r135285 * r135286;
double r135288 = cbrt(r135278);
double r135289 = r135288 * r135288;
double r135290 = r135289 * r135288;
double r135291 = r135290 / r135280;
double r135292 = r135291 / r135283;
double r135293 = sqrt(r135292);
double r135294 = r135287 * r135293;
return r135294;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
Initial program 19.4
rmApplied add-cube-cbrt19.7
Applied times-frac18.3
rmApplied associate-*l/19.5
Simplified19.2
rmApplied add-cube-cbrt19.5
Applied add-cube-cbrt19.6
Applied add-cube-cbrt19.7
Applied times-frac19.7
Applied times-frac15.6
Applied sqrt-prod7.1
Applied associate-*r*7.1
Simplified1.2
rmApplied add-cube-cbrt1.3
Final simplification1.3
herbie shell --seed 2019325
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
:precision binary64
(* c0 (sqrt (/ A (* V l)))))