{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -6.421397779664377473457544443272669576483 \cdot 10^{-10} \lor \neg \left(\frac{1}{n} \le 1.820657228495789802655210734750766340961 \cdot 10^{-11}\right):\\
\;\;\;\;\log \left(e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{1}{n}}{x} - \left(\frac{\frac{0.5}{n}}{{x}^{2}} - \frac{\log x \cdot 1}{x \cdot {n}^{2}}\right)\\
\end{array}double f(double x, double n) {
double r53317 = x;
double r53318 = 1.0;
double r53319 = r53317 + r53318;
double r53320 = n;
double r53321 = r53318 / r53320;
double r53322 = pow(r53319, r53321);
double r53323 = pow(r53317, r53321);
double r53324 = r53322 - r53323;
return r53324;
}
double f(double x, double n) {
double r53325 = 1.0;
double r53326 = n;
double r53327 = r53325 / r53326;
double r53328 = -6.421397779664377e-10;
bool r53329 = r53327 <= r53328;
double r53330 = 1.8206572284957898e-11;
bool r53331 = r53327 <= r53330;
double r53332 = !r53331;
bool r53333 = r53329 || r53332;
double r53334 = x;
double r53335 = r53334 + r53325;
double r53336 = pow(r53335, r53327);
double r53337 = pow(r53334, r53327);
double r53338 = r53336 - r53337;
double r53339 = exp(r53338);
double r53340 = log(r53339);
double r53341 = r53327 / r53334;
double r53342 = 0.5;
double r53343 = r53342 / r53326;
double r53344 = 2.0;
double r53345 = pow(r53334, r53344);
double r53346 = r53343 / r53345;
double r53347 = log(r53334);
double r53348 = r53347 * r53325;
double r53349 = pow(r53326, r53344);
double r53350 = r53334 * r53349;
double r53351 = r53348 / r53350;
double r53352 = r53346 - r53351;
double r53353 = r53341 - r53352;
double r53354 = r53333 ? r53340 : r53353;
return r53354;
}



Bits error versus x



Bits error versus n
Results
if (/ 1.0 n) < -6.421397779664377e-10 or 1.8206572284957898e-11 < (/ 1.0 n) Initial program 9.1
rmApplied add-log-exp9.3
Applied add-log-exp9.3
Applied diff-log9.3
Simplified9.3
if -6.421397779664377e-10 < (/ 1.0 n) < 1.8206572284957898e-11Initial program 45.6
Taylor expanded around inf 33.3
Simplified32.7
Final simplification22.5
herbie shell --seed 2019362
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))