Average Error: 23.4 → 12.3
Time: 2.9m
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}\;\alpha \le 2.778527467618903 \cdot 10^{+23}:\\ \;\;\;\;\frac{(\left(\beta + \alpha\right) \cdot \left(\frac{\frac{\beta - \alpha}{\left(\beta + \alpha\right) + 2 \cdot i}}{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)}\right) + 1.0)_*}{2.0}\\ \mathbf{elif}\;\alpha \le 7.90075049213558 \cdot 10^{+53}:\\ \;\;\;\;\frac{(\left(\frac{1}{\alpha \cdot \alpha}\right) \cdot \left(\frac{8.0}{\alpha} - 4.0\right) + \left(\frac{2.0}{\alpha}\right))_*}{2.0}\\ \mathbf{elif}\;\alpha \le 4.755359132529547 \cdot 10^{+94}:\\ \;\;\;\;\frac{(\left(\frac{\beta + \alpha}{\sqrt{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)}}\right) \cdot \left(\frac{\frac{\beta - \alpha}{\left(\beta + \alpha\right) + 2 \cdot i}}{\sqrt{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)}}\right) + 1.0)_*}{2.0}\\ \mathbf{else}:\\ \;\;\;\;\frac{(\left(\frac{1}{\alpha \cdot \alpha}\right) \cdot \left(\frac{8.0}{\alpha} - 4.0\right) + \left(\frac{2.0}{\alpha}\right))_*}{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}\;\alpha \le 2.778527467618903 \cdot 10^{+23}:\\
\;\;\;\;\frac{(\left(\beta + \alpha\right) \cdot \left(\frac{\frac{\beta - \alpha}{\left(\beta + \alpha\right) + 2 \cdot i}}{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)}\right) + 1.0)_*}{2.0}\\

\mathbf{elif}\;\alpha \le 7.90075049213558 \cdot 10^{+53}:\\
\;\;\;\;\frac{(\left(\frac{1}{\alpha \cdot \alpha}\right) \cdot \left(\frac{8.0}{\alpha} - 4.0\right) + \left(\frac{2.0}{\alpha}\right))_*}{2.0}\\

\mathbf{elif}\;\alpha \le 4.755359132529547 \cdot 10^{+94}:\\
\;\;\;\;\frac{(\left(\frac{\beta + \alpha}{\sqrt{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)}}\right) \cdot \left(\frac{\frac{\beta - \alpha}{\left(\beta + \alpha\right) + 2 \cdot i}}{\sqrt{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)}}\right) + 1.0)_*}{2.0}\\

\mathbf{else}:\\
\;\;\;\;\frac{(\left(\frac{1}{\alpha \cdot \alpha}\right) \cdot \left(\frac{8.0}{\alpha} - 4.0\right) + \left(\frac{2.0}{\alpha}\right))_*}{2.0}\\

\end{array}
double f(double alpha, double beta, double i) {
        double r9806040 = alpha;
        double r9806041 = beta;
        double r9806042 = r9806040 + r9806041;
        double r9806043 = r9806041 - r9806040;
        double r9806044 = r9806042 * r9806043;
        double r9806045 = 2.0;
        double r9806046 = i;
        double r9806047 = r9806045 * r9806046;
        double r9806048 = r9806042 + r9806047;
        double r9806049 = r9806044 / r9806048;
        double r9806050 = 2.0;
        double r9806051 = r9806048 + r9806050;
        double r9806052 = r9806049 / r9806051;
        double r9806053 = 1.0;
        double r9806054 = r9806052 + r9806053;
        double r9806055 = r9806054 / r9806050;
        return r9806055;
}

double f(double alpha, double beta, double i) {
        double r9806056 = alpha;
        double r9806057 = 2.778527467618903e+23;
        bool r9806058 = r9806056 <= r9806057;
        double r9806059 = beta;
        double r9806060 = r9806059 + r9806056;
        double r9806061 = r9806059 - r9806056;
        double r9806062 = 2.0;
        double r9806063 = i;
        double r9806064 = r9806062 * r9806063;
        double r9806065 = r9806060 + r9806064;
        double r9806066 = r9806061 / r9806065;
        double r9806067 = 2.0;
        double r9806068 = r9806067 + r9806065;
        double r9806069 = r9806066 / r9806068;
        double r9806070 = 1.0;
        double r9806071 = fma(r9806060, r9806069, r9806070);
        double r9806072 = r9806071 / r9806067;
        double r9806073 = 7.90075049213558e+53;
        bool r9806074 = r9806056 <= r9806073;
        double r9806075 = 1.0;
        double r9806076 = r9806056 * r9806056;
        double r9806077 = r9806075 / r9806076;
        double r9806078 = 8.0;
        double r9806079 = r9806078 / r9806056;
        double r9806080 = 4.0;
        double r9806081 = r9806079 - r9806080;
        double r9806082 = r9806067 / r9806056;
        double r9806083 = fma(r9806077, r9806081, r9806082);
        double r9806084 = r9806083 / r9806067;
        double r9806085 = 4.755359132529547e+94;
        bool r9806086 = r9806056 <= r9806085;
        double r9806087 = sqrt(r9806068);
        double r9806088 = r9806060 / r9806087;
        double r9806089 = r9806066 / r9806087;
        double r9806090 = fma(r9806088, r9806089, r9806070);
        double r9806091 = r9806090 / r9806067;
        double r9806092 = r9806086 ? r9806091 : r9806084;
        double r9806093 = r9806074 ? r9806084 : r9806092;
        double r9806094 = r9806058 ? r9806072 : r9806093;
        return r9806094;
}

