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

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

\end{array}
double f(double x) {
        double r134555 = x;
        double r134556 = 1.0;
        double r134557 = r134555 + r134556;
        double r134558 = r134555 / r134557;
        double r134559 = r134555 - r134556;
        double r134560 = r134557 / r134559;
        double r134561 = r134558 - r134560;
        return r134561;
}

double f(double x) {
        double r134562 = x;
        double r134563 = -12923.888472784707;
        bool r134564 = r134562 <= r134563;
        double r134565 = 9184.42281507242;
        bool r134566 = r134562 <= r134565;
        double r134567 = !r134566;
        bool r134568 = r134564 || r134567;
        double r134569 = 1.0;
        double r134570 = -r134569;
        double r134571 = 2.0;
        double r134572 = pow(r134562, r134571);
        double r134573 = r134570 / r134572;
        double r134574 = 3.0;
        double r134575 = r134574 / r134562;
        double r134576 = r134573 - r134575;
        double r134577 = 3.0;
        double r134578 = pow(r134562, r134577);
        double r134579 = r134574 / r134578;
        double r134580 = r134576 - r134579;
        double r134581 = r134562 * r134562;
        double r134582 = r134569 * r134569;
        double r134583 = r134562 * r134569;
        double r134584 = r134582 - r134583;
        double r134585 = r134581 + r134584;
        double r134586 = r134562 - r134569;
        double r134587 = r134585 * r134586;
        double r134588 = r134581 * r134587;
        double r134589 = r134562 + r134569;
        double r134590 = r134589 * r134589;
        double r134591 = pow(r134569, r134577);
        double r134592 = r134578 + r134591;
        double r134593 = r134589 / r134586;
        double r134594 = r134592 * r134593;
        double r134595 = r134590 * r134594;
        double r134596 = r134588 - r134595;
        double r134597 = r134569 - r134562;
        double r134598 = r134569 * r134597;
        double r134599 = r134598 + r134572;
        double r134600 = r134586 * r134599;
        double r134601 = r134600 * r134590;
        double r134602 = r134596 / r134601;
        double r134603 = r134562 / r134589;
        double r134604 = r134603 + r134593;
        double r134605 = r134602 / r134604;
        double r134606 = r134568 ? r134580 : r134605;
        return r134606;
}

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 < -12923.888472784707 or 9184.42281507242 < 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 -12923.888472784707 < x < 9184.42281507242

    1. Initial program 0.1

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

      \[\leadsto \color{blue}{\frac{\frac{x}{x + 1} \cdot \frac{x}{x + 1} - \frac{x + 1}{x - 1} \cdot \frac{x + 1}{x - 1}}{\frac{x}{x + 1} + \frac{x + 1}{x - 1}}}\]
    4. Using strategy rm
    5. Applied *-un-lft-identity0.1

      \[\leadsto \frac{\frac{x}{x + 1} \cdot \frac{x}{x + 1} - \frac{x + 1}{x - 1} \cdot \frac{x + 1}{\color{blue}{1 \cdot \left(x - 1\right)}}}{\frac{x}{x + 1} + \frac{x + 1}{x - 1}}\]
    6. Applied add-sqr-sqrt0.5

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

      \[\leadsto \frac{\frac{x}{x + 1} \cdot \frac{x}{x + 1} - \frac{x + 1}{x - 1} \cdot \color{blue}{\left(\frac{\sqrt{x + 1}}{1} \cdot \frac{\sqrt{x + 1}}{x - 1}\right)}}{\frac{x}{x + 1} + \frac{x + 1}{x - 1}}\]
    8. Applied *-un-lft-identity0.5

      \[\leadsto \frac{\frac{x}{x + 1} \cdot \frac{x}{x + 1} - \frac{x + 1}{\color{blue}{1 \cdot \left(x - 1\right)}} \cdot \left(\frac{\sqrt{x + 1}}{1} \cdot \frac{\sqrt{x + 1}}{x - 1}\right)}{\frac{x}{x + 1} + \frac{x + 1}{x - 1}}\]
    9. Applied add-sqr-sqrt0.6

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

      \[\leadsto \frac{\frac{x}{x + 1} \cdot \frac{x}{x + 1} - \color{blue}{\left(\frac{\sqrt{x + 1}}{1} \cdot \frac{\sqrt{x + 1}}{x - 1}\right)} \cdot \left(\frac{\sqrt{x + 1}}{1} \cdot \frac{\sqrt{x + 1}}{x - 1}\right)}{\frac{x}{x + 1} + \frac{x + 1}{x - 1}}\]
    11. Applied swap-sqr0.6

      \[\leadsto \frac{\frac{x}{x + 1} \cdot \frac{x}{x + 1} - \color{blue}{\left(\frac{\sqrt{x + 1}}{1} \cdot \frac{\sqrt{x + 1}}{1}\right) \cdot \left(\frac{\sqrt{x + 1}}{x - 1} \cdot \frac{\sqrt{x + 1}}{x - 1}\right)}}{\frac{x}{x + 1} + \frac{x + 1}{x - 1}}\]
    12. Simplified0.5

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

      \[\leadsto \frac{\frac{x}{x + 1} \cdot \frac{x}{x + 1} - \left(x + 1\right) \cdot \color{blue}{\frac{\frac{x + 1}{x - 1}}{x - 1}}}{\frac{x}{x + 1} + \frac{x + 1}{x - 1}}\]
    14. Using strategy rm
    15. Applied flip3-+0.1

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

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

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

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

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

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

Reproduce

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