{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -4.789690767778162549209699505051304722835 \cdot 10^{-19}:\\
\;\;\;\;\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{\left(\sqrt{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left(\sqrt{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)}\\
\mathbf{elif}\;\frac{1}{n} \le 2.528583146232788074174887005518370120265 \cdot 10^{-13}:\\
\;\;\;\;\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}:\\
\;\;\;\;\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{\log \left(e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)}\\
\end{array}double f(double x, double n) {
double r55433 = x;
double r55434 = 1.0;
double r55435 = r55433 + r55434;
double r55436 = n;
double r55437 = r55434 / r55436;
double r55438 = pow(r55435, r55437);
double r55439 = pow(r55433, r55437);
double r55440 = r55438 - r55439;
return r55440;
}
double f(double x, double n) {
double r55441 = 1.0;
double r55442 = n;
double r55443 = r55441 / r55442;
double r55444 = -4.789690767778163e-19;
bool r55445 = r55443 <= r55444;
double r55446 = x;
double r55447 = r55446 + r55441;
double r55448 = pow(r55447, r55443);
double r55449 = pow(r55446, r55443);
double r55450 = r55448 - r55449;
double r55451 = cbrt(r55450);
double r55452 = r55451 * r55451;
double r55453 = sqrt(r55448);
double r55454 = 2.0;
double r55455 = r55443 / r55454;
double r55456 = pow(r55446, r55455);
double r55457 = r55453 + r55456;
double r55458 = r55453 - r55456;
double r55459 = r55457 * r55458;
double r55460 = cbrt(r55459);
double r55461 = r55452 * r55460;
double r55462 = 2.528583146232788e-13;
bool r55463 = r55443 <= r55462;
double r55464 = r55443 / r55446;
double r55465 = 0.5;
double r55466 = r55465 / r55442;
double r55467 = pow(r55446, r55454);
double r55468 = r55466 / r55467;
double r55469 = log(r55446);
double r55470 = r55469 * r55441;
double r55471 = pow(r55442, r55454);
double r55472 = r55446 * r55471;
double r55473 = r55470 / r55472;
double r55474 = r55468 - r55473;
double r55475 = r55464 - r55474;
double r55476 = exp(r55450);
double r55477 = log(r55476);
double r55478 = cbrt(r55477);
double r55479 = r55452 * r55478;
double r55480 = r55463 ? r55475 : r55479;
double r55481 = r55445 ? r55461 : r55480;
return r55481;
}



Bits error versus x



Bits error versus n
Results
if (/ 1.0 n) < -4.789690767778163e-19Initial program 2.5
rmApplied add-cube-cbrt2.5
rmApplied sqr-pow2.5
Applied add-sqr-sqrt2.5
Applied difference-of-squares2.5
if -4.789690767778163e-19 < (/ 1.0 n) < 2.528583146232788e-13Initial program 44.4
Taylor expanded around inf 32.0
Simplified31.3
if 2.528583146232788e-13 < (/ 1.0 n) Initial program 25.9
rmApplied add-cube-cbrt25.9
rmApplied add-log-exp26.0
Applied add-log-exp26.0
Applied diff-log26.0
Simplified26.0
Final simplification21.9
herbie shell --seed 2019297
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))