Average Error: 29.5 → 8.8
Time: 17.7s
Precision: 64
\[\sqrt[3]{x + 1} - \sqrt[3]{x}\]
\[\begin{array}{l} \mathbf{if}\;x \le -5360.111716394548238895367830991744995117:\\ \;\;\;\;\mathsf{fma}\left(0.3333333333333333148296162562473909929395, \sqrt[3]{\frac{1}{{x}^{2}}}, 0.06172839506172839163511412152729462832212 \cdot \sqrt[3]{\frac{1}{{x}^{8}}}\right) - 0.1111111111111111049432054187491303309798 \cdot \sqrt[3]{\frac{1}{{x}^{5}}}\\ \mathbf{elif}\;x \le 2.49286436971119829163808651051326137349 \cdot 10^{-5}:\\ \;\;\;\;\mathsf{fma}\left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}}, \sqrt[3]{\sqrt[3]{x + 1}}, -\sqrt[3]{x}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{\mathsf{fma}\left(\sqrt[3]{1 + x} + \sqrt[3]{x}, \sqrt[3]{1 + x}, {x}^{\frac{2}{3}}\right)}\\ \end{array}\]
\sqrt[3]{x + 1} - \sqrt[3]{x}
\begin{array}{l}
\mathbf{if}\;x \le -5360.111716394548238895367830991744995117:\\
\;\;\;\;\mathsf{fma}\left(0.3333333333333333148296162562473909929395, \sqrt[3]{\frac{1}{{x}^{2}}}, 0.06172839506172839163511412152729462832212 \cdot \sqrt[3]{\frac{1}{{x}^{8}}}\right) - 0.1111111111111111049432054187491303309798 \cdot \sqrt[3]{\frac{1}{{x}^{5}}}\\

\mathbf{elif}\;x \le 2.49286436971119829163808651051326137349 \cdot 10^{-5}:\\
\;\;\;\;\mathsf{fma}\left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}}, \sqrt[3]{\sqrt[3]{x + 1}}, -\sqrt[3]{x}\right)\\

\mathbf{else}:\\
\;\;\;\;\frac{1}{\mathsf{fma}\left(\sqrt[3]{1 + x} + \sqrt[3]{x}, \sqrt[3]{1 + x}, {x}^{\frac{2}{3}}\right)}\\

\end{array}
double f(double x) {
        double r48615 = x;
        double r48616 = 1.0;
        double r48617 = r48615 + r48616;
        double r48618 = cbrt(r48617);
        double r48619 = cbrt(r48615);
        double r48620 = r48618 - r48619;
        return r48620;
}

double f(double x) {
        double r48621 = x;
        double r48622 = -5360.111716394548;
        bool r48623 = r48621 <= r48622;
        double r48624 = 0.3333333333333333;
        double r48625 = 1.0;
        double r48626 = 2.0;
        double r48627 = pow(r48621, r48626);
        double r48628 = r48625 / r48627;
        double r48629 = cbrt(r48628);
        double r48630 = 0.06172839506172839;
        double r48631 = 8.0;
        double r48632 = pow(r48621, r48631);
        double r48633 = r48625 / r48632;
        double r48634 = cbrt(r48633);
        double r48635 = r48630 * r48634;
        double r48636 = fma(r48624, r48629, r48635);
        double r48637 = 0.1111111111111111;
        double r48638 = 5.0;
        double r48639 = pow(r48621, r48638);
        double r48640 = r48625 / r48639;
        double r48641 = cbrt(r48640);
        double r48642 = r48637 * r48641;
        double r48643 = r48636 - r48642;
        double r48644 = 2.4928643697111983e-05;
        bool r48645 = r48621 <= r48644;
        double r48646 = 1.0;
        double r48647 = r48621 + r48646;
        double r48648 = cbrt(r48647);
        double r48649 = r48648 * r48648;
        double r48650 = cbrt(r48649);
        double r48651 = cbrt(r48648);
        double r48652 = cbrt(r48621);
        double r48653 = -r48652;
        double r48654 = fma(r48650, r48651, r48653);
        double r48655 = r48646 + r48621;
        double r48656 = cbrt(r48655);
        double r48657 = r48656 + r48652;
        double r48658 = 0.6666666666666666;
        double r48659 = pow(r48621, r48658);
        double r48660 = fma(r48657, r48656, r48659);
        double r48661 = r48646 / r48660;
        double r48662 = r48645 ? r48654 : r48661;
        double r48663 = r48623 ? r48643 : r48662;
        return r48663;
}

Error

Bits error versus x

Derivation

  1. Split input into 3 regimes
  2. if x < -5360.111716394548

    1. Initial program 60.1

      \[\sqrt[3]{x + 1} - \sqrt[3]{x}\]
    2. Using strategy rm
    3. Applied *-un-lft-identity60.1

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

      \[\leadsto \sqrt[3]{x + 1} - \color{blue}{\sqrt[3]{1} \cdot \sqrt[3]{x}}\]
    5. Applied add-cube-cbrt60.3

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

      \[\leadsto \color{blue}{\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}} \cdot \sqrt[3]{\sqrt[3]{x + 1}}} - \sqrt[3]{1} \cdot \sqrt[3]{x}\]
    7. Applied prod-diff60.7

      \[\leadsto \color{blue}{\mathsf{fma}\left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}}, \sqrt[3]{\sqrt[3]{x + 1}}, -\sqrt[3]{x} \cdot \sqrt[3]{1}\right) + \mathsf{fma}\left(-\sqrt[3]{x}, \sqrt[3]{1}, \sqrt[3]{x} \cdot \sqrt[3]{1}\right)}\]
    8. Simplified60.6

      \[\leadsto \color{blue}{\left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}} \cdot \sqrt[3]{\sqrt[3]{x + 1}} - \sqrt[3]{x}\right)} + \mathsf{fma}\left(-\sqrt[3]{x}, \sqrt[3]{1}, \sqrt[3]{x} \cdot \sqrt[3]{1}\right)\]
    9. Simplified60.6

      \[\leadsto \left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}} \cdot \sqrt[3]{\sqrt[3]{x + 1}} - \sqrt[3]{x}\right) + \color{blue}{0}\]
    10. Taylor expanded around inf 45.9

      \[\leadsto \color{blue}{\left(\left(0.3333333333333333148296162562473909929395 \cdot {\left(\frac{1}{{x}^{2}}\right)}^{\frac{1}{3}} + 0.06172839506172839163511412152729462832212 \cdot {\left(\frac{1}{{x}^{8}}\right)}^{\frac{1}{3}}\right) - 0.1111111111111111049432054187491303309798 \cdot {\left(\frac{1}{{x}^{5}}\right)}^{\frac{1}{3}}\right)} + 0\]
    11. Simplified31.3

      \[\leadsto \color{blue}{\left(\mathsf{fma}\left(0.3333333333333333148296162562473909929395, \sqrt[3]{\frac{1}{{x}^{2}}}, 0.06172839506172839163511412152729462832212 \cdot \sqrt[3]{\frac{1}{{x}^{8}}}\right) - 0.1111111111111111049432054187491303309798 \cdot \sqrt[3]{\frac{1}{{x}^{5}}}\right)} + 0\]

    if -5360.111716394548 < x < 2.4928643697111983e-05

    1. Initial program 0.1

      \[\sqrt[3]{x + 1} - \sqrt[3]{x}\]
    2. Using strategy rm
    3. Applied *-un-lft-identity0.1

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

      \[\leadsto \sqrt[3]{x + 1} - \color{blue}{\sqrt[3]{1} \cdot \sqrt[3]{x}}\]
    5. 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]{1} \cdot \sqrt[3]{x}\]
    6. 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]{1} \cdot \sqrt[3]{x}\]
    7. Applied prod-diff0.1

      \[\leadsto \color{blue}{\mathsf{fma}\left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}}, \sqrt[3]{\sqrt[3]{x + 1}}, -\sqrt[3]{x} \cdot \sqrt[3]{1}\right) + \mathsf{fma}\left(-\sqrt[3]{x}, \sqrt[3]{1}, \sqrt[3]{x} \cdot \sqrt[3]{1}\right)}\]
    8. Simplified0.1

      \[\leadsto \color{blue}{\left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}} \cdot \sqrt[3]{\sqrt[3]{x + 1}} - \sqrt[3]{x}\right)} + \mathsf{fma}\left(-\sqrt[3]{x}, \sqrt[3]{1}, \sqrt[3]{x} \cdot \sqrt[3]{1}\right)\]
    9. Simplified0.1

      \[\leadsto \left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}} \cdot \sqrt[3]{\sqrt[3]{x + 1}} - \sqrt[3]{x}\right) + \color{blue}{0}\]
    10. Using strategy rm
    11. Applied fma-neg0.1

      \[\leadsto \color{blue}{\mathsf{fma}\left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}}, \sqrt[3]{\sqrt[3]{x + 1}}, -\sqrt[3]{x}\right)} + 0\]

    if 2.4928643697111983e-05 < x

    1. Initial program 59.1

      \[\sqrt[3]{x + 1} - \sqrt[3]{x}\]
    2. Using strategy rm
    3. Applied flip3--58.9

      \[\leadsto \color{blue}{\frac{{\left(\sqrt[3]{x + 1}\right)}^{3} - {\left(\sqrt[3]{x}\right)}^{3}}{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1} + \left(\sqrt[3]{x} \cdot \sqrt[3]{x} + \sqrt[3]{x + 1} \cdot \sqrt[3]{x}\right)}}\]
    4. Simplified1.0

      \[\leadsto \frac{\color{blue}{0 + 1}}{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1} + \left(\sqrt[3]{x} \cdot \sqrt[3]{x} + \sqrt[3]{x + 1} \cdot \sqrt[3]{x}\right)}\]
    5. Simplified4.4

      \[\leadsto \frac{0 + 1}{\color{blue}{\mathsf{fma}\left(\sqrt[3]{1 + x} + \sqrt[3]{x}, \sqrt[3]{1 + x}, {x}^{\frac{2}{3}}\right)}}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification8.8

    \[\leadsto \begin{array}{l} \mathbf{if}\;x \le -5360.111716394548238895367830991744995117:\\ \;\;\;\;\mathsf{fma}\left(0.3333333333333333148296162562473909929395, \sqrt[3]{\frac{1}{{x}^{2}}}, 0.06172839506172839163511412152729462832212 \cdot \sqrt[3]{\frac{1}{{x}^{8}}}\right) - 0.1111111111111111049432054187491303309798 \cdot \sqrt[3]{\frac{1}{{x}^{5}}}\\ \mathbf{elif}\;x \le 2.49286436971119829163808651051326137349 \cdot 10^{-5}:\\ \;\;\;\;\mathsf{fma}\left(\sqrt[3]{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}}, \sqrt[3]{\sqrt[3]{x + 1}}, -\sqrt[3]{x}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{\mathsf{fma}\left(\sqrt[3]{1 + x} + \sqrt[3]{x}, \sqrt[3]{1 + x}, {x}^{\frac{2}{3}}\right)}\\ \end{array}\]

Reproduce

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