2 \cdot \cos \left(\frac{2 \cdot \pi}{3} + \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)2 \cdot \left(\sqrt[3]{\cos \left(\frac{2 \cdot \pi}{3} + \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right) \cdot \cos \left(\left(\sqrt[3]{\frac{2 \cdot \pi}{3}} \cdot \sqrt[3]{\frac{2 \cdot \pi}{3}}\right) \cdot \sqrt[3]{\frac{2 \cdot \pi}{3}} + \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)} \cdot \sqrt[3]{\cos \left(\frac{2 \cdot \pi}{3} + \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)}\right)double f(double g, double h) {
double r220425 = 2.0;
double r220426 = atan2(1.0, 0.0);
double r220427 = r220425 * r220426;
double r220428 = 3.0;
double r220429 = r220427 / r220428;
double r220430 = g;
double r220431 = -r220430;
double r220432 = h;
double r220433 = r220431 / r220432;
double r220434 = acos(r220433);
double r220435 = r220434 / r220428;
double r220436 = r220429 + r220435;
double r220437 = cos(r220436);
double r220438 = r220425 * r220437;
return r220438;
}
double f(double g, double h) {
double r220439 = 2.0;
double r220440 = atan2(1.0, 0.0);
double r220441 = r220439 * r220440;
double r220442 = 3.0;
double r220443 = r220441 / r220442;
double r220444 = g;
double r220445 = -r220444;
double r220446 = h;
double r220447 = r220445 / r220446;
double r220448 = acos(r220447);
double r220449 = r220448 / r220442;
double r220450 = r220443 + r220449;
double r220451 = cos(r220450);
double r220452 = cbrt(r220443);
double r220453 = r220452 * r220452;
double r220454 = r220453 * r220452;
double r220455 = r220454 + r220449;
double r220456 = cos(r220455);
double r220457 = r220451 * r220456;
double r220458 = cbrt(r220457);
double r220459 = cbrt(r220451);
double r220460 = r220458 * r220459;
double r220461 = r220439 * r220460;
return r220461;
}



Bits error versus g



Bits error versus h
Results
Initial program 1.0
rmApplied add-cbrt-cube1.6
Simplified1.0
rmApplied add-cube-cbrt1.0
Applied unpow-prod-down1.0
Applied cbrt-prod0.1
Simplified0.1
Simplified0.1
rmApplied add-cube-cbrt0.0
Final simplification0.0
herbie shell --seed 2020020
(FPCore (g h)
:name "2-ancestry mixing, negative discriminant"
:precision binary64
(* 2 (cos (+ (/ (* 2 PI) 3) (/ (acos (/ (- g) h)) 3)))))