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]{\sqrt[3]{V}} \cdot \sqrt[3]{\sqrt[3]{V} \cdot \sqrt[3]{V}}}}{\sqrt[3]{\ell}}}double f(double c0, double A, double V, double l) {
double r26387547 = c0;
double r26387548 = A;
double r26387549 = V;
double r26387550 = l;
double r26387551 = r26387549 * r26387550;
double r26387552 = r26387548 / r26387551;
double r26387553 = sqrt(r26387552);
double r26387554 = r26387547 * r26387553;
return r26387554;
}
double f(double c0, double A, double V, double l) {
double r26387555 = A;
double r26387556 = cbrt(r26387555);
double r26387557 = V;
double r26387558 = cbrt(r26387557);
double r26387559 = r26387556 / r26387558;
double r26387560 = l;
double r26387561 = cbrt(r26387560);
double r26387562 = r26387559 / r26387561;
double r26387563 = fabs(r26387562);
double r26387564 = c0;
double r26387565 = r26387563 * r26387564;
double r26387566 = cbrt(r26387558);
double r26387567 = r26387558 * r26387558;
double r26387568 = cbrt(r26387567);
double r26387569 = r26387566 * r26387568;
double r26387570 = r26387556 / r26387569;
double r26387571 = r26387570 / r26387561;
double r26387572 = sqrt(r26387571);
double r26387573 = r26387565 * r26387572;
return r26387573;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
Initial program 19.3
rmApplied associate-/r*19.5
rmApplied add-cube-cbrt19.8
Applied add-cube-cbrt20.0
Applied add-cube-cbrt20.0
Applied times-frac20.0
Applied times-frac15.8
Applied sqrt-prod7.6
Simplified2.3
rmApplied associate-*r*1.2
rmApplied add-cube-cbrt1.2
Applied cbrt-prod1.2
Final simplification1.2
herbie shell --seed 2019107
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
(* c0 (sqrt (/ A (* V l)))))