\sqrt[3]{\frac{g}{2 \cdot a}}\left(\sqrt[3]{\frac{1}{2}} \cdot \sqrt[3]{g}\right) \cdot \sqrt[3]{\frac{1}{a}}double f(double g, double a) {
double r4871210 = g;
double r4871211 = 2.0;
double r4871212 = a;
double r4871213 = r4871211 * r4871212;
double r4871214 = r4871210 / r4871213;
double r4871215 = cbrt(r4871214);
return r4871215;
}
double f(double g, double a) {
double r4871216 = 0.5;
double r4871217 = cbrt(r4871216);
double r4871218 = g;
double r4871219 = cbrt(r4871218);
double r4871220 = r4871217 * r4871219;
double r4871221 = 1.0;
double r4871222 = a;
double r4871223 = r4871221 / r4871222;
double r4871224 = cbrt(r4871223);
double r4871225 = r4871220 * r4871224;
return r4871225;
}



Bits error versus g



Bits error versus a
Results
Initial program 15.5
rmApplied div-inv15.5
Applied cbrt-prod0.9
Simplified0.8
Taylor expanded around inf 33.4
Simplified0.8
rmApplied cbrt-unprod0.8
Simplified0.8
rmApplied div-inv0.8
Applied cbrt-prod0.8
Applied associate-*r*0.8
Final simplification0.8
herbie shell --seed 2019133 +o rules:numerics
(FPCore (g a)
:name "2-ancestry mixing, zero discriminant"
(cbrt (/ g (* 2 a))))