{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -0.8758774385902903:\\
\;\;\;\;2 \cdot \left(\sqrt{\log \left(\sqrt[3]{e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}}\right)} \cdot \sqrt{\log \left(\sqrt[3]{e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}}\right)}\right) + \log \left(\sqrt[3]{e^{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}}}\right)\\
\mathbf{elif}\;\frac{1}{n} \le 3.70607248943366594 \cdot 10^{-15}:\\
\;\;\;\;\frac{\frac{1}{x}}{n}\\
\mathbf{else}:\\
\;\;\;\;\frac{{\left(x + 1\right)}^{\left(2 \cdot \frac{1}{n}\right)} - {x}^{\left(2 \cdot \frac{1}{n}\right)}}{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} + {x}^{\left(\frac{1}{n}\right)}}\\
\end{array}double code(double x, double n) {
return ((double) (((double) pow(((double) (x + 1.0)), (1.0 / n))) - ((double) pow(x, (1.0 / n)))));
}
double code(double x, double n) {
double VAR;
if (((1.0 / n) <= -0.8758774385902903)) {
VAR = ((double) (((double) (2.0 * ((double) (((double) sqrt(((double) log(((double) cbrt(((double) exp(((double) (((double) pow(((double) (x + 1.0)), (1.0 / n))) - ((double) pow(x, (1.0 / n))))))))))))) * ((double) sqrt(((double) log(((double) cbrt(((double) exp(((double) (((double) pow(((double) (x + 1.0)), (1.0 / n))) - ((double) pow(x, (1.0 / n))))))))))))))))) + ((double) log(((double) cbrt(((double) exp(((double) (((double) pow(((double) (x + 1.0)), (1.0 / n))) - ((double) pow(x, (1.0 / n)))))))))))));
} else {
double VAR_1;
if (((1.0 / n) <= 3.706072489433666e-15)) {
VAR_1 = ((1.0 / x) / n);
} else {
VAR_1 = (((double) (((double) pow(((double) (x + 1.0)), ((double) (2.0 * (1.0 / n))))) - ((double) pow(x, ((double) (2.0 * (1.0 / n))))))) / ((double) (((double) pow(((double) (x + 1.0)), (1.0 / n))) + ((double) pow(x, (1.0 / n))))));
}
VAR = VAR_1;
}
return VAR;
}



Bits error versus x



Bits error versus n
Results
if (/ 1.0 n) < -0.8758774385902903Initial program 0.0
rmApplied add-log-exp0.3
Applied add-log-exp0.2
Applied diff-log0.2
Simplified0.2
rmApplied add-cube-cbrt0.2
Applied log-prod0.2
Simplified0.2
rmApplied add-sqr-sqrt0.2
if -0.8758774385902903 < (/ 1.0 n) < 3.70607248943366594e-15Initial program 45.0
Taylor expanded around -inf 64.0
Simplified32.1
if 3.70607248943366594e-15 < (/ 1.0 n) Initial program 8.7
rmApplied flip--8.7
Simplified8.6
Final simplification23.6
herbie shell --seed 2020181
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1.0) (/ 1.0 n)) (pow x (/ 1.0 n))))