Average Error: 29.0 → 0.1
Time: 18.5s
Precision: 64
\[\frac{x}{x + 1} - \frac{x + 1}{x - 1}\]
\[\begin{array}{l} \mathbf{if}\;x \le -11446.42608074014606245327740907669067383 \lor \neg \left(x \le 11003.15826591666154854465276002883911133\right):\\ \;\;\;\;-\left(\frac{3}{x} + \left(\frac{3}{{x}^{3}} + \frac{1}{x \cdot x}\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{\frac{x}{x + 1} + \frac{1 + x}{x - 1}} \cdot \frac{\left(x \cdot \frac{x}{x + 1}\right) \cdot \left(x - 1\right) - \left(x + 1\right) \cdot \left(\left(1 + x\right) \cdot \frac{1 + x}{x - 1}\right)}{\left(x + 1\right) \cdot \left(x - 1\right)}\\ \end{array}\]
\frac{x}{x + 1} - \frac{x + 1}{x - 1}
\begin{array}{l}
\mathbf{if}\;x \le -11446.42608074014606245327740907669067383 \lor \neg \left(x \le 11003.15826591666154854465276002883911133\right):\\
\;\;\;\;-\left(\frac{3}{x} + \left(\frac{3}{{x}^{3}} + \frac{1}{x \cdot x}\right)\right)\\

\mathbf{else}:\\
\;\;\;\;\frac{1}{\frac{x}{x + 1} + \frac{1 + x}{x - 1}} \cdot \frac{\left(x \cdot \frac{x}{x + 1}\right) \cdot \left(x - 1\right) - \left(x + 1\right) \cdot \left(\left(1 + x\right) \cdot \frac{1 + x}{x - 1}\right)}{\left(x + 1\right) \cdot \left(x - 1\right)}\\

\end{array}
double f(double x) {
        double r114604 = x;
        double r114605 = 1.0;
        double r114606 = r114604 + r114605;
        double r114607 = r114604 / r114606;
        double r114608 = r114604 - r114605;
        double r114609 = r114606 / r114608;
        double r114610 = r114607 - r114609;
        return r114610;
}

double f(double x) {
        double r114611 = x;
        double r114612 = -11446.426080740146;
        bool r114613 = r114611 <= r114612;
        double r114614 = 11003.158265916662;
        bool r114615 = r114611 <= r114614;
        double r114616 = !r114615;
        bool r114617 = r114613 || r114616;
        double r114618 = 3.0;
        double r114619 = r114618 / r114611;
        double r114620 = 3.0;
        double r114621 = pow(r114611, r114620);
        double r114622 = r114618 / r114621;
        double r114623 = 1.0;
        double r114624 = r114611 * r114611;
        double r114625 = r114623 / r114624;
        double r114626 = r114622 + r114625;
        double r114627 = r114619 + r114626;
        double r114628 = -r114627;
        double r114629 = 1.0;
        double r114630 = r114611 + r114623;
        double r114631 = r114611 / r114630;
        double r114632 = r114623 + r114611;
        double r114633 = r114611 - r114623;
        double r114634 = r114632 / r114633;
        double r114635 = r114631 + r114634;
        double r114636 = r114629 / r114635;
        double r114637 = r114611 * r114631;
        double r114638 = r114637 * r114633;
        double r114639 = r114632 * r114634;
        double r114640 = r114630 * r114639;
        double r114641 = r114638 - r114640;
        double r114642 = r114630 * r114633;
        double r114643 = r114641 / r114642;
        double r114644 = r114636 * r114643;
        double r114645 = r114617 ? r114628 : r114644;
        return r114645;
}

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 < -11446.426080740146 or 11003.158265916662 < x

    1. Initial program 59.2

      \[\frac{x}{x + 1} - \frac{x + 1}{x - 1}\]
    2. Simplified59.2

      \[\leadsto \color{blue}{\frac{x}{x + 1} - \frac{1 + x}{x - 1}}\]
    3. 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)}\]
    4. Simplified0.0

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

    if -11446.426080740146 < x < 11003.158265916662

    1. Initial program 0.1

      \[\frac{x}{x + 1} - \frac{x + 1}{x - 1}\]
    2. Simplified0.1

      \[\leadsto \color{blue}{\frac{x}{x + 1} - \frac{1 + x}{x - 1}}\]
    3. Using strategy rm
    4. Applied flip--0.1

      \[\leadsto \color{blue}{\frac{\frac{x}{x + 1} \cdot \frac{x}{x + 1} - \frac{1 + x}{x - 1} \cdot \frac{1 + x}{x - 1}}{\frac{x}{x + 1} + \frac{1 + x}{x - 1}}}\]
    5. Using strategy rm
    6. Applied associate-*l/0.1

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

      \[\leadsto \frac{\color{blue}{\frac{x \cdot \frac{x}{x + 1}}{x + 1}} - \frac{\left(1 + x\right) \cdot \frac{1 + x}{x - 1}}{x - 1}}{\frac{x}{x + 1} + \frac{1 + x}{x - 1}}\]
    8. Applied frac-sub0.1

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

      \[\leadsto \color{blue}{\frac{\left(x \cdot \frac{x}{x + 1}\right) \cdot \left(x - 1\right) - \left(x + 1\right) \cdot \left(\left(1 + x\right) \cdot \frac{1 + x}{x - 1}\right)}{\left(\frac{x}{x + 1} + \frac{1 + x}{x - 1}\right) \cdot \left(\left(x + 1\right) \cdot \left(x - 1\right)\right)}}\]
    10. Using strategy rm
    11. Applied *-un-lft-identity0.1

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

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

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

Reproduce

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