Average Error: 13.9 → 0.2
Time: 5.9s
Precision: binary64
\[\frac{1}{x + 1} - \frac{1}{x - 1}\]
\[\begin{array}{l} \mathbf{if}\;x \le -285.551403874879895:\\ \;\;\;\;\left(-\frac{2}{{x}^{6}}\right) - \left(\frac{2}{{x}^{4}} + \frac{\frac{2}{x}}{x}\right)\\ \mathbf{elif}\;x \le 207.284313107309714:\\ \;\;\;\;\frac{1}{x + 1} - \frac{1}{{x}^{3} - {1}^{3}} \cdot \left(x \cdot x + \left(1 \cdot 1 + x \cdot 1\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\left(-\frac{2}{{x}^{6}}\right) - \left(\frac{2}{{x}^{4}} + \frac{2}{x \cdot x}\right)\\ \end{array}\]

Error

Bits error versus x

Derivation

  1. Split input into 3 regimes
  2. if x < -285.551403874879895

    1. Initial program 28.9

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

      \[\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.7

      \[\leadsto \color{blue}{\left(-\frac{2}{{x}^{6}}\right) - \left(\frac{2}{{x}^{4}} + \frac{2}{x \cdot x}\right)}\]
    4. Using strategy rm
    5. Applied associate-/r*0.1

      \[\leadsto \left(-\frac{2}{{x}^{6}}\right) - \left(\frac{2}{{x}^{4}} + \color{blue}{\frac{\frac{2}{x}}{x}}\right)\]

    if -285.551403874879895 < x < 207.284313107309714

    1. Initial program 0.0

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

      \[\leadsto \frac{1}{x + 1} - \frac{1}{\color{blue}{\frac{{x}^{3} - {1}^{3}}{x \cdot x + \left(1 \cdot 1 + x \cdot 1\right)}}}\]
    4. Applied associate-/r/0.0

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

    if 207.284313107309714 < x

    1. Initial program 28.0

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

      \[\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.7

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;x \le -285.551403874879895:\\ \;\;\;\;\left(-\frac{2}{{x}^{6}}\right) - \left(\frac{2}{{x}^{4}} + \frac{\frac{2}{x}}{x}\right)\\ \mathbf{elif}\;x \le 207.284313107309714:\\ \;\;\;\;\frac{1}{x + 1} - \frac{1}{{x}^{3} - {1}^{3}} \cdot \left(x \cdot x + \left(1 \cdot 1 + x \cdot 1\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\left(-\frac{2}{{x}^{6}}\right) - \left(\frac{2}{{x}^{4}} + \frac{2}{x \cdot x}\right)\\ \end{array}\]

Reproduce

herbie shell --seed 2020182 
(FPCore (x)
  :name "Asymptote A"
  :precision binary64
  (- (/ 1.0 (+ x 1.0)) (/ 1.0 (- x 1.0))))