Average Error: 23.6 → 13.6
Time: 17.5s
Precision: 64
\[\alpha \gt -1 \land \beta \gt -1 \land i \gt 0\]
\[\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} + 1.0}{2.0}\]
\[\begin{array}{l} \mathbf{if}\;\frac{\frac{\left(\beta + \alpha\right) \cdot \left(\beta - \alpha\right)}{2 \cdot i + \left(\beta + \alpha\right)}}{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)} \le 0.9999999999530377:\\ \;\;\;\;\frac{\sqrt[3]{\mathsf{fma}\left(\beta + \alpha, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \left(\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0\right)}, 1.0\right) \cdot \left(\mathsf{fma}\left(\beta + \alpha, \frac{\frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0}, 1.0\right) \cdot \sqrt[3]{\left(\mathsf{fma}\left(\beta + \alpha, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \left(\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0\right)}, 1.0\right) \cdot \mathsf{fma}\left(\beta + \alpha, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \left(\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0\right)}, 1.0\right)\right) \cdot \mathsf{fma}\left(\beta + \alpha, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \left(\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0\right)}, 1.0\right)}\right)}}{2.0}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(2.0 - \frac{2.0}{\beta}\right) + \frac{4.0}{\beta \cdot \beta}}{2.0}\\ \end{array}\]
\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} + 1.0}{2.0}
\begin{array}{l}
\mathbf{if}\;\frac{\frac{\left(\beta + \alpha\right) \cdot \left(\beta - \alpha\right)}{2 \cdot i + \left(\beta + \alpha\right)}}{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)} \le 0.9999999999530377:\\
\;\;\;\;\frac{\sqrt[3]{\mathsf{fma}\left(\beta + \alpha, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \left(\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0\right)}, 1.0\right) \cdot \left(\mathsf{fma}\left(\beta + \alpha, \frac{\frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0}, 1.0\right) \cdot \sqrt[3]{\left(\mathsf{fma}\left(\beta + \alpha, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \left(\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0\right)}, 1.0\right) \cdot \mathsf{fma}\left(\beta + \alpha, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \left(\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0\right)}, 1.0\right)\right) \cdot \mathsf{fma}\left(\beta + \alpha, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \left(\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0\right)}, 1.0\right)}\right)}}{2.0}\\

\mathbf{else}:\\
\;\;\;\;\frac{\left(2.0 - \frac{2.0}{\beta}\right) + \frac{4.0}{\beta \cdot \beta}}{2.0}\\

\end{array}
double f(double alpha, double beta, double i) {
        double r1872073 = alpha;
        double r1872074 = beta;
        double r1872075 = r1872073 + r1872074;
        double r1872076 = r1872074 - r1872073;
        double r1872077 = r1872075 * r1872076;
        double r1872078 = 2.0;
        double r1872079 = i;
        double r1872080 = r1872078 * r1872079;
        double r1872081 = r1872075 + r1872080;
        double r1872082 = r1872077 / r1872081;
        double r1872083 = 2.0;
        double r1872084 = r1872081 + r1872083;
        double r1872085 = r1872082 / r1872084;
        double r1872086 = 1.0;
        double r1872087 = r1872085 + r1872086;
        double r1872088 = r1872087 / r1872083;
        return r1872088;
}

