{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -10036768523789454:\\
\;\;\;\;\sqrt[3]{e^{\sqrt[3]{{\left(\sqrt[3]{{\left(\log \left({\left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\right)}^{3}\right)\right)}^{3}}\right)}^{3}}}}\\
\mathbf{elif}\;\frac{1}{n} \le 1.86323975548902723 \cdot 10^{-9}:\\
\;\;\;\;\frac{\frac{1}{n}}{x} - \left(\frac{\frac{0.5}{n}}{{x}^{2}} - \frac{1 \cdot \log x}{x \cdot {n}^{2}}\right)\\
\mathbf{else}:\\
\;\;\;\;\sqrt[3]{e^{\sqrt[3]{{\left(\log \left({\left(\frac{{\left(x + 1\right)}^{\left(2 \cdot \frac{1}{n}\right)} + \left(-{x}^{\left(2 \cdot \frac{1}{n}\right)}\right)}{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} + {x}^{\left(\frac{1}{n}\right)}}\right)}^{3}\right)\right)}^{3}}}}\\
\end{array}double f(double x, double n) {
double r82998 = x;
double r82999 = 1.0;
double r83000 = r82998 + r82999;
double r83001 = n;
double r83002 = r82999 / r83001;
double r83003 = pow(r83000, r83002);
double r83004 = pow(r82998, r83002);
double r83005 = r83003 - r83004;
return r83005;
}
double f(double x, double n) {
double r83006 = 1.0;
double r83007 = n;
double r83008 = r83006 / r83007;
double r83009 = -10036768523789454.0;
bool r83010 = r83008 <= r83009;
double r83011 = x;
double r83012 = r83011 + r83006;
double r83013 = pow(r83012, r83008);
double r83014 = pow(r83011, r83008);
double r83015 = r83013 - r83014;
double r83016 = 3.0;
double r83017 = pow(r83015, r83016);
double r83018 = log(r83017);
double r83019 = pow(r83018, r83016);
double r83020 = cbrt(r83019);
double r83021 = pow(r83020, r83016);
double r83022 = cbrt(r83021);
double r83023 = exp(r83022);
double r83024 = cbrt(r83023);
double r83025 = 1.8632397554890272e-09;
bool r83026 = r83008 <= r83025;
double r83027 = r83008 / r83011;
double r83028 = 0.5;
double r83029 = r83028 / r83007;
double r83030 = 2.0;
double r83031 = pow(r83011, r83030);
double r83032 = r83029 / r83031;
double r83033 = log(r83011);
double r83034 = r83006 * r83033;
double r83035 = pow(r83007, r83030);
double r83036 = r83011 * r83035;
double r83037 = r83034 / r83036;
double r83038 = r83032 - r83037;
double r83039 = r83027 - r83038;
double r83040 = r83030 * r83008;
double r83041 = pow(r83012, r83040);
double r83042 = pow(r83011, r83040);
double r83043 = -r83042;
double r83044 = r83041 + r83043;
double r83045 = r83013 + r83014;
double r83046 = r83044 / r83045;
double r83047 = pow(r83046, r83016);
double r83048 = log(r83047);
double r83049 = pow(r83048, r83016);
double r83050 = cbrt(r83049);
double r83051 = exp(r83050);
double r83052 = cbrt(r83051);
double r83053 = r83026 ? r83039 : r83052;
double r83054 = r83010 ? r83024 : r83053;
return r83054;
}



Bits error versus x



Bits error versus n
Results
if (/ 1.0 n) < -10036768523789454.0Initial program 0
rmApplied add-cbrt-cube0
Simplified0
rmApplied add-exp-log0
Applied pow-exp0
Simplified0
rmApplied add-cbrt-cube0
Simplified0
rmApplied add-cbrt-cube0
Simplified0
if -10036768523789454.0 < (/ 1.0 n) < 1.8632397554890272e-09Initial program 44.0
Taylor expanded around inf 33.6
Simplified33.0
if 1.8632397554890272e-09 < (/ 1.0 n) Initial program 5.9
rmApplied add-cbrt-cube5.9
Simplified5.9
rmApplied add-exp-log5.9
Applied pow-exp5.9
Simplified5.9
rmApplied add-cbrt-cube5.9
Simplified5.9
rmApplied flip--5.9
Simplified5.9
Final simplification24.2
herbie shell --seed 2020059
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))