{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;n \le -17527377755.61773681640625 \lor \neg \left(n \le 2504539914490964992\right):\\
\;\;\;\;\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left(\left(\frac{0.5}{x \cdot n} - \frac{0.25}{\log \left(e^{{x}^{2} \cdot n}\right)}\right) - \frac{0.25 \cdot \left(-\log x\right)}{x \cdot {n}^{2}}\right)\\
\mathbf{else}:\\
\;\;\;\;\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)\\
\end{array}double f(double x, double n) {
double r67193 = x;
double r67194 = 1.0;
double r67195 = r67193 + r67194;
double r67196 = n;
double r67197 = r67194 / r67196;
double r67198 = pow(r67195, r67197);
double r67199 = pow(r67193, r67197);
double r67200 = r67198 - r67199;
return r67200;
}
double f(double x, double n) {
double r67201 = n;
double r67202 = -17527377755.617737;
bool r67203 = r67201 <= r67202;
double r67204 = 2.504539914490965e+18;
bool r67205 = r67201 <= r67204;
double r67206 = !r67205;
bool r67207 = r67203 || r67206;
double r67208 = x;
double r67209 = 1.0;
double r67210 = r67208 + r67209;
double r67211 = r67209 / r67201;
double r67212 = 2.0;
double r67213 = r67211 / r67212;
double r67214 = pow(r67210, r67213);
double r67215 = pow(r67208, r67213);
double r67216 = r67214 + r67215;
double r67217 = 0.5;
double r67218 = r67208 * r67201;
double r67219 = r67217 / r67218;
double r67220 = 0.25;
double r67221 = pow(r67208, r67212);
double r67222 = r67221 * r67201;
double r67223 = exp(r67222);
double r67224 = log(r67223);
double r67225 = r67220 / r67224;
double r67226 = r67219 - r67225;
double r67227 = log(r67208);
double r67228 = -r67227;
double r67229 = r67220 * r67228;
double r67230 = pow(r67201, r67212);
double r67231 = r67208 * r67230;
double r67232 = r67229 / r67231;
double r67233 = r67226 - r67232;
double r67234 = r67216 * r67233;
double r67235 = r67214 - r67215;
double r67236 = r67216 * r67235;
double r67237 = r67207 ? r67234 : r67236;
return r67237;
}



Bits error versus x



Bits error versus n
Results
if n < -17527377755.617737 or 2.504539914490965e+18 < n Initial program 45.4
rmApplied sqr-pow45.5
Applied sqr-pow45.4
Applied difference-of-squares45.4
Taylor expanded around inf 32.8
Simplified32.8
rmApplied add-log-exp32.9
if -17527377755.617737 < n < 2.504539914490965e+18Initial program 9.0
rmApplied sqr-pow9.1
Applied sqr-pow9.0
Applied difference-of-squares9.0
Final simplification22.2
herbie shell --seed 2019212
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))