Average Error: 35.3 → 31.4
Time: 42.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)}\]
\[\begin{array}{l} \mathbf{if}\;g \le 7.991130677509223 \cdot 10^{-146}:\\ \;\;\;\;\sqrt[3]{\frac{1}{a \cdot 2} \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)} + \frac{\sqrt[3]{-\left(g + g\right)}}{\sqrt[3]{a \cdot 2}}\\ \mathbf{else}:\\ \;\;\;\;\sqrt[3]{\frac{-\left(\sqrt{g \cdot g - h \cdot h} + g\right)}{\frac{\sqrt[3]{a}}{\frac{1}{2}}}} \cdot \sqrt[3]{\frac{1}{\sqrt[3]{a}} \cdot \frac{1}{\sqrt[3]{a}}} + \frac{\sqrt[3]{g + \left(-g\right)}}{\sqrt[3]{a \cdot 2}}\\ \end{array}\]
\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)}
\begin{array}{l}
\mathbf{if}\;g \le 7.991130677509223 \cdot 10^{-146}:\\
\;\;\;\;\sqrt[3]{\frac{1}{a \cdot 2} \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)} + \frac{\sqrt[3]{-\left(g + g\right)}}{\sqrt[3]{a \cdot 2}}\\

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

\end{array}
double f(double g, double h, double a) {
        double r5755434 = 1.0;
        double r5755435 = 2.0;
        double r5755436 = a;
        double r5755437 = r5755435 * r5755436;
        double r5755438 = r5755434 / r5755437;
        double r5755439 = g;
        double r5755440 = -r5755439;
        double r5755441 = r5755439 * r5755439;
        double r5755442 = h;
        double r5755443 = r5755442 * r5755442;
        double r5755444 = r5755441 - r5755443;
        double r5755445 = sqrt(r5755444);
        double r5755446 = r5755440 + r5755445;
        double r5755447 = r5755438 * r5755446;
        double r5755448 = cbrt(r5755447);
        double r5755449 = r5755440 - r5755445;
        double r5755450 = r5755438 * r5755449;
        double r5755451 = cbrt(r5755450);
        double r5755452 = r5755448 + r5755451;
        return r5755452;
}