Error

Bits error versus alpha

Bits error versus beta

Bits error versus i

Derivation

  1. Split input into 3 regimes
  2. if alpha < 2.778527467618903e+23

    1. Initial program 11.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.0} + 1.0}{2.0}\]
    2. Using strategy rm
    3. Applied *-un-lft-identity11.2

      \[\leadsto \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) + \color{blue}{1 \cdot 2.0}} + 1.0}{2.0}\]
    4. Applied *-un-lft-identity11.2

      \[\leadsto \frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\color{blue}{1 \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)} + 1 \cdot 2.0} + 1.0}{2.0}\]
    5. Applied distribute-lft-out11.2

      \[\leadsto \frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\color{blue}{1 \cdot \left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0\right)}} + 1.0}{2.0}\]
    6. Applied *-un-lft-identity11.2

      \[\leadsto \frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\color{blue}{1 \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{1 \cdot \left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0\right)} + 1.0}{2.0}\]
    7. Applied times-frac0.4

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

      \[\leadsto \frac{\color{blue}{\frac{\frac{\alpha + \beta}{1}}{1} \cdot \frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0}} + 1.0}{2.0}\]
    9. Applied fma-def0.4

      \[\leadsto \frac{\color{blue}{(\left(\frac{\frac{\alpha + \beta}{1}}{1}\right) \cdot \left(\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0}\right) + 1.0)_*}}{2.0}\]
    10. Simplified0.4

      \[\leadsto \frac{(\color{blue}{\left(\beta + \alpha\right)} \cdot \left(\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0}\right) + 1.0)_*}{2.0}\]

    if 2.778527467618903e+23 < alpha < 7.90075049213558e+53 or 4.755359132529547e+94 < alpha

    1. Initial program 53.7

      \[\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. Taylor expanded around inf 42.0

      \[\leadsto \frac{\color{blue}{\left(2.0 \cdot \frac{1}{\alpha} + 8.0 \cdot \frac{1}{{\alpha}^{3}}\right) - 4.0 \cdot \frac{1}{{\alpha}^{2}}}}{2.0}\]
    3. Simplified42.0

      \[\leadsto \frac{\color{blue}{(\left(\frac{1}{\alpha \cdot \alpha}\right) \cdot \left(\frac{8.0}{\alpha} - 4.0\right) + \left(\frac{2.0}{\alpha}\right))_*}}{2.0}\]

    if 7.90075049213558e+53 < alpha < 4.755359132529547e+94

    1. Initial program 37.6

      \[\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. Using strategy rm
    3. Applied add-sqr-sqrt37.6

      \[\leadsto \frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\color{blue}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} \cdot \sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0}}} + 1.0}{2.0}\]
    4. Applied *-un-lft-identity37.6

      \[\leadsto \frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\color{blue}{1 \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} \cdot \sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0}} + 1.0}{2.0}\]
    5. Applied times-frac26.6

      \[\leadsto \frac{\frac{\color{blue}{\frac{\alpha + \beta}{1} \cdot \frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} \cdot \sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0}} + 1.0}{2.0}\]
    6. Applied times-frac26.6

      \[\leadsto \frac{\color{blue}{\frac{\frac{\alpha + \beta}{1}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0}} \cdot \frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0}}} + 1.0}{2.0}\]
    7. Applied fma-def26.5

      \[\leadsto \frac{\color{blue}{(\left(\frac{\frac{\alpha + \beta}{1}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0}}\right) \cdot \left(\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0}}\right) + 1.0)_*}}{2.0}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification12.3

    \[\leadsto \begin{array}{l} \mathbf{if}\;\alpha \le 2.778527467618903 \cdot 10^{+23}:\\ \;\;\;\;\frac{(\left(\beta + \alpha\right) \cdot \left(\frac{\frac{\beta - \alpha}{\left(\beta + \alpha\right) + 2 \cdot i}}{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)}\right) + 1.0)_*}{2.0}\\ \mathbf{elif}\;\alpha \le 7.90075049213558 \cdot 10^{+53}:\\ \;\;\;\;\frac{(\left(\frac{1}{\alpha \cdot \alpha}\right) \cdot \left(\frac{8.0}{\alpha} - 4.0\right) + \left(\frac{2.0}{\alpha}\right))_*}{2.0}\\ \mathbf{elif}\;\alpha \le 4.755359132529547 \cdot 10^{+94}:\\ \;\;\;\;\frac{(\left(\frac{\beta + \alpha}{\sqrt{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)}}\right) \cdot \left(\frac{\frac{\beta - \alpha}{\left(\beta + \alpha\right) + 2 \cdot i}}{\sqrt{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)}}\right) + 1.0)_*}{2.0}\\ \mathbf{else}:\\ \;\;\;\;\frac{(\left(\frac{1}{\alpha \cdot \alpha}\right) \cdot \left(\frac{8.0}{\alpha} - 4.0\right) + \left(\frac{2.0}{\alpha}\right))_*}{2.0}\\ \end{array}\]

Reproduce

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