{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;n \le -3406.416978222420766542199999094009399414 \lor \neg \left(n \le 1031392298459.7406005859375\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({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \sqrt[3]{{\left(\sqrt[3]{{\left(\sqrt[3]{{\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)}^{3}}\right)}^{3}}\right)}^{3}}\\
\end{array}double f(double x, double n) {
double r61282 = x;
double r61283 = 1.0;
double r61284 = r61282 + r61283;
double r61285 = n;
double r61286 = r61283 / r61285;
double r61287 = pow(r61284, r61286);
double r61288 = pow(r61282, r61286);
double r61289 = r61287 - r61288;
return r61289;
}
double f(double x, double n) {
double r61290 = n;
double r61291 = -3406.4169782224208;
bool r61292 = r61290 <= r61291;
double r61293 = 1031392298459.7406;
bool r61294 = r61290 <= r61293;
double r61295 = !r61294;
bool r61296 = r61292 || r61295;
double r61297 = 1.0;
double r61298 = x;
double r61299 = r61297 / r61298;
double r61300 = 1.0;
double r61301 = r61300 / r61290;
double r61302 = log(r61298);
double r61303 = -r61302;
double r61304 = 2.0;
double r61305 = pow(r61290, r61304);
double r61306 = r61303 / r61305;
double r61307 = r61301 - r61306;
double r61308 = r61299 * r61307;
double r61309 = 0.5;
double r61310 = pow(r61298, r61304);
double r61311 = r61310 * r61290;
double r61312 = r61309 / r61311;
double r61313 = r61308 - r61312;
double r61314 = r61298 + r61297;
double r61315 = r61297 / r61290;
double r61316 = r61315 / r61304;
double r61317 = pow(r61314, r61316);
double r61318 = pow(r61298, r61316);
double r61319 = r61317 + r61318;
double r61320 = r61317 - r61318;
double r61321 = 3.0;
double r61322 = pow(r61320, r61321);
double r61323 = cbrt(r61322);
double r61324 = pow(r61323, r61321);
double r61325 = cbrt(r61324);
double r61326 = pow(r61325, r61321);
double r61327 = cbrt(r61326);
double r61328 = r61319 * r61327;
double r61329 = r61296 ? r61313 : r61328;
return r61329;
}



Bits error versus x



Bits error versus n
Results
if n < -3406.4169782224208 or 1031392298459.7406 < n Initial program 44.9
Taylor expanded around inf 33.1
Simplified32.5
if -3406.4169782224208 < n < 1031392298459.7406Initial program 8.3
rmApplied sqr-pow8.3
Applied sqr-pow8.3
Applied difference-of-squares8.3
rmApplied add-cbrt-cube8.3
Simplified8.3
rmApplied add-cbrt-cube8.3
Simplified8.3
rmApplied add-cbrt-cube8.3
Simplified8.3
Final simplification22.2
herbie shell --seed 2019323 +o rules:numerics
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))