Average Error: 35.6 → 32.0
Time: 7.5s
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(\left(-g\right) + \sqrt{g \cdot g - h \cdot h}\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(\left(-g\right) + \sqrt{g \cdot g - h \cdot h}\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 r158247 = 1.0;
        double r158248 = 2.0;
        double r158249 = a;
        double r158250 = r158248 * r158249;
        double r158251 = r158247 / r158250;
        double r158252 = g;
        double r158253 = -r158252;
        double r158254 = r158252 * r158252;
        double r158255 = h;
        double r158256 = r158255 * r158255;
        double r158257 = r158254 - r158256;
        double r158258 = sqrt(r158257);
        double r158259 = r158253 + r158258;
        double r158260 = r158251 * r158259;
        double r158261 = cbrt(r158260);
        double r158262 = r158253 - r158258;
        double r158263 = r158251 * r158262;
        double r158264 = cbrt(r158263);
        double r158265 = r158261 + r158264;
        return r158265;
}

double f(double g, double h, double a) {
        double r158266 = 1.0;
        double r158267 = g;
        double r158268 = -r158267;
        double r158269 = r158267 * r158267;
        double r158270 = h;
        double r158271 = r158270 * r158270;
        double r158272 = r158269 - r158271;
        double r158273 = sqrt(r158272);
        double r158274 = r158268 + r158273;
        double r158275 = r158266 * r158274;
        double r158276 = cbrt(r158275);
        double r158277 = 2.0;
        double r158278 = a;
        double r158279 = r158277 * r158278;
        double r158280 = cbrt(r158279);
        double r158281 = r158276 / r158280;
        double r158282 = r158268 - r158273;
        double r158283 = r158266 * r158282;
        double r158284 = cbrt(r158283);
        double r158285 = r158284 / r158280;
        double r158286 = r158281 + r158285;
        return r158286;
}

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 35.6

    \[\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. Using strategy rm
  3. Applied associate-*l/35.6

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

    \[\leadsto \color{blue}{\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)}\]
  5. Using strategy rm
  6. Applied associate-*l/33.7

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

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

    \[\leadsto \frac{\sqrt[3]{1 \cdot \left(\left(-g\right) + \sqrt{g \cdot g - h \cdot h}\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 2020056 
(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))))))))