{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;n \le -21135787.307639804:\\
\;\;\;\;\left(\frac{\frac{-1}{2}}{\left(x \cdot n\right) \cdot x} + \frac{\frac{1}{n}}{x}\right) + \frac{\frac{\log x}{x}}{n \cdot n}\\
\mathbf{elif}\;n \le 7615007254.767728:\\
\;\;\;\;\left({x}^{\left(\frac{\frac{1}{n}}{2}\right)} + {\left(1 + x\right)}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \log \left(e^{{\left(1 + x\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}}\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\frac{-1}{2}}{\left(x \cdot n\right) \cdot x} + \frac{\frac{1}{n}}{x}\right) + \frac{\frac{\log x}{x}}{n \cdot n}\\
\end{array}double f(double x, double n) {
double r2207462 = x;
double r2207463 = 1.0;
double r2207464 = r2207462 + r2207463;
double r2207465 = n;
double r2207466 = r2207463 / r2207465;
double r2207467 = pow(r2207464, r2207466);
double r2207468 = pow(r2207462, r2207466);
double r2207469 = r2207467 - r2207468;
return r2207469;
}
double f(double x, double n) {
double r2207470 = n;
double r2207471 = -21135787.307639804;
bool r2207472 = r2207470 <= r2207471;
double r2207473 = -0.5;
double r2207474 = x;
double r2207475 = r2207474 * r2207470;
double r2207476 = r2207475 * r2207474;
double r2207477 = r2207473 / r2207476;
double r2207478 = 1.0;
double r2207479 = r2207478 / r2207470;
double r2207480 = r2207479 / r2207474;
double r2207481 = r2207477 + r2207480;
double r2207482 = log(r2207474);
double r2207483 = r2207482 / r2207474;
double r2207484 = r2207470 * r2207470;
double r2207485 = r2207483 / r2207484;
double r2207486 = r2207481 + r2207485;
double r2207487 = 7615007254.767728;
bool r2207488 = r2207470 <= r2207487;
double r2207489 = 2.0;
double r2207490 = r2207479 / r2207489;
double r2207491 = pow(r2207474, r2207490);
double r2207492 = r2207478 + r2207474;
double r2207493 = pow(r2207492, r2207490);
double r2207494 = r2207491 + r2207493;
double r2207495 = r2207493 - r2207491;
double r2207496 = exp(r2207495);
double r2207497 = log(r2207496);
double r2207498 = r2207494 * r2207497;
double r2207499 = r2207488 ? r2207498 : r2207486;
double r2207500 = r2207472 ? r2207486 : r2207499;
return r2207500;
}



Bits error versus x



Bits error versus n
Results
if n < -21135787.307639804 or 7615007254.767728 < n Initial program 44.3
Taylor expanded around inf 31.8
Simplified31.3
if -21135787.307639804 < n < 7615007254.767728Initial program 8.8
rmApplied sqr-pow8.8
Applied sqr-pow8.8
Applied difference-of-squares8.8
rmApplied add-log-exp8.9
Final simplification21.8
herbie shell --seed 2019141
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))