\sqrt[3]{\frac{g}{2 \cdot a}}\sqrt[3]{\frac{\sqrt[3]{g} \cdot \left(\sqrt[3]{\sqrt[3]{g} \cdot \sqrt[3]{g}} \cdot \sqrt[3]{\sqrt[3]{g}}\right)}{2}} \cdot \frac{\sqrt[3]{\sqrt[3]{g}}}{\sqrt[3]{a}}double f(double g, double a) {
double r145365 = g;
double r145366 = 2.0;
double r145367 = a;
double r145368 = r145366 * r145367;
double r145369 = r145365 / r145368;
double r145370 = cbrt(r145369);
return r145370;
}
double f(double g, double a) {
double r145371 = g;
double r145372 = cbrt(r145371);
double r145373 = r145372 * r145372;
double r145374 = cbrt(r145373);
double r145375 = cbrt(r145372);
double r145376 = r145374 * r145375;
double r145377 = r145372 * r145376;
double r145378 = 2.0;
double r145379 = r145377 / r145378;
double r145380 = cbrt(r145379);
double r145381 = a;
double r145382 = cbrt(r145381);
double r145383 = r145375 / r145382;
double r145384 = r145380 * r145383;
return r145384;
}



Bits error versus g



Bits error versus a
Results
Initial program 15.6
rmApplied add-cube-cbrt15.8
Applied times-frac15.8
Applied cbrt-prod5.4
rmApplied cbrt-div1.2
rmApplied add-cube-cbrt1.2
Applied cbrt-prod1.2
Final simplification1.2
herbie shell --seed 2019354 +o rules:numerics
(FPCore (g a)
:name "2-ancestry mixing, zero discriminant"
:precision binary64
(cbrt (/ g (* 2 a))))