{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -104130347.93584307:\\
\;\;\;\;e^{\log \left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\right)}\\
\mathbf{elif}\;\frac{1}{n} \le 2.8321253549703665 \cdot 10^{-07}:\\
\;\;\;\;\left(\frac{\frac{\log x}{n}}{x \cdot n} + \frac{1}{x \cdot n}\right) - \frac{\frac{1}{2}}{\left(x \cdot n\right) \cdot x}\\
\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 r2552996 = x;
double r2552997 = 1.0;
double r2552998 = r2552996 + r2552997;
double r2552999 = n;
double r2553000 = r2552997 / r2552999;
double r2553001 = pow(r2552998, r2553000);
double r2553002 = pow(r2552996, r2553000);
double r2553003 = r2553001 - r2553002;
return r2553003;
}
double f(double x, double n) {
double r2553004 = 1.0;
double r2553005 = n;
double r2553006 = r2553004 / r2553005;
double r2553007 = -104130347.93584307;
bool r2553008 = r2553006 <= r2553007;
double r2553009 = x;
double r2553010 = r2553009 + r2553004;
double r2553011 = pow(r2553010, r2553006);
double r2553012 = pow(r2553009, r2553006);
double r2553013 = r2553011 - r2553012;
double r2553014 = log(r2553013);
double r2553015 = exp(r2553014);
double r2553016 = 2.8321253549703665e-07;
bool r2553017 = r2553006 <= r2553016;
double r2553018 = log(r2553009);
double r2553019 = r2553018 / r2553005;
double r2553020 = r2553009 * r2553005;
double r2553021 = r2553019 / r2553020;
double r2553022 = r2553004 / r2553020;
double r2553023 = r2553021 + r2553022;
double r2553024 = 0.5;
double r2553025 = r2553020 * r2553009;
double r2553026 = r2553024 / r2553025;
double r2553027 = r2553023 - r2553026;
double r2553028 = log1p(r2553009);
double r2553029 = r2553028 / r2553005;
double r2553030 = exp(r2553029);
double r2553031 = r2553030 - r2553012;
double r2553032 = r2553017 ? r2553027 : r2553031;
double r2553033 = r2553008 ? r2553015 : r2553032;
return r2553033;
}



Bits error versus x



Bits error versus n
Results
if (/ 1 n) < -104130347.93584307Initial program 0
rmApplied add-exp-log0
if -104130347.93584307 < (/ 1 n) < 2.8321253549703665e-07Initial program 44.7
Taylor expanded around inf 33.1
Simplified33.0
if 2.8321253549703665e-07 < (/ 1 n) Initial program 23.4
rmApplied add-exp-log23.5
Applied pow-exp23.5
Simplified1.1
Final simplification19.3
herbie shell --seed 2019151 +o rules:numerics
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))