double f(double alpha, double beta, double i) {
        double r1872089 = beta;
        double r1872090 = alpha;
        double r1872091 = r1872089 + r1872090;
        double r1872092 = r1872089 - r1872090;
        double r1872093 = r1872091 * r1872092;
        double r1872094 = 2.0;
        double r1872095 = i;
        double r1872096 = r1872094 * r1872095;
        double r1872097 = r1872096 + r1872091;
        double r1872098 = r1872093 / r1872097;
        double r1872099 = 2.0;
        double r1872100 = r1872099 + r1872097;
        double r1872101 = r1872098 / r1872100;
        double r1872102 = 0.9999999999530377;
        bool r1872103 = r1872101 <= r1872102;
        double r1872104 = fma(r1872094, r1872095, r1872091);
        double r1872105 = r1872104 + r1872099;
        double r1872106 = r1872104 * r1872105;
        double r1872107 = r1872092 / r1872106;
        double r1872108 = 1.0;
        double r1872109 = fma(r1872091, r1872107, r1872108);
        double r1872110 = r1872092 / r1872104;
        double r1872111 = r1872110 / r1872105;
        double r1872112 = fma(r1872091, r1872111, r1872108);
        double r1872113 = r1872109 * r1872109;
        double r1872114 = r1872113 * r1872109;
        double r1872115 = cbrt(r1872114);
        double r1872116 = r1872112 * r1872115;
        double r1872117 = r1872109 * r1872116;
        double r1872118 = cbrt(r1872117);
        double r1872119 = r1872118 / r1872099;
        double r1872120 = r1872099 / r1872089;
        double r1872121 = r1872099 - r1872120;
        double r1872122 = 4.0;
        double r1872123 = r1872089 * r1872089;
        double r1872124 = r1872122 / r1872123;
        double r1872125 = r1872121 + r1872124;
        double r1872126 = r1872125 / r1872099;
        double r1872127 = r1872103 ? r1872119 : r1872126;
        return r1872127;
}

Error

Bits error versus alpha

Bits error versus beta

Bits error versus i

