\sqrt[3]{x + 1} - \sqrt[3]{x}\begin{array}{l}
\mathbf{if}\;x \le 1.8586209989721385 \cdot 10^{154}:\\
\;\;\;\;\sqrt[3]{{\left(\frac{\log \left(e^{1}\right)}{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1} + \sqrt[3]{x} \cdot \left(\sqrt[3]{x + 1} + \sqrt[3]{x}\right)}\right)}^{3}}\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{{x}^{\frac{2}{3}} + \left(\sqrt[3]{x + 1} + \sqrt[3]{x}\right) \cdot \sqrt[3]{x + 1}}\\
\end{array}double f(double x) {
double r67225 = x;
double r67226 = 1.0;
double r67227 = r67225 + r67226;
double r67228 = cbrt(r67227);
double r67229 = cbrt(r67225);
double r67230 = r67228 - r67229;
return r67230;
}
double f(double x) {
double r67231 = x;
double r67232 = 1.8586209989721385e+154;
bool r67233 = r67231 <= r67232;
double r67234 = 1.0;
double r67235 = exp(r67234);
double r67236 = log(r67235);
double r67237 = r67231 + r67234;
double r67238 = cbrt(r67237);
double r67239 = r67238 * r67238;
double r67240 = cbrt(r67231);
double r67241 = r67238 + r67240;
double r67242 = r67240 * r67241;
double r67243 = r67239 + r67242;
double r67244 = r67236 / r67243;
double r67245 = 3.0;
double r67246 = pow(r67244, r67245);
double r67247 = cbrt(r67246);
double r67248 = 0.6666666666666666;
double r67249 = pow(r67231, r67248);
double r67250 = r67241 * r67238;
double r67251 = r67249 + r67250;
double r67252 = r67234 / r67251;
double r67253 = r67233 ? r67247 : r67252;
return r67253;
}



Bits error versus x
Results
if x < 1.8586209989721385e+154Initial program 25.5
rmApplied add-cbrt-cube25.6
Simplified25.6
rmApplied flip3--25.5
Simplified24.6
Simplified24.7
rmApplied add-log-exp27.4
Applied add-log-exp27.4
Applied add-log-exp27.4
Applied sum-log27.4
Applied diff-log27.4
Simplified8.5
if 1.8586209989721385e+154 < x Initial program 60.9
rmApplied flip3--60.9
Simplified1.0
Simplified5.4
Final simplification8.1
herbie shell --seed 2020045
(FPCore (x)
:name "2cbrt (problem 3.3.4)"
:precision binary64
(- (cbrt (+ x 1)) (cbrt x)))