Average Error: 29.4 → 19.6
Time: 3.3m
Precision: 64
\[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
\[\begin{array}{l} \mathbf{if}\;n \le -767759998.8935319:\\ \;\;\;\;\mathsf{fma}\left(\left(\frac{\frac{-1}{2}}{x}\right), \left(\frac{1}{x \cdot n}\right), \left(\frac{1}{x \cdot n} - \left(-\frac{\log x}{\left(x \cdot n\right) \cdot n}\right)\right)\right)\\ \mathbf{elif}\;n \le -1.6197911496842408 \cdot 10^{-306}:\\ \;\;\;\;\left(\sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)} \cdot \sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)}\right) \cdot \sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - \sqrt{{x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt{{x}^{\left(\frac{1}{n}\right)}}}\right)}\\ \mathbf{elif}\;n \le 329344780.65860045:\\ \;\;\;\;\log \left(e^{e^{\frac{\mathsf{log1p}\left(x\right)}{n}} - e^{\log \left({x}^{\left(\frac{1}{n}\right)}\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(\left(\frac{\frac{-1}{2}}{x}\right), \left(\frac{1}{x \cdot n}\right), \left(\frac{1}{x \cdot n} - \left(-\frac{\log x}{\left(x \cdot n\right) \cdot n}\right)\right)\right)\\ \end{array}\]
{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}
\begin{array}{l}
\mathbf{if}\;n \le -767759998.8935319:\\
\;\;\;\;\mathsf{fma}\left(\left(\frac{\frac{-1}{2}}{x}\right), \left(\frac{1}{x \cdot n}\right), \left(\frac{1}{x \cdot n} - \left(-\frac{\log x}{\left(x \cdot n\right) \cdot n}\right)\right)\right)\\

\mathbf{elif}\;n \le -1.6197911496842408 \cdot 10^{-306}:\\
\;\;\;\;\left(\sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)} \cdot \sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)}\right) \cdot \sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - \sqrt{{x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt{{x}^{\left(\frac{1}{n}\right)}}}\right)}\\

\mathbf{elif}\;n \le 329344780.65860045:\\
\;\;\;\;\log \left(e^{e^{\frac{\mathsf{log1p}\left(x\right)}{n}} - e^{\log \left({x}^{\left(\frac{1}{n}\right)}\right)}}\right)\\

\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(\left(\frac{\frac{-1}{2}}{x}\right), \left(\frac{1}{x \cdot n}\right), \left(\frac{1}{x \cdot n} - \left(-\frac{\log x}{\left(x \cdot n\right) \cdot n}\right)\right)\right)\\

\end{array}
double f(double x, double n) {
        double r15114865 = x;
        double r15114866 = 1.0;
        double r15114867 = r15114865 + r15114866;
        double r15114868 = n;
        double r15114869 = r15114866 / r15114868;
        double r15114870 = pow(r15114867, r15114869);
        double r15114871 = pow(r15114865, r15114869);
        double r15114872 = r15114870 - r15114871;
        return r15114872;
}

double f(double x, double n) {
        double r15114873 = n;
        double r15114874 = -767759998.8935319;
        bool r15114875 = r15114873 <= r15114874;
        double r15114876 = -0.5;
        double r15114877 = x;
        double r15114878 = r15114876 / r15114877;
        double r15114879 = 1.0;
        double r15114880 = r15114877 * r15114873;
        double r15114881 = r15114879 / r15114880;
        double r15114882 = log(r15114877);
        double r15114883 = r15114880 * r15114873;
        double r15114884 = r15114882 / r15114883;
        double r15114885 = -r15114884;
        double r15114886 = r15114881 - r15114885;
        double r15114887 = fma(r15114878, r15114881, r15114886);
        double r15114888 = -1.6197911496842408e-306;
        bool r15114889 = r15114873 <= r15114888;
        double r15114890 = r15114879 + r15114877;
        double r15114891 = r15114879 / r15114873;
        double r15114892 = pow(r15114890, r15114891);
        double r15114893 = pow(r15114877, r15114891);
        double r15114894 = r15114892 - r15114893;
        double r15114895 = exp(r15114894);
        double r15114896 = log(r15114895);
        double r15114897 = cbrt(r15114896);
        double r15114898 = r15114897 * r15114897;
        double r15114899 = sqrt(r15114893);
        double r15114900 = r15114899 * r15114899;
        double r15114901 = r15114892 - r15114900;
        double r15114902 = exp(r15114901);
        double r15114903 = log(r15114902);
        double r15114904 = cbrt(r15114903);
        double r15114905 = r15114898 * r15114904;
        double r15114906 = 329344780.65860045;
        bool r15114907 = r15114873 <= r15114906;
        double r15114908 = log1p(r15114877);
        double r15114909 = r15114908 / r15114873;
        double r15114910 = exp(r15114909);
        double r15114911 = log(r15114893);
        double r15114912 = exp(r15114911);
        double r15114913 = r15114910 - r15114912;
        double r15114914 = exp(r15114913);
        double r15114915 = log(r15114914);
        double r15114916 = r15114907 ? r15114915 : r15114887;
        double r15114917 = r15114889 ? r15114905 : r15114916;
        double r15114918 = r15114875 ? r15114887 : r15114917;
        return r15114918;
}

