Average Error: 29.3 → 22.7
Time: 9.6s
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 -0.4376991383250568024010362933040596544743 \lor \neg \left(\frac{1}{n} \le 1.823892541888928748751268970584802409735 \cdot 10^{-19}\right):\\ \;\;\;\;\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} - {x}^{\left(\frac{1}{n}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{n}}{x} - \left(\log \left(e^{\frac{0.5}{{x}^{2} \cdot n}}\right) - \frac{1 \cdot \log x}{x \cdot {n}^{2}}\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 -0.4376991383250568024010362933040596544743 \lor \neg \left(\frac{1}{n} \le 1.823892541888928748751268970584802409735 \cdot 10^{-19}\right):\\
\;\;\;\;\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} - {x}^{\left(\frac{1}{n}\right)}\\

\mathbf{else}:\\
\;\;\;\;\frac{\frac{1}{n}}{x} - \left(\log \left(e^{\frac{0.5}{{x}^{2} \cdot n}}\right) - \frac{1 \cdot \log x}{x \cdot {n}^{2}}\right)\\

\end{array}
double f(double x, double n) {
        double r77829 = x;
        double r77830 = 1.0;
        double r77831 = r77829 + r77830;
        double r77832 = n;
        double r77833 = r77830 / r77832;
        double r77834 = pow(r77831, r77833);
        double r77835 = pow(r77829, r77833);
        double r77836 = r77834 - r77835;
        return r77836;
}

double f(double x, double n) {
        double r77837 = 1.0;
        double r77838 = n;
        double r77839 = r77837 / r77838;
        double r77840 = -0.4376991383250568;
        bool r77841 = r77839 <= r77840;
        double r77842 = 1.8238925418889287e-19;
        bool r77843 = r77839 <= r77842;
        double r77844 = !r77843;
        bool r77845 = r77841 || r77844;
        double r77846 = x;
        double r77847 = r77846 + r77837;
        double r77848 = pow(r77847, r77839);
        double r77849 = cbrt(r77848);
        double r77850 = r77849 * r77849;
        double r77851 = r77850 * r77849;
        double r77852 = pow(r77846, r77839);
        double r77853 = r77851 - r77852;
        double r77854 = r77839 / r77846;
        double r77855 = 0.5;
        double r77856 = 2.0;
        double r77857 = pow(r77846, r77856);
        double r77858 = r77857 * r77838;
        double r77859 = r77855 / r77858;
        double r77860 = exp(r77859);
        double r77861 = log(r77860);
        double r77862 = log(r77846);
        double r77863 = r77837 * r77862;
        double r77864 = pow(r77838, r77856);
        double r77865 = r77846 * r77864;
        double r77866 = r77863 / r77865;
        double r77867 = r77861 - r77866;
        double r77868 = r77854 - r77867;
        double r77869 = r77845 ? r77853 : r77868;
        return r77869;
}

Error

Bits error versus x

Bits error versus n

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if (/ 1.0 n) < -0.4376991383250568 or 1.8238925418889287e-19 < (/ 1.0 n)

    1. Initial program 9.4

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

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

    if -0.4376991383250568 < (/ 1.0 n) < 1.8238925418889287e-19

    1. Initial program 44.7

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

      \[\leadsto \color{blue}{\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}}} - {x}^{\left(\frac{1}{n}\right)}\]
    4. Taylor expanded around inf 33.5

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

      \[\leadsto \color{blue}{\frac{\frac{1}{n}}{x} - \left(\frac{\frac{0.5}{n}}{{x}^{2}} - \frac{1 \cdot \log x}{x \cdot {n}^{2}}\right)}\]
    6. Using strategy rm
    7. Applied add-log-exp32.9

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

      \[\leadsto \frac{\frac{1}{n}}{x} - \left(\log \color{blue}{\left(e^{\frac{0.5}{{x}^{2} \cdot n}}\right)} - \frac{1 \cdot \log x}{x \cdot {n}^{2}}\right)\]
  3. Recombined 2 regimes into one program.
  4. Final simplification22.7

    \[\leadsto \begin{array}{l} \mathbf{if}\;\frac{1}{n} \le -0.4376991383250568024010362933040596544743 \lor \neg \left(\frac{1}{n} \le 1.823892541888928748751268970584802409735 \cdot 10^{-19}\right):\\ \;\;\;\;\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} - {x}^{\left(\frac{1}{n}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{n}}{x} - \left(\log \left(e^{\frac{0.5}{{x}^{2} \cdot n}}\right) - \frac{1 \cdot \log x}{x \cdot {n}^{2}}\right)\\ \end{array}\]

Reproduce

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