c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\left(\left|\frac{\frac{\sqrt[3]{A}}{\sqrt[3]{\sqrt[3]{\ell}} \cdot \sqrt[3]{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}}{\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 r3457826 = c0;
double r3457827 = A;
double r3457828 = V;
double r3457829 = l;
double r3457830 = r3457828 * r3457829;
double r3457831 = r3457827 / r3457830;
double r3457832 = sqrt(r3457831);
double r3457833 = r3457826 * r3457832;
return r3457833;
}
double f(double c0, double A, double V, double l) {
double r3457834 = A;
double r3457835 = cbrt(r3457834);
double r3457836 = l;
double r3457837 = cbrt(r3457836);
double r3457838 = cbrt(r3457837);
double r3457839 = r3457837 * r3457837;
double r3457840 = cbrt(r3457839);
double r3457841 = r3457838 * r3457840;
double r3457842 = r3457835 / r3457841;
double r3457843 = V;
double r3457844 = cbrt(r3457843);
double r3457845 = r3457842 / r3457844;
double r3457846 = fabs(r3457845);
double r3457847 = c0;
double r3457848 = r3457846 * r3457847;
double r3457849 = r3457835 / r3457844;
double r3457850 = r3457849 / r3457837;
double r3457851 = sqrt(r3457850);
double r3457852 = r3457848 * r3457851;
return r3457852;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
Initial program 19.2
rmApplied associate-/r*19.0
rmApplied add-cube-cbrt19.3
Applied add-cube-cbrt19.4
Applied add-cube-cbrt19.5
Applied times-frac19.5
Applied times-frac15.5
Applied sqrt-prod7.3
Applied associate-*r*7.3
Simplified1.1
rmApplied add-cube-cbrt1.2
Applied cbrt-prod1.3
Final simplification1.3
herbie shell --seed 2019174 +o rules:numerics
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
(* c0 (sqrt (/ A (* V l)))))