Average Error: 29.6 → 22.0
Time: 30.3s
Precision: 64
\[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
\[\begin{array}{l} \mathbf{if}\;n \le -47651231.911831676959991455078125:\\ \;\;\;\;\left(\frac{\frac{1}{x}}{n} + \frac{1 \cdot \log x}{x \cdot \left(n \cdot n\right)}\right) - \frac{\frac{0.5}{n}}{x \cdot x}\\ \mathbf{elif}\;n \le 1096.357908857971551697119139134883880615:\\ \;\;\;\;\sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)} \cdot \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)\\ \mathbf{else}:\\ \;\;\;\;\left(\frac{\frac{1}{x}}{n} + \frac{1 \cdot \log x}{x \cdot \left(n \cdot n\right)}\right) - \frac{\frac{0.5}{n}}{x \cdot x}\\ \end{array}\]
{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}
\begin{array}{l}
\mathbf{if}\;n \le -47651231.911831676959991455078125:\\
\;\;\;\;\left(\frac{\frac{1}{x}}{n} + \frac{1 \cdot \log x}{x \cdot \left(n \cdot n\right)}\right) - \frac{\frac{0.5}{n}}{x \cdot x}\\

\mathbf{elif}\;n \le 1096.357908857971551697119139134883880615:\\
\;\;\;\;\sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)} \cdot \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)\\

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

\end{array}
double f(double x, double n) {
        double r2956766 = x;
        double r2956767 = 1.0;
        double r2956768 = r2956766 + r2956767;
        double r2956769 = n;
        double r2956770 = r2956767 / r2956769;
        double r2956771 = pow(r2956768, r2956770);
        double r2956772 = pow(r2956766, r2956770);
        double r2956773 = r2956771 - r2956772;
        return r2956773;
}

double f(double x, double n) {
        double r2956774 = n;
        double r2956775 = -47651231.91183168;
        bool r2956776 = r2956774 <= r2956775;
        double r2956777 = 1.0;
        double r2956778 = x;
        double r2956779 = r2956777 / r2956778;
        double r2956780 = r2956779 / r2956774;
        double r2956781 = log(r2956778);
        double r2956782 = r2956777 * r2956781;
        double r2956783 = r2956774 * r2956774;
        double r2956784 = r2956778 * r2956783;
        double r2956785 = r2956782 / r2956784;
        double r2956786 = r2956780 + r2956785;
        double r2956787 = 0.5;
        double r2956788 = r2956787 / r2956774;
        double r2956789 = r2956778 * r2956778;
        double r2956790 = r2956788 / r2956789;
        double r2956791 = r2956786 - r2956790;
        double r2956792 = 1096.3579088579716;
        bool r2956793 = r2956774 <= r2956792;
        double r2956794 = r2956777 + r2956778;
        double r2956795 = r2956777 / r2956774;
        double r2956796 = pow(r2956794, r2956795);
        double r2956797 = pow(r2956778, r2956795);
        double r2956798 = r2956796 - r2956797;
        double r2956799 = exp(r2956798);
        double r2956800 = log(r2956799);
        double r2956801 = cbrt(r2956800);
        double r2956802 = r2956801 * r2956801;
        double r2956803 = r2956801 * r2956802;
        double r2956804 = r2956793 ? r2956803 : r2956791;
        double r2956805 = r2956776 ? r2956791 : r2956804;
        return r2956805;
}

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 n < -47651231.91183168 or 1096.3579088579716 < 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.2

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

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

    if -47651231.91183168 < n < 1096.3579088579716

    1. Initial program 8.6

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

      \[\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-cbrt8.7

      \[\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)}}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification22.0

    \[\leadsto \begin{array}{l} \mathbf{if}\;n \le -47651231.911831676959991455078125:\\ \;\;\;\;\left(\frac{\frac{1}{x}}{n} + \frac{1 \cdot \log x}{x \cdot \left(n \cdot n\right)}\right) - \frac{\frac{0.5}{n}}{x \cdot x}\\ \mathbf{elif}\;n \le 1096.357908857971551697119139134883880615:\\ \;\;\;\;\sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)} \cdot \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)\\ \mathbf{else}:\\ \;\;\;\;\left(\frac{\frac{1}{x}}{n} + \frac{1 \cdot \log x}{x \cdot \left(n \cdot n\right)}\right) - \frac{\frac{0.5}{n}}{x \cdot x}\\ \end{array}\]

Reproduce

herbie shell --seed 2019192 
(FPCore (x n)
  :name "2nthrt (problem 3.4.6)"
  (- (pow (+ x 1.0) (/ 1.0 n)) (pow x (/ 1.0 n))))