Average Error: 30.0 → 15.8
Time: 37.9s
Precision: 64
\[\sqrt[3]{x + 1} - \sqrt[3]{x}\]
\[\begin{array}{l} \mathbf{if}\;x \le -3828.252515576693:\\ \;\;\;\;(\frac{-1}{9} \cdot \left(\sqrt[3]{\frac{1}{{x}^{5}}}\right) + \left((\frac{1}{3} \cdot \left(\sqrt[3]{\frac{1}{x \cdot x}}\right) + \left(\sqrt[3]{\frac{1}{\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)}} \cdot \frac{5}{81}\right))_*\right))_*\\ \mathbf{elif}\;x \le 3536.5967203904756:\\ \;\;\;\;(\left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}}\right) \cdot \left(\sqrt[3]{\sqrt[3]{\sqrt[3]{x + 1}} \cdot \left(\sqrt[3]{\sqrt[3]{x + 1}} \cdot \sqrt[3]{\sqrt[3]{x + 1}}\right)}\right) + \left(-\sqrt[3]{x}\right))_*\\ \mathbf{else}:\\ \;\;\;\;(\frac{-1}{9} \cdot \left(\sqrt[3]{\frac{1}{{x}^{5}}}\right) + \left((\frac{1}{3} \cdot \left(\sqrt[3]{\frac{1}{x \cdot x}}\right) + \left(\sqrt[3]{\frac{1}{\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)}} \cdot \frac{5}{81}\right))_*\right))_*\\ \end{array}\]
\sqrt[3]{x + 1} - \sqrt[3]{x}
\begin{array}{l}
\mathbf{if}\;x \le -3828.252515576693:\\
\;\;\;\;(\frac{-1}{9} \cdot \left(\sqrt[3]{\frac{1}{{x}^{5}}}\right) + \left((\frac{1}{3} \cdot \left(\sqrt[3]{\frac{1}{x \cdot x}}\right) + \left(\sqrt[3]{\frac{1}{\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)}} \cdot \frac{5}{81}\right))_*\right))_*\\

\mathbf{elif}\;x \le 3536.5967203904756:\\
\;\;\;\;(\left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}}\right) \cdot \left(\sqrt[3]{\sqrt[3]{\sqrt[3]{x + 1}} \cdot \left(\sqrt[3]{\sqrt[3]{x + 1}} \cdot \sqrt[3]{\sqrt[3]{x + 1}}\right)}\right) + \left(-\sqrt[3]{x}\right))_*\\

\mathbf{else}:\\
\;\;\;\;(\frac{-1}{9} \cdot \left(\sqrt[3]{\frac{1}{{x}^{5}}}\right) + \left((\frac{1}{3} \cdot \left(\sqrt[3]{\frac{1}{x \cdot x}}\right) + \left(\sqrt[3]{\frac{1}{\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)}} \cdot \frac{5}{81}\right))_*\right))_*\\

\end{array}
double f(double x) {
        double r4128226 = x;
        double r4128227 = 1.0;
        double r4128228 = r4128226 + r4128227;
        double r4128229 = cbrt(r4128228);
        double r4128230 = cbrt(r4128226);
        double r4128231 = r4128229 - r4128230;
        return r4128231;
}

double f(double x) {
        double r4128232 = x;
        double r4128233 = -3828.252515576693;
        bool r4128234 = r4128232 <= r4128233;
        double r4128235 = -0.1111111111111111;
        double r4128236 = 1.0;
        double r4128237 = 5.0;
        double r4128238 = pow(r4128232, r4128237);
        double r4128239 = r4128236 / r4128238;
        double r4128240 = cbrt(r4128239);
        double r4128241 = 0.3333333333333333;
        double r4128242 = r4128232 * r4128232;
        double r4128243 = r4128236 / r4128242;
        double r4128244 = cbrt(r4128243);
        double r4128245 = r4128242 * r4128242;
        double r4128246 = r4128245 * r4128245;
        double r4128247 = r4128236 / r4128246;
        double r4128248 = cbrt(r4128247);
        double r4128249 = 0.06172839506172839;
        double r4128250 = r4128248 * r4128249;
        double r4128251 = fma(r4128241, r4128244, r4128250);
        double r4128252 = fma(r4128235, r4128240, r4128251);
        double r4128253 = 3536.5967203904756;
        bool r4128254 = r4128232 <= r4128253;
        double r4128255 = r4128232 + r4128236;
        double r4128256 = cbrt(r4128255);
        double r4128257 = r4128256 * r4128256;
        double r4128258 = cbrt(r4128257);
        double r4128259 = cbrt(r4128256);
        double r4128260 = r4128259 * r4128259;
        double r4128261 = r4128259 * r4128260;
        double r4128262 = cbrt(r4128261);
        double r4128263 = cbrt(r4128232);
        double r4128264 = -r4128263;
        double r4128265 = fma(r4128258, r4128262, r4128264);
        double r4128266 = r4128254 ? r4128265 : r4128252;
        double r4128267 = r4128234 ? r4128252 : r4128266;
        return r4128267;
}

