2 \cdot \cos \left(\frac{2 \cdot \pi}{3} + \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\left(\frac{\sqrt{3} \cdot \sin \left(\frac{\cos^{-1} \left(\frac{g}{h}\right)}{3} - \left(\sqrt[3]{\frac{\pi}{\frac{3}{2}}} \cdot \sqrt[3]{\frac{\pi}{\frac{3}{2}}}\right) \cdot \sqrt[3]{\frac{\pi}{\frac{3}{2}}}\right)}{2} + \cos \left(\frac{\cos^{-1} \left(\frac{g}{h}\right)}{3} - \frac{\pi}{\frac{3}{2}}\right) \cdot \frac{1}{2}\right) \cdot 2double f(double g, double h) {
double r5091169 = 2.0;
double r5091170 = atan2(1.0, 0.0);
double r5091171 = r5091169 * r5091170;
double r5091172 = 3.0;
double r5091173 = r5091171 / r5091172;
double r5091174 = g;
double r5091175 = -r5091174;
double r5091176 = h;
double r5091177 = r5091175 / r5091176;
double r5091178 = acos(r5091177);
double r5091179 = r5091178 / r5091172;
double r5091180 = r5091173 + r5091179;
double r5091181 = cos(r5091180);
double r5091182 = r5091169 * r5091181;
return r5091182;
}
double f(double g, double h) {
double r5091183 = 3.0;
double r5091184 = sqrt(r5091183);
double r5091185 = g;
double r5091186 = h;
double r5091187 = r5091185 / r5091186;
double r5091188 = acos(r5091187);
double r5091189 = r5091188 / r5091183;
double r5091190 = atan2(1.0, 0.0);
double r5091191 = 1.5;
double r5091192 = r5091190 / r5091191;
double r5091193 = cbrt(r5091192);
double r5091194 = r5091193 * r5091193;
double r5091195 = r5091194 * r5091193;
double r5091196 = r5091189 - r5091195;
double r5091197 = sin(r5091196);
double r5091198 = r5091184 * r5091197;
double r5091199 = 2.0;
double r5091200 = r5091198 / r5091199;
double r5091201 = r5091189 - r5091192;
double r5091202 = cos(r5091201);
double r5091203 = 0.5;
double r5091204 = r5091202 * r5091203;
double r5091205 = r5091200 + r5091204;
double r5091206 = r5091205 * r5091199;
return r5091206;
}



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 2019146
(FPCore (g h)
:name "2-ancestry mixing, negative discriminant"
(* 2 (cos (+ (/ (* 2 PI) 3) (/ (acos (/ (- g) h)) 3)))))