c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\left(\left|\frac{\frac{\sqrt[3]{A}}{\sqrt[3]{V}}}{\sqrt[3]{\ell}}\right| \cdot c0\right) \cdot \sqrt{\frac{\frac{\sqrt[3]{A}}{\sqrt[3]{V}}}{\left(\sqrt[3]{\sqrt[3]{\ell}} \cdot \sqrt[3]{\sqrt[3]{\ell}}\right) \cdot \sqrt[3]{\sqrt[3]{\ell}}}}double f(double c0, double A, double V, double l) {
double r290359 = c0;
double r290360 = A;
double r290361 = V;
double r290362 = l;
double r290363 = r290361 * r290362;
double r290364 = r290360 / r290363;
double r290365 = sqrt(r290364);
double r290366 = r290359 * r290365;
return r290366;
}
double f(double c0, double A, double V, double l) {
double r290367 = A;
double r290368 = cbrt(r290367);
double r290369 = V;
double r290370 = cbrt(r290369);
double r290371 = r290368 / r290370;
double r290372 = l;
double r290373 = cbrt(r290372);
double r290374 = r290371 / r290373;
double r290375 = fabs(r290374);
double r290376 = c0;
double r290377 = r290375 * r290376;
double r290378 = cbrt(r290373);
double r290379 = r290378 * r290378;
double r290380 = r290379 * r290378;
double r290381 = r290371 / r290380;
double r290382 = sqrt(r290381);
double r290383 = r290377 * r290382;
return r290383;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
Initial program 19.2
rmApplied associate-/r*18.9
rmApplied add-cube-cbrt19.2
Applied add-cube-cbrt19.4
Applied add-cube-cbrt19.4
Applied times-frac19.4
Applied times-frac15.1
Applied sqrt-prod6.8
Applied associate-*r*6.8
Simplified1.2
rmApplied add-cube-cbrt1.3
Final simplification1.3
herbie shell --seed 2020036 +o rules:numerics
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
:precision binary64
(* c0 (sqrt (/ A (* V l)))))