{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;n \le -3.579141987461542662174451834289357066154 \lor \neg \left(n \le 2379860481774380090654720\right):\\
\;\;\;\;\frac{\frac{1}{n}}{x} - \left(\frac{\frac{0.5}{n}}{{x}^{2}} - \frac{\log x \cdot 1}{x \cdot {n}^{2}}\right)\\
\mathbf{else}:\\
\;\;\;\;\log \left(e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)\\
\end{array}double f(double x, double n) {
double r52700 = x;
double r52701 = 1.0;
double r52702 = r52700 + r52701;
double r52703 = n;
double r52704 = r52701 / r52703;
double r52705 = pow(r52702, r52704);
double r52706 = pow(r52700, r52704);
double r52707 = r52705 - r52706;
return r52707;
}
double f(double x, double n) {
double r52708 = n;
double r52709 = -3.5791419874615427;
bool r52710 = r52708 <= r52709;
double r52711 = 2.37986048177438e+24;
bool r52712 = r52708 <= r52711;
double r52713 = !r52712;
bool r52714 = r52710 || r52713;
double r52715 = 1.0;
double r52716 = r52715 / r52708;
double r52717 = x;
double r52718 = r52716 / r52717;
double r52719 = 0.5;
double r52720 = r52719 / r52708;
double r52721 = 2.0;
double r52722 = pow(r52717, r52721);
double r52723 = r52720 / r52722;
double r52724 = log(r52717);
double r52725 = r52724 * r52715;
double r52726 = pow(r52708, r52721);
double r52727 = r52717 * r52726;
double r52728 = r52725 / r52727;
double r52729 = r52723 - r52728;
double r52730 = r52718 - r52729;
double r52731 = r52717 + r52715;
double r52732 = pow(r52731, r52716);
double r52733 = pow(r52717, r52716);
double r52734 = r52732 - r52733;
double r52735 = exp(r52734);
double r52736 = log(r52735);
double r52737 = r52714 ? r52730 : r52736;
return r52737;
}



Bits error versus x



Bits error versus n
Results
if n < -3.5791419874615427 or 2.37986048177438e+24 < n Initial program 44.7
Taylor expanded around inf 32.3
Simplified31.7
if -3.5791419874615427 < n < 2.37986048177438e+24Initial program 9.6
rmApplied add-log-exp9.8
Applied add-log-exp9.7
Applied diff-log9.7
Simplified9.7
Final simplification22.2
herbie shell --seed 2020001
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))