{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -1.6345588493135571 \cdot 10^{-23}:\\
\;\;\;\;\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {\left({x}^{\left(\frac{\sqrt[3]{\frac{1}{n}} \cdot \sqrt[3]{\frac{1}{n}}}{1}\right)}\right)}^{\left(\frac{\sqrt[3]{\frac{1}{n}}}{2}\right)}\right) \cdot \left(\left(\sqrt{{\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)}} + {x}^{\left(\frac{\frac{\frac{1}{n}}{2}}{2}\right)}\right) \cdot \left(\left(\sqrt[3]{\sqrt{{\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)}} - {x}^{\left(\frac{\frac{\frac{1}{n}}{2}}{2}\right)}} \cdot \sqrt[3]{\sqrt{{\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)}} - {x}^{\left(\frac{\frac{\frac{1}{n}}{2}}{2}\right)}}\right) \cdot \sqrt[3]{\sqrt{{\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)}} - {x}^{\left(\frac{\frac{\frac{1}{n}}{2}}{2}\right)}}\right)\right)\\
\mathbf{elif}\;\frac{1}{n} \le 5.53064647223408922 \cdot 10^{-24}:\\
\;\;\;\;\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {\left({x}^{\left(\frac{\sqrt[3]{\frac{1}{n}} \cdot \sqrt[3]{\frac{1}{n}}}{1}\right)}\right)}^{\left(\frac{\sqrt[3]{\frac{1}{n}}}{2}\right)}\right) \cdot \mathsf{fma}\left(-0.25, \frac{1}{{x}^{2} \cdot n} + \frac{\log \left(\frac{1}{x}\right)}{x \cdot {n}^{2}}, \frac{\frac{0.5}{n}}{x}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{{\left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)}\right)}^{3} - {\left({x}^{\left(\frac{1}{n}\right)}\right)}^{3}}{\mathsf{fma}\left({x}^{\left(\frac{1}{n}\right)}, {\left(x + 1\right)}^{\left(\frac{1}{n}\right)} + {x}^{\left(\frac{1}{n}\right)}, {\left(x + 1\right)}^{\left(2 \cdot \frac{1}{n}\right)}\right)}\\
\end{array}double code(double x, double n) {
return (pow((x + 1.0), (1.0 / n)) - pow(x, (1.0 / n)));
}
double code(double x, double n) {
double temp;
if (((1.0 / n) <= -1.634558849313557e-23)) {
temp = ((pow((x + 1.0), ((1.0 / n) / 2.0)) + pow(pow(x, ((cbrt((1.0 / n)) * cbrt((1.0 / n))) / 1.0)), (cbrt((1.0 / n)) / 2.0))) * ((sqrt(pow((x + 1.0), ((1.0 / n) / 2.0))) + pow(x, (((1.0 / n) / 2.0) / 2.0))) * ((cbrt((sqrt(pow((x + 1.0), ((1.0 / n) / 2.0))) - pow(x, (((1.0 / n) / 2.0) / 2.0)))) * cbrt((sqrt(pow((x + 1.0), ((1.0 / n) / 2.0))) - pow(x, (((1.0 / n) / 2.0) / 2.0))))) * cbrt((sqrt(pow((x + 1.0), ((1.0 / n) / 2.0))) - pow(x, (((1.0 / n) / 2.0) / 2.0)))))));
} else {
double temp_1;
if (((1.0 / n) <= 5.530646472234089e-24)) {
temp_1 = ((pow((x + 1.0), ((1.0 / n) / 2.0)) + pow(pow(x, ((cbrt((1.0 / n)) * cbrt((1.0 / n))) / 1.0)), (cbrt((1.0 / n)) / 2.0))) * fma(-0.25, ((1.0 / (pow(x, 2.0) * n)) + (log((1.0 / x)) / (x * pow(n, 2.0)))), ((0.5 / n) / x)));
} else {
temp_1 = ((pow(pow((x + 1.0), (1.0 / n)), 3.0) - pow(pow(x, (1.0 / n)), 3.0)) / fma(pow(x, (1.0 / n)), (pow((x + 1.0), (1.0 / n)) + pow(x, (1.0 / n))), pow((x + 1.0), (2.0 * (1.0 / n)))));
}
temp = temp_1;
}
return temp;
}



Bits error versus x



Bits error versus n
Results
if (/ 1.0 n) < -1.634558849313557e-23Initial program 5.5
rmApplied sqr-pow5.6
Applied sqr-pow5.6
Applied difference-of-squares5.6
rmApplied *-un-lft-identity5.6
Applied add-cube-cbrt5.6
Applied times-frac5.6
Applied pow-unpow5.6
rmApplied sqr-pow5.7
Applied add-sqr-sqrt5.6
Applied difference-of-squares5.6
rmApplied add-cube-cbrt5.6
if -1.634558849313557e-23 < (/ 1.0 n) < 5.530646472234089e-24Initial program 44.6
rmApplied sqr-pow44.6
Applied sqr-pow44.6
Applied difference-of-squares44.6
rmApplied *-un-lft-identity44.6
Applied add-cube-cbrt44.6
Applied times-frac44.6
Applied pow-unpow44.6
Taylor expanded around inf 32.6
Simplified32.1
if 5.530646472234089e-24 < (/ 1.0 n) Initial program 13.3
rmApplied flip3--13.3
Simplified13.3
Final simplification24.5
herbie shell --seed 2020065 +o rules:numerics
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))