Average Error: 29.1 → 0.1
Time: 8.3s
Precision: 64
\[\frac{x}{x + 1} - \frac{x + 1}{x - 1}\]
\[\begin{array}{l} \mathbf{if}\;x \le -13216.2772295090999 \lor \neg \left(x \le 11343.191540615622\right):\\ \;\;\;\;\left(\frac{-1}{{x}^{2}} - \frac{3}{x}\right) - \frac{3}{{x}^{3}}\\ \mathbf{else}:\\ \;\;\;\;\frac{{\left(\frac{x}{x + 1}\right)}^{3} - {\left(\frac{\frac{1}{x - 1}}{\frac{1}{x + 1}}\right)}^{3}}{\frac{\frac{1}{x - 1}}{\frac{1}{x + 1}} \cdot \left(\frac{\frac{1}{x - 1}}{\frac{1}{x + 1}} + \frac{x}{x + 1}\right) + \left(\sqrt[3]{\frac{x}{x + 1} \cdot \frac{x}{x + 1}} \cdot \sqrt[3]{\frac{x}{x + 1} \cdot \frac{x}{x + 1}}\right) \cdot \sqrt[3]{\frac{x}{x + 1} \cdot \frac{x}{x + 1}}}\\ \end{array}\]
\frac{x}{x + 1} - \frac{x + 1}{x - 1}
\begin{array}{l}
\mathbf{if}\;x \le -13216.2772295090999 \lor \neg \left(x \le 11343.191540615622\right):\\
\;\;\;\;\left(\frac{-1}{{x}^{2}} - \frac{3}{x}\right) - \frac{3}{{x}^{3}}\\

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

\end{array}
double f(double x) {
        double r131469 = x;
        double r131470 = 1.0;
        double r131471 = r131469 + r131470;
        double r131472 = r131469 / r131471;
        double r131473 = r131469 - r131470;
        double r131474 = r131471 / r131473;
        double r131475 = r131472 - r131474;
        return r131475;
}

double f(double x) {
        double r131476 = x;
        double r131477 = -13216.2772295091;
        bool r131478 = r131476 <= r131477;
        double r131479 = 11343.191540615622;
        bool r131480 = r131476 <= r131479;
        double r131481 = !r131480;
        bool r131482 = r131478 || r131481;
        double r131483 = 1.0;
        double r131484 = -r131483;
        double r131485 = 2.0;
        double r131486 = pow(r131476, r131485);
        double r131487 = r131484 / r131486;
        double r131488 = 3.0;
        double r131489 = r131488 / r131476;
        double r131490 = r131487 - r131489;
        double r131491 = 3.0;
        double r131492 = pow(r131476, r131491);
        double r131493 = r131488 / r131492;
        double r131494 = r131490 - r131493;
        double r131495 = r131476 + r131483;
        double r131496 = r131476 / r131495;
        double r131497 = pow(r131496, r131491);
        double r131498 = 1.0;
        double r131499 = r131476 - r131483;
        double r131500 = r131498 / r131499;
        double r131501 = r131498 / r131495;
        double r131502 = r131500 / r131501;
        double r131503 = pow(r131502, r131491);
        double r131504 = r131497 - r131503;
        double r131505 = r131502 + r131496;
        double r131506 = r131502 * r131505;
        double r131507 = r131496 * r131496;
        double r131508 = cbrt(r131507);
        double r131509 = r131508 * r131508;
        double r131510 = r131509 * r131508;
        double r131511 = r131506 + r131510;
        double r131512 = r131504 / r131511;
        double r131513 = r131482 ? r131494 : r131512;
        return r131513;
}

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 < -13216.2772295091 or 11343.191540615622 < x

    1. Initial program 59.2

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

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

      \[\leadsto \color{blue}{\left(\frac{-1}{{x}^{2}} - \frac{3}{x}\right) - \frac{3}{{x}^{3}}}\]

    if -13216.2772295091 < x < 11343.191540615622

    1. Initial program 0.1

      \[\frac{x}{x + 1} - \frac{x + 1}{x - 1}\]
    2. Using strategy rm
    3. Applied clear-num0.1

      \[\leadsto \frac{x}{x + 1} - \color{blue}{\frac{1}{\frac{x - 1}{x + 1}}}\]
    4. Using strategy rm
    5. Applied div-inv0.1

      \[\leadsto \frac{x}{x + 1} - \frac{1}{\color{blue}{\left(x - 1\right) \cdot \frac{1}{x + 1}}}\]
    6. Applied associate-/r*0.1

      \[\leadsto \frac{x}{x + 1} - \color{blue}{\frac{\frac{1}{x - 1}}{\frac{1}{x + 1}}}\]
    7. Using strategy rm
    8. Applied flip3--0.1

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

      \[\leadsto \frac{{\left(\frac{x}{x + 1}\right)}^{3} - {\left(\frac{\frac{1}{x - 1}}{\frac{1}{x + 1}}\right)}^{3}}{\color{blue}{\frac{\frac{1}{x - 1}}{\frac{1}{x + 1}} \cdot \left(\frac{\frac{1}{x - 1}}{\frac{1}{x + 1}} + \frac{x}{x + 1}\right) + \frac{x}{x + 1} \cdot \frac{x}{x + 1}}}\]
    10. Using strategy rm
    11. Applied add-cube-cbrt0.1

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

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

Reproduce

herbie shell --seed 2020083 
(FPCore (x)
  :name "Asymptote C"
  :precision binary64
  (- (/ x (+ x 1)) (/ (+ x 1) (- x 1))))