{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -7.7456503819782359 \cdot 10^{-30} \lor \neg \left(\frac{1}{n} \le 3.6323271639935607 \cdot 10^{-11}\right):\\
\;\;\;\;\left(\sqrt[3]{\mathsf{fma}\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}}, \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}}, -{\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}\right) + {\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)} \cdot \left(\left(-{\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}\right) + {\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}\right)} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\right) \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(1, \frac{1}{x \cdot n}, -\mathsf{fma}\left(0.5, \frac{1}{{x}^{2} \cdot n}, 1 \cdot \frac{\log \left(\frac{1}{x}\right)}{x \cdot {n}^{2}}\right)\right)\\
\end{array}double f(double x, double n) {
double r124297 = x;
double r124298 = 1.0;
double r124299 = r124297 + r124298;
double r124300 = n;
double r124301 = r124298 / r124300;
double r124302 = pow(r124299, r124301);
double r124303 = pow(r124297, r124301);
double r124304 = r124302 - r124303;
return r124304;
}
double f(double x, double n) {
double r124305 = 1.0;
double r124306 = n;
double r124307 = r124305 / r124306;
double r124308 = -7.745650381978236e-30;
bool r124309 = r124307 <= r124308;
double r124310 = 3.6323271639935607e-11;
bool r124311 = r124307 <= r124310;
double r124312 = !r124311;
bool r124313 = r124309 || r124312;
double r124314 = x;
double r124315 = r124314 + r124305;
double r124316 = pow(r124315, r124307);
double r124317 = cbrt(r124316);
double r124318 = r124317 * r124317;
double r124319 = cbrt(r124314);
double r124320 = pow(r124319, r124307);
double r124321 = r124319 * r124319;
double r124322 = pow(r124321, r124307);
double r124323 = r124320 * r124322;
double r124324 = -r124323;
double r124325 = fma(r124318, r124317, r124324);
double r124326 = -r124320;
double r124327 = r124326 + r124320;
double r124328 = r124322 * r124327;
double r124329 = r124325 + r124328;
double r124330 = cbrt(r124329);
double r124331 = pow(r124314, r124307);
double r124332 = r124316 - r124331;
double r124333 = cbrt(r124332);
double r124334 = r124330 * r124333;
double r124335 = r124334 * r124333;
double r124336 = 1.0;
double r124337 = r124314 * r124306;
double r124338 = r124336 / r124337;
double r124339 = 0.5;
double r124340 = 2.0;
double r124341 = pow(r124314, r124340);
double r124342 = r124341 * r124306;
double r124343 = r124336 / r124342;
double r124344 = r124336 / r124314;
double r124345 = log(r124344);
double r124346 = pow(r124306, r124340);
double r124347 = r124314 * r124346;
double r124348 = r124345 / r124347;
double r124349 = r124305 * r124348;
double r124350 = fma(r124339, r124343, r124349);
double r124351 = -r124350;
double r124352 = fma(r124305, r124338, r124351);
double r124353 = r124313 ? r124335 : r124352;
return r124353;
}



Bits error versus x



Bits error versus n
if (/ 1.0 n) < -7.745650381978236e-30 or 3.6323271639935607e-11 < (/ 1.0 n) Initial program 7.5
rmApplied add-cube-cbrt7.5
rmApplied add-cube-cbrt7.5
Applied unpow-prod-down7.5
Applied add-cube-cbrt7.5
Applied prod-diff7.5
Simplified7.5
if -7.745650381978236e-30 < (/ 1.0 n) < 3.6323271639935607e-11Initial program 44.9
Taylor expanded around inf 32.4
Simplified32.4
Final simplification24.4
herbie shell --seed 2020062 +o rules:numerics
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))