{\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.05925712577091127308825946329307043924928:\\
\;\;\;\;\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{\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)}\right) \cdot \sqrt[3]{\left(\sqrt{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left(\sqrt{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)}} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right)}\\
\mathbf{elif}\;\frac{1}{n} \le 2.255271015860772358417468981097305856376 \cdot 10^{-27}:\\
\;\;\;\;\frac{1}{x} \cdot \left(\frac{1}{n} - \frac{-\log x}{{n}^{2}}\right) - \frac{0.5}{{x}^{2} \cdot n}\\
\mathbf{else}:\\
\;\;\;\;\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}} \cdot \sqrt[3]{\left({\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} + {x}^{\left(\frac{\frac{1}{n}}{2}\right)}\right) \cdot \left(\left(\sqrt[3]{{\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}} \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}}\right) \cdot \sqrt[3]{{\left(x + 1\right)}^{\left(\frac{\frac{1}{n}}{2}\right)} - {x}^{\left(\frac{\frac{1}{n}}{2}\right)}}\right)}\right) \cdot \sqrt[3]{\sqrt[3]{{\left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\right)}^{3}}}\\
\end{array}double f(double x, double n) {
double r75746 = x;
double r75747 = 1.0;
double r75748 = r75746 + r75747;
double r75749 = n;
double r75750 = r75747 / r75749;
double r75751 = pow(r75748, r75750);
double r75752 = pow(r75746, r75750);
double r75753 = r75751 - r75752;
return r75753;
}
double f(double x, double n) {
double r75754 = 1.0;
double r75755 = n;
double r75756 = r75754 / r75755;
double r75757 = -0.05925712577091127;
bool r75758 = r75756 <= r75757;
double r75759 = x;
double r75760 = r75759 + r75754;
double r75761 = pow(r75760, r75756);
double r75762 = pow(r75759, r75756);
double r75763 = r75761 - r75762;
double r75764 = cbrt(r75763);
double r75765 = 2.0;
double r75766 = r75756 / r75765;
double r75767 = pow(r75760, r75766);
double r75768 = pow(r75759, r75766);
double r75769 = r75767 + r75768;
double r75770 = r75767 - r75768;
double r75771 = r75769 * r75770;
double r75772 = cbrt(r75771);
double r75773 = r75764 * r75772;
double r75774 = sqrt(r75761);
double r75775 = r75774 + r75768;
double r75776 = r75774 - r75768;
double r75777 = r75775 * r75776;
double r75778 = cbrt(r75777);
double r75779 = r75773 * r75778;
double r75780 = 2.2552710158607724e-27;
bool r75781 = r75756 <= r75780;
double r75782 = r75754 / r75759;
double r75783 = 1.0;
double r75784 = r75783 / r75755;
double r75785 = log(r75759);
double r75786 = -r75785;
double r75787 = pow(r75755, r75765);
double r75788 = r75786 / r75787;
double r75789 = r75784 - r75788;
double r75790 = r75782 * r75789;
double r75791 = 0.5;
double r75792 = pow(r75759, r75765);
double r75793 = r75792 * r75755;
double r75794 = r75791 / r75793;
double r75795 = r75790 - r75794;
double r75796 = cbrt(r75770);
double r75797 = r75796 * r75796;
double r75798 = r75797 * r75796;
double r75799 = r75769 * r75798;
double r75800 = cbrt(r75799);
double r75801 = r75764 * r75800;
double r75802 = 3.0;
double r75803 = pow(r75763, r75802);
double r75804 = cbrt(r75803);
double r75805 = cbrt(r75804);
double r75806 = r75801 * r75805;
double r75807 = r75781 ? r75795 : r75806;
double r75808 = r75758 ? r75779 : r75807;
return r75808;
}



Bits error versus x



Bits error versus n
Results
if (/ 1.0 n) < -0.05925712577091127Initial program 0.1
rmApplied add-cube-cbrt0.1
rmApplied sqr-pow0.1
Applied sqr-pow0.1
Applied difference-of-squares0.1
rmApplied sqr-pow0.1
Applied add-sqr-sqrt0.1
Applied difference-of-squares0.1
if -0.05925712577091127 < (/ 1.0 n) < 2.2552710158607724e-27Initial program 44.9
Taylor expanded around inf 33.9
Simplified33.3
if 2.2552710158607724e-27 < (/ 1.0 n) Initial program 28.1
rmApplied add-cube-cbrt28.2
rmApplied sqr-pow28.1
Applied sqr-pow28.1
Applied difference-of-squares28.1
rmApplied add-cube-cbrt28.1
rmApplied add-cbrt-cube28.1
Simplified28.1
Final simplification23.0
herbie shell --seed 2019325 +o rules:numerics
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))