Error

Bits error versus x

Derivation

  1. Split input into 2 regimes
  2. if x < -3828.252515576693 or 3536.5967203904756 < x

    1. Initial program 60.1

      \[\sqrt[3]{x + 1} - \sqrt[3]{x}\]
    2. Using strategy rm
    3. Applied add-cube-cbrt60.2

      \[\leadsto \sqrt[3]{x + 1} - \sqrt[3]{\color{blue}{\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right) \cdot \sqrt[3]{x}}}\]
    4. Applied cbrt-prod60.3

      \[\leadsto \sqrt[3]{x + 1} - \color{blue}{\sqrt[3]{\sqrt[3]{x} \cdot \sqrt[3]{x}} \cdot \sqrt[3]{\sqrt[3]{x}}}\]
    5. Taylor expanded around inf 39.3

      \[\leadsto \color{blue}{\left(\frac{1}{3} \cdot {\left(\frac{1}{{x}^{2}}\right)}^{\frac{1}{3}} + \frac{5}{81} \cdot {\left(\frac{1}{{x}^{8}}\right)}^{\frac{1}{3}}\right) - \frac{1}{9} \cdot {\left(\frac{1}{{x}^{5}}\right)}^{\frac{1}{3}}}\]
    6. Simplified31.7

      \[\leadsto \color{blue}{(\frac{-1}{9} \cdot \left(\sqrt[3]{\frac{1}{{x}^{5}}}\right) + \left((\frac{1}{3} \cdot \left(\sqrt[3]{\frac{1}{x \cdot x}}\right) + \left(\sqrt[3]{\frac{1}{\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)}} \cdot \frac{5}{81}\right))_*\right))_*}\]

    if -3828.252515576693 < x < 3536.5967203904756

    1. Initial program 0.1

      \[\sqrt[3]{x + 1} - \sqrt[3]{x}\]
    2. Using strategy rm
    3. Applied add-cube-cbrt0.1

      \[\leadsto \sqrt[3]{\color{blue}{\left(\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}\right) \cdot \sqrt[3]{x + 1}}} - \sqrt[3]{x}\]
    4. Applied cbrt-prod0.1

      \[\leadsto \color{blue}{\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}} \cdot \sqrt[3]{\sqrt[3]{x + 1}}} - \sqrt[3]{x}\]
    5. Applied fma-neg0.1

      \[\leadsto \color{blue}{(\left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}}\right) \cdot \left(\sqrt[3]{\sqrt[3]{x + 1}}\right) + \left(-\sqrt[3]{x}\right))_*}\]
    6. Using strategy rm
    7. Applied add-cube-cbrt0.1

      \[\leadsto (\left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}}\right) \cdot \left(\sqrt[3]{\color{blue}{\left(\sqrt[3]{\sqrt[3]{x + 1}} \cdot \sqrt[3]{\sqrt[3]{x + 1}}\right) \cdot \sqrt[3]{\sqrt[3]{x + 1}}}}\right) + \left(-\sqrt[3]{x}\right))_*\]
  3. Recombined 2 regimes into one program.
  4. Final simplification15.8

    \[\leadsto \begin{array}{l} \mathbf{if}\;x \le -3828.252515576693:\\ \;\;\;\;(\frac{-1}{9} \cdot \left(\sqrt[3]{\frac{1}{{x}^{5}}}\right) + \left((\frac{1}{3} \cdot \left(\sqrt[3]{\frac{1}{x \cdot x}}\right) + \left(\sqrt[3]{\frac{1}{\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)}} \cdot \frac{5}{81}\right))_*\right))_*\\ \mathbf{elif}\;x \le 3536.5967203904756:\\ \;\;\;\;(\left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}}\right) \cdot \left(\sqrt[3]{\sqrt[3]{\sqrt[3]{x + 1}} \cdot \left(\sqrt[3]{\sqrt[3]{x + 1}} \cdot \sqrt[3]{\sqrt[3]{x + 1}}\right)}\right) + \left(-\sqrt[3]{x}\right))_*\\ \mathbf{else}:\\ \;\;\;\;(\frac{-1}{9} \cdot \left(\sqrt[3]{\frac{1}{{x}^{5}}}\right) + \left((\frac{1}{3} \cdot \left(\sqrt[3]{\frac{1}{x \cdot x}}\right) + \left(\sqrt[3]{\frac{1}{\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)}} \cdot \frac{5}{81}\right))_*\right))_*\\ \end{array}\]

Reproduce

herbie shell --seed 2019119 +o rules:numerics
(FPCore (x)
  :name "2cbrt (problem 3.3.4)"
  (- (cbrt (+ x 1)) (cbrt x)))