c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\sqrt{\frac{\frac{\sqrt[3]{A}}{\sqrt[3]{\sqrt[3]{\ell}} \cdot \left(\sqrt[3]{\sqrt[3]{\ell}} \cdot \sqrt[3]{\sqrt[3]{\ell}}\right)}}{\sqrt[3]{V}}} \cdot \left(\left|\frac{\sqrt[3]{A}}{\sqrt[3]{\ell} \cdot \sqrt[3]{V}}\right| \cdot c0\right)double f(double c0, double A, double V, double l) {
double r4144095 = c0;
double r4144096 = A;
double r4144097 = V;
double r4144098 = l;
double r4144099 = r4144097 * r4144098;
double r4144100 = r4144096 / r4144099;
double r4144101 = sqrt(r4144100);
double r4144102 = r4144095 * r4144101;
return r4144102;
}
double f(double c0, double A, double V, double l) {
double r4144103 = A;
double r4144104 = cbrt(r4144103);
double r4144105 = l;
double r4144106 = cbrt(r4144105);
double r4144107 = cbrt(r4144106);
double r4144108 = r4144107 * r4144107;
double r4144109 = r4144107 * r4144108;
double r4144110 = r4144104 / r4144109;
double r4144111 = V;
double r4144112 = cbrt(r4144111);
double r4144113 = r4144110 / r4144112;
double r4144114 = sqrt(r4144113);
double r4144115 = r4144106 * r4144112;
double r4144116 = r4144104 / r4144115;
double r4144117 = fabs(r4144116);
double r4144118 = c0;
double r4144119 = r4144117 * r4144118;
double r4144120 = r4144114 * r4144119;
return r4144120;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
Initial program 18.3
rmApplied add-cube-cbrt18.6
Applied times-frac17.5
rmApplied associate-*l/18.9
Simplified18.5
rmApplied add-cube-cbrt18.9
Applied add-cube-cbrt19.0
Applied add-cube-cbrt19.1
Applied times-frac19.1
Applied times-frac14.9
Applied sqrt-prod6.9
Applied associate-*r*6.9
Simplified1.1
rmApplied add-cube-cbrt1.3
Final simplification1.3
herbie shell --seed 2019158
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
(* c0 (sqrt (/ A (* V l)))))