{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;n \le -594192892.16520202159881591796875:\\
\;\;\;\;1 \cdot \left(\frac{\frac{1}{n}}{x} - \frac{-\log x}{\left(n \cdot n\right) \cdot x}\right) - \frac{\frac{0.5}{n}}{x \cdot x}\\
\mathbf{elif}\;n \le 61241.10698845344450091943144798278808594:\\
\;\;\;\;\sqrt{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)}} \cdot \sqrt{{\left(1 + x\right)}^{\left(\frac{1}{n}\right)}} - {x}^{\left(\frac{1}{n}\right)}\\
\mathbf{else}:\\
\;\;\;\;1 \cdot \left(\frac{\frac{1}{n}}{x} - \frac{-\log x}{\left(n \cdot n\right) \cdot x}\right) - \log \left(e^{\frac{\frac{0.5}{n}}{x \cdot x}}\right)\\
\end{array}double f(double x, double n) {
double r64694 = x;
double r64695 = 1.0;
double r64696 = r64694 + r64695;
double r64697 = n;
double r64698 = r64695 / r64697;
double r64699 = pow(r64696, r64698);
double r64700 = pow(r64694, r64698);
double r64701 = r64699 - r64700;
return r64701;
}
double f(double x, double n) {
double r64702 = n;
double r64703 = -594192892.165202;
bool r64704 = r64702 <= r64703;
double r64705 = 1.0;
double r64706 = 1.0;
double r64707 = r64706 / r64702;
double r64708 = x;
double r64709 = r64707 / r64708;
double r64710 = log(r64708);
double r64711 = -r64710;
double r64712 = r64702 * r64702;
double r64713 = r64712 * r64708;
double r64714 = r64711 / r64713;
double r64715 = r64709 - r64714;
double r64716 = r64705 * r64715;
double r64717 = 0.5;
double r64718 = r64717 / r64702;
double r64719 = r64708 * r64708;
double r64720 = r64718 / r64719;
double r64721 = r64716 - r64720;
double r64722 = 61241.106988453445;
bool r64723 = r64702 <= r64722;
double r64724 = r64705 + r64708;
double r64725 = r64705 / r64702;
double r64726 = pow(r64724, r64725);
double r64727 = sqrt(r64726);
double r64728 = r64727 * r64727;
double r64729 = pow(r64708, r64725);
double r64730 = r64728 - r64729;
double r64731 = exp(r64720);
double r64732 = log(r64731);
double r64733 = r64716 - r64732;
double r64734 = r64723 ? r64730 : r64733;
double r64735 = r64704 ? r64721 : r64734;
return r64735;
}



Bits error versus x



Bits error versus n
Results
if n < -594192892.165202Initial program 44.8
Taylor expanded around inf 32.0
Simplified31.3
Taylor expanded around inf 32.0
Simplified31.3
if -594192892.165202 < n < 61241.106988453445Initial program 8.8
rmApplied add-sqr-sqrt8.8
Simplified8.8
Simplified8.8
if 61241.106988453445 < n Initial program 44.9
Taylor expanded around inf 32.6
Simplified31.9
Taylor expanded around inf 32.6
Simplified31.9
rmApplied add-log-exp32.0
Final simplification21.9
herbie shell --seed 2019196
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
(- (pow (+ x 1.0) (/ 1.0 n)) (pow x (/ 1.0 n))))