Average Error: 29.6 → 0.1
Time: 48.8s
Precision: 64
\[\frac{x}{x + 1} - \frac{x + 1}{x - 1}\]
\[\begin{array}{l} \mathbf{if}\;x \le -13977.716507512701 \lor \neg \left(x \le 10504.616557362075\right):\\ \;\;\;\;-\left(\frac{1}{x \cdot x} + \left(\frac{3}{{x}^{3}} + \frac{3}{x}\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\sqrt[3]{\mathsf{fma}\left({x}^{3}, {\left(\frac{1}{x + 1}\right)}^{3}, -{\left(x + 1\right)}^{3} \cdot {\left(\frac{1 + x}{x \cdot x - 1 \cdot 1}\right)}^{3}\right)} \cdot \sqrt[3]{\mathsf{fma}\left({x}^{3}, {\left(\frac{1}{x + 1}\right)}^{3}, -{\left(x + 1\right)}^{3} \cdot {\left(\frac{1 + x}{x \cdot x - 1 \cdot 1}\right)}^{3}\right)}\right) \cdot \sqrt[3]{\mathsf{fma}\left({x}^{3}, {\left(\frac{1}{x + 1}\right)}^{3}, -{\left(x + 1\right)}^{3} \cdot {\left(\frac{1 + x}{x \cdot x - 1 \cdot 1}\right)}^{3}\right)} + \mathsf{fma}\left(-{\left(x + 1\right)}^{3}, {\left(\frac{1 + x}{x \cdot x - 1 \cdot 1}\right)}^{3}, {\left(x + 1\right)}^{3} \cdot {\left(\frac{1 + x}{x \cdot x - 1 \cdot 1}\right)}^{3}\right)}{\mathsf{fma}\left(\frac{x}{x + 1}, \frac{x}{x + 1}, \frac{1 + x}{x - 1} \cdot \left(\frac{1 + x}{x - 1} + \frac{x}{x + 1}\right)\right)}\\ \end{array}\]
\frac{x}{x + 1} - \frac{x + 1}{x - 1}
\begin{array}{l}
\mathbf{if}\;x \le -13977.716507512701 \lor \neg \left(x \le 10504.616557362075\right):\\
\;\;\;\;-\left(\frac{1}{x \cdot x} + \left(\frac{3}{{x}^{3}} + \frac{3}{x}\right)\right)\\

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

\end{array}
double f(double x) {
        double r132068 = x;
        double r132069 = 1.0;
        double r132070 = r132068 + r132069;
        double r132071 = r132068 / r132070;
        double r132072 = r132068 - r132069;
        double r132073 = r132070 / r132072;
        double r132074 = r132071 - r132073;
        return r132074;
}

double f(double x) {
        double r132075 = x;
        double r132076 = -13977.716507512701;
        bool r132077 = r132075 <= r132076;
        double r132078 = 10504.616557362075;
        bool r132079 = r132075 <= r132078;
        double r132080 = !r132079;
        bool r132081 = r132077 || r132080;
        double r132082 = 1.0;
        double r132083 = r132075 * r132075;
        double r132084 = r132082 / r132083;
        double r132085 = 3.0;
        double r132086 = 3.0;
        double r132087 = pow(r132075, r132086);
        double r132088 = r132085 / r132087;
        double r132089 = r132085 / r132075;
        double r132090 = r132088 + r132089;
        double r132091 = r132084 + r132090;
        double r132092 = -r132091;
        double r132093 = 1.0;
        double r132094 = r132075 + r132082;
        double r132095 = r132093 / r132094;
        double r132096 = pow(r132095, r132086);
        double r132097 = pow(r132094, r132086);
        double r132098 = r132082 + r132075;
        double r132099 = r132082 * r132082;
        double r132100 = r132083 - r132099;
        double r132101 = r132098 / r132100;
        double r132102 = pow(r132101, r132086);
        double r132103 = r132097 * r132102;
        double r132104 = -r132103;
        double r132105 = fma(r132087, r132096, r132104);
        double r132106 = cbrt(r132105);
        double r132107 = r132106 * r132106;
        double r132108 = r132107 * r132106;
        double r132109 = -r132097;
        double r132110 = fma(r132109, r132102, r132103);
        double r132111 = r132108 + r132110;
        double r132112 = r132075 / r132094;
        double r132113 = r132075 - r132082;
        double r132114 = r132098 / r132113;
        double r132115 = r132114 + r132112;
        double r132116 = r132114 * r132115;
        double r132117 = fma(r132112, r132112, r132116);
        double r132118 = r132111 / r132117;
        double r132119 = r132081 ? r132092 : r132118;
        return r132119;
}

