2 \cdot \cos \left(\frac{2 \cdot \pi}{3} + \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)2 \cdot \left(\cos \left(\frac{\frac{\pi}{2}}{3} - \left(\frac{\pi}{\frac{3}{2}} + \frac{\sin^{-1} \left(\frac{g}{h}\right)}{3}\right)\right) \cdot \frac{1}{2} + \frac{\sin \left(\frac{\cos^{-1} \left(\frac{g}{h}\right)}{3} - \frac{\pi}{\frac{3}{2}}\right)}{2} \cdot \sqrt{3}\right)double f(double g, double h) {
double r4714296 = 2.0;
double r4714297 = atan2(1.0, 0.0);
double r4714298 = r4714296 * r4714297;
double r4714299 = 3.0;
double r4714300 = r4714298 / r4714299;
double r4714301 = g;
double r4714302 = -r4714301;
double r4714303 = h;
double r4714304 = r4714302 / r4714303;
double r4714305 = acos(r4714304);
double r4714306 = r4714305 / r4714299;
double r4714307 = r4714300 + r4714306;
double r4714308 = cos(r4714307);
double r4714309 = r4714296 * r4714308;
return r4714309;
}
double f(double g, double h) {
double r4714310 = 2.0;
double r4714311 = atan2(1.0, 0.0);
double r4714312 = r4714311 / r4714310;
double r4714313 = 3.0;
double r4714314 = r4714312 / r4714313;
double r4714315 = 1.5;
double r4714316 = r4714311 / r4714315;
double r4714317 = g;
double r4714318 = h;
double r4714319 = r4714317 / r4714318;
double r4714320 = asin(r4714319);
double r4714321 = r4714320 / r4714313;
double r4714322 = r4714316 + r4714321;
double r4714323 = r4714314 - r4714322;
double r4714324 = cos(r4714323);
double r4714325 = 0.5;
double r4714326 = r4714324 * r4714325;
double r4714327 = acos(r4714319);
double r4714328 = r4714327 / r4714313;
double r4714329 = r4714328 - r4714316;
double r4714330 = sin(r4714329);
double r4714331 = r4714330 / r4714310;
double r4714332 = sqrt(r4714313);
double r4714333 = r4714331 * r4714332;
double r4714334 = r4714326 + r4714333;
double r4714335 = r4714310 * r4714334;
return r4714335;
}



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 acos-asin0.1
Applied div-sub0.1
Applied associate--l-0.0
Final simplification0.0
herbie shell --seed 2019135
(FPCore (g h)
:name "2-ancestry mixing, negative discriminant"
(* 2 (cos (+ (/ (* 2 PI) 3) (/ (acos (/ (- g) h)) 3)))))