2 \cdot \cos \left(\frac{2 \cdot \pi}{3} + \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\left(\cos \left(\frac{\frac{\pi}{2}}{3}\right) \cdot \cos \left(\frac{\sin^{-1} \left(\frac{-g}{h}\right)}{3} - \frac{\frac{\pi}{\sqrt{\frac{3}{2}}}}{\sqrt{\frac{3}{2}}}\right) + \sin \left(\frac{\sin^{-1} \left(\frac{-g}{h}\right)}{3} - \frac{\frac{\pi}{\sqrt{\frac{3}{2}}}}{\sqrt{\frac{3}{2}}}\right) \cdot \sin \left(\frac{\sqrt{\pi}}{6} \cdot \sqrt{\pi}\right)\right) \cdot 2double f(double g, double h) {
double r4440718 = 2.0;
double r4440719 = atan2(1.0, 0.0);
double r4440720 = r4440718 * r4440719;
double r4440721 = 3.0;
double r4440722 = r4440720 / r4440721;
double r4440723 = g;
double r4440724 = -r4440723;
double r4440725 = h;
double r4440726 = r4440724 / r4440725;
double r4440727 = acos(r4440726);
double r4440728 = r4440727 / r4440721;
double r4440729 = r4440722 + r4440728;
double r4440730 = cos(r4440729);
double r4440731 = r4440718 * r4440730;
return r4440731;
}
double f(double g, double h) {
double r4440732 = atan2(1.0, 0.0);
double r4440733 = 2.0;
double r4440734 = r4440732 / r4440733;
double r4440735 = 3.0;
double r4440736 = r4440734 / r4440735;
double r4440737 = cos(r4440736);
double r4440738 = g;
double r4440739 = -r4440738;
double r4440740 = h;
double r4440741 = r4440739 / r4440740;
double r4440742 = asin(r4440741);
double r4440743 = r4440742 / r4440735;
double r4440744 = 1.5;
double r4440745 = sqrt(r4440744);
double r4440746 = r4440732 / r4440745;
double r4440747 = r4440746 / r4440745;
double r4440748 = r4440743 - r4440747;
double r4440749 = cos(r4440748);
double r4440750 = r4440737 * r4440749;
double r4440751 = sin(r4440748);
double r4440752 = sqrt(r4440732);
double r4440753 = 6.0;
double r4440754 = r4440752 / r4440753;
double r4440755 = r4440754 * r4440752;
double r4440756 = sin(r4440755);
double r4440757 = r4440751 * r4440756;
double r4440758 = r4440750 + r4440757;
double r4440759 = r4440758 * r4440733;
return r4440759;
}



Bits error versus g



Bits error versus h
Results
Initial program 1.0
Simplified1.0
rmApplied add-sqr-sqrt1.0
Applied associate-/r*1.0
rmApplied acos-asin1.0
Applied div-sub1.0
Applied associate-+l-1.0
Applied cos-diff1.0
rmApplied *-un-lft-identity1.0
Applied *-un-lft-identity1.0
Applied add-sqr-sqrt1.0
Applied times-frac1.0
Applied times-frac0.0
Simplified0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019130
(FPCore (g h)
:name "2-ancestry mixing, negative discriminant"
(* 2 (cos (+ (/ (* 2 PI) 3) (/ (acos (/ (- g) h)) 3)))))