Derivation

  1. Split input into 2 regimes
  2. if (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0)) < 0.9999999999530377

    1. Initial program 17.9

      \[\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} + 1.0}{2.0}\]
    2. Simplified17.8

      \[\leadsto \color{blue}{\frac{\frac{\left(\beta + \alpha\right) \cdot \left(\beta - \alpha\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot 2.0\right)} + 1.0}{2.0}}\]
    3. Using strategy rm
    4. Applied *-un-lft-identity17.8

      \[\leadsto \frac{\frac{\left(\beta + \alpha\right) \cdot \left(\beta - \alpha\right)}{\color{blue}{1 \cdot \mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot 2.0\right)}} + 1.0}{2.0}\]
    5. Applied times-frac16.2

      \[\leadsto \frac{\color{blue}{\frac{\beta + \alpha}{1} \cdot \frac{\beta - \alpha}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot 2.0\right)}} + 1.0}{2.0}\]
    6. Applied fma-def16.2

      \[\leadsto \frac{\color{blue}{\mathsf{fma}\left(\frac{\beta + \alpha}{1}, \frac{\beta - \alpha}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot 2.0\right)}, 1.0\right)}}{2.0}\]
    7. Using strategy rm
    8. Applied add-cbrt-cube16.2

      \[\leadsto \frac{\color{blue}{\sqrt[3]{\left(\mathsf{fma}\left(\frac{\beta + \alpha}{1}, \frac{\beta - \alpha}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot 2.0\right)}, 1.0\right) \cdot \mathsf{fma}\left(\frac{\beta + \alpha}{1}, \frac{\beta - \alpha}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot 2.0\right)}, 1.0\right)\right) \cdot \mathsf{fma}\left(\frac{\beta + \alpha}{1}, \frac{\beta - \alpha}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot 2.0\right)}, 1.0\right)}}}{2.0}\]
    9. Simplified16.2

      \[\leadsto \frac{\sqrt[3]{\color{blue}{\mathsf{fma}\left(\alpha + \beta, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right) \cdot \left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2.0\right)}, 1.0\right) \cdot \left(\mathsf{fma}\left(\alpha + \beta, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right) \cdot \left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2.0\right)}, 1.0\right) \cdot \mathsf{fma}\left(\alpha + \beta, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right) \cdot \left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2.0\right)}, 1.0\right)\right)}}}{2.0}\]
    10. Using strategy rm
    11. Applied add-cbrt-cube16.2

      \[\leadsto \frac{\sqrt[3]{\mathsf{fma}\left(\alpha + \beta, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right) \cdot \left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2.0\right)}, 1.0\right) \cdot \left(\mathsf{fma}\left(\alpha + \beta, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right) \cdot \left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2.0\right)}, 1.0\right) \cdot \color{blue}{\sqrt[3]{\left(\mathsf{fma}\left(\alpha + \beta, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right) \cdot \left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2.0\right)}, 1.0\right) \cdot \mathsf{fma}\left(\alpha + \beta, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right) \cdot \left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2.0\right)}, 1.0\right)\right) \cdot \mathsf{fma}\left(\alpha + \beta, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right) \cdot \left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2.0\right)}, 1.0\right)}}\right)}}{2.0}\]
    12. Using strategy rm
    13. Applied associate-/r*16.3

      \[\leadsto \frac{\sqrt[3]{\mathsf{fma}\left(\alpha + \beta, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right) \cdot \left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2.0\right)}, 1.0\right) \cdot \left(\mathsf{fma}\left(\alpha + \beta, \color{blue}{\frac{\frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2.0}}, 1.0\right) \cdot \sqrt[3]{\left(\mathsf{fma}\left(\alpha + \beta, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right) \cdot \left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2.0\right)}, 1.0\right) \cdot \mathsf{fma}\left(\alpha + \beta, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right) \cdot \left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2.0\right)}, 1.0\right)\right) \cdot \mathsf{fma}\left(\alpha + \beta, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right) \cdot \left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2.0\right)}, 1.0\right)}\right)}}{2.0}\]

    if 0.9999999999530377 < (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0))

    1. Initial program 42.0

      \[\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} + 1.0}{2.0}\]
    2. Simplified42.0

      \[\leadsto \color{blue}{\frac{\frac{\left(\beta + \alpha\right) \cdot \left(\beta - \alpha\right)}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot 2.0\right)} + 1.0}{2.0}}\]
    3. Using strategy rm
    4. Applied *-un-lft-identity42.0

      \[\leadsto \frac{\frac{\left(\beta + \alpha\right) \cdot \left(\beta - \alpha\right)}{\color{blue}{1 \cdot \mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot 2.0\right)}} + 1.0}{2.0}\]
    5. Applied times-frac31.2

      \[\leadsto \frac{\color{blue}{\frac{\beta + \alpha}{1} \cdot \frac{\beta - \alpha}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot 2.0\right)}} + 1.0}{2.0}\]
    6. Applied fma-def31.2

      \[\leadsto \frac{\color{blue}{\mathsf{fma}\left(\frac{\beta + \alpha}{1}, \frac{\beta - \alpha}{\mathsf{fma}\left(\mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right), \mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot 2.0\right)}, 1.0\right)}}{2.0}\]
    7. Taylor expanded around inf 5.0

      \[\leadsto \frac{\color{blue}{\left(4.0 \cdot \frac{1}{{\beta}^{2}} + 2.0\right) - 2.0 \cdot \frac{1}{\beta}}}{2.0}\]
    8. Simplified5.0

      \[\leadsto \frac{\color{blue}{\frac{4.0}{\beta \cdot \beta} + \left(2.0 - \frac{2.0}{\beta}\right)}}{2.0}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification13.6

    \[\leadsto \begin{array}{l} \mathbf{if}\;\frac{\frac{\left(\beta + \alpha\right) \cdot \left(\beta - \alpha\right)}{2 \cdot i + \left(\beta + \alpha\right)}}{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)} \le 0.9999999999530377:\\ \;\;\;\;\frac{\sqrt[3]{\mathsf{fma}\left(\beta + \alpha, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \left(\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0\right)}, 1.0\right) \cdot \left(\mathsf{fma}\left(\beta + \alpha, \frac{\frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}}{\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0}, 1.0\right) \cdot \sqrt[3]{\left(\mathsf{fma}\left(\beta + \alpha, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \left(\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0\right)}, 1.0\right) \cdot \mathsf{fma}\left(\beta + \alpha, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \left(\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0\right)}, 1.0\right)\right) \cdot \mathsf{fma}\left(\beta + \alpha, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right) \cdot \left(\mathsf{fma}\left(2, i, \beta + \alpha\right) + 2.0\right)}, 1.0\right)}\right)}}{2.0}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(2.0 - \frac{2.0}{\beta}\right) + \frac{4.0}{\beta \cdot \beta}}{2.0}\\ \end{array}\]

Reproduce

herbie shell --seed 2019154 +o rules:numerics
(FPCore (alpha beta i)
  :name "Octave 3.8, jcobi/2"
  :pre (and (> alpha -1) (> beta -1) (> i 0))
  (/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0)) 1.0) 2.0))