Average Error: 15.9 → 6.3
Time: 6.2s
Precision: 64
\[\alpha \gt -1 \land \beta \gt -1\]
\[\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\]
\[\begin{array}{l} \mathbf{if}\;\alpha \le 498314.70176111767:\\ \;\;\;\;\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\left(\sqrt[3]{\alpha} \cdot \sqrt[3]{\alpha}\right) \cdot \frac{\sqrt[3]{\alpha}}{\left(\alpha + \beta\right) + 2} - 1\right)}{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\sqrt[3]{\beta} \cdot \sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2} \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}} \cdot \frac{\sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2}} - \mathsf{fma}\left(4, \frac{1}{{\alpha}^{2}}, -\mathsf{fma}\left(2, \frac{1}{\alpha}, 8 \cdot \frac{1}{{\alpha}^{3}}\right)\right)}{2}\\ \end{array}\]
\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}
\begin{array}{l}
\mathbf{if}\;\alpha \le 498314.70176111767:\\
\;\;\;\;\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\left(\sqrt[3]{\alpha} \cdot \sqrt[3]{\alpha}\right) \cdot \frac{\sqrt[3]{\alpha}}{\left(\alpha + \beta\right) + 2} - 1\right)}{2}\\

\mathbf{else}:\\
\;\;\;\;\frac{\frac{\sqrt[3]{\beta} \cdot \sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2} \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}} \cdot \frac{\sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2}} - \mathsf{fma}\left(4, \frac{1}{{\alpha}^{2}}, -\mathsf{fma}\left(2, \frac{1}{\alpha}, 8 \cdot \frac{1}{{\alpha}^{3}}\right)\right)}{2}\\

\end{array}
double f(double alpha, double beta) {
        double r151021 = beta;
        double r151022 = alpha;
        double r151023 = r151021 - r151022;
        double r151024 = r151022 + r151021;
        double r151025 = 2.0;
        double r151026 = r151024 + r151025;
        double r151027 = r151023 / r151026;
        double r151028 = 1.0;
        double r151029 = r151027 + r151028;
        double r151030 = r151029 / r151025;
        return r151030;
}

double f(double alpha, double beta) {
        double r151031 = alpha;
        double r151032 = 498314.70176111767;
        bool r151033 = r151031 <= r151032;
        double r151034 = beta;
        double r151035 = r151031 + r151034;
        double r151036 = 2.0;
        double r151037 = r151035 + r151036;
        double r151038 = r151034 / r151037;
        double r151039 = cbrt(r151031);
        double r151040 = r151039 * r151039;
        double r151041 = r151039 / r151037;
        double r151042 = r151040 * r151041;
        double r151043 = 1.0;
        double r151044 = r151042 - r151043;
        double r151045 = r151038 - r151044;
        double r151046 = r151045 / r151036;
        double r151047 = cbrt(r151034);
        double r151048 = r151047 * r151047;
        double r151049 = cbrt(r151037);
        double r151050 = r151049 * r151049;
        double r151051 = r151048 / r151050;
        double r151052 = r151047 / r151049;
        double r151053 = r151051 * r151052;
        double r151054 = 4.0;
        double r151055 = 1.0;
        double r151056 = 2.0;
        double r151057 = pow(r151031, r151056);
        double r151058 = r151055 / r151057;
        double r151059 = r151055 / r151031;
        double r151060 = 8.0;
        double r151061 = 3.0;
        double r151062 = pow(r151031, r151061);
        double r151063 = r151055 / r151062;
        double r151064 = r151060 * r151063;
        double r151065 = fma(r151036, r151059, r151064);
        double r151066 = -r151065;
        double r151067 = fma(r151054, r151058, r151066);
        double r151068 = r151053 - r151067;
        double r151069 = r151068 / r151036;
        double r151070 = r151033 ? r151046 : r151069;
        return r151070;
}

Error

Bits error versus alpha

Bits error versus beta

