Average Error: 23.5 → 11.9
Time: 18.4s
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{\sqrt[3]{\left(\mathsf{fma}\left(\left(\left(\beta + \alpha\right) \cdot \frac{1}{2.0 + \mathsf{fma}\left(2, i, \left(\beta + \alpha\right)\right)}\right), \left(\frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \left(\beta + \alpha\right)\right)}\right), 1.0\right) \cdot \mathsf{fma}\left(\left(\left(\beta + \alpha\right) \cdot \frac{1}{2.0 + \mathsf{fma}\left(2, i, \left(\beta + \alpha\right)\right)}\right), \left(\frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \left(\beta + \alpha\right)\right)}\right), 1.0\right)\right) \cdot \mathsf{fma}\left(\left(\left(\beta + \alpha\right) \cdot \frac{1}{2.0 + \mathsf{fma}\left(2, i, \left(\beta + \alpha\right)\right)}\right), \left(\frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \left(\beta + \alpha\right)\right)}\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{\sqrt[3]{\left(\mathsf{fma}\left(\left(\left(\beta + \alpha\right) \cdot \frac{1}{2.0 + \mathsf{fma}\left(2, i, \left(\beta + \alpha\right)\right)}\right), \left(\frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \left(\beta + \alpha\right)\right)}\right), 1.0\right) \cdot \mathsf{fma}\left(\left(\left(\beta + \alpha\right) \cdot \frac{1}{2.0 + \mathsf{fma}\left(2, i, \left(\beta + \alpha\right)\right)}\right), \left(\frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \left(\beta + \alpha\right)\right)}\right), 1.0\right)\right) \cdot \mathsf{fma}\left(\left(\left(\beta + \alpha\right) \cdot \frac{1}{2.0 + \mathsf{fma}\left(2, i, \left(\beta + \alpha\right)\right)}\right), \left(\frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \left(\beta + \alpha\right)\right)}\right), 1.0\right)}}{2.0}
double f(double alpha, double beta, double i) {
        double r1149152 = alpha;
        double r1149153 = beta;
        double r1149154 = r1149152 + r1149153;
        double r1149155 = r1149153 - r1149152;
        double r1149156 = r1149154 * r1149155;
        double r1149157 = 2.0;
        double r1149158 = i;
        double r1149159 = r1149157 * r1149158;
        double r1149160 = r1149154 + r1149159;
        double r1149161 = r1149156 / r1149160;
        double r1149162 = 2.0;
        double r1149163 = r1149160 + r1149162;
        double r1149164 = r1149161 / r1149163;
        double r1149165 = 1.0;
        double r1149166 = r1149164 + r1149165;
        double r1149167 = r1149166 / r1149162;
        return r1149167;
}

double f(double alpha, double beta, double i) {
        double r1149168 = beta;
        double r1149169 = alpha;
        double r1149170 = r1149168 + r1149169;
        double r1149171 = 1.0;
        double r1149172 = 2.0;
        double r1149173 = 2.0;
        double r1149174 = i;
        double r1149175 = fma(r1149173, r1149174, r1149170);
        double r1149176 = r1149172 + r1149175;
        double r1149177 = r1149171 / r1149176;
        double r1149178 = r1149170 * r1149177;
        double r1149179 = r1149168 - r1149169;
        double r1149180 = r1149179 / r1149175;
        double r1149181 = 1.0;
        double r1149182 = fma(r1149178, r1149180, r1149181);
        double r1149183 = r1149182 * r1149182;
        double r1149184 = r1149183 * r1149182;
        double r1149185 = cbrt(r1149184);
        double r1149186 = r1149185 / r1149172;
        return r1149186;
}

Error

Bits error versus alpha

Bits error versus beta

Bits error versus i

Derivation

  1. Initial program 23.5

    \[\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. Simplified11.9

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

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

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

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

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

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

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

Reproduce

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