{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -6.6635811141354433 \cdot 10^{-4} \lor \neg \left(\frac{1}{n} \le 6.22124734048439072 \cdot 10^{-16}\right):\\
\;\;\;\;\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \sqrt[3]{{\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)}^{3}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{1}{n}}{x} - \left(\frac{\frac{0.5}{n}}{{x}^{2}} - \frac{\log x \cdot 1}{x \cdot {n}^{2}}\right)\\
\end{array}double f(double x, double n) {
double r50860 = x;
double r50861 = 1.0;
double r50862 = r50860 + r50861;
double r50863 = n;
double r50864 = r50861 / r50863;
double r50865 = pow(r50862, r50864);
double r50866 = pow(r50860, r50864);
double r50867 = r50865 - r50866;
return r50867;
}
double f(double x, double n) {
double r50868 = 1.0;
double r50869 = n;
double r50870 = r50868 / r50869;
double r50871 = -0.0006663581114135443;
bool r50872 = r50870 <= r50871;
double r50873 = 6.221247340484391e-16;
bool r50874 = r50870 <= r50873;
double r50875 = !r50874;
bool r50876 = r50872 || r50875;
double r50877 = x;
double r50878 = r50877 + r50868;
double r50879 = 2.0;
double r50880 = r50870 / r50879;
double r50881 = pow(r50878, r50880);
double r50882 = pow(r50877, r50880);
double r50883 = r50881 + r50882;
double r50884 = r50881 - r50882;
double r50885 = 3.0;
double r50886 = pow(r50884, r50885);
double r50887 = cbrt(r50886);
double r50888 = r50883 * r50887;
double r50889 = r50870 / r50877;
double r50890 = 0.5;
double r50891 = r50890 / r50869;
double r50892 = pow(r50877, r50879);
double r50893 = r50891 / r50892;
double r50894 = log(r50877);
double r50895 = r50894 * r50868;
double r50896 = pow(r50869, r50879);
double r50897 = r50877 * r50896;
double r50898 = r50895 / r50897;
double r50899 = r50893 - r50898;
double r50900 = r50889 - r50899;
double r50901 = r50876 ? r50888 : r50900;
return r50901;
}



Bits error versus x



Bits error versus n
Results
if (/ 1.0 n) < -0.0006663581114135443 or 6.221247340484391e-16 < (/ 1.0 n) Initial program 8.3
rmApplied sqr-pow8.3
Applied sqr-pow8.3
Applied difference-of-squares8.3
rmApplied add-cbrt-cube8.3
Simplified8.3
if -0.0006663581114135443 < (/ 1.0 n) < 6.221247340484391e-16Initial program 45.4
Taylor expanded around inf 32.7
Simplified32.1
Final simplification21.8
herbie shell --seed 2020021
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))