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{1}{\sqrt{3}} \cdot \frac{\cos^{-1} \left(-\frac{g}{h}\right)}{\sqrt{3}}\right) \cdot \cos \left(\frac{2}{3} \cdot \pi\right) - \sin \left(\frac{2}{3} \cdot \pi\right) \cdot \sin \left(\frac{\cos^{-1} \left(-\frac{g}{h}\right)}{\sqrt{3}} \cdot \left(\sqrt{\frac{1}{\sqrt{3}}} \cdot \sqrt{\frac{1}{\sqrt{3}}}\right)\right)\right)double f(double g, double h) {
double r4423459 = 2.0;
double r4423460 = atan2(1.0, 0.0);
double r4423461 = r4423459 * r4423460;
double r4423462 = 3.0;
double r4423463 = r4423461 / r4423462;
double r4423464 = g;
double r4423465 = -r4423464;
double r4423466 = h;
double r4423467 = r4423465 / r4423466;
double r4423468 = acos(r4423467);
double r4423469 = r4423468 / r4423462;
double r4423470 = r4423463 + r4423469;
double r4423471 = cos(r4423470);
double r4423472 = r4423459 * r4423471;
return r4423472;
}
double f(double g, double h) {
double r4423473 = 2.0;
double r4423474 = 1.0;
double r4423475 = 3.0;
double r4423476 = sqrt(r4423475);
double r4423477 = r4423474 / r4423476;
double r4423478 = g;
double r4423479 = h;
double r4423480 = r4423478 / r4423479;
double r4423481 = -r4423480;
double r4423482 = acos(r4423481);
double r4423483 = r4423482 / r4423476;
double r4423484 = r4423477 * r4423483;
double r4423485 = cos(r4423484);
double r4423486 = 0.6666666666666666;
double r4423487 = atan2(1.0, 0.0);
double r4423488 = r4423486 * r4423487;
double r4423489 = cos(r4423488);
double r4423490 = r4423485 * r4423489;
double r4423491 = sin(r4423488);
double r4423492 = sqrt(r4423477);
double r4423493 = r4423492 * r4423492;
double r4423494 = r4423483 * r4423493;
double r4423495 = sin(r4423494);
double r4423496 = r4423491 * r4423495;
double r4423497 = r4423490 - r4423496;
double r4423498 = r4423473 * r4423497;
return r4423498;
}



Bits error versus g



Bits error versus h
Results
Initial program 1.0
Simplified1.0
rmApplied add-sqr-sqrt1.0
Applied *-un-lft-identity1.0
Applied times-frac1.0
rmApplied fma-udef1.0
Applied cos-sum1.0
rmApplied add-sqr-sqrt0.0
Final simplification0.0
herbie shell --seed 2019141 +o rules:numerics
(FPCore (g h)
:name "2-ancestry mixing, negative discriminant"
(* 2 (cos (+ (/ (* 2 PI) 3) (/ (acos (/ (- g) h)) 3)))))