\[\frac{1}{x + 1} - \frac{1}{x}\]
Test:
NMSE problem 3.3.1
Bits:
128 bits
Bits error versus x
Time: 5.2 s
Input Error: 14.3
Output Error: 0.1
Log:
Profile: 🕒
\(\begin{cases} \frac{1}{{x}^3} - \left(\frac{1}{{x}^{4}} + \frac{\frac{1}{x}}{x}\right) & \text{when } x \le -104399209346.08711 \\ \frac{x - \left(1 + x\right)}{x + {x}^2} & \text{when } x \le 337865566.97886527 \\ \frac{1}{{x}^3} - \left(\frac{1}{{x}^{4}} + \frac{\frac{1}{x}}{x}\right) & \text{otherwise} \end{cases}\)

    if x < -104399209346.08711 or 337865566.97886527 < x

    1. Started with
      \[\frac{1}{x + 1} - \frac{1}{x}\]
      29.0
    2. Applied taylor to get
      \[\frac{1}{x + 1} - \frac{1}{x} \leadsto \frac{1}{{x}^{3}} - \left(\frac{1}{{x}^2} + \frac{1}{{x}^{4}}\right)\]
      0.6
    3. Taylor expanded around inf to get
      \[\color{red}{\frac{1}{{x}^{3}} - \left(\frac{1}{{x}^2} + \frac{1}{{x}^{4}}\right)} \leadsto \color{blue}{\frac{1}{{x}^{3}} - \left(\frac{1}{{x}^2} + \frac{1}{{x}^{4}}\right)}\]
      0.6
    4. Applied simplify to get
      \[\frac{1}{{x}^{3}} - \left(\frac{1}{{x}^2} + \frac{1}{{x}^{4}}\right) \leadsto \frac{1}{{x}^3} - \left(\frac{1}{{x}^{4}} + \frac{\frac{1}{x}}{x}\right)\]
      0.1

    5. Applied final simplification

    if -104399209346.08711 < x < 337865566.97886527

    1. Started with
      \[\frac{1}{x + 1} - \frac{1}{x}\]
      0.5
    2. Using strategy rm
      0.5
    3. Applied frac-sub to get
      \[\color{red}{\frac{1}{x + 1} - \frac{1}{x}} \leadsto \color{blue}{\frac{1 \cdot x - \left(x + 1\right) \cdot 1}{\left(x + 1\right) \cdot x}}\]
      0.0
    4. Applied simplify to get
      \[\frac{\color{red}{1 \cdot x - \left(x + 1\right) \cdot 1}}{\left(x + 1\right) \cdot x} \leadsto \frac{\color{blue}{x - \left(1 + x\right)}}{\left(x + 1\right) \cdot x}\]
      0.0
    5. Applied simplify to get
      \[\frac{x - \left(1 + x\right)}{\color{red}{\left(x + 1\right) \cdot x}} \leadsto \frac{x - \left(1 + x\right)}{\color{blue}{x + {x}^2}}\]
      0.0

  1. Removed slow pow expressions

Original test:


(lambda ((x default))
  #:name "NMSE problem 3.3.1"
  (- (/ 1 (+ x 1)) (/ 1 x)))