{\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {x}^{\left(\frac{1}{n}\right)}\begin{array}{l}
\mathbf{if}\;\frac{1}{n} \le -7.177444174248558 \cdot 10^{-20}:\\
\;\;\;\;\sqrt[3]{\left(\left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}\right)\right) \cdot \left({\left(x + 1\right)}^{\left(\frac{1}{n}\right)} - {\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}\right)} + \mathsf{fma}\left(-{\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}, {\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}, {\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)} \cdot {\left(\sqrt[3]{x}\right)}^{\left(\frac{1}{n}\right)}\right)\\
\mathbf{elif}\;\frac{1}{n} \le 3.904316443592393 \cdot 10^{-11}:\\
\;\;\;\;\left(\frac{\frac{\log x}{n}}{x \cdot n} + \frac{1}{x \cdot n}\right) - \frac{\frac{1}{2}}{\left(x \cdot n\right) \cdot x}\\
\mathbf{else}:\\
\;\;\;\;e^{\frac{\mathsf{log1p}\left(x\right)}{n}} - {x}^{\left(\frac{1}{n}\right)}\\
\end{array}double f(double x, double n) {
double r2237154 = x;
double r2237155 = 1.0;
double r2237156 = r2237154 + r2237155;
double r2237157 = n;
double r2237158 = r2237155 / r2237157;
double r2237159 = pow(r2237156, r2237158);
double r2237160 = pow(r2237154, r2237158);
double r2237161 = r2237159 - r2237160;
return r2237161;
}
double f(double x, double n) {
double r2237162 = 1.0;
double r2237163 = n;
double r2237164 = r2237162 / r2237163;
double r2237165 = -7.177444174248558e-20;
bool r2237166 = r2237164 <= r2237165;
double r2237167 = x;
double r2237168 = r2237167 + r2237162;
double r2237169 = pow(r2237168, r2237164);
double r2237170 = cbrt(r2237167);
double r2237171 = r2237170 * r2237170;
double r2237172 = pow(r2237171, r2237164);
double r2237173 = pow(r2237170, r2237164);
double r2237174 = r2237172 * r2237173;
double r2237175 = r2237169 - r2237174;
double r2237176 = r2237175 * r2237175;
double r2237177 = r2237176 * r2237175;
double r2237178 = cbrt(r2237177);
double r2237179 = -r2237173;
double r2237180 = fma(r2237179, r2237172, r2237174);
double r2237181 = r2237178 + r2237180;
double r2237182 = 3.904316443592393e-11;
bool r2237183 = r2237164 <= r2237182;
double r2237184 = log(r2237167);
double r2237185 = r2237184 / r2237163;
double r2237186 = r2237167 * r2237163;
double r2237187 = r2237185 / r2237186;
double r2237188 = r2237162 / r2237186;
double r2237189 = r2237187 + r2237188;
double r2237190 = 0.5;
double r2237191 = r2237186 * r2237167;
double r2237192 = r2237190 / r2237191;
double r2237193 = r2237189 - r2237192;
double r2237194 = log1p(r2237167);
double r2237195 = r2237194 / r2237163;
double r2237196 = exp(r2237195);
double r2237197 = pow(r2237167, r2237164);
double r2237198 = r2237196 - r2237197;
double r2237199 = r2237183 ? r2237193 : r2237198;
double r2237200 = r2237166 ? r2237181 : r2237199;
return r2237200;
}



Bits error versus x



Bits error versus n
if (/ 1 n) < -7.177444174248558e-20Initial program 2.5
rmApplied add-cube-cbrt2.5
Applied unpow-prod-down2.5
Applied add-cube-cbrt2.6
Applied prod-diff2.6
rmApplied add-cbrt-cube2.6
Simplified2.6
if -7.177444174248558e-20 < (/ 1 n) < 3.904316443592393e-11Initial program 44.4
Taylor expanded around inf 32.0
Simplified32.0
if 3.904316443592393e-11 < (/ 1 n) Initial program 25.7
rmApplied add-exp-log25.7
Simplified2.7
Final simplification19.2
herbie shell --seed 2019149 +o rules:numerics
(FPCore (x n)
:name "2nthrt (problem 3.4.6)"
(- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))))