Derivation

  1. Split input into 2 regimes
  2. if alpha < 498314.70176111767

    1. Initial program 0.0

      \[\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\]
    2. Using strategy rm
    3. Applied div-sub0.0

      \[\leadsto \frac{\color{blue}{\left(\frac{\beta}{\left(\alpha + \beta\right) + 2} - \frac{\alpha}{\left(\alpha + \beta\right) + 2}\right)} + 1}{2}\]
    4. Applied associate-+l-0.0

      \[\leadsto \frac{\color{blue}{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}}{2}\]
    5. Using strategy rm
    6. Applied *-un-lft-identity0.0

      \[\leadsto \frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\color{blue}{1 \cdot \left(\left(\alpha + \beta\right) + 2\right)}} - 1\right)}{2}\]
    7. Applied add-cube-cbrt0.1

      \[\leadsto \frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\color{blue}{\left(\sqrt[3]{\alpha} \cdot \sqrt[3]{\alpha}\right) \cdot \sqrt[3]{\alpha}}}{1 \cdot \left(\left(\alpha + \beta\right) + 2\right)} - 1\right)}{2}\]
    8. Applied times-frac0.1

      \[\leadsto \frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\color{blue}{\frac{\sqrt[3]{\alpha} \cdot \sqrt[3]{\alpha}}{1} \cdot \frac{\sqrt[3]{\alpha}}{\left(\alpha + \beta\right) + 2}} - 1\right)}{2}\]
    9. Simplified0.1

      \[\leadsto \frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\color{blue}{\left(\sqrt[3]{\alpha} \cdot \sqrt[3]{\alpha}\right)} \cdot \frac{\sqrt[3]{\alpha}}{\left(\alpha + \beta\right) + 2} - 1\right)}{2}\]

    if 498314.70176111767 < alpha

    1. Initial program 48.7

      \[\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\]
    2. Using strategy rm
    3. Applied div-sub48.6

      \[\leadsto \frac{\color{blue}{\left(\frac{\beta}{\left(\alpha + \beta\right) + 2} - \frac{\alpha}{\left(\alpha + \beta\right) + 2}\right)} + 1}{2}\]
    4. Applied associate-+l-47.1

      \[\leadsto \frac{\color{blue}{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}}{2}\]
    5. Using strategy rm
    6. Applied add-cube-cbrt47.2

      \[\leadsto \frac{\frac{\beta}{\color{blue}{\left(\sqrt[3]{\left(\alpha + \beta\right) + 2} \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}\right) \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}}} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}{2}\]
    7. Applied add-cube-cbrt47.1

      \[\leadsto \frac{\frac{\color{blue}{\left(\sqrt[3]{\beta} \cdot \sqrt[3]{\beta}\right) \cdot \sqrt[3]{\beta}}}{\left(\sqrt[3]{\left(\alpha + \beta\right) + 2} \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}\right) \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}{2}\]
    8. Applied times-frac47.1

      \[\leadsto \frac{\color{blue}{\frac{\sqrt[3]{\beta} \cdot \sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2} \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}} \cdot \frac{\sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2}}} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}{2}\]
    9. Taylor expanded around inf 19.2

      \[\leadsto \frac{\frac{\sqrt[3]{\beta} \cdot \sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2} \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}} \cdot \frac{\sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2}} - \color{blue}{\left(4 \cdot \frac{1}{{\alpha}^{2}} - \left(2 \cdot \frac{1}{\alpha} + 8 \cdot \frac{1}{{\alpha}^{3}}\right)\right)}}{2}\]
    10. Simplified19.2

      \[\leadsto \frac{\frac{\sqrt[3]{\beta} \cdot \sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2} \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}} \cdot \frac{\sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2}} - \color{blue}{\mathsf{fma}\left(4, \frac{1}{{\alpha}^{2}}, -\mathsf{fma}\left(2, \frac{1}{\alpha}, 8 \cdot \frac{1}{{\alpha}^{3}}\right)\right)}}{2}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification6.3

    \[\leadsto \begin{array}{l} \mathbf{if}\;\alpha \le 498314.70176111767:\\ \;\;\;\;\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\left(\sqrt[3]{\alpha} \cdot \sqrt[3]{\alpha}\right) \cdot \frac{\sqrt[3]{\alpha}}{\left(\alpha + \beta\right) + 2} - 1\right)}{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\sqrt[3]{\beta} \cdot \sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2} \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}} \cdot \frac{\sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2}} - \mathsf{fma}\left(4, \frac{1}{{\alpha}^{2}}, -\mathsf{fma}\left(2, \frac{1}{\alpha}, 8 \cdot \frac{1}{{\alpha}^{3}}\right)\right)}{2}\\ \end{array}\]

Reproduce

herbie shell --seed 2020083 +o rules:numerics
(FPCore (alpha beta)
  :name "Octave 3.8, jcobi/1"
  :precision binary64
  :pre (and (> alpha -1) (> beta -1))
  (/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2)) 1) 2))