{\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.267281974669497 \cdot 10^{-08}:\\
\;\;\;\;\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \left(\sqrt[3]{\left(\sqrt{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({x}^{\left(\frac{\frac{1}{n}}{2}\right)} + \sqrt{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}}\right)} \cdot \sqrt[3]{\mathsf{fma}\left(-{\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}, {\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}, {\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}\right) + \mathsf{fma}\left(1, {\left(x + 1\right)}^{\left(\frac{1}{n}\right)}, -{\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}\right)}\right)\\
\mathbf{elif}\;\frac{1}{n} \le 7.385489355116676 \cdot 10^{-07}:\\
\;\;\;\;\left(\frac{1}{x \cdot n} - \left(-\frac{\frac{\log x}{x}}{n \cdot n}\right)\right) - \frac{\frac{1}{2}}{n \cdot \left(x \cdot x\right)}\\
\mathbf{else}:\\
\;\;\;\;e^{\frac{\mathsf{log1p}\left(x\right)}{n}} - {x}^{\left(\frac{1}{n}\right)}\\
\end{array}double f(double x, double n) {
double r1492467 = x;
double r1492468 = 1.0;
double r1492469 = r1492467 + r1492468;
double r1492470 = n;
double r1492471 = r1492468 / r1492470;
double r1492472 = pow(r1492469, r1492471);
double r1492473 = pow(r1492467, r1492471);
double r1492474 = r1492472 - r1492473;
return r1492474;
}
double f(double x, double n) {
double r1492475 = 1.0;
double r1492476 = n;
double r1492477 = r1492475 / r1492476;
double r1492478 = -6.267281974669497e-08;
bool r1492479 = r1492477 <= r1492478;
double r1492480 = x;
double r1492481 = r1492480 + r1492475;
double r1492482 = pow(r1492481, r1492477);
double r1492483 = pow(r1492480, r1492477);
double r1492484 = r1492482 - r1492483;
double r1492485 = cbrt(r1492484);
double r1492486 = sqrt(r1492482);
double r1492487 = 2.0;
double r1492488 = r1492477 / r1492487;
double r1492489 = pow(r1492480, r1492488);
double r1492490 = r1492486 - r1492489;
double r1492491 = r1492489 + r1492486;
double r1492492 = r1492490 * r1492491;
double r1492493 = cbrt(r1492492);
double r1492494 = cbrt(r1492480);
double r1492495 = pow(r1492494, r1492477);
double r1492496 = -r1492495;
double r1492497 = r1492494 * r1492494;
double r1492498 = pow(r1492497, r1492477);
double r1492499 = r1492498 * r1492495;
double r1492500 = fma(r1492496, r1492498, r1492499);
double r1492501 = -r1492499;
double r1492502 = fma(r1492475, r1492482, r1492501);
double r1492503 = r1492500 + r1492502;
double r1492504 = cbrt(r1492503);
double r1492505 = r1492493 * r1492504;
double r1492506 = r1492485 * r1492505;
double r1492507 = 7.385489355116676e-07;
bool r1492508 = r1492477 <= r1492507;
double r1492509 = r1492480 * r1492476;
double r1492510 = r1492475 / r1492509;
double r1492511 = log(r1492480);
double r1492512 = r1492511 / r1492480;
double r1492513 = r1492476 * r1492476;
double r1492514 = r1492512 / r1492513;
double r1492515 = -r1492514;
double r1492516 = r1492510 - r1492515;
double r1492517 = 0.5;
double r1492518 = r1492480 * r1492480;
double r1492519 = r1492476 * r1492518;
double r1492520 = r1492517 / r1492519;
double r1492521 = r1492516 - r1492520;
double r1492522 = log1p(r1492480);
double r1492523 = r1492522 / r1492476;
double r1492524 = exp(r1492523);
double r1492525 = r1492524 - r1492483;
double r1492526 = r1492508 ? r1492521 : r1492525;
double r1492527 = r1492479 ? r1492506 : r1492526;
return r1492527;
}



Bits error versus x



Bits error versus n
if (/ 1 n) < -6.267281974669497e-08Initial program 0.6
rmApplied add-cube-cbrt0.6
rmApplied add-cube-cbrt0.6
Applied unpow-prod-down0.6
Applied *-un-lft-identity0.6
Applied prod-diff0.6
rmApplied sqr-pow0.6
Applied add-sqr-sqrt0.6
Applied difference-of-squares0.6
if -6.267281974669497e-08 < (/ 1 n) < 7.385489355116676e-07Initial program 44.9
Taylor expanded around inf 33.1
Simplified33.1
if 7.385489355116676e-07 < (/ 1 n) Initial program 24.9
rmApplied add-exp-log24.9
Applied pow-exp24.9
Simplified0.9
Final simplification19.1
herbie shell --seed 2019153 +o rules:numerics
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))