2 \cdot \cos \left(\frac{2 \cdot \pi}{3} + \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)2 \cdot \left(\frac{\sqrt{3}}{2} \cdot \sin \left(\frac{\cos^{-1} \left(\frac{g}{h}\right)}{3} - \sqrt[3]{\frac{\pi}{\frac{3}{2}}} \cdot \left(\sqrt[3]{\frac{\pi}{\frac{3}{2}}} \cdot \sqrt[3]{\frac{\pi}{\frac{3}{2}}}\right)\right) + \cos \left(\frac{\cos^{-1} \left(\frac{g}{h}\right)}{3} - \frac{\pi}{\frac{3}{2}}\right) \cdot \frac{1}{2}\right)double f(double g, double h) {
double r2693734 = 2.0;
double r2693735 = atan2(1.0, 0.0);
double r2693736 = r2693734 * r2693735;
double r2693737 = 3.0;
double r2693738 = r2693736 / r2693737;
double r2693739 = g;
double r2693740 = -r2693739;
double r2693741 = h;
double r2693742 = r2693740 / r2693741;
double r2693743 = acos(r2693742);
double r2693744 = r2693743 / r2693737;
double r2693745 = r2693738 + r2693744;
double r2693746 = cos(r2693745);
double r2693747 = r2693734 * r2693746;
return r2693747;
}
double f(double g, double h) {
double r2693748 = 2.0;
double r2693749 = 3.0;
double r2693750 = sqrt(r2693749);
double r2693751 = r2693750 / r2693748;
double r2693752 = g;
double r2693753 = h;
double r2693754 = r2693752 / r2693753;
double r2693755 = acos(r2693754);
double r2693756 = r2693755 / r2693749;
double r2693757 = atan2(1.0, 0.0);
double r2693758 = 1.5;
double r2693759 = r2693757 / r2693758;
double r2693760 = cbrt(r2693759);
double r2693761 = r2693760 * r2693760;
double r2693762 = r2693760 * r2693761;
double r2693763 = r2693756 - r2693762;
double r2693764 = sin(r2693763);
double r2693765 = r2693751 * r2693764;
double r2693766 = r2693756 - r2693759;
double r2693767 = cos(r2693766);
double r2693768 = 0.5;
double r2693769 = r2693767 * r2693768;
double r2693770 = r2693765 + r2693769;
double r2693771 = r2693748 * r2693770;
return r2693771;
}



Bits error versus g



Bits error versus h
Results
Initial program 1.0
Simplified1.0
rmApplied distribute-frac-neg1.0
Applied acos-neg1.0
Applied div-sub1.0
Applied associate-+l-1.0
Applied cos-diff0.1
Simplified0.1
Simplified0.1
rmApplied add-cube-cbrt0.1
Final simplification0.1
herbie shell --seed 2019152
(FPCore (g h)
:name "2-ancestry mixing, negative discriminant"
(* 2 (cos (+ (/ (* 2 PI) 3) (/ (acos (/ (- g) h)) 3)))))