{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;n \le -74876590.12174678:\\
\;\;\;\;\left(\frac{\frac{1}{x}}{n} - \frac{\frac{1}{x}}{n} \cdot \frac{\frac{1}{2}}{x}\right) + \frac{\frac{\log x}{x}}{n \cdot n}\\
\mathbf{elif}\;n \le 33522299.50529173:\\
\;\;\;\;\sqrt[3]{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(1 + x\right)}^{\left(\frac{1}{n}\right)}} - {x}^{\left(\frac{1}{n}\right)}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\frac{1}{x}}{n} - \frac{\frac{1}{x}}{n} \cdot \frac{\frac{1}{2}}{x}\right) + \frac{\frac{\log x}{x}}{n \cdot n}\\
\end{array}double f(double x, double n) {
double r3080852 = x;
double r3080853 = 1.0;
double r3080854 = r3080852 + r3080853;
double r3080855 = n;
double r3080856 = r3080853 / r3080855;
double r3080857 = pow(r3080854, r3080856);
double r3080858 = pow(r3080852, r3080856);
double r3080859 = r3080857 - r3080858;
return r3080859;
}
double f(double x, double n) {
double r3080860 = n;
double r3080861 = -74876590.12174678;
bool r3080862 = r3080860 <= r3080861;
double r3080863 = 1.0;
double r3080864 = x;
double r3080865 = r3080863 / r3080864;
double r3080866 = r3080865 / r3080860;
double r3080867 = 0.5;
double r3080868 = r3080867 / r3080864;
double r3080869 = r3080866 * r3080868;
double r3080870 = r3080866 - r3080869;
double r3080871 = log(r3080864);
double r3080872 = r3080871 / r3080864;
double r3080873 = r3080860 * r3080860;
double r3080874 = r3080872 / r3080873;
double r3080875 = r3080870 + r3080874;
double r3080876 = 33522299.50529173;
bool r3080877 = r3080860 <= r3080876;
double r3080878 = r3080863 + r3080864;
double r3080879 = r3080863 / r3080860;
double r3080880 = pow(r3080878, r3080879);
double r3080881 = r3080880 * r3080880;
double r3080882 = cbrt(r3080881);
double r3080883 = pow(r3080864, r3080879);
double r3080884 = r3080882 - r3080883;
double r3080885 = r3080877 ? r3080884 : r3080875;
double r3080886 = r3080862 ? r3080875 : r3080885;
return r3080886;
}



Bits error versus x



Bits error versus n
Results
if n < -74876590.12174678 or 33522299.50529173 < n Initial program 44.8
Taylor expanded around inf 32.4
Simplified31.8
if -74876590.12174678 < n < 33522299.50529173Initial program 8.6
rmApplied add-cbrt-cube8.7
Taylor expanded around 0 8.7
Final simplification22.0
herbie shell --seed 2019168
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))