\sqrt[3]{x + 1} - \sqrt[3]{x}\begin{array}{l}
\mathbf{if}\;x \le -4.4537552488591828 \cdot 10^{61}:\\
\;\;\;\;\left(0.333333333333333315 \cdot {\left(\frac{1}{{x}^{2}}\right)}^{\frac{1}{3}} + 0.061728395061728392 \cdot {\left(\frac{1}{{x}^{8}}\right)}^{\frac{1}{3}}\right) - 0.1111111111111111 \cdot {\left(\frac{1}{{x}^{5}}\right)}^{\frac{1}{3}}\\
\mathbf{elif}\;x \le 0.0030493216515878772:\\
\;\;\;\;\frac{\sqrt[3]{{x}^{3} + {1}^{3}}}{\sqrt[3]{x \cdot x + \left(1 \cdot 1 - x \cdot 1\right)}} - \sqrt[3]{x}\\
\mathbf{else}:\\
\;\;\;\;\frac{0 + 1}{\sqrt[3]{x + 1} \cdot \left(\sqrt[3]{x + 1} + \sqrt[3]{x}\right) + {x}^{\frac{2}{3}}}\\
\end{array}double f(double x) {
double r61788 = x;
double r61789 = 1.0;
double r61790 = r61788 + r61789;
double r61791 = cbrt(r61790);
double r61792 = cbrt(r61788);
double r61793 = r61791 - r61792;
return r61793;
}
double f(double x) {
double r61794 = x;
double r61795 = -4.453755248859183e+61;
bool r61796 = r61794 <= r61795;
double r61797 = 0.3333333333333333;
double r61798 = 1.0;
double r61799 = 2.0;
double r61800 = pow(r61794, r61799);
double r61801 = r61798 / r61800;
double r61802 = 0.3333333333333333;
double r61803 = pow(r61801, r61802);
double r61804 = r61797 * r61803;
double r61805 = 0.06172839506172839;
double r61806 = 8.0;
double r61807 = pow(r61794, r61806);
double r61808 = r61798 / r61807;
double r61809 = pow(r61808, r61802);
double r61810 = r61805 * r61809;
double r61811 = r61804 + r61810;
double r61812 = 0.1111111111111111;
double r61813 = 5.0;
double r61814 = pow(r61794, r61813);
double r61815 = r61798 / r61814;
double r61816 = pow(r61815, r61802);
double r61817 = r61812 * r61816;
double r61818 = r61811 - r61817;
double r61819 = 0.003049321651587877;
bool r61820 = r61794 <= r61819;
double r61821 = 3.0;
double r61822 = pow(r61794, r61821);
double r61823 = 1.0;
double r61824 = pow(r61823, r61821);
double r61825 = r61822 + r61824;
double r61826 = cbrt(r61825);
double r61827 = r61794 * r61794;
double r61828 = r61823 * r61823;
double r61829 = r61794 * r61823;
double r61830 = r61828 - r61829;
double r61831 = r61827 + r61830;
double r61832 = cbrt(r61831);
double r61833 = r61826 / r61832;
double r61834 = cbrt(r61794);
double r61835 = r61833 - r61834;
double r61836 = 0.0;
double r61837 = r61836 + r61823;
double r61838 = r61794 + r61823;
double r61839 = cbrt(r61838);
double r61840 = r61839 + r61834;
double r61841 = r61839 * r61840;
double r61842 = 0.6666666666666666;
double r61843 = pow(r61794, r61842);
double r61844 = r61841 + r61843;
double r61845 = r61837 / r61844;
double r61846 = r61820 ? r61835 : r61845;
double r61847 = r61796 ? r61818 : r61846;
return r61847;
}



Bits error versus x
Results
if x < -4.453755248859183e+61Initial program 61.2
Taylor expanded around inf 40.2
if -4.453755248859183e+61 < x < 0.003049321651587877Initial program 4.8
rmApplied flip3-+4.7
Applied cbrt-div4.7
if 0.003049321651587877 < x Initial program 59.1
rmApplied flip3--59.0
Simplified1.0
Simplified4.5
Final simplification12.0
herbie shell --seed 2020033
(FPCore (x)
:name "2cbrt (problem 3.3.4)"
:precision binary64
(- (cbrt (+ x 1)) (cbrt x)))