Average Error: 29.4 → 22.6
Time: 10.4s
Precision: 64
\[{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
\[\begin{array}{l} \mathbf{if}\;n \le -934833342441455353856:\\ \;\;\;\;\left(1 \cdot \frac{1}{x \cdot n} + 1 \cdot \frac{\log x}{x \cdot {n}^{2}}\right) - 0.5 \cdot \frac{1}{{x}^{2} \cdot n}\\ \mathbf{elif}\;n \le 59.535473331148146769464801764115691185:\\ \;\;\;\;{\left({\left(x + 1\right)}^{\left(\frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{\sqrt[3]{n} \cdot \sqrt[3]{n}}\right)}\right)}^{\left(\frac{\sqrt[3]{1}}{\sqrt[3]{n}}\right)} - {x}^{\left(\frac{1}{n}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{n}}{x} - \left(\log \left(e^{\frac{0.5}{\log \left(e^{{x}^{2} \cdot n}\right)}}\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}\;n \le -934833342441455353856:\\
\;\;\;\;\left(1 \cdot \frac{1}{x \cdot n} + 1 \cdot \frac{\log x}{x \cdot {n}^{2}}\right) - 0.5 \cdot \frac{1}{{x}^{2} \cdot n}\\

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

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

\end{array}
double f(double x, double n) {
        double r72702 = x;
        double r72703 = 1.0;
        double r72704 = r72702 + r72703;
        double r72705 = n;
        double r72706 = r72703 / r72705;
        double r72707 = pow(r72704, r72706);
        double r72708 = pow(r72702, r72706);
        double r72709 = r72707 - r72708;
        return r72709;
}

double f(double x, double n) {
        double r72710 = n;
        double r72711 = -9.348333424414554e+20;
        bool r72712 = r72710 <= r72711;
        double r72713 = 1.0;
        double r72714 = 1.0;
        double r72715 = x;
        double r72716 = r72715 * r72710;
        double r72717 = r72714 / r72716;
        double r72718 = r72713 * r72717;
        double r72719 = log(r72715);
        double r72720 = 2.0;
        double r72721 = pow(r72710, r72720);
        double r72722 = r72715 * r72721;
        double r72723 = r72719 / r72722;
        double r72724 = r72713 * r72723;
        double r72725 = r72718 + r72724;
        double r72726 = 0.5;
        double r72727 = pow(r72715, r72720);
        double r72728 = r72727 * r72710;
        double r72729 = r72714 / r72728;
        double r72730 = r72726 * r72729;
        double r72731 = r72725 - r72730;
        double r72732 = 59.53547333114815;
        bool r72733 = r72710 <= r72732;
        double r72734 = r72715 + r72713;
        double r72735 = cbrt(r72713);
        double r72736 = r72735 * r72735;
        double r72737 = cbrt(r72710);
        double r72738 = r72737 * r72737;
        double r72739 = r72736 / r72738;
        double r72740 = pow(r72734, r72739);
        double r72741 = r72735 / r72737;
        double r72742 = pow(r72740, r72741);
        double r72743 = r72713 / r72710;
        double r72744 = pow(r72715, r72743);
        double r72745 = r72742 - r72744;
        double r72746 = r72743 / r72715;
        double r72747 = exp(r72728);
        double r72748 = log(r72747);
        double r72749 = r72726 / r72748;
        double r72750 = exp(r72749);
        double r72751 = log(r72750);
        double r72752 = r72713 * r72719;
        double r72753 = r72752 / r72722;
        double r72754 = r72751 - r72753;
        double r72755 = r72746 - r72754;
        double r72756 = r72733 ? r72745 : r72755;
        double r72757 = r72712 ? r72731 : r72756;
        return r72757;
}

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 n < -9.348333424414554e+20

    1. Initial program 44.8

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

      \[\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)}\]
    3. Simplified31.8

      \[\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)}\]
    4. Taylor expanded around 0 32.3

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

    if -9.348333424414554e+20 < n < 59.53547333114815

    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 {\left(x + 1\right)}^{\left(\frac{1}{\color{blue}{\left(\sqrt[3]{n} \cdot \sqrt[3]{n}\right) \cdot \sqrt[3]{n}}}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
    4. Applied add-cube-cbrt9.4

      \[\leadsto {\left(x + 1\right)}^{\left(\frac{\color{blue}{\left(\sqrt[3]{1} \cdot \sqrt[3]{1}\right) \cdot \sqrt[3]{1}}}{\left(\sqrt[3]{n} \cdot \sqrt[3]{n}\right) \cdot \sqrt[3]{n}}\right)} - {x}^{\left(\frac{1}{n}\right)}\]
    5. Applied times-frac9.4

      \[\leadsto {\left(x + 1\right)}^{\color{blue}{\left(\frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{\sqrt[3]{n} \cdot \sqrt[3]{n}} \cdot \frac{\sqrt[3]{1}}{\sqrt[3]{n}}\right)}} - {x}^{\left(\frac{1}{n}\right)}\]
    6. Applied pow-unpow9.4

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

    if 59.53547333114815 < n

    1. Initial program 44.0

      \[{\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}{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)}\]
    3. Simplified32.5

      \[\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)}\]
    4. Using strategy rm
    5. Applied add-log-exp32.6

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

      \[\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)\]
    7. Using strategy rm
    8. Applied add-log-exp32.5

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;n \le -934833342441455353856:\\ \;\;\;\;\left(1 \cdot \frac{1}{x \cdot n} + 1 \cdot \frac{\log x}{x \cdot {n}^{2}}\right) - 0.5 \cdot \frac{1}{{x}^{2} \cdot n}\\ \mathbf{elif}\;n \le 59.535473331148146769464801764115691185:\\ \;\;\;\;{\left({\left(x + 1\right)}^{\left(\frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{\sqrt[3]{n} \cdot \sqrt[3]{n}}\right)}\right)}^{\left(\frac{\sqrt[3]{1}}{\sqrt[3]{n}}\right)} - {x}^{\left(\frac{1}{n}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{n}}{x} - \left(\log \left(e^{\frac{0.5}{\log \left(e^{{x}^{2} \cdot n}\right)}}\right) - \frac{1 \cdot \log x}{x \cdot {n}^{2}}\right)\\ \end{array}\]

Reproduce

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