2 \cdot \cos \left(\frac{2 \cdot \pi}{3} + \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)2 \cdot \left(\left(\left(\sqrt[3]{\cos \left(\frac{2 \cdot \pi}{3}\right)} \cdot \sqrt[3]{\cos \left(\frac{2 \cdot \pi}{3}\right)}\right) \cdot \sqrt[3]{\cos \left(\frac{2 \cdot \pi}{3}\right)}\right) \cdot \cos \left(\frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right) - \sin \left(\frac{2 \cdot \pi}{3}\right) \cdot \sin \left(\frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)double f(double g, double h) {
double r95040 = 2.0;
double r95041 = atan2(1.0, 0.0);
double r95042 = r95040 * r95041;
double r95043 = 3.0;
double r95044 = r95042 / r95043;
double r95045 = g;
double r95046 = -r95045;
double r95047 = h;
double r95048 = r95046 / r95047;
double r95049 = acos(r95048);
double r95050 = r95049 / r95043;
double r95051 = r95044 + r95050;
double r95052 = cos(r95051);
double r95053 = r95040 * r95052;
return r95053;
}
double f(double g, double h) {
double r95054 = 2.0;
double r95055 = atan2(1.0, 0.0);
double r95056 = r95054 * r95055;
double r95057 = 3.0;
double r95058 = r95056 / r95057;
double r95059 = cos(r95058);
double r95060 = cbrt(r95059);
double r95061 = r95060 * r95060;
double r95062 = r95061 * r95060;
double r95063 = g;
double r95064 = -r95063;
double r95065 = h;
double r95066 = r95064 / r95065;
double r95067 = acos(r95066);
double r95068 = r95067 / r95057;
double r95069 = cos(r95068);
double r95070 = r95062 * r95069;
double r95071 = sin(r95058);
double r95072 = sin(r95068);
double r95073 = r95071 * r95072;
double r95074 = r95070 - r95073;
double r95075 = r95054 * r95074;
return r95075;
}



Bits error versus g



Bits error versus h
Results
Initial program 1.0
rmApplied cos-sum1.0
rmApplied add-cube-cbrt0.0
Final simplification0.0
herbie shell --seed 2019199
(FPCore (g h)
:name "2-ancestry mixing, negative discriminant"
(* 2.0 (cos (+ (/ (* 2.0 PI) 3.0) (/ (acos (/ (- g) h)) 3.0)))))