{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -2.42990822967182081 \cdot 10^{-7} \lor \neg \left(\frac{1}{n} \le 1.48079236773730348 \cdot 10^{-15}\right):\\
\;\;\;\;\sqrt[3]{{\left(\sqrt[3]{{\left(\sqrt[3]{{\left(\sqrt[3]{{\left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\right)}^{3}}\right)}^{3}}\right)}^{3}}\right)}^{3}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{1}{n}}{x} - \mathsf{fma}\left(\frac{-\log x}{x \cdot {n}^{2}}, 1, \frac{0.5}{{x}^{2} \cdot n}\right)\\
\end{array}double f(double x, double n) {
double r53786 = x;
double r53787 = 1.0;
double r53788 = r53786 + r53787;
double r53789 = n;
double r53790 = r53787 / r53789;
double r53791 = pow(r53788, r53790);
double r53792 = pow(r53786, r53790);
double r53793 = r53791 - r53792;
return r53793;
}
double f(double x, double n) {
double r53794 = 1.0;
double r53795 = n;
double r53796 = r53794 / r53795;
double r53797 = -2.429908229671821e-07;
bool r53798 = r53796 <= r53797;
double r53799 = 1.4807923677373035e-15;
bool r53800 = r53796 <= r53799;
double r53801 = !r53800;
bool r53802 = r53798 || r53801;
double r53803 = x;
double r53804 = r53803 + r53794;
double r53805 = pow(r53804, r53796);
double r53806 = pow(r53803, r53796);
double r53807 = r53805 - r53806;
double r53808 = 3.0;
double r53809 = pow(r53807, r53808);
double r53810 = cbrt(r53809);
double r53811 = pow(r53810, r53808);
double r53812 = cbrt(r53811);
double r53813 = pow(r53812, r53808);
double r53814 = cbrt(r53813);
double r53815 = pow(r53814, r53808);
double r53816 = cbrt(r53815);
double r53817 = r53796 / r53803;
double r53818 = log(r53803);
double r53819 = -r53818;
double r53820 = 2.0;
double r53821 = pow(r53795, r53820);
double r53822 = r53803 * r53821;
double r53823 = r53819 / r53822;
double r53824 = 0.5;
double r53825 = pow(r53803, r53820);
double r53826 = r53825 * r53795;
double r53827 = r53824 / r53826;
double r53828 = fma(r53823, r53794, r53827);
double r53829 = r53817 - r53828;
double r53830 = r53802 ? r53816 : r53829;
return r53830;
}



Bits error versus x



Bits error versus n
if (/ 1.0 n) < -2.429908229671821e-07 or 1.4807923677373035e-15 < (/ 1.0 n) Initial program 9.4
rmApplied add-cbrt-cube9.4
Simplified9.4
rmApplied add-cbrt-cube9.4
Simplified9.4
rmApplied add-cbrt-cube9.4
Simplified9.4
rmApplied add-cbrt-cube9.4
Simplified9.4
if -2.429908229671821e-07 < (/ 1.0 n) < 1.4807923677373035e-15Initial program 44.9
rmApplied add-cbrt-cube44.9
Simplified44.9
Taylor expanded around inf 32.2
Simplified31.6
Final simplification21.9
herbie shell --seed 2020045 +o rules:numerics
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))