Average Error: 33.1 → 23.3
Time: 12.1s
Precision: binary64
\[{\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.451752308249017964:\\ \;\;\;\;{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}\\ \mathbf{elif}\;\frac{1}{n} \le 2.3710765806428256 \cdot 10^{-7}:\\ \;\;\;\;1 \cdot \frac{\frac{1}{x}}{n} + 0.33333333333333337 \cdot \frac{\log 1}{n}\\ \mathbf{else}:\\ \;\;\;\;\sqrt[3]{{\left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)}\right)}^{3}} - {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.451752308249017964:\\
\;\;\;\;{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}\\

\mathbf{elif}\;\frac{1}{n} \le 2.3710765806428256 \cdot 10^{-7}:\\
\;\;\;\;1 \cdot \frac{\frac{1}{x}}{n} + 0.33333333333333337 \cdot \frac{\log 1}{n}\\

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

\end{array}
double code(double x, double n) {
	return ((double) (((double) pow(((double) (x + 1.0)), ((double) (1.0 / n)))) - ((double) pow(x, ((double) (1.0 / n))))));
}
double code(double x, double n) {
	double VAR;
	if ((((double) (1.0 / n)) <= -0.45175230824901796)) {
		VAR = ((double) (((double) pow(((double) (x + 1.0)), ((double) (1.0 / n)))) - ((double) (((double) pow(((double) (((double) cbrt(x)) * ((double) cbrt(x)))), ((double) (1.0 / n)))) * ((double) pow(((double) cbrt(x)), ((double) (1.0 / n))))))));
	} else {
		double VAR_1;
		if ((((double) (1.0 / n)) <= 2.3710765806428256e-07)) {
			VAR_1 = ((double) (((double) (1.0 * ((double) (((double) (1.0 / x)) / n)))) + ((double) (0.33333333333333337 * ((double) (((double) log(1.0)) / n))))));
		} else {
			VAR_1 = ((double) (((double) cbrt(((double) pow(((double) pow(((double) (x + 1.0)), ((double) (1.0 / n)))), 3.0)))) - ((double) pow(x, ((double) (1.0 / n))))));
		}
		VAR = VAR_1;
	}
	return VAR;
}

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

    1. Initial program 0.1

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

      \[\leadsto {\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {\color{blue}{\left(\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right) \cdot \sqrt[3]{x}\right)}}^{\left(\frac{1}{n}\right)}\]
    4. Applied unpow-prod-down0.2

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

    if -0.451752308249017964 < (/ 1.0 n) < 2.3710765806428256e-7

    1. Initial program 45.1

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

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

      \[\leadsto {\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - \color{blue}{{\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}}\]
    5. Taylor expanded around inf 32.1

      \[\leadsto \color{blue}{\left(1 \cdot \frac{1}{x \cdot n} + \left(0.27777777777777779 \cdot \frac{{\left(\log 1\right)}^{2}}{{n}^{2}} + 0.33333333333333337 \cdot \frac{\log 1}{n}\right)\right) - 0.33333333333333326 \cdot \frac{\log 1 \cdot \log \left(\frac{1}{x}\right)}{{n}^{2}}}\]
    6. Simplified32.1

      \[\leadsto \color{blue}{1 \cdot \frac{1}{x \cdot n} + 0.33333333333333337 \cdot \frac{\log 1}{n}}\]
    7. Using strategy rm
    8. Applied associate-/r*31.5

      \[\leadsto 1 \cdot \color{blue}{\frac{\frac{1}{x}}{n}} + 0.33333333333333337 \cdot \frac{\log 1}{n}\]

    if 2.3710765806428256e-7 < (/ 1.0 n)

    1. Initial program 5.1

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

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;\frac{1}{n} \le -0.451752308249017964:\\ \;\;\;\;{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}\\ \mathbf{elif}\;\frac{1}{n} \le 2.3710765806428256 \cdot 10^{-7}:\\ \;\;\;\;1 \cdot \frac{\frac{1}{x}}{n} + 0.33333333333333337 \cdot \frac{\log 1}{n}\\ \mathbf{else}:\\ \;\;\;\;\sqrt[3]{{\left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)}\right)}^{3}} - {x}^{\left(\frac{1}{n}\right)}\\ \end{array}\]

Reproduce

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