Average Error: 23.8 → 12.8
Time: 31.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}\]
\[\frac{\mathsf{fma}\left(\frac{\alpha + \beta}{\sqrt{\sqrt[3]{2.0 + \mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \sqrt[3]{2.0 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}} \cdot \frac{\frac{1}{\sqrt{2.0 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}{\sqrt{\sqrt[3]{2.0 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1.0\right)}{2.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}
\frac{\mathsf{fma}\left(\frac{\alpha + \beta}{\sqrt{\sqrt[3]{2.0 + \mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \sqrt[3]{2.0 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}} \cdot \frac{\frac{1}{\sqrt{2.0 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}{\sqrt{\sqrt[3]{2.0 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1.0\right)}{2.0}
double f(double alpha, double beta, double i) {
        double r3808812 = alpha;
        double r3808813 = beta;
        double r3808814 = r3808812 + r3808813;
        double r3808815 = r3808813 - r3808812;
        double r3808816 = r3808814 * r3808815;
        double r3808817 = 2.0;
        double r3808818 = i;
        double r3808819 = r3808817 * r3808818;
        double r3808820 = r3808814 + r3808819;
        double r3808821 = r3808816 / r3808820;
        double r3808822 = 2.0;
        double r3808823 = r3808820 + r3808822;
        double r3808824 = r3808821 / r3808823;
        double r3808825 = 1.0;
        double r3808826 = r3808824 + r3808825;
        double r3808827 = r3808826 / r3808822;
        return r3808827;
}

double f(double alpha, double beta, double i) {
        double r3808828 = alpha;
        double r3808829 = beta;
        double r3808830 = r3808828 + r3808829;
        double r3808831 = 2.0;
        double r3808832 = 2.0;
        double r3808833 = i;
        double r3808834 = fma(r3808832, r3808833, r3808830);
        double r3808835 = r3808831 + r3808834;
        double r3808836 = cbrt(r3808835);
        double r3808837 = r3808836 * r3808836;
        double r3808838 = sqrt(r3808837);
        double r3808839 = r3808830 / r3808838;
        double r3808840 = 1.0;
        double r3808841 = sqrt(r3808835);
        double r3808842 = r3808840 / r3808841;
        double r3808843 = sqrt(r3808836);
        double r3808844 = r3808842 / r3808843;
        double r3808845 = r3808839 * r3808844;
        double r3808846 = r3808829 - r3808828;
        double r3808847 = r3808846 / r3808834;
        double r3808848 = 1.0;
        double r3808849 = fma(r3808845, r3808847, r3808848);
        double r3808850 = r3808849 / r3808831;
        return r3808850;
}

Error

Bits error versus alpha

Bits error versus beta

Bits error versus i

Derivation

  1. Initial program 23.8

    \[\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. Simplified12.6

    \[\leadsto \color{blue}{\frac{\mathsf{fma}\left(\frac{\beta + \alpha}{2.0 + \mathsf{fma}\left(2, i, \beta + \alpha\right)}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, 1.0\right)}{2.0}}\]
  3. Using strategy rm
  4. Applied add-sqr-sqrt12.7

    \[\leadsto \frac{\mathsf{fma}\left(\frac{\beta + \alpha}{\color{blue}{\sqrt{2.0 + \mathsf{fma}\left(2, i, \beta + \alpha\right)} \cdot \sqrt{2.0 + \mathsf{fma}\left(2, i, \beta + \alpha\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \beta + \alpha\right)}, 1.0\right)}{2.0}\]
  5. Applied associate-/r*12.7

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

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

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

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

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

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

Reproduce

herbie shell --seed 2019134 +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))