Average Error: 29.3 → 22.3
Time: 16.4s
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 -7.380908236352897 \cdot 10^{-15}:\\ \;\;\;\;{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {\left({x}^{\left(\frac{\sqrt{1}}{\sqrt[3]{n} \cdot \sqrt[3]{n}}\right)}\right)}^{\left(\frac{\sqrt{1}}{\sqrt[3]{n}}\right)}\\ \mathbf{elif}\;\frac{1}{n} \le 4.8639089994782778 \cdot 10^{-23}:\\ \;\;\;\;\frac{1}{x} \cdot \left(\frac{1}{n} - \frac{-\log x}{{n}^{2}}\right) - \frac{0.5}{{x}^{2} \cdot n}\\ \mathbf{else}:\\ \;\;\;\;\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{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 -7.380908236352897 \cdot 10^{-15}:\\
\;\;\;\;{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {\left({x}^{\left(\frac{\sqrt{1}}{\sqrt[3]{n} \cdot \sqrt[3]{n}}\right)}\right)}^{\left(\frac{\sqrt{1}}{\sqrt[3]{n}}\right)}\\

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

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

\end{array}
double f(double x, double n) {
        double r65679 = x;
        double r65680 = 1.0;
        double r65681 = r65679 + r65680;
        double r65682 = n;
        double r65683 = r65680 / r65682;
        double r65684 = pow(r65681, r65683);
        double r65685 = pow(r65679, r65683);
        double r65686 = r65684 - r65685;
        return r65686;
}

double f(double x, double n) {
        double r65687 = 1.0;
        double r65688 = n;
        double r65689 = r65687 / r65688;
        double r65690 = -7.380908236352897e-15;
        bool r65691 = r65689 <= r65690;
        double r65692 = x;
        double r65693 = r65692 + r65687;
        double r65694 = pow(r65693, r65689);
        double r65695 = sqrt(r65687);
        double r65696 = cbrt(r65688);
        double r65697 = r65696 * r65696;
        double r65698 = r65695 / r65697;
        double r65699 = pow(r65692, r65698);
        double r65700 = r65695 / r65696;
        double r65701 = pow(r65699, r65700);
        double r65702 = r65694 - r65701;
        double r65703 = 4.863908999478278e-23;
        bool r65704 = r65689 <= r65703;
        double r65705 = r65687 / r65692;
        double r65706 = 1.0;
        double r65707 = r65706 / r65688;
        double r65708 = log(r65692);
        double r65709 = -r65708;
        double r65710 = 2.0;
        double r65711 = pow(r65688, r65710);
        double r65712 = r65709 / r65711;
        double r65713 = r65707 - r65712;
        double r65714 = r65705 * r65713;
        double r65715 = 0.5;
        double r65716 = pow(r65692, r65710);
        double r65717 = r65716 * r65688;
        double r65718 = r65715 / r65717;
        double r65719 = r65714 - r65718;
        double r65720 = pow(r65692, r65689);
        double r65721 = r65694 - r65720;
        double r65722 = cbrt(r65721);
        double r65723 = r65722 * r65722;
        double r65724 = r65723 * r65722;
        double r65725 = r65704 ? r65719 : r65724;
        double r65726 = r65691 ? r65702 : r65725;
        return r65726;
}

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.0 n) < -7.380908236352897e-15

    1. Initial program 1.7

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

      \[\leadsto {\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{\color{blue}{\left(\sqrt[3]{n} \cdot \sqrt[3]{n}\right) \cdot \sqrt[3]{n}}}\right)}\]
    4. Applied add-sqr-sqrt1.8

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

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

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

    if -7.380908236352897e-15 < (/ 1.0 n) < 4.863908999478278e-23

    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.6

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

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

    if 4.863908999478278e-23 < (/ 1.0 n)

    1. Initial program 27.7

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

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

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

Reproduce

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