double f(double g, double h, double a) {
        double r5755453 = g;
        double r5755454 = 7.991130677509223e-146;
        bool r5755455 = r5755453 <= r5755454;
        double r5755456 = 1.0;
        double r5755457 = a;
        double r5755458 = 2.0;
        double r5755459 = r5755457 * r5755458;
        double r5755460 = r5755456 / r5755459;
        double r5755461 = -r5755453;
        double r5755462 = r5755453 * r5755453;
        double r5755463 = h;
        double r5755464 = r5755463 * r5755463;
        double r5755465 = r5755462 - r5755464;
        double r5755466 = sqrt(r5755465);
        double r5755467 = r5755461 - r5755466;
        double r5755468 = r5755460 * r5755467;
        double r5755469 = cbrt(r5755468);
        double r5755470 = r5755453 + r5755453;
        double r5755471 = -r5755470;
        double r5755472 = cbrt(r5755471);
        double r5755473 = cbrt(r5755459);
        double r5755474 = r5755472 / r5755473;
        double r5755475 = r5755469 + r5755474;
        double r5755476 = r5755466 + r5755453;
        double r5755477 = -r5755476;
        double r5755478 = cbrt(r5755457);
        double r5755479 = 0.5;
        double r5755480 = r5755478 / r5755479;
        double r5755481 = r5755477 / r5755480;
        double r5755482 = cbrt(r5755481);
        double r5755483 = r5755456 / r5755478;
        double r5755484 = r5755483 * r5755483;
        double r5755485 = cbrt(r5755484);
        double r5755486 = r5755482 * r5755485;
        double r5755487 = r5755453 + r5755461;
        double r5755488 = cbrt(r5755487);
        double r5755489 = r5755488 / r5755473;
        double r5755490 = r5755486 + r5755489;
        double r5755491 = r5755455 ? r5755475 : r5755490;
        return r5755491;
}

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. Split input into 2 regimes
  2. if g < 7.991130677509223e-146

    1. Initial program 36.2

      \[\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/36.2

      \[\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-div32.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. Taylor expanded around -inf 32.1

      \[\leadsto \frac{\sqrt[3]{1 \cdot \left(\left(-g\right) + \color{blue}{-1 \cdot g}\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)}\]
    6. Simplified32.1

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

    if 7.991130677509223e-146 < g

    1. Initial program 34.2

      \[\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/34.2

      \[\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-div34.2

      \[\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 add-cbrt-cube34.3

      \[\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}{\sqrt[3]{\left(\sqrt[3]{\frac{1}{2 \cdot a} \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)} \cdot \sqrt[3]{\frac{1}{2 \cdot a} \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)}\right) \cdot \sqrt[3]{\frac{1}{2 \cdot a} \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)}}}\]
    7. Simplified34.2

      \[\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{-\left(\sqrt{g \cdot g - h \cdot h} + g\right)}{\frac{a}{\frac{1}{2}}}}}\]
    8. Using strategy rm
    9. Applied *-un-lft-identity34.2

      \[\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]{\frac{-\left(\sqrt{g \cdot g - h \cdot h} + g\right)}{\frac{a}{\color{blue}{1 \cdot \frac{1}{2}}}}}\]
    10. Applied add-cube-cbrt34.3

      \[\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]{\frac{-\left(\sqrt{g \cdot g - h \cdot h} + g\right)}{\frac{\color{blue}{\left(\sqrt[3]{a} \cdot \sqrt[3]{a}\right) \cdot \sqrt[3]{a}}}{1 \cdot \frac{1}{2}}}}\]
    11. Applied times-frac34.3

      \[\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]{\frac{-\left(\sqrt{g \cdot g - h \cdot h} + g\right)}{\color{blue}{\frac{\sqrt[3]{a} \cdot \sqrt[3]{a}}{1} \cdot \frac{\sqrt[3]{a}}{\frac{1}{2}}}}}\]
    12. Applied *-un-lft-identity34.3

      \[\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]{\frac{\color{blue}{1 \cdot \left(-\left(\sqrt{g \cdot g - h \cdot h} + g\right)\right)}}{\frac{\sqrt[3]{a} \cdot \sqrt[3]{a}}{1} \cdot \frac{\sqrt[3]{a}}{\frac{1}{2}}}}\]
    13. Applied times-frac34.3

      \[\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}{\frac{\sqrt[3]{a} \cdot \sqrt[3]{a}}{1}} \cdot \frac{-\left(\sqrt{g \cdot g - h \cdot h} + g\right)}{\frac{\sqrt[3]{a}}{\frac{1}{2}}}}}\]
    14. Applied cbrt-prod30.7

      \[\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}{\sqrt[3]{\frac{1}{\frac{\sqrt[3]{a} \cdot \sqrt[3]{a}}{1}}} \cdot \sqrt[3]{\frac{-\left(\sqrt{g \cdot g - h \cdot h} + g\right)}{\frac{\sqrt[3]{a}}{\frac{1}{2}}}}}\]
    15. Simplified30.7

      \[\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}{\sqrt[3]{\frac{1}{\sqrt[3]{a}} \cdot \frac{1}{\sqrt[3]{a}}}} \cdot \sqrt[3]{\frac{-\left(\sqrt{g \cdot g - h \cdot h} + g\right)}{\frac{\sqrt[3]{a}}{\frac{1}{2}}}}\]
    16. Taylor expanded around inf 30.6

      \[\leadsto \frac{\sqrt[3]{1 \cdot \left(\left(-g\right) + \color{blue}{g}\right)}}{\sqrt[3]{2 \cdot a}} + \sqrt[3]{\frac{1}{\sqrt[3]{a}} \cdot \frac{1}{\sqrt[3]{a}}} \cdot \sqrt[3]{\frac{-\left(\sqrt{g \cdot g - h \cdot h} + g\right)}{\frac{\sqrt[3]{a}}{\frac{1}{2}}}}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification31.4

    \[\leadsto \begin{array}{l} \mathbf{if}\;g \le 7.991130677509223 \cdot 10^{-146}:\\ \;\;\;\;\sqrt[3]{\frac{1}{a \cdot 2} \cdot \left(\left(-g\right) - \sqrt{g \cdot g - h \cdot h}\right)} + \frac{\sqrt[3]{-\left(g + g\right)}}{\sqrt[3]{a \cdot 2}}\\ \mathbf{else}:\\ \;\;\;\;\sqrt[3]{\frac{-\left(\sqrt{g \cdot g - h \cdot h} + g\right)}{\frac{\sqrt[3]{a}}{\frac{1}{2}}}} \cdot \sqrt[3]{\frac{1}{\sqrt[3]{a}} \cdot \frac{1}{\sqrt[3]{a}}} + \frac{\sqrt[3]{g + \left(-g\right)}}{\sqrt[3]{a \cdot 2}}\\ \end{array}\]

Reproduce

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