\sqrt[3]{x + 1} - \sqrt[3]{x}\frac{1}{\mathsf{fma}\left(\left(\sqrt[3]{x + 1}\right), \left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}} \cdot \left(\sqrt[3]{\sqrt[3]{\sqrt[3]{x + 1}}} \cdot \sqrt[3]{\sqrt[3]{\sqrt[3]{x + 1}} \cdot \sqrt[3]{\sqrt[3]{x + 1}}}\right)\right), \left(\left(\sqrt[3]{x + 1} + \sqrt[3]{x}\right) \cdot \sqrt[3]{x}\right)\right)}double f(double x) {
double r633810 = x;
double r633811 = 1.0;
double r633812 = r633810 + r633811;
double r633813 = cbrt(r633812);
double r633814 = cbrt(r633810);
double r633815 = r633813 - r633814;
return r633815;
}
double f(double x) {
double r633816 = 1.0;
double r633817 = x;
double r633818 = r633817 + r633816;
double r633819 = cbrt(r633818);
double r633820 = r633819 * r633819;
double r633821 = cbrt(r633820);
double r633822 = cbrt(r633819);
double r633823 = cbrt(r633822);
double r633824 = r633822 * r633822;
double r633825 = cbrt(r633824);
double r633826 = r633823 * r633825;
double r633827 = r633821 * r633826;
double r633828 = cbrt(r633817);
double r633829 = r633819 + r633828;
double r633830 = r633829 * r633828;
double r633831 = fma(r633819, r633827, r633830);
double r633832 = r633816 / r633831;
return r633832;
}



Bits error versus x
Initial program 30.2
rmApplied flip3--30.1
Simplified0.5
Simplified0.5
rmApplied add-cube-cbrt0.5
Applied cbrt-prod0.6
rmApplied add-cube-cbrt0.6
Applied cbrt-prod0.6
Applied cbrt-prod0.6
rmApplied cbrt-prod0.6
Final simplification0.6
herbie shell --seed 2019133 +o rules:numerics
(FPCore (x)
:name "2cbrt (problem 3.3.4)"
(- (cbrt (+ x 1)) (cbrt x)))