Average Error: 28.8 → 21.5
Time: 10.9s
Precision: 64
\[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
\[\begin{array}{l} \mathbf{if}\;\frac{1}{n} \le -5.601735034452610478039364001745514798358 \cdot 10^{-7}:\\ \;\;\;\;\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)\\ \mathbf{elif}\;\frac{1}{n} \le 0.009850921393702683631632410765632812399417:\\ \;\;\;\;\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \mathsf{fma}\left(-0.25, \frac{1}{\mathsf{log1p}\left(\mathsf{expm1}\left({x}^{2} \cdot n\right)\right)} + \frac{\log \left(\frac{1}{x}\right)}{\mathsf{expm1}\left(\mathsf{log1p}\left(x \cdot {n}^{2}\right)\right)}, \frac{\frac{0.5}{n}}{x}\right)\\ \mathbf{else}:\\ \;\;\;\;\left({\left({\left(x + 1\right)}^{\left(\frac{\sqrt{\frac{1}{n}}}{\sqrt{2}}\right)}\right)}^{\left(\frac{\sqrt{\frac{1}{n}}}{\sqrt{2}}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)\\ \end{array}\]
{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}
\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -5.601735034452610478039364001745514798358 \cdot 10^{-7}:\\
\;\;\;\;\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)\\

\mathbf{elif}\;\frac{1}{n} \le 0.009850921393702683631632410765632812399417:\\
\;\;\;\;\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \mathsf{fma}\left(-0.25, \frac{1}{\mathsf{log1p}\left(\mathsf{expm1}\left({x}^{2} \cdot n\right)\right)} + \frac{\log \left(\frac{1}{x}\right)}{\mathsf{expm1}\left(\mathsf{log1p}\left(x \cdot {n}^{2}\right)\right)}, \frac{\frac{0.5}{n}}{x}\right)\\

\mathbf{else}:\\
\;\;\;\;\left({\left({\left(x + 1\right)}^{\left(\frac{\sqrt{\frac{1}{n}}}{\sqrt{2}}\right)}\right)}^{\left(\frac{\sqrt{\frac{1}{n}}}{\sqrt{2}}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)\\

\end{array}
double f(double x, double n) {
        double r76666 = x;
        double r76667 = 1.0;
        double r76668 = r76666 + r76667;
        double r76669 = n;
        double r76670 = r76667 / r76669;
        double r76671 = pow(r76668, r76670);
        double r76672 = pow(r76666, r76670);
        double r76673 = r76671 - r76672;
        return r76673;
}

double f(double x, double n) {
        double r76674 = 1.0;
        double r76675 = n;
        double r76676 = r76674 / r76675;
        double r76677 = -5.60173503445261e-07;
        bool r76678 = r76676 <= r76677;
        double r76679 = x;
        double r76680 = r76679 + r76674;
        double r76681 = 2.0;
        double r76682 = r76676 / r76681;
        double r76683 = pow(r76680, r76682);
        double r76684 = pow(r76679, r76682);
        double r76685 = r76683 + r76684;
        double r76686 = r76683 - r76684;
        double r76687 = r76685 * r76686;
        double r76688 = 0.009850921393702684;
        bool r76689 = r76676 <= r76688;
        double r76690 = 0.25;
        double r76691 = -r76690;
        double r76692 = 1.0;
        double r76693 = pow(r76679, r76681);
        double r76694 = r76693 * r76675;
        double r76695 = expm1(r76694);
        double r76696 = log1p(r76695);
        double r76697 = r76692 / r76696;
        double r76698 = r76692 / r76679;
        double r76699 = log(r76698);
        double r76700 = pow(r76675, r76681);
        double r76701 = r76679 * r76700;
        double r76702 = log1p(r76701);
        double r76703 = expm1(r76702);
        double r76704 = r76699 / r76703;
        double r76705 = r76697 + r76704;
        double r76706 = 0.5;
        double r76707 = r76706 / r76675;
        double r76708 = r76707 / r76679;
        double r76709 = fma(r76691, r76705, r76708);
        double r76710 = r76685 * r76709;
        double r76711 = sqrt(r76676);
        double r76712 = sqrt(r76681);
        double r76713 = r76711 / r76712;
        double r76714 = pow(r76680, r76713);
        double r76715 = pow(r76714, r76713);
        double r76716 = r76715 + r76684;
        double r76717 = r76716 * r76686;
        double r76718 = r76689 ? r76710 : r76717;
        double r76719 = r76678 ? r76687 : r76718;
        return r76719;
}

Error

Bits error versus x

Bits error versus n

Derivation

  1. Split input into 3 regimes
  2. if (/ 1.0 n) < -5.60173503445261e-07

    1. Initial program 0.8

      \[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
    2. Using strategy rm
    3. Applied sqr-pow0.9

      \[\leadsto {\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - \color{blue}{{x}^{\left(\frac{\frac{1}{n}}{2}\right)} \cdot {x}^{\left(\frac{\frac{1}{n}}{2}\right)}}\]
    4. Applied sqr-pow0.8

      \[\leadsto \color{blue}{{\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} \cdot {\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)}} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)} \cdot {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\]
    5. Applied difference-of-squares0.8

      \[\leadsto \color{blue}{\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)}\]

    if -5.60173503445261e-07 < (/ 1.0 n) < 0.009850921393702684

    1. Initial program 44.3

      \[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
    2. Using strategy rm
    3. Applied sqr-pow44.3

      \[\leadsto {\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - \color{blue}{{x}^{\left(\frac{\frac{1}{n}}{2}\right)} \cdot {x}^{\left(\frac{\frac{1}{n}}{2}\right)}}\]
    4. Applied sqr-pow44.3

      \[\leadsto \color{blue}{{\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} \cdot {\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)}} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)} \cdot {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\]
    5. Applied difference-of-squares44.3

      \[\leadsto \color{blue}{\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)}\]
    6. Taylor expanded around inf 32.1

      \[\leadsto \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \color{blue}{\left(0.5 \cdot \frac{1}{x \cdot n} - \left(0.25 \cdot \frac{1}{{x}^{2} \cdot n} + 0.25 \cdot \frac{\log \left(\frac{1}{x}\right)}{x \cdot {n}^{2}}\right)\right)}\]
    7. Simplified31.6

      \[\leadsto \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \color{blue}{\mathsf{fma}\left(-0.25, \frac{1}{{x}^{2} \cdot n} + \frac{\log \left(\frac{1}{x}\right)}{x \cdot {n}^{2}}, \frac{\frac{0.5}{n}}{x}\right)}\]
    8. Using strategy rm
    9. Applied log1p-expm1-u31.5

      \[\leadsto \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \mathsf{fma}\left(-0.25, \frac{1}{\color{blue}{\mathsf{log1p}\left(\mathsf{expm1}\left({x}^{2} \cdot n\right)\right)}} + \frac{\log \left(\frac{1}{x}\right)}{x \cdot {n}^{2}}, \frac{\frac{0.5}{n}}{x}\right)\]
    10. Using strategy rm
    11. Applied expm1-log1p-u31.5

      \[\leadsto \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \mathsf{fma}\left(-0.25, \frac{1}{\mathsf{log1p}\left(\mathsf{expm1}\left({x}^{2} \cdot n\right)\right)} + \frac{\log \left(\frac{1}{x}\right)}{\color{blue}{\mathsf{expm1}\left(\mathsf{log1p}\left(x \cdot {n}^{2}\right)\right)}}, \frac{\frac{0.5}{n}}{x}\right)\]

    if 0.009850921393702684 < (/ 1.0 n)

    1. Initial program 23.5

      \[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
    2. Using strategy rm
    3. Applied sqr-pow23.5

      \[\leadsto {\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - \color{blue}{{x}^{\left(\frac{\frac{1}{n}}{2}\right)} \cdot {x}^{\left(\frac{\frac{1}{n}}{2}\right)}}\]
    4. Applied sqr-pow23.5

      \[\leadsto \color{blue}{{\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} \cdot {\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)}} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)} \cdot {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\]
    5. Applied difference-of-squares23.5

      \[\leadsto \color{blue}{\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)}\]
    6. Using strategy rm
    7. Applied add-sqr-sqrt23.5

      \[\leadsto \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{\color{blue}{\sqrt{2} \cdot \sqrt{2}}}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)\]
    8. Applied add-sqr-sqrt23.5

      \[\leadsto \left({\left(x + 1\right)}^{\left(\frac{\color{blue}{\sqrt{\frac{1}{n}} \cdot \sqrt{\frac{1}{n}}}}{\sqrt{2} \cdot \sqrt{2}}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)\]
    9. Applied times-frac23.5

      \[\leadsto \left({\left(x + 1\right)}^{\color{blue}{\left(\frac{\sqrt{\frac{1}{n}}}{\sqrt{2}} \cdot \frac{\sqrt{\frac{1}{n}}}{\sqrt{2}}\right)}} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)\]
    10. Applied pow-unpow23.5

      \[\leadsto \left(\color{blue}{{\left({\left(x + 1\right)}^{\left(\frac{\sqrt{\frac{1}{n}}}{\sqrt{2}}\right)}\right)}^{\left(\frac{\sqrt{\frac{1}{n}}}{\sqrt{2}}\right)}} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)\]
  3. Recombined 3 regimes into one program.
  4. Final simplification21.5

    \[\leadsto \begin{array}{l} \mathbf{if}\;\frac{1}{n} \le -5.601735034452610478039364001745514798358 \cdot 10^{-7}:\\ \;\;\;\;\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)\\ \mathbf{elif}\;\frac{1}{n} \le 0.009850921393702683631632410765632812399417:\\ \;\;\;\;\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \mathsf{fma}\left(-0.25, \frac{1}{\mathsf{log1p}\left(\mathsf{expm1}\left({x}^{2} \cdot n\right)\right)} + \frac{\log \left(\frac{1}{x}\right)}{\mathsf{expm1}\left(\mathsf{log1p}\left(x \cdot {n}^{2}\right)\right)}, \frac{\frac{0.5}{n}}{x}\right)\\ \mathbf{else}:\\ \;\;\;\;\left({\left({\left(x + 1\right)}^{\left(\frac{\sqrt{\frac{1}{n}}}{\sqrt{2}}\right)}\right)}^{\left(\frac{\sqrt{\frac{1}{n}}}{\sqrt{2}}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)\\ \end{array}\]

Reproduce

herbie shell --seed 2019344 +o rules:numerics
(FPCore (x n)
  :name "2nthrt (problem 3.4.6)"
  :precision binary64
  (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))