{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -7930394575479.2783203125 \lor \neg \left(\frac{1}{n} \le 4.970657311465403154655264775924061737555 \cdot 10^{-8}\right):\\
\;\;\;\;\mathsf{fma}\left({\left(\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}\right)}^{\left(\frac{1}{n}\right)}, {\left(\sqrt[3]{x + 1}\right)}^{\left(\frac{1}{n}\right)}, -{x}^{\left(\frac{1}{n}\right)}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{x \cdot n} - \mathsf{fma}\left(\frac{1}{n \cdot n}, \frac{-\log x}{x}, \frac{\frac{0.5}{{x}^{2}}}{n}\right)\\
\end{array}double f(double x, double n) {
double r141865 = x;
double r141866 = 1.0;
double r141867 = r141865 + r141866;
double r141868 = n;
double r141869 = r141866 / r141868;
double r141870 = pow(r141867, r141869);
double r141871 = pow(r141865, r141869);
double r141872 = r141870 - r141871;
return r141872;
}
double f(double x, double n) {
double r141873 = 1.0;
double r141874 = n;
double r141875 = r141873 / r141874;
double r141876 = -7930394575479.278;
bool r141877 = r141875 <= r141876;
double r141878 = 4.970657311465403e-08;
bool r141879 = r141875 <= r141878;
double r141880 = !r141879;
bool r141881 = r141877 || r141880;
double r141882 = x;
double r141883 = r141882 + r141873;
double r141884 = cbrt(r141883);
double r141885 = r141884 * r141884;
double r141886 = pow(r141885, r141875);
double r141887 = pow(r141884, r141875);
double r141888 = pow(r141882, r141875);
double r141889 = -r141888;
double r141890 = fma(r141886, r141887, r141889);
double r141891 = r141882 * r141874;
double r141892 = r141873 / r141891;
double r141893 = r141874 * r141874;
double r141894 = r141873 / r141893;
double r141895 = log(r141882);
double r141896 = -r141895;
double r141897 = r141896 / r141882;
double r141898 = 0.5;
double r141899 = 2.0;
double r141900 = pow(r141882, r141899);
double r141901 = r141898 / r141900;
double r141902 = r141901 / r141874;
double r141903 = fma(r141894, r141897, r141902);
double r141904 = r141892 - r141903;
double r141905 = r141881 ? r141890 : r141904;
return r141905;
}



Bits error versus x



Bits error versus n
if (/ 1.0 n) < -7930394575479.278 or 4.970657311465403e-08 < (/ 1.0 n) Initial program 7.7
rmApplied add-cube-cbrt7.8
Applied unpow-prod-down7.8
Applied fma-neg7.8
if -7930394575479.278 < (/ 1.0 n) < 4.970657311465403e-08Initial program 44.9
Taylor expanded around inf 32.7
Simplified32.7
Final simplification22.4
herbie shell --seed 2019194 +o rules:numerics
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
(- (pow (+ x 1.0) (/ 1.0 n)) (pow x (/ 1.0 n))))