c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\left(c0 \cdot \left|\frac{\frac{\sqrt[3]{A}}{\sqrt[3]{\ell}}}{\sqrt[3]{V}}\right|\right) \cdot \sqrt{\frac{\frac{\sqrt[3]{\sqrt[3]{A}} \cdot \sqrt[3]{\sqrt[3]{A} \cdot \sqrt[3]{A}}}{\sqrt[3]{V}}}{\sqrt[3]{\ell}}}double f(double c0, double A, double V, double l) {
double r3999782 = c0;
double r3999783 = A;
double r3999784 = V;
double r3999785 = l;
double r3999786 = r3999784 * r3999785;
double r3999787 = r3999783 / r3999786;
double r3999788 = sqrt(r3999787);
double r3999789 = r3999782 * r3999788;
return r3999789;
}
double f(double c0, double A, double V, double l) {
double r3999790 = c0;
double r3999791 = A;
double r3999792 = cbrt(r3999791);
double r3999793 = l;
double r3999794 = cbrt(r3999793);
double r3999795 = r3999792 / r3999794;
double r3999796 = V;
double r3999797 = cbrt(r3999796);
double r3999798 = r3999795 / r3999797;
double r3999799 = fabs(r3999798);
double r3999800 = r3999790 * r3999799;
double r3999801 = cbrt(r3999792);
double r3999802 = r3999792 * r3999792;
double r3999803 = cbrt(r3999802);
double r3999804 = r3999801 * r3999803;
double r3999805 = r3999804 / r3999797;
double r3999806 = r3999805 / r3999794;
double r3999807 = sqrt(r3999806);
double r3999808 = r3999800 * r3999807;
return r3999808;
}



Bits error versus c0



Bits error versus A



Bits error versus V



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