Average Error: 1.0 → 0.1
Time: 16.8s
Precision: 64
\[2 \cdot \cos \left(\frac{2 \cdot \pi}{3} + \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\]
\[2 \cdot \sqrt[3]{{\left(\log \left(e^{\sqrt[3]{{\left(\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)\right)}^{2}}}\right) \cdot \sqrt[3]{\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)}\right)}^{3}}\]
2 \cdot \cos \left(\frac{2 \cdot \pi}{3} + \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)
2 \cdot \sqrt[3]{{\left(\log \left(e^{\sqrt[3]{{\left(\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)\right)}^{2}}}\right) \cdot \sqrt[3]{\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)}\right)}^{3}}
double f(double g, double h) {
        double r30172 = 2.0;
        double r30173 = atan2(1.0, 0.0);
        double r30174 = r30172 * r30173;
        double r30175 = 3.0;
        double r30176 = r30174 / r30175;
        double r30177 = g;
        double r30178 = -r30177;
        double r30179 = h;
        double r30180 = r30178 / r30179;
        double r30181 = acos(r30180);
        double r30182 = r30181 / r30175;
        double r30183 = r30176 + r30182;
        double r30184 = cos(r30183);
        double r30185 = r30172 * r30184;
        return r30185;
}

double f(double g, double h) {
        double r30186 = 2.0;
        double r30187 = 3.0;
        double r30188 = r30186 / r30187;
        double r30189 = atan2(1.0, 0.0);
        double r30190 = g;
        double r30191 = -r30190;
        double r30192 = h;
        double r30193 = r30191 / r30192;
        double r30194 = acos(r30193);
        double r30195 = r30194 / r30187;
        double r30196 = fma(r30188, r30189, r30195);
        double r30197 = cos(r30196);
        double r30198 = 2.0;
        double r30199 = pow(r30197, r30198);
        double r30200 = cbrt(r30199);
        double r30201 = exp(r30200);
        double r30202 = log(r30201);
        double r30203 = cbrt(r30197);
        double r30204 = r30202 * r30203;
        double r30205 = 3.0;
        double r30206 = pow(r30204, r30205);
        double r30207 = cbrt(r30206);
        double r30208 = r30186 * r30207;
        return r30208;
}

Error

Bits error versus g

Bits error versus h

Derivation

  1. Initial program 1.0

    \[2 \cdot \cos \left(\frac{2 \cdot \pi}{3} + \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\]
  2. Simplified1.0

    \[\leadsto \color{blue}{2 \cdot \cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)}\]
  3. Using strategy rm
  4. Applied add-cbrt-cube1.5

    \[\leadsto 2 \cdot \color{blue}{\sqrt[3]{\left(\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right) \cdot \cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)\right) \cdot \cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)}}\]
  5. Simplified1.0

    \[\leadsto 2 \cdot \sqrt[3]{\color{blue}{{\left(\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)\right)}^{3}}}\]
  6. Using strategy rm
  7. Applied add-cube-cbrt1.0

    \[\leadsto 2 \cdot \sqrt[3]{{\color{blue}{\left(\left(\sqrt[3]{\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)} \cdot \sqrt[3]{\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)}\right) \cdot \sqrt[3]{\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)}\right)}}^{3}}\]
  8. Simplified0.1

    \[\leadsto 2 \cdot \sqrt[3]{{\left(\color{blue}{\sqrt[3]{{\left(\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)\right)}^{2}}} \cdot \sqrt[3]{\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)}\right)}^{3}}\]
  9. Using strategy rm
  10. Applied add-log-exp0.1

    \[\leadsto 2 \cdot \sqrt[3]{{\left(\color{blue}{\log \left(e^{\sqrt[3]{{\left(\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)\right)}^{2}}}\right)} \cdot \sqrt[3]{\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)}\right)}^{3}}\]
  11. Final simplification0.1

    \[\leadsto 2 \cdot \sqrt[3]{{\left(\log \left(e^{\sqrt[3]{{\left(\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)\right)}^{2}}}\right) \cdot \sqrt[3]{\cos \left(\mathsf{fma}\left(\frac{2}{3}, \pi, \frac{\cos^{-1} \left(\frac{-g}{h}\right)}{3}\right)\right)}\right)}^{3}}\]

Reproduce

herbie shell --seed 2019315 +o rules:numerics
(FPCore (g h)
  :name "2-ancestry mixing, negative discriminant"
  :precision binary64
  (* 2 (cos (+ (/ (* 2 PI) 3) (/ (acos (/ (- g) h)) 3)))))