{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -1.724877157437157453427224965446109160238 \cdot 10^{-20}:\\
\;\;\;\;\sqrt[3]{{\left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - \sqrt[3]{{\left({x}^{\left(\frac{1}{n}\right)}\right)}^{3}}\right)}^{3}}\\
\mathbf{elif}\;\frac{1}{n} \le 2.130157691600053332981091905665160801675 \cdot 10^{-7}:\\
\;\;\;\;\frac{\frac{1}{n}}{x} - \left(\frac{\frac{0.5}{n}}{{x}^{2}} - \frac{\log x \cdot 1}{x \cdot {n}^{2}}\right)\\
\mathbf{else}:\\
\;\;\;\;e^{\log \left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}\right)}\\
\end{array}double f(double x, double n) {
double r41710 = x;
double r41711 = 1.0;
double r41712 = r41710 + r41711;
double r41713 = n;
double r41714 = r41711 / r41713;
double r41715 = pow(r41712, r41714);
double r41716 = pow(r41710, r41714);
double r41717 = r41715 - r41716;
return r41717;
}
double f(double x, double n) {
double r41718 = 1.0;
double r41719 = n;
double r41720 = r41718 / r41719;
double r41721 = -1.7248771574371575e-20;
bool r41722 = r41720 <= r41721;
double r41723 = x;
double r41724 = r41723 + r41718;
double r41725 = pow(r41724, r41720);
double r41726 = pow(r41723, r41720);
double r41727 = 3.0;
double r41728 = pow(r41726, r41727);
double r41729 = cbrt(r41728);
double r41730 = r41725 - r41729;
double r41731 = pow(r41730, r41727);
double r41732 = cbrt(r41731);
double r41733 = 2.1301576916000533e-07;
bool r41734 = r41720 <= r41733;
double r41735 = r41720 / r41723;
double r41736 = 0.5;
double r41737 = r41736 / r41719;
double r41738 = 2.0;
double r41739 = pow(r41723, r41738);
double r41740 = r41737 / r41739;
double r41741 = log(r41723);
double r41742 = r41741 * r41718;
double r41743 = pow(r41719, r41738);
double r41744 = r41723 * r41743;
double r41745 = r41742 / r41744;
double r41746 = r41740 - r41745;
double r41747 = r41735 - r41746;
double r41748 = cbrt(r41723);
double r41749 = r41748 * r41748;
double r41750 = pow(r41749, r41720);
double r41751 = pow(r41748, r41720);
double r41752 = r41750 * r41751;
double r41753 = r41725 - r41752;
double r41754 = log(r41753);
double r41755 = exp(r41754);
double r41756 = r41734 ? r41747 : r41755;
double r41757 = r41722 ? r41732 : r41756;
return r41757;
}



Bits error versus x



Bits error versus n
Results
if (/ 1.0 n) < -1.7248771574371575e-20Initial program 2.4
rmApplied add-cbrt-cube2.7
Simplified2.7
rmApplied add-cbrt-cube2.7
Simplified2.7
if -1.7248771574371575e-20 < (/ 1.0 n) < 2.1301576916000533e-07Initial program 45.1
Taylor expanded around inf 32.3
Simplified31.7
if 2.1301576916000533e-07 < (/ 1.0 n) Initial program 23.9
rmApplied add-cube-cbrt23.9
Applied unpow-prod-down23.9
rmApplied add-exp-log23.9
Final simplification22.0
herbie shell --seed 2019291
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))