{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -4.088555932674840565515313109813764352873 \cdot 10^{-10}:\\
\;\;\;\;\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)\\
\mathbf{elif}\;\frac{1}{n} \le 2.337974556281276381287875419134246685396 \cdot 10^{-11}:\\
\;\;\;\;\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}:\\
\;\;\;\;\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot e^{\log \left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)}\\
\end{array}double f(double x, double n) {
double r126237 = x;
double r126238 = 1.0;
double r126239 = r126237 + r126238;
double r126240 = n;
double r126241 = r126238 / r126240;
double r126242 = pow(r126239, r126241);
double r126243 = pow(r126237, r126241);
double r126244 = r126242 - r126243;
return r126244;
}
double f(double x, double n) {
double r126245 = 1.0;
double r126246 = n;
double r126247 = r126245 / r126246;
double r126248 = -4.0885559326748406e-10;
bool r126249 = r126247 <= r126248;
double r126250 = x;
double r126251 = r126250 + r126245;
double r126252 = 2.0;
double r126253 = r126247 / r126252;
double r126254 = pow(r126251, r126253);
double r126255 = pow(r126250, r126253);
double r126256 = r126254 + r126255;
double r126257 = r126254 - r126255;
double r126258 = r126256 * r126257;
double r126259 = 2.3379745562812764e-11;
bool r126260 = r126247 <= r126259;
double r126261 = r126247 / r126250;
double r126262 = 0.5;
double r126263 = r126262 / r126246;
double r126264 = pow(r126250, r126252);
double r126265 = r126263 / r126264;
double r126266 = log(r126250);
double r126267 = r126266 * r126245;
double r126268 = pow(r126246, r126252);
double r126269 = r126250 * r126268;
double r126270 = r126267 / r126269;
double r126271 = r126265 - r126270;
double r126272 = r126261 - r126271;
double r126273 = log(r126257);
double r126274 = exp(r126273);
double r126275 = r126256 * r126274;
double r126276 = r126260 ? r126272 : r126275;
double r126277 = r126249 ? r126258 : r126276;
return r126277;
}



Bits error versus x



Bits error versus n
Results
if (/ 1.0 n) < -4.0885559326748406e-10Initial program 1.1
rmApplied sqr-pow1.2
Applied sqr-pow1.1
Applied difference-of-squares1.1
if -4.0885559326748406e-10 < (/ 1.0 n) < 2.3379745562812764e-11Initial program 44.8
Taylor expanded around inf 32.3
Simplified31.6
if 2.3379745562812764e-11 < (/ 1.0 n) Initial program 25.6
rmApplied sqr-pow25.6
Applied sqr-pow25.6
Applied difference-of-squares25.6
rmApplied add-exp-log25.6
Final simplification21.7
herbie shell --seed 2019322
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))