c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\sqrt{\frac{\frac{\sqrt[3]{A}}{\sqrt[3]{\sqrt[3]{V}} \cdot \left(\sqrt[3]{\sqrt[3]{V}} \cdot \sqrt[3]{\sqrt[3]{V}}\right)}}{\sqrt[3]{\ell}}} \cdot \left(c0 \cdot \left|\frac{\sqrt[3]{A}}{\sqrt[3]{\ell} \cdot \sqrt[3]{V}}\right|\right)double f(double c0, double A, double V, double l) {
double r3722173 = c0;
double r3722174 = A;
double r3722175 = V;
double r3722176 = l;
double r3722177 = r3722175 * r3722176;
double r3722178 = r3722174 / r3722177;
double r3722179 = sqrt(r3722178);
double r3722180 = r3722173 * r3722179;
return r3722180;
}
double f(double c0, double A, double V, double l) {
double r3722181 = A;
double r3722182 = cbrt(r3722181);
double r3722183 = V;
double r3722184 = cbrt(r3722183);
double r3722185 = cbrt(r3722184);
double r3722186 = r3722185 * r3722185;
double r3722187 = r3722185 * r3722186;
double r3722188 = r3722182 / r3722187;
double r3722189 = l;
double r3722190 = cbrt(r3722189);
double r3722191 = r3722188 / r3722190;
double r3722192 = sqrt(r3722191);
double r3722193 = c0;
double r3722194 = r3722190 * r3722184;
double r3722195 = r3722182 / r3722194;
double r3722196 = fabs(r3722195);
double r3722197 = r3722193 * r3722196;
double r3722198 = r3722192 * r3722197;
return r3722198;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
Initial program 18.7
rmApplied associate-/r*18.3
rmApplied add-cube-cbrt18.6
Applied add-cube-cbrt18.8
Applied add-cube-cbrt18.8
Applied times-frac18.8
Applied times-frac14.9
Applied sqrt-prod6.6
Applied associate-*r*6.6
Simplified1.1
rmApplied add-cube-cbrt1.3
Final simplification1.3
herbie shell --seed 2019168 +o rules:numerics
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
(* c0 (sqrt (/ A (* V l)))))