{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -0.027858570768687193:\\
\;\;\;\;{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\\
\mathbf{elif}\;\frac{1}{n} \le 1.9775386176339284 \cdot 10^{-18}:\\
\;\;\;\;\left(\frac{\frac{\log x}{n \cdot n}}{x} + \frac{\frac{1}{n}}{x}\right) + \frac{\frac{-1}{2}}{\left(x \cdot x\right) \cdot n}\\
\mathbf{else}:\\
\;\;\;\;{e}^{\left(\frac{\mathsf{log1p}\left(x\right)}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\\
\end{array}double f(double x, double n) {
double r2082244 = x;
double r2082245 = 1.0;
double r2082246 = r2082244 + r2082245;
double r2082247 = n;
double r2082248 = r2082245 / r2082247;
double r2082249 = pow(r2082246, r2082248);
double r2082250 = pow(r2082244, r2082248);
double r2082251 = r2082249 - r2082250;
return r2082251;
}
double f(double x, double n) {
double r2082252 = 1.0;
double r2082253 = n;
double r2082254 = r2082252 / r2082253;
double r2082255 = -0.027858570768687193;
bool r2082256 = r2082254 <= r2082255;
double r2082257 = x;
double r2082258 = r2082257 + r2082252;
double r2082259 = pow(r2082258, r2082254);
double r2082260 = pow(r2082257, r2082254);
double r2082261 = r2082259 - r2082260;
double r2082262 = 1.9775386176339284e-18;
bool r2082263 = r2082254 <= r2082262;
double r2082264 = log(r2082257);
double r2082265 = r2082253 * r2082253;
double r2082266 = r2082264 / r2082265;
double r2082267 = r2082266 / r2082257;
double r2082268 = r2082254 / r2082257;
double r2082269 = r2082267 + r2082268;
double r2082270 = -0.5;
double r2082271 = r2082257 * r2082257;
double r2082272 = r2082271 * r2082253;
double r2082273 = r2082270 / r2082272;
double r2082274 = r2082269 + r2082273;
double r2082275 = exp(1.0);
double r2082276 = log1p(r2082257);
double r2082277 = r2082276 / r2082253;
double r2082278 = pow(r2082275, r2082277);
double r2082279 = r2082278 - r2082260;
double r2082280 = r2082263 ? r2082274 : r2082279;
double r2082281 = r2082256 ? r2082261 : r2082280;
return r2082281;
}



Bits error versus x



Bits error versus n
Results
if (/ 1 n) < -0.027858570768687193Initial program 0.2
if -0.027858570768687193 < (/ 1 n) < 1.9775386176339284e-18Initial program 45.3
rmApplied pow-to-exp45.3
Simplified45.3
Taylor expanded around inf 32.9
Simplified32.2
if 1.9775386176339284e-18 < (/ 1 n) Initial program 27.5
rmApplied pow-to-exp27.5
Simplified4.0
rmApplied *-un-lft-identity4.0
Applied exp-prod4.0
Simplified4.0
Final simplification18.9
herbie shell --seed 2019144 +o rules:numerics
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))