Average Error: 29.1 → 19.3
Time: 40.7s
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 -104130347.93584307:\\ \;\;\;\;e^{\log \left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\right)}\\ \mathbf{elif}\;\frac{1}{n} \le 2.8321253549703665 \cdot 10^{-07}:\\ \;\;\;\;\left(\frac{1}{x \cdot n} - \left(-\frac{\frac{\log x}{x}}{n \cdot n}\right)\right) - \frac{\frac{1}{2}}{n \cdot \left(x \cdot x\right)}\\ \mathbf{else}:\\ \;\;\;\;e^{\frac{\mathsf{log1p}\left(x\right)}{n}} - {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 -104130347.93584307:\\
\;\;\;\;e^{\log \left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\right)}\\

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

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

\end{array}
double f(double x, double n) {
        double r1379586 = x;
        double r1379587 = 1.0;
        double r1379588 = r1379586 + r1379587;
        double r1379589 = n;
        double r1379590 = r1379587 / r1379589;
        double r1379591 = pow(r1379588, r1379590);
        double r1379592 = pow(r1379586, r1379590);
        double r1379593 = r1379591 - r1379592;
        return r1379593;
}

double f(double x, double n) {
        double r1379594 = 1.0;
        double r1379595 = n;
        double r1379596 = r1379594 / r1379595;
        double r1379597 = -104130347.93584307;
        bool r1379598 = r1379596 <= r1379597;
        double r1379599 = x;
        double r1379600 = r1379599 + r1379594;
        double r1379601 = pow(r1379600, r1379596);
        double r1379602 = pow(r1379599, r1379596);
        double r1379603 = r1379601 - r1379602;
        double r1379604 = log(r1379603);
        double r1379605 = exp(r1379604);
        double r1379606 = 2.8321253549703665e-07;
        bool r1379607 = r1379596 <= r1379606;
        double r1379608 = r1379599 * r1379595;
        double r1379609 = r1379594 / r1379608;
        double r1379610 = log(r1379599);
        double r1379611 = r1379610 / r1379599;
        double r1379612 = r1379595 * r1379595;
        double r1379613 = r1379611 / r1379612;
        double r1379614 = -r1379613;
        double r1379615 = r1379609 - r1379614;
        double r1379616 = 0.5;
        double r1379617 = r1379599 * r1379599;
        double r1379618 = r1379595 * r1379617;
        double r1379619 = r1379616 / r1379618;
        double r1379620 = r1379615 - r1379619;
        double r1379621 = log1p(r1379599);
        double r1379622 = r1379621 / r1379595;
        double r1379623 = exp(r1379622);
        double r1379624 = r1379623 - r1379602;
        double r1379625 = r1379607 ? r1379620 : r1379624;
        double r1379626 = r1379598 ? r1379605 : r1379625;
        return r1379626;
}

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) < -104130347.93584307

    1. Initial program 0

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

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

    if -104130347.93584307 < (/ 1 n) < 2.8321253549703665e-07

    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 33.1

      \[\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. Simplified33.1

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

    if 2.8321253549703665e-07 < (/ 1 n)

    1. Initial program 23.4

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

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

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

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

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

Reproduce

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