Average Error: 29.7 → 18.9
Time: 51.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 -0.027858570768687193:\\ \;\;\;\;{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\\ \mathbf{elif}\;\frac{1}{n} \le 1.9775386176339284 \cdot 10^{-18}:\\ \;\;\;\;\left(\frac{\frac{\log x}{n \cdot n}}{x} + \frac{\frac{1}{n}}{x}\right) + \frac{\frac{-1}{2}}{\left(x \cdot x\right) \cdot n}\\ \mathbf{else}:\\ \;\;\;\;{e}^{\left(\frac{\mathsf{log1p}\left(x\right)}{n}\right)} - {x}^{\left(\frac{1}{n}\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.027858570768687193:\\
\;\;\;\;{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\\

\mathbf{elif}\;\frac{1}{n} \le 1.9775386176339284 \cdot 10^{-18}:\\
\;\;\;\;\left(\frac{\frac{\log x}{n \cdot n}}{x} + \frac{\frac{1}{n}}{x}\right) + \frac{\frac{-1}{2}}{\left(x \cdot x\right) \cdot n}\\

\mathbf{else}:\\
\;\;\;\;{e}^{\left(\frac{\mathsf{log1p}\left(x\right)}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\\

\end{array}
double f(double x, double n) {
        double r2082244 = x;
        double r2082245 = 1.0;
        double r2082246 = r2082244 + r2082245;
        double r2082247 = n;
        double r2082248 = r2082245 / r2082247;
        double r2082249 = pow(r2082246, r2082248);
        double r2082250 = pow(r2082244, r2082248);
        double r2082251 = r2082249 - r2082250;
        return r2082251;
}

double f(double x, double n) {
        double r2082252 = 1.0;
        double r2082253 = n;
        double r2082254 = r2082252 / r2082253;
        double r2082255 = -0.027858570768687193;
        bool r2082256 = r2082254 <= r2082255;
        double r2082257 = x;
        double r2082258 = r2082257 + r2082252;
        double r2082259 = pow(r2082258, r2082254);
        double r2082260 = pow(r2082257, r2082254);
        double r2082261 = r2082259 - r2082260;
        double r2082262 = 1.9775386176339284e-18;
        bool r2082263 = r2082254 <= r2082262;
        double r2082264 = log(r2082257);
        double r2082265 = r2082253 * r2082253;
        double r2082266 = r2082264 / r2082265;
        double r2082267 = r2082266 / r2082257;
        double r2082268 = r2082254 / r2082257;
        double r2082269 = r2082267 + r2082268;
        double r2082270 = -0.5;
        double r2082271 = r2082257 * r2082257;
        double r2082272 = r2082271 * r2082253;
        double r2082273 = r2082270 / r2082272;
        double r2082274 = r2082269 + r2082273;
        double r2082275 = exp(1.0);
        double r2082276 = log1p(r2082257);
        double r2082277 = r2082276 / r2082253;
        double r2082278 = pow(r2082275, r2082277);
        double r2082279 = r2082278 - r2082260;
        double r2082280 = r2082263 ? r2082274 : r2082279;
        double r2082281 = r2082256 ? r2082261 : r2082280;
        return r2082281;
}

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 3 regimes
  2. if (/ 1 n) < -0.027858570768687193

    1. Initial program 0.2

      \[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]

    if -0.027858570768687193 < (/ 1 n) < 1.9775386176339284e-18

    1. Initial program 45.3

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

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

      \[\leadsto e^{\color{blue}{\frac{\mathsf{log1p}\left(x\right)}{n}}} - {x}^{\left(\frac{1}{n}\right)}\]
    5. Taylor expanded around inf 32.9

      \[\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)}\]
    6. Simplified32.2

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

    if 1.9775386176339284e-18 < (/ 1 n)

    1. Initial program 27.5

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

      \[\leadsto \color{blue}{e^{\log \left(x + 1\right) \cdot \frac{1}{n}}} - {x}^{\left(\frac{1}{n}\right)}\]
    4. Simplified4.0

      \[\leadsto e^{\color{blue}{\frac{\mathsf{log1p}\left(x\right)}{n}}} - {x}^{\left(\frac{1}{n}\right)}\]
    5. Using strategy rm
    6. Applied *-un-lft-identity4.0

      \[\leadsto e^{\color{blue}{1 \cdot \frac{\mathsf{log1p}\left(x\right)}{n}}} - {x}^{\left(\frac{1}{n}\right)}\]
    7. Applied exp-prod4.0

      \[\leadsto \color{blue}{{\left(e^{1}\right)}^{\left(\frac{\mathsf{log1p}\left(x\right)}{n}\right)}} - {x}^{\left(\frac{1}{n}\right)}\]
    8. Simplified4.0

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;\frac{1}{n} \le -0.027858570768687193:\\ \;\;\;\;{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\\ \mathbf{elif}\;\frac{1}{n} \le 1.9775386176339284 \cdot 10^{-18}:\\ \;\;\;\;\left(\frac{\frac{\log x}{n \cdot n}}{x} + \frac{\frac{1}{n}}{x}\right) + \frac{\frac{-1}{2}}{\left(x \cdot x\right) \cdot n}\\ \mathbf{else}:\\ \;\;\;\;{e}^{\left(\frac{\mathsf{log1p}\left(x\right)}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\\ \end{array}\]

Reproduce

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