Average Error: 14.1 → 0.0
Time: 17.1s
Precision: 64
\[\frac{1}{x + 1} - \frac{1}{x - 1}\]
\[\begin{array}{l} \mathbf{if}\;x \le -281.775198852815322 \lor \neg \left(x \le 246.3673785262834\right):\\ \;\;\;\;\frac{-2}{{x}^{6}} - \mathsf{fma}\left(2, {x}^{\left(-2\right)}, 2 \cdot \frac{1}{{x}^{4}}\right)\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(x - 1, \frac{1}{x \cdot x - 1 \cdot 1}, \frac{-{\left(\sqrt[3]{1}\right)}^{3}}{x - 1}\right) + \left(\frac{{\left(\sqrt[3]{1}\right)}^{3}}{1 \cdot \left(x - 1\right)} + \frac{-{\left(\sqrt[3]{1}\right)}^{3}}{x - 1}\right)\\ \end{array}\]
\frac{1}{x + 1} - \frac{1}{x - 1}
\begin{array}{l}
\mathbf{if}\;x \le -281.775198852815322 \lor \neg \left(x \le 246.3673785262834\right):\\
\;\;\;\;\frac{-2}{{x}^{6}} - \mathsf{fma}\left(2, {x}^{\left(-2\right)}, 2 \cdot \frac{1}{{x}^{4}}\right)\\

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

\end{array}
double f(double x) {
        double r191500 = 1.0;
        double r191501 = x;
        double r191502 = r191501 + r191500;
        double r191503 = r191500 / r191502;
        double r191504 = r191501 - r191500;
        double r191505 = r191500 / r191504;
        double r191506 = r191503 - r191505;
        return r191506;
}

double f(double x) {
        double r191507 = x;
        double r191508 = -281.7751988528153;
        bool r191509 = r191507 <= r191508;
        double r191510 = 246.3673785262834;
        bool r191511 = r191507 <= r191510;
        double r191512 = !r191511;
        bool r191513 = r191509 || r191512;
        double r191514 = 2.0;
        double r191515 = -r191514;
        double r191516 = 6.0;
        double r191517 = pow(r191507, r191516);
        double r191518 = r191515 / r191517;
        double r191519 = 2.0;
        double r191520 = -r191519;
        double r191521 = pow(r191507, r191520);
        double r191522 = 1.0;
        double r191523 = 4.0;
        double r191524 = pow(r191507, r191523);
        double r191525 = r191522 / r191524;
        double r191526 = r191514 * r191525;
        double r191527 = fma(r191514, r191521, r191526);
        double r191528 = r191518 - r191527;
        double r191529 = 1.0;
        double r191530 = r191507 - r191529;
        double r191531 = r191507 * r191507;
        double r191532 = r191529 * r191529;
        double r191533 = r191531 - r191532;
        double r191534 = r191529 / r191533;
        double r191535 = cbrt(r191529);
        double r191536 = 3.0;
        double r191537 = pow(r191535, r191536);
        double r191538 = -r191537;
        double r191539 = r191538 / r191530;
        double r191540 = fma(r191530, r191534, r191539);
        double r191541 = r191522 * r191530;
        double r191542 = r191537 / r191541;
        double r191543 = r191542 + r191539;
        double r191544 = r191540 + r191543;
        double r191545 = r191513 ? r191528 : r191544;
        return r191545;
}

Error

Bits error versus x

Derivation

  1. Split input into 2 regimes
  2. if x < -281.7751988528153 or 246.3673785262834 < x

    1. Initial program 28.5

      \[\frac{1}{x + 1} - \frac{1}{x - 1}\]
    2. Taylor expanded around inf 0.8

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

      \[\leadsto \color{blue}{\frac{-2}{{x}^{6}} - \mathsf{fma}\left(2, \frac{1}{{x}^{2}}, 2 \cdot \frac{1}{{x}^{4}}\right)}\]
    4. Using strategy rm
    5. Applied pow-flip0.0

      \[\leadsto \frac{-2}{{x}^{6}} - \mathsf{fma}\left(2, \color{blue}{{x}^{\left(-2\right)}}, 2 \cdot \frac{1}{{x}^{4}}\right)\]

    if -281.7751988528153 < x < 246.3673785262834

    1. Initial program 0.0

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

      \[\leadsto \frac{1}{x + 1} - \frac{1}{\color{blue}{1 \cdot \left(x - 1\right)}}\]
    4. Applied add-cube-cbrt0.0

      \[\leadsto \frac{1}{x + 1} - \frac{\color{blue}{\left(\sqrt[3]{1} \cdot \sqrt[3]{1}\right) \cdot \sqrt[3]{1}}}{1 \cdot \left(x - 1\right)}\]
    5. Applied times-frac0.0

      \[\leadsto \frac{1}{x + 1} - \color{blue}{\frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{1} \cdot \frac{\sqrt[3]{1}}{x - 1}}\]
    6. Applied flip-+0.0

      \[\leadsto \frac{1}{\color{blue}{\frac{x \cdot x - 1 \cdot 1}{x - 1}}} - \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{1} \cdot \frac{\sqrt[3]{1}}{x - 1}\]
    7. Applied associate-/r/0.0

      \[\leadsto \color{blue}{\frac{1}{x \cdot x - 1 \cdot 1} \cdot \left(x - 1\right)} - \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{1} \cdot \frac{\sqrt[3]{1}}{x - 1}\]
    8. Applied prod-diff0.0

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

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;x \le -281.775198852815322 \lor \neg \left(x \le 246.3673785262834\right):\\ \;\;\;\;\frac{-2}{{x}^{6}} - \mathsf{fma}\left(2, {x}^{\left(-2\right)}, 2 \cdot \frac{1}{{x}^{4}}\right)\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(x - 1, \frac{1}{x \cdot x - 1 \cdot 1}, \frac{-{\left(\sqrt[3]{1}\right)}^{3}}{x - 1}\right) + \left(\frac{{\left(\sqrt[3]{1}\right)}^{3}}{1 \cdot \left(x - 1\right)} + \frac{-{\left(\sqrt[3]{1}\right)}^{3}}{x - 1}\right)\\ \end{array}\]

Reproduce

herbie shell --seed 2020039 +o rules:numerics
(FPCore (x)
  :name "Asymptote A"
  :precision binary64
  (- (/ 1 (+ x 1)) (/ 1 (- x 1))))