Error

Bits error versus x

Bits error versus n

Derivation

  1. Split input into 3 regimes
  2. if n < -767759998.8935319 or 329344780.65860045 < n

    1. Initial program 44.7

      \[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
    2. Taylor expanded around inf 32.7

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

      \[\leadsto \color{blue}{\mathsf{fma}\left(\left(\frac{\frac{-1}{2}}{x}\right), \left(\frac{1}{n \cdot x}\right), \left(\frac{1}{n \cdot x} - \frac{-\log x}{n \cdot \left(n \cdot x\right)}\right)\right)}\]

    if -767759998.8935319 < n < -1.6197911496842408e-306

    1. Initial program 1.1

      \[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
    2. Using strategy rm
    3. Applied add-log-exp1.4

      \[\leadsto \color{blue}{\log \left(e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)}\]
    4. Using strategy rm
    5. Applied add-cube-cbrt1.4

      \[\leadsto \color{blue}{\left(\sqrt[3]{\log \left(e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)} \cdot \sqrt[3]{\log \left(e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)}\right) \cdot \sqrt[3]{\log \left(e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)}}\]
    6. Using strategy rm
    7. Applied add-sqr-sqrt1.4

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

    if -1.6197911496842408e-306 < n < 329344780.65860045

    1. Initial program 24.0

      \[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
    2. Using strategy rm
    3. Applied add-log-exp24.0

      \[\leadsto \color{blue}{\log \left(e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)}\]
    4. Using strategy rm
    5. Applied add-exp-log24.0

      \[\leadsto \log \left(e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - \color{blue}{e^{\log \left({x}^{\left(\frac{1}{n}\right)}\right)}}}\right)\]
    6. Using strategy rm
    7. Applied add-exp-log24.3

      \[\leadsto \log \left(e^{{\color{blue}{\left(e^{\log \left(x + 1\right)}\right)}}^{\left(\frac{1}{n}\right)} - e^{\log \left({x}^{\left(\frac{1}{n}\right)}\right)}}\right)\]
    8. Applied pow-exp24.3

      \[\leadsto \log \left(e^{\color{blue}{e^{\log \left(x + 1\right) \cdot \frac{1}{n}}} - e^{\log \left({x}^{\left(\frac{1}{n}\right)}\right)}}\right)\]
    9. Simplified1.8

      \[\leadsto \log \left(e^{e^{\color{blue}{\frac{\mathsf{log1p}\left(x\right)}{n}}} - e^{\log \left({x}^{\left(\frac{1}{n}\right)}\right)}}\right)\]
  3. Recombined 3 regimes into one program.
  4. Final simplification19.6

    \[\leadsto \begin{array}{l} \mathbf{if}\;n \le -767759998.8935319:\\ \;\;\;\;\mathsf{fma}\left(\left(\frac{\frac{-1}{2}}{x}\right), \left(\frac{1}{x \cdot n}\right), \left(\frac{1}{x \cdot n} - \left(-\frac{\log x}{\left(x \cdot n\right) \cdot n}\right)\right)\right)\\ \mathbf{elif}\;n \le -1.6197911496842408 \cdot 10^{-306}:\\ \;\;\;\;\left(\sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)} \cdot \sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)}\right) \cdot \sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - \sqrt{{x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt{{x}^{\left(\frac{1}{n}\right)}}}\right)}\\ \mathbf{elif}\;n \le 329344780.65860045:\\ \;\;\;\;\log \left(e^{e^{\frac{\mathsf{log1p}\left(x\right)}{n}} - e^{\log \left({x}^{\left(\frac{1}{n}\right)}\right)}}\right)\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(\left(\frac{\frac{-1}{2}}{x}\right), \left(\frac{1}{x \cdot n}\right), \left(\frac{1}{x \cdot n} - \left(-\frac{\log x}{\left(x \cdot n\right) \cdot n}\right)\right)\right)\\ \end{array}\]

Reproduce

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