Average Error: 36.4 → 31.6
Time: 30.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 -1.593804505093948907167066401627398977 \cdot 10^{-179}:\\ \;\;\;\;\frac{\sqrt[3]{-1 \cdot \frac{h \cdot h}{g - \sqrt{\left(g - h\right) \cdot \left(h + g\right)}}}}{\sqrt[3]{2 \cdot a}} + \frac{\sqrt[3]{\sqrt{\left(g - h\right) \cdot \left(h + g\right)} - g}}{\sqrt[3]{a \cdot \frac{2}{1}}}\\ \mathbf{else}:\\ \;\;\;\;\sqrt[3]{\frac{\sqrt{\left(g - h\right) \cdot \left(h + g\right)} - g}{\frac{2}{\frac{1}{a}}}} + \frac{\sqrt[3]{\left(-\left(g + g\right)\right) \cdot 1}}{\sqrt[3]{2 \cdot a}}\\ \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 -1.593804505093948907167066401627398977 \cdot 10^{-179}:\\
\;\;\;\;\frac{\sqrt[3]{-1 \cdot \frac{h \cdot h}{g - \sqrt{\left(g - h\right) \cdot \left(h + g\right)}}}}{\sqrt[3]{2 \cdot a}} + \frac{\sqrt[3]{\sqrt{\left(g - h\right) \cdot \left(h + g\right)} - g}}{\sqrt[3]{a \cdot \frac{2}{1}}}\\

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

\end{array}
double f(double g, double h, double a) {
        double r135099 = 1.0;
        double r135100 = 2.0;
        double r135101 = a;
        double r135102 = r135100 * r135101;
        double r135103 = r135099 / r135102;
        double r135104 = g;
        double r135105 = -r135104;
        double r135106 = r135104 * r135104;
        double r135107 = h;
        double r135108 = r135107 * r135107;
        double r135109 = r135106 - r135108;
        double r135110 = sqrt(r135109);
        double r135111 = r135105 + r135110;
        double r135112 = r135103 * r135111;
        double r135113 = cbrt(r135112);
        double r135114 = r135105 - r135110;
        double r135115 = r135103 * r135114;
        double r135116 = cbrt(r135115);
        double r135117 = r135113 + r135116;
        return r135117;
}

double f(double g, double h, double a) {
        double r135118 = g;
        double r135119 = -1.593804505093949e-179;
        bool r135120 = r135118 <= r135119;
        double r135121 = 1.0;
        double r135122 = h;
        double r135123 = r135122 * r135122;
        double r135124 = r135118 - r135122;
        double r135125 = r135122 + r135118;
        double r135126 = r135124 * r135125;
        double r135127 = sqrt(r135126);
        double r135128 = r135118 - r135127;
        double r135129 = r135123 / r135128;
        double r135130 = r135121 * r135129;
        double r135131 = -r135130;
        double r135132 = cbrt(r135131);
        double r135133 = 2.0;
        double r135134 = a;
        double r135135 = r135133 * r135134;
        double r135136 = cbrt(r135135);
        double r135137 = r135132 / r135136;
        double r135138 = r135127 - r135118;
        double r135139 = cbrt(r135138);
        double r135140 = r135133 / r135121;
        double r135141 = r135134 * r135140;
        double r135142 = cbrt(r135141);
        double r135143 = r135139 / r135142;
        double r135144 = r135137 + r135143;
        double r135145 = r135121 / r135134;
        double r135146 = r135133 / r135145;
        double r135147 = r135138 / r135146;
        double r135148 = cbrt(r135147);
        double r135149 = r135118 + r135118;
        double r135150 = -r135149;
        double r135151 = r135150 * r135121;
        double r135152 = cbrt(r135151);
        double r135153 = r135152 / r135136;
        double r135154 = r135148 + r135153;
        double r135155 = r135120 ? r135144 : r135154;
        return r135155;
}

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 < -1.593804505093949e-179

    1. Initial program 35.4

      \[\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. Simplified35.4

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

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

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

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

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

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

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

      \[\leadsto \frac{\sqrt[3]{\sqrt{\left(g - h\right) \cdot \left(h + g\right)} - g}}{\color{blue}{\sqrt[3]{\frac{2}{1} \cdot a}}} + \frac{\sqrt[3]{\left(-\left(g + \sqrt{\left(h + g\right) \cdot \left(g - h\right)}\right)\right) \cdot 1}}{\sqrt[3]{2 \cdot a}}\]
    12. Using strategy rm
    13. Applied flip-+31.2

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

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

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

    if -1.593804505093949e-179 < g

    1. Initial program 37.3

      \[\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. Simplified37.3

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

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

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

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

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

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

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

Reproduce

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