\sqrt[3]{\frac{g}{2 \cdot a}}\sqrt[3]{\frac{\left(\sqrt[3]{\sqrt[3]{g} \cdot \sqrt[3]{g}} \cdot \sqrt[3]{\sqrt[3]{g}}\right) \cdot \sqrt[3]{g}}{2}} \cdot \left(\sqrt[3]{\frac{1}{\sqrt[3]{a} \cdot \sqrt[3]{a}}} \cdot \sqrt[3]{\frac{\sqrt[3]{g}}{\sqrt[3]{a}}}\right)double f(double g, double a) {
double r142892 = g;
double r142893 = 2.0;
double r142894 = a;
double r142895 = r142893 * r142894;
double r142896 = r142892 / r142895;
double r142897 = cbrt(r142896);
return r142897;
}
double f(double g, double a) {
double r142898 = g;
double r142899 = cbrt(r142898);
double r142900 = r142899 * r142899;
double r142901 = cbrt(r142900);
double r142902 = cbrt(r142899);
double r142903 = r142901 * r142902;
double r142904 = r142903 * r142899;
double r142905 = 2.0;
double r142906 = r142904 / r142905;
double r142907 = cbrt(r142906);
double r142908 = 1.0;
double r142909 = a;
double r142910 = cbrt(r142909);
double r142911 = r142910 * r142910;
double r142912 = r142908 / r142911;
double r142913 = cbrt(r142912);
double r142914 = r142899 / r142910;
double r142915 = cbrt(r142914);
double r142916 = r142913 * r142915;
double r142917 = r142907 * r142916;
return r142917;
}



Bits error versus g



Bits error versus a
Results
Initial program 15.6
rmApplied add-cube-cbrt15.7
Applied times-frac15.7
Applied cbrt-prod5.7
rmApplied add-cube-cbrt5.8
Applied *-un-lft-identity5.8
Applied cbrt-prod5.8
Applied times-frac5.8
Applied cbrt-prod1.2
Simplified1.2
rmApplied add-cube-cbrt1.3
Applied cbrt-prod1.3
Final simplification1.3
herbie shell --seed 2020049
(FPCore (g a)
:name "2-ancestry mixing, zero discriminant"
:precision binary64
(cbrt (/ g (* 2 a))))