Average Error: 36.0 → 32.2
Time: 20.9s
Precision: 64
\[\sqrt[3]{\frac{1}{2 \cdot a} \cdot \left(\left(-g\right) + \sqrt{g \cdot g - h \cdot h}\right)} + \sqrt[3]{\frac{1}{2 \cdot a} \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)}\]
\[\frac{\sqrt[3]{1 \cdot \left(\sqrt{g \cdot g - h \cdot h} - g\right)}}{\sqrt[3]{2 \cdot a}} + \frac{\sqrt[3]{1 \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)}}{\sqrt[3]{2 \cdot a}}\]
\sqrt[3]{\frac{1}{2 \cdot a} \cdot \left(\left(-g\right) + \sqrt{g \cdot g - h \cdot h}\right)} + \sqrt[3]{\frac{1}{2 \cdot a} \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)}
\frac{\sqrt[3]{1 \cdot \left(\sqrt{g \cdot g - h \cdot h} - g\right)}}{\sqrt[3]{2 \cdot a}} + \frac{\sqrt[3]{1 \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)}}{\sqrt[3]{2 \cdot a}}
double f(double g, double h, double a) {
        double r139942 = 1.0;
        double r139943 = 2.0;
        double r139944 = a;
        double r139945 = r139943 * r139944;
        double r139946 = r139942 / r139945;
        double r139947 = g;
        double r139948 = -r139947;
        double r139949 = r139947 * r139947;
        double r139950 = h;
        double r139951 = r139950 * r139950;
        double r139952 = r139949 - r139951;
        double r139953 = sqrt(r139952);
        double r139954 = r139948 + r139953;
        double r139955 = r139946 * r139954;
        double r139956 = cbrt(r139955);
        double r139957 = r139948 - r139953;
        double r139958 = r139946 * r139957;
        double r139959 = cbrt(r139958);
        double r139960 = r139956 + r139959;
        return r139960;
}

double f(double g, double h, double a) {
        double r139961 = 1.0;
        double r139962 = g;
        double r139963 = r139962 * r139962;
        double r139964 = h;
        double r139965 = r139964 * r139964;
        double r139966 = r139963 - r139965;
        double r139967 = sqrt(r139966);
        double r139968 = r139967 - r139962;
        double r139969 = r139961 * r139968;
        double r139970 = cbrt(r139969);
        double r139971 = 2.0;
        double r139972 = a;
        double r139973 = r139971 * r139972;
        double r139974 = cbrt(r139973);
        double r139975 = r139970 / r139974;
        double r139976 = -r139962;
        double r139977 = r139976 - r139967;
        double r139978 = r139961 * r139977;
        double r139979 = cbrt(r139978);
        double r139980 = r139979 / r139974;
        double r139981 = r139975 + r139980;
        return r139981;
}

Error

Bits error versus g

Bits error versus h

Bits error versus a

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 36.0

    \[\sqrt[3]{\frac{1}{2 \cdot a} \cdot \left(\left(-g\right) + \sqrt{g \cdot g - h \cdot h}\right)} + \sqrt[3]{\frac{1}{2 \cdot a} \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)}\]
  2. Simplified36.0

    \[\leadsto \color{blue}{\sqrt[3]{\frac{1}{2 \cdot a} \cdot \left(\sqrt{g \cdot g - h \cdot h} - g\right)} + \sqrt[3]{\frac{1}{2 \cdot a} \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)}}\]
  3. Using strategy rm
  4. Applied associate-*l/36.0

    \[\leadsto \sqrt[3]{\frac{1}{2 \cdot a} \cdot \left(\sqrt{g \cdot g - h \cdot h} - g\right)} + \sqrt[3]{\color{blue}{\frac{1 \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)}{2 \cdot a}}}\]
  5. Applied cbrt-div34.1

    \[\leadsto \sqrt[3]{\frac{1}{2 \cdot a} \cdot \left(\sqrt{g \cdot g - h \cdot h} - g\right)} + \color{blue}{\frac{\sqrt[3]{1 \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)}}{\sqrt[3]{2 \cdot a}}}\]
  6. Using strategy rm
  7. Applied associate-*l/34.1

    \[\leadsto \sqrt[3]{\color{blue}{\frac{1 \cdot \left(\sqrt{g \cdot g - h \cdot h} - g\right)}{2 \cdot a}}} + \frac{\sqrt[3]{1 \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)}}{\sqrt[3]{2 \cdot a}}\]
  8. Applied cbrt-div32.2

    \[\leadsto \color{blue}{\frac{\sqrt[3]{1 \cdot \left(\sqrt{g \cdot g - h \cdot h} - g\right)}}{\sqrt[3]{2 \cdot a}}} + \frac{\sqrt[3]{1 \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)}}{\sqrt[3]{2 \cdot a}}\]
  9. Final simplification32.2

    \[\leadsto \frac{\sqrt[3]{1 \cdot \left(\sqrt{g \cdot g - h \cdot h} - g\right)}}{\sqrt[3]{2 \cdot a}} + \frac{\sqrt[3]{1 \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)}}{\sqrt[3]{2 \cdot a}}\]

Reproduce

herbie shell --seed 2019235 
(FPCore (g h a)
  :name "2-ancestry mixing, positive discriminant"
  :precision binary64
  (+ (cbrt (* (/ 1 (* 2 a)) (+ (- g) (sqrt (- (* g g) (* h h)))))) (cbrt (* (/ 1 (* 2 a)) (- (- g) (sqrt (- (* g g) (* h h))))))))