{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;n \le -80925173752378880 \lor \neg \left(n \le 196016184.31866574\right):\\
\;\;\;\;\frac{1}{x} \cdot \left(\frac{1}{n} - \frac{-\log x}{{n}^{2}}\right) - \frac{0.5}{{x}^{2} \cdot n}\\
\mathbf{else}:\\
\;\;\;\;{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - \sqrt{{x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt{{x}^{\left(\frac{1}{n}\right)}}\\
\end{array}double f(double x, double n) {
double r72333 = x;
double r72334 = 1.0;
double r72335 = r72333 + r72334;
double r72336 = n;
double r72337 = r72334 / r72336;
double r72338 = pow(r72335, r72337);
double r72339 = pow(r72333, r72337);
double r72340 = r72338 - r72339;
return r72340;
}
double f(double x, double n) {
double r72341 = n;
double r72342 = -8.092517375237888e+16;
bool r72343 = r72341 <= r72342;
double r72344 = 196016184.31866574;
bool r72345 = r72341 <= r72344;
double r72346 = !r72345;
bool r72347 = r72343 || r72346;
double r72348 = 1.0;
double r72349 = x;
double r72350 = r72348 / r72349;
double r72351 = 1.0;
double r72352 = r72351 / r72341;
double r72353 = log(r72349);
double r72354 = -r72353;
double r72355 = 2.0;
double r72356 = pow(r72341, r72355);
double r72357 = r72354 / r72356;
double r72358 = r72352 - r72357;
double r72359 = r72350 * r72358;
double r72360 = 0.5;
double r72361 = pow(r72349, r72355);
double r72362 = r72361 * r72341;
double r72363 = r72360 / r72362;
double r72364 = r72359 - r72363;
double r72365 = r72349 + r72348;
double r72366 = r72348 / r72341;
double r72367 = pow(r72365, r72366);
double r72368 = pow(r72349, r72366);
double r72369 = sqrt(r72368);
double r72370 = r72369 * r72369;
double r72371 = r72367 - r72370;
double r72372 = r72347 ? r72364 : r72371;
return r72372;
}



Bits error versus x



Bits error versus n
Results
if n < -8.092517375237888e+16 or 196016184.31866574 < n Initial program 44.4
Taylor expanded around inf 32.1
Simplified31.6
if -8.092517375237888e+16 < n < 196016184.31866574Initial program 9.6
rmApplied add-sqr-sqrt9.7
Final simplification21.9
herbie shell --seed 2020047
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))