Error

Bits error versus x

Derivation

  1. Split input into 2 regimes
  2. if x < -13977.716507512701 or 10504.616557362075 < x

    1. Initial program 59.0

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

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

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

      \[\leadsto \frac{{\left(\frac{x}{x + 1}\right)}^{3} - {\left(\frac{1 + x}{x - 1}\right)}^{3}}{\color{blue}{\mathsf{fma}\left(\frac{x}{x + 1}, \frac{x}{x + 1}, \frac{1 + x}{x - 1} \cdot \left(\frac{1 + x}{x - 1} + \frac{x}{x + 1}\right)\right)}}\]
    6. Taylor expanded around inf 0.4

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

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

    if -13977.716507512701 < x < 10504.616557362075

    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 flip3--0.1

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

      \[\leadsto \frac{{\left(\frac{x}{x + 1}\right)}^{3} - {\left(\frac{1 + x}{x - 1}\right)}^{3}}{\color{blue}{\mathsf{fma}\left(\frac{x}{x + 1}, \frac{x}{x + 1}, \frac{1 + x}{x - 1} \cdot \left(\frac{1 + x}{x - 1} + \frac{x}{x + 1}\right)\right)}}\]
    6. Using strategy rm
    7. Applied flip--0.1

      \[\leadsto \frac{{\left(\frac{x}{x + 1}\right)}^{3} - {\left(\frac{1 + x}{\color{blue}{\frac{x \cdot x - 1 \cdot 1}{x + 1}}}\right)}^{3}}{\mathsf{fma}\left(\frac{x}{x + 1}, \frac{x}{x + 1}, \frac{1 + x}{x - 1} \cdot \left(\frac{1 + x}{x - 1} + \frac{x}{x + 1}\right)\right)}\]
    8. Applied associate-/r/0.1

      \[\leadsto \frac{{\left(\frac{x}{x + 1}\right)}^{3} - {\color{blue}{\left(\frac{1 + x}{x \cdot x - 1 \cdot 1} \cdot \left(x + 1\right)\right)}}^{3}}{\mathsf{fma}\left(\frac{x}{x + 1}, \frac{x}{x + 1}, \frac{1 + x}{x - 1} \cdot \left(\frac{1 + x}{x - 1} + \frac{x}{x + 1}\right)\right)}\]
    9. Applied unpow-prod-down0.1

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

      \[\leadsto \frac{{\color{blue}{\left(x \cdot \frac{1}{x + 1}\right)}}^{3} - {\left(\frac{1 + x}{x \cdot x - 1 \cdot 1}\right)}^{3} \cdot {\left(x + 1\right)}^{3}}{\mathsf{fma}\left(\frac{x}{x + 1}, \frac{x}{x + 1}, \frac{1 + x}{x - 1} \cdot \left(\frac{1 + x}{x - 1} + \frac{x}{x + 1}\right)\right)}\]
    11. Applied unpow-prod-down0.1

      \[\leadsto \frac{\color{blue}{{x}^{3} \cdot {\left(\frac{1}{x + 1}\right)}^{3}} - {\left(\frac{1 + x}{x \cdot x - 1 \cdot 1}\right)}^{3} \cdot {\left(x + 1\right)}^{3}}{\mathsf{fma}\left(\frac{x}{x + 1}, \frac{x}{x + 1}, \frac{1 + x}{x - 1} \cdot \left(\frac{1 + x}{x - 1} + \frac{x}{x + 1}\right)\right)}\]
    12. Applied prod-diff0.1

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

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

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

Reproduce

herbie shell --seed 2019199 +o rules:numerics
(FPCore (x)
  :name "Asymptote C"
  (- (/ x (+ x 1.0)) (/ (+ x 1.0) (- x 1.0))))