{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;n \le -767759998.8935319:\\
\;\;\;\;\mathsf{fma}\left(\left(\frac{\frac{-1}{2}}{x}\right), \left(\frac{1}{x \cdot n}\right), \left(\frac{1}{x \cdot n} - \left(-\frac{\log x}{\left(x \cdot n\right) \cdot n}\right)\right)\right)\\
\mathbf{elif}\;n \le -1.6197911496842408 \cdot 10^{-306}:\\
\;\;\;\;\left(\sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)} \cdot \sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)}\right) \cdot \sqrt[3]{\log \left(e^{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)} - \sqrt{{x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt{{x}^{\left(\frac{1}{n}\right)}}}\right)}\\
\mathbf{elif}\;n \le 329344780.65860045:\\
\;\;\;\;\log \left(e^{e^{\frac{\mathsf{log1p}\left(x\right)}{n}} - e^{\log \left({x}^{\left(\frac{1}{n}\right)}\right)}}\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(\left(\frac{\frac{-1}{2}}{x}\right), \left(\frac{1}{x \cdot n}\right), \left(\frac{1}{x \cdot n} - \left(-\frac{\log x}{\left(x \cdot n\right) \cdot n}\right)\right)\right)\\
\end{array}double f(double x, double n) {
double r15114865 = x;
double r15114866 = 1.0;
double r15114867 = r15114865 + r15114866;
double r15114868 = n;
double r15114869 = r15114866 / r15114868;
double r15114870 = pow(r15114867, r15114869);
double r15114871 = pow(r15114865, r15114869);
double r15114872 = r15114870 - r15114871;
return r15114872;
}
double f(double x, double n) {
double r15114873 = n;
double r15114874 = -767759998.8935319;
bool r15114875 = r15114873 <= r15114874;
double r15114876 = -0.5;
double r15114877 = x;
double r15114878 = r15114876 / r15114877;
double r15114879 = 1.0;
double r15114880 = r15114877 * r15114873;
double r15114881 = r15114879 / r15114880;
double r15114882 = log(r15114877);
double r15114883 = r15114880 * r15114873;
double r15114884 = r15114882 / r15114883;
double r15114885 = -r15114884;
double r15114886 = r15114881 - r15114885;
double r15114887 = fma(r15114878, r15114881, r15114886);
double r15114888 = -1.6197911496842408e-306;
bool r15114889 = r15114873 <= r15114888;
double r15114890 = r15114879 + r15114877;
double r15114891 = r15114879 / r15114873;
double r15114892 = pow(r15114890, r15114891);
double r15114893 = pow(r15114877, r15114891);
double r15114894 = r15114892 - r15114893;
double r15114895 = exp(r15114894);
double r15114896 = log(r15114895);
double r15114897 = cbrt(r15114896);
double r15114898 = r15114897 * r15114897;
double r15114899 = sqrt(r15114893);
double r15114900 = r15114899 * r15114899;
double r15114901 = r15114892 - r15114900;
double r15114902 = exp(r15114901);
double r15114903 = log(r15114902);
double r15114904 = cbrt(r15114903);
double r15114905 = r15114898 * r15114904;
double r15114906 = 329344780.65860045;
bool r15114907 = r15114873 <= r15114906;
double r15114908 = log1p(r15114877);
double r15114909 = r15114908 / r15114873;
double r15114910 = exp(r15114909);
double r15114911 = log(r15114893);
double r15114912 = exp(r15114911);
double r15114913 = r15114910 - r15114912;
double r15114914 = exp(r15114913);
double r15114915 = log(r15114914);
double r15114916 = r15114907 ? r15114915 : r15114887;
double r15114917 = r15114889 ? r15114905 : r15114916;
double r15114918 = r15114875 ? r15114887 : r15114917;
return r15114918;
}



Bits error versus x



Bits error versus n
if n < -767759998.8935319 or 329344780.65860045 < n Initial program 44.7
Taylor expanded around inf 32.7
Simplified32.6
if -767759998.8935319 < n < -1.6197911496842408e-306Initial program 1.1
rmApplied add-log-exp1.4
rmApplied add-cube-cbrt1.4
rmApplied add-sqr-sqrt1.4
if -1.6197911496842408e-306 < n < 329344780.65860045Initial program 24.0
rmApplied add-log-exp24.0
rmApplied add-exp-log24.0
rmApplied add-exp-log24.3
Applied pow-exp24.3
Simplified1.8
Final simplification19.6
herbie shell --seed 2019121 +o rules:numerics
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))