\sqrt[3]{x + 1} - \sqrt[3]{x}\begin{array}{l}
\mathbf{if}\;x \le -4138.16239365189085:\\
\;\;\;\;\sqrt[3]{\left(0.0329218106995884732 \cdot \frac{1}{{x}^{4}} - 0.037037037037037035 \cdot \frac{1}{{x}^{3}}\right) + \frac{\frac{0.037037037037037035}{x}}{x}}\\
\mathbf{elif}\;x \le 0.00428177313553328599:\\
\;\;\;\;\frac{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1} - \sqrt[3]{x} \cdot \left(\left(\sqrt[3]{\sqrt[3]{x}} \cdot \sqrt[3]{\sqrt[3]{x}}\right) \cdot \sqrt[3]{\sqrt[3]{x}}\right)}{\sqrt[3]{x + 1} + \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 code(double x) {
return ((double) (((double) cbrt(((double) (x + 1.0)))) - ((double) cbrt(x))));
}
double code(double x) {
double VAR;
if ((x <= -4138.162393651891)) {
VAR = ((double) cbrt(((double) (((double) (((double) (0.03292181069958847 * ((double) (1.0 / ((double) pow(x, 4.0)))))) - ((double) (0.037037037037037035 * ((double) (1.0 / ((double) pow(x, 3.0)))))))) + ((double) (((double) (0.037037037037037035 / x)) / x))))));
} else {
double VAR_1;
if ((x <= 0.004281773135533286)) {
VAR_1 = ((double) (((double) (((double) (((double) cbrt(((double) (x + 1.0)))) * ((double) cbrt(((double) (x + 1.0)))))) - ((double) (((double) cbrt(x)) * ((double) (((double) (((double) cbrt(((double) cbrt(x)))) * ((double) cbrt(((double) cbrt(x)))))) * ((double) cbrt(((double) cbrt(x)))))))))) / ((double) (((double) cbrt(((double) (x + 1.0)))) + ((double) cbrt(x))))));
} else {
VAR_1 = ((double) (((double) (0.0 + 1.0)) / ((double) (((double) (((double) cbrt(((double) (x + 1.0)))) * ((double) (((double) cbrt(((double) (x + 1.0)))) + ((double) cbrt(x)))))) + ((double) pow(x, 0.6666666666666666))))));
}
VAR = VAR_1;
}
return VAR;
}



Bits error versus x
Results
if x < -4138.162393651891Initial program 60.1
rmApplied add-cbrt-cube60.1
Simplified60.1
Taylor expanded around inf 31.4
Simplified30.6
if -4138.162393651891 < x < 0.004281773135533286Initial program 0.1
rmApplied flip--0.1
rmApplied add-cube-cbrt0.1
if 0.004281773135533286 < x Initial program 59.0
rmApplied flip3--58.9
Simplified1.0
Simplified4.4
Final simplification8.9
herbie shell --seed 2020122
(FPCore (x)
:name "2cbrt (problem 3.3.4)"
:precision binary64
(- (cbrt (+ x 1)) (cbrt x)))