Average Error: 23.8 → 12.0
Time: 17.9s
Precision: 64
\[\alpha \gt -1 \land \beta \gt -1 \land i \gt 0.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} + 1}{2}\]
\[\frac{\mathsf{fma}\left(\frac{{\left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2\right)}^{\frac{-1}{2}}}{\sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}} \cdot \frac{\beta - \alpha}{\sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}}, \frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
\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} + 1}{2}
\frac{\mathsf{fma}\left(\frac{{\left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2\right)}^{\frac{-1}{2}}}{\sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}} \cdot \frac{\beta - \alpha}{\sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}}, \frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}
double f(double alpha, double beta, double i) {
        double r62885 = alpha;
        double r62886 = beta;
        double r62887 = r62885 + r62886;
        double r62888 = r62886 - r62885;
        double r62889 = r62887 * r62888;
        double r62890 = 2.0;
        double r62891 = i;
        double r62892 = r62890 * r62891;
        double r62893 = r62887 + r62892;
        double r62894 = r62889 / r62893;
        double r62895 = r62893 + r62890;
        double r62896 = r62894 / r62895;
        double r62897 = 1.0;
        double r62898 = r62896 + r62897;
        double r62899 = r62898 / r62890;
        return r62899;
}

double f(double alpha, double beta, double i) {
        double r62900 = 2.0;
        double r62901 = i;
        double r62902 = alpha;
        double r62903 = beta;
        double r62904 = r62902 + r62903;
        double r62905 = fma(r62900, r62901, r62904);
        double r62906 = r62905 + r62900;
        double r62907 = -0.5;
        double r62908 = pow(r62906, r62907);
        double r62909 = sqrt(r62906);
        double r62910 = sqrt(r62909);
        double r62911 = r62908 / r62910;
        double r62912 = r62903 - r62902;
        double r62913 = r62912 / r62910;
        double r62914 = r62911 * r62913;
        double r62915 = r62904 / r62905;
        double r62916 = 1.0;
        double r62917 = fma(r62914, r62915, r62916);
        double r62918 = r62917 / r62900;
        return r62918;
}

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} + 1}{2}\]
  2. Simplified11.9

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

    \[\leadsto \frac{\mathsf{fma}\left(\frac{\beta - \alpha}{\color{blue}{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2} \cdot \sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}}, \frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
  5. Applied *-un-lft-identity12.0

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

    \[\leadsto \frac{\mathsf{fma}\left(\color{blue}{\frac{1}{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}} \cdot \frac{\beta - \alpha}{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}}, \frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
  7. Using strategy rm
  8. Applied pow1/212.0

    \[\leadsto \frac{\mathsf{fma}\left(\frac{1}{\color{blue}{{\left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2\right)}^{\frac{1}{2}}}} \cdot \frac{\beta - \alpha}{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}, \frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
  9. Applied pow-flip11.9

    \[\leadsto \frac{\mathsf{fma}\left(\color{blue}{{\left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2\right)}^{\left(-\frac{1}{2}\right)}} \cdot \frac{\beta - \alpha}{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}, \frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
  10. Simplified11.9

    \[\leadsto \frac{\mathsf{fma}\left({\left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2\right)}^{\color{blue}{\frac{-1}{2}}} \cdot \frac{\beta - \alpha}{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}, \frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
  11. Using strategy rm
  12. Applied add-sqr-sqrt11.9

    \[\leadsto \frac{\mathsf{fma}\left({\left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2\right)}^{\frac{-1}{2}} \cdot \frac{\beta - \alpha}{\sqrt{\color{blue}{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2} \cdot \sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}}}, \frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
  13. Applied sqrt-prod12.0

    \[\leadsto \frac{\mathsf{fma}\left({\left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2\right)}^{\frac{-1}{2}} \cdot \frac{\beta - \alpha}{\color{blue}{\sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}} \cdot \sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}}}, \frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
  14. Applied *-un-lft-identity12.0

    \[\leadsto \frac{\mathsf{fma}\left({\left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2\right)}^{\frac{-1}{2}} \cdot \frac{\color{blue}{1 \cdot \left(\beta - \alpha\right)}}{\sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}} \cdot \sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}}, \frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
  15. Applied times-frac12.0

    \[\leadsto \frac{\mathsf{fma}\left({\left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2\right)}^{\frac{-1}{2}} \cdot \color{blue}{\left(\frac{1}{\sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}} \cdot \frac{\beta - \alpha}{\sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}}\right)}, \frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
  16. Applied associate-*r*12.0

    \[\leadsto \frac{\mathsf{fma}\left(\color{blue}{\left({\left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2\right)}^{\frac{-1}{2}} \cdot \frac{1}{\sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}}\right) \cdot \frac{\beta - \alpha}{\sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}}}, \frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
  17. Simplified12.0

    \[\leadsto \frac{\mathsf{fma}\left(\color{blue}{\frac{{\left(\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2\right)}^{\frac{-1}{2}}}{\sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}}} \cdot \frac{\beta - \alpha}{\sqrt{\sqrt{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}}}, \frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
  18. Final simplification12.0

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

Reproduce

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