{\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.5351028006273464976416676108783576637506 \lor \neg \left(\frac{1}{n} \le 4.133628459687642410799750514629715336321 \cdot 10^{-12}\right):\\
\;\;\;\;{\left(\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(\sqrt[3]{x + 1}\right)}^{\left(\frac{1}{n}\right)} - {\left({x}^{1}\right)}^{\left(\frac{1}{n}\right)}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\frac{1}{x}}{n} + 1 \cdot \frac{\log x}{x \cdot {n}^{2}}\right) - \frac{0.5}{{x}^{2} \cdot n}\\
\end{array}double f(double x, double n) {
double r71818 = x;
double r71819 = 1.0;
double r71820 = r71818 + r71819;
double r71821 = n;
double r71822 = r71819 / r71821;
double r71823 = pow(r71820, r71822);
double r71824 = pow(r71818, r71822);
double r71825 = r71823 - r71824;
return r71825;
}
double f(double x, double n) {
double r71826 = 1.0;
double r71827 = n;
double r71828 = r71826 / r71827;
double r71829 = -0.5351028006273465;
bool r71830 = r71828 <= r71829;
double r71831 = 4.1336284596876424e-12;
bool r71832 = r71828 <= r71831;
double r71833 = !r71832;
bool r71834 = r71830 || r71833;
double r71835 = x;
double r71836 = r71835 + r71826;
double r71837 = cbrt(r71836);
double r71838 = r71837 * r71837;
double r71839 = pow(r71838, r71828);
double r71840 = pow(r71837, r71828);
double r71841 = r71839 * r71840;
double r71842 = pow(r71835, r71826);
double r71843 = 1.0;
double r71844 = r71843 / r71827;
double r71845 = pow(r71842, r71844);
double r71846 = r71841 - r71845;
double r71847 = r71826 / r71835;
double r71848 = r71847 / r71827;
double r71849 = log(r71835);
double r71850 = 2.0;
double r71851 = pow(r71827, r71850);
double r71852 = r71835 * r71851;
double r71853 = r71849 / r71852;
double r71854 = r71826 * r71853;
double r71855 = r71848 + r71854;
double r71856 = 0.5;
double r71857 = pow(r71835, r71850);
double r71858 = r71857 * r71827;
double r71859 = r71856 / r71858;
double r71860 = r71855 - r71859;
double r71861 = r71834 ? r71846 : r71860;
return r71861;
}



Bits error versus x



Bits error versus n
Results
if (/ 1.0 n) < -0.5351028006273465 or 4.1336284596876424e-12 < (/ 1.0 n) Initial program 8.5
rmApplied add-cube-cbrt8.6
Applied unpow-prod-down8.6
rmApplied div-inv8.6
Applied pow-unpow8.6
if -0.5351028006273465 < (/ 1.0 n) < 4.1336284596876424e-12Initial program 44.6
Taylor expanded around inf 32.9
Simplified32.3
rmApplied sub-neg32.3
Applied distribute-lft-in32.3
Simplified32.3
Simplified32.3
Final simplification22.3
herbie shell --seed 2019303
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
:precision binary64
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))