{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -2.62963224260069623 \cdot 10^{-7} \lor \neg \left(\frac{1}{n} \le 8.0651678035819246 \cdot 10^{-8}\right):\\
\;\;\;\;\log \left(e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{1}{n}}{x} - \left(\frac{\frac{0.5}{n}}{{x}^{2}} - \frac{\log x \cdot 1}{x \cdot {n}^{2}}\right)\\
\end{array}double f(double x, double n) {
double r78731 = x;
double r78732 = 1.0;
double r78733 = r78731 + r78732;
double r78734 = n;
double r78735 = r78732 / r78734;
double r78736 = pow(r78733, r78735);
double r78737 = pow(r78731, r78735);
double r78738 = r78736 - r78737;
return r78738;
}
double f(double x, double n) {
double r78739 = 1.0;
double r78740 = n;
double r78741 = r78739 / r78740;
double r78742 = -2.629632242600696e-07;
bool r78743 = r78741 <= r78742;
double r78744 = 8.065167803581925e-08;
bool r78745 = r78741 <= r78744;
double r78746 = !r78745;
bool r78747 = r78743 || r78746;
double r78748 = x;
double r78749 = r78748 + r78739;
double r78750 = pow(r78749, r78741);
double r78751 = pow(r78748, r78741);
double r78752 = r78750 - r78751;
double r78753 = exp(r78752);
double r78754 = log(r78753);
double r78755 = r78741 / r78748;
double r78756 = 0.5;
double r78757 = r78756 / r78740;
double r78758 = 2.0;
double r78759 = pow(r78748, r78758);
double r78760 = r78757 / r78759;
double r78761 = log(r78748);
double r78762 = r78761 * r78739;
double r78763 = pow(r78740, r78758);
double r78764 = r78748 * r78763;
double r78765 = r78762 / r78764;
double r78766 = r78760 - r78765;
double r78767 = r78755 - r78766;
double r78768 = r78747 ? r78754 : r78767;
return r78768;
}



Bits error versus x



Bits error versus n
Results
if (/ 1.0 n) < -2.629632242600696e-07 or 8.065167803581925e-08 < (/ 1.0 n) Initial program 9.0
rmApplied add-log-exp9.2
Applied add-log-exp9.2
Applied diff-log9.2
Simplified9.2
if -2.629632242600696e-07 < (/ 1.0 n) < 8.065167803581925e-08Initial program 44.4
Taylor expanded around inf 32.5
Simplified32.0
Final simplification22.3
herbie shell --seed 2020020
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))