Average Error: 29.9 → 0.4
Time: 14.2s
Precision: 64
\[\sqrt[3]{x + 1} - \sqrt[3]{x}\]
\[\begin{array}{l} \mathbf{if}\;x \le -70055.06240145699121057987213134765625 \lor \neg \left(x \le 65393.48371123323886422440409660339355469\right):\\ \;\;\;\;\left(\frac{0.3333333333333333148296162562473909929395}{x} \cdot \sqrt[3]{x} + \left(\sqrt[3]{x} - \sqrt[3]{-1} \cdot \sqrt[3]{-x}\right)\right) - \frac{\sqrt[3]{x}}{x \cdot x} \cdot 0.1111111111111111049432054187491303309798\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt[3]{{1}^{3} + {x}^{3}}}{\sqrt[3]{x \cdot \left(x - 1\right) + 1 \cdot 1}} - \sqrt[3]{-1} \cdot \sqrt[3]{-x}\\ \end{array}\]
\sqrt[3]{x + 1} - \sqrt[3]{x}
\begin{array}{l}
\mathbf{if}\;x \le -70055.06240145699121057987213134765625 \lor \neg \left(x \le 65393.48371123323886422440409660339355469\right):\\
\;\;\;\;\left(\frac{0.3333333333333333148296162562473909929395}{x} \cdot \sqrt[3]{x} + \left(\sqrt[3]{x} - \sqrt[3]{-1} \cdot \sqrt[3]{-x}\right)\right) - \frac{\sqrt[3]{x}}{x \cdot x} \cdot 0.1111111111111111049432054187491303309798\\

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

\end{array}
double f(double x) {
        double r75849 = x;
        double r75850 = 1.0;
        double r75851 = r75849 + r75850;
        double r75852 = cbrt(r75851);
        double r75853 = cbrt(r75849);
        double r75854 = r75852 - r75853;
        return r75854;
}

double f(double x) {
        double r75855 = x;
        double r75856 = -70055.06240145699;
        bool r75857 = r75855 <= r75856;
        double r75858 = 65393.48371123324;
        bool r75859 = r75855 <= r75858;
        double r75860 = !r75859;
        bool r75861 = r75857 || r75860;
        double r75862 = 0.3333333333333333;
        double r75863 = r75862 / r75855;
        double r75864 = cbrt(r75855);
        double r75865 = r75863 * r75864;
        double r75866 = -1.0;
        double r75867 = cbrt(r75866);
        double r75868 = -r75855;
        double r75869 = cbrt(r75868);
        double r75870 = r75867 * r75869;
        double r75871 = r75864 - r75870;
        double r75872 = r75865 + r75871;
        double r75873 = r75855 * r75855;
        double r75874 = r75864 / r75873;
        double r75875 = 0.1111111111111111;
        double r75876 = r75874 * r75875;
        double r75877 = r75872 - r75876;
        double r75878 = 1.0;
        double r75879 = 3.0;
        double r75880 = pow(r75878, r75879);
        double r75881 = pow(r75855, r75879);
        double r75882 = r75880 + r75881;
        double r75883 = cbrt(r75882);
        double r75884 = r75855 - r75878;
        double r75885 = r75855 * r75884;
        double r75886 = r75878 * r75878;
        double r75887 = r75885 + r75886;
        double r75888 = cbrt(r75887);
        double r75889 = r75883 / r75888;
        double r75890 = r75889 - r75870;
        double r75891 = r75861 ? r75877 : r75890;
        return r75891;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if x < -70055.06240145699 or 65393.48371123324 < x

    1. Initial program 60.3

      \[\sqrt[3]{x + 1} - \sqrt[3]{x}\]
    2. Using strategy rm
    3. Applied add-cbrt-cube60.5

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

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

      \[\leadsto \color{blue}{\left(0.3333333333333333148296162562473909929395 \cdot \frac{e^{\frac{1}{3} \cdot \left(\log -1 - \log \left(\frac{-1}{x}\right)\right)}}{x} + e^{\frac{1}{3} \cdot \left(\log -1 - \log \left(\frac{-1}{x}\right)\right)}\right) - \left(0.1111111111111111049432054187491303309798 \cdot \frac{e^{\frac{1}{3} \cdot \left(\log -1 - \log \left(\frac{-1}{x}\right)\right)}}{{x}^{2}} + {\left(-1 \cdot x\right)}^{\frac{1}{3}} \cdot \sqrt[3]{-1}\right)}\]
    6. Simplified0.7

      \[\leadsto \color{blue}{\left(\frac{0.3333333333333333148296162562473909929395}{x} \cdot \sqrt[3]{x} + \left(\sqrt[3]{x} - \sqrt[3]{-1} \cdot \sqrt[3]{-x}\right)\right) - \frac{\sqrt[3]{x}}{x \cdot x} \cdot 0.1111111111111111049432054187491303309798}\]

    if -70055.06240145699 < x < 65393.48371123324

    1. Initial program 0.2

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

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

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

      \[\leadsto \sqrt[3]{1 + x} - \color{blue}{{\left(-1 \cdot x\right)}^{\frac{1}{3}} \cdot \sqrt[3]{-1}}\]
    6. Simplified0.2

      \[\leadsto \sqrt[3]{1 + x} - \color{blue}{\sqrt[3]{-1} \cdot \sqrt[3]{-x}}\]
    7. Using strategy rm
    8. Applied flip3-+0.2

      \[\leadsto \sqrt[3]{\color{blue}{\frac{{1}^{3} + {x}^{3}}{1 \cdot 1 + \left(x \cdot x - 1 \cdot x\right)}}} - \sqrt[3]{-1} \cdot \sqrt[3]{-x}\]
    9. Applied cbrt-div0.2

      \[\leadsto \color{blue}{\frac{\sqrt[3]{{1}^{3} + {x}^{3}}}{\sqrt[3]{1 \cdot 1 + \left(x \cdot x - 1 \cdot x\right)}}} - \sqrt[3]{-1} \cdot \sqrt[3]{-x}\]
    10. Simplified0.2

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;x \le -70055.06240145699121057987213134765625 \lor \neg \left(x \le 65393.48371123323886422440409660339355469\right):\\ \;\;\;\;\left(\frac{0.3333333333333333148296162562473909929395}{x} \cdot \sqrt[3]{x} + \left(\sqrt[3]{x} - \sqrt[3]{-1} \cdot \sqrt[3]{-x}\right)\right) - \frac{\sqrt[3]{x}}{x \cdot x} \cdot 0.1111111111111111049432054187491303309798\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt[3]{{1}^{3} + {x}^{3}}}{\sqrt[3]{x \cdot \left(x - 1\right) + 1 \cdot 1}} - \sqrt[3]{-1} \cdot \sqrt[3]{-x}\\ \end{array}\]

Reproduce

herbie shell --seed 2019212 
(FPCore (x)
  :name "2cbrt (problem 3.3.4)"
  :precision binary64
  (- (cbrt (+ x 1)) (cbrt x)))