{\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.4376991383250568024010362933040596544743 \lor \neg \left(\frac{1}{n} \le 1.823892541888928748751268970584802409735 \cdot 10^{-19}\right):\\
\;\;\;\;\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} - {x}^{\left(\frac{1}{n}\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{1}{n}}{x} - \left(\log \left(e^{\frac{0.5}{{x}^{2} \cdot n}}\right) - \frac{1 \cdot \log x}{x \cdot {n}^{2}}\right)\\
\end{array}double f(double x, double n) {
double r77829 = x;
double r77830 = 1.0;
double r77831 = r77829 + r77830;
double r77832 = n;
double r77833 = r77830 / r77832;
double r77834 = pow(r77831, r77833);
double r77835 = pow(r77829, r77833);
double r77836 = r77834 - r77835;
return r77836;
}
double f(double x, double n) {
double r77837 = 1.0;
double r77838 = n;
double r77839 = r77837 / r77838;
double r77840 = -0.4376991383250568;
bool r77841 = r77839 <= r77840;
double r77842 = 1.8238925418889287e-19;
bool r77843 = r77839 <= r77842;
double r77844 = !r77843;
bool r77845 = r77841 || r77844;
double r77846 = x;
double r77847 = r77846 + r77837;
double r77848 = pow(r77847, r77839);
double r77849 = cbrt(r77848);
double r77850 = r77849 * r77849;
double r77851 = r77850 * r77849;
double r77852 = pow(r77846, r77839);
double r77853 = r77851 - r77852;
double r77854 = r77839 / r77846;
double r77855 = 0.5;
double r77856 = 2.0;
double r77857 = pow(r77846, r77856);
double r77858 = r77857 * r77838;
double r77859 = r77855 / r77858;
double r77860 = exp(r77859);
double r77861 = log(r77860);
double r77862 = log(r77846);
double r77863 = r77837 * r77862;
double r77864 = pow(r77838, r77856);
double r77865 = r77846 * r77864;
double r77866 = r77863 / r77865;
double r77867 = r77861 - r77866;
double r77868 = r77854 - r77867;
double r77869 = r77845 ? r77853 : r77868;
return r77869;
}



Bits error versus x



Bits error versus n
Results
if (/ 1.0 n) < -0.4376991383250568 or 1.8238925418889287e-19 < (/ 1.0 n) Initial program 9.4
rmApplied add-cube-cbrt9.4
if -0.4376991383250568 < (/ 1.0 n) < 1.8238925418889287e-19Initial program 44.7
rmApplied add-cube-cbrt44.7
Taylor expanded around inf 33.5
Simplified32.9
rmApplied add-log-exp32.9
Simplified32.9
Final simplification22.7
herbie shell --seed 2019347
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))