Average Error: 29.1 → 0.1
Time: 1.1m
Precision: 64
Internal Precision: 1344
\[\frac{x}{x + 1} - \frac{x + 1}{x - 1}\]
\[\begin{array}{l} \mathbf{if}\;\frac{-3}{x} - \frac{1 + \frac{3}{x}}{x \cdot x} \le -0.0001355595906297104:\\ \;\;\;\;\left(\sqrt[3]{\frac{x}{x + 1} - \frac{x + 1}{x - 1}} \cdot \sqrt[3]{\frac{x}{x + 1} - \frac{x + 1}{x - 1}}\right) \cdot \left(\left(\sqrt[3]{\sqrt[3]{\frac{x}{x + 1} - \frac{x + 1}{x - 1}}} \cdot \sqrt[3]{\sqrt[3]{\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}}}}\right) \cdot \sqrt[3]{\sqrt[3]{\frac{x \cdot \left(x - 1\right) - \left(x + 1\right) \cdot \left(x + 1\right)}{\left(x + 1\right) \cdot \left(x - 1\right)}}}\right)\\ \mathbf{if}\;\frac{-3}{x} - \frac{1 + \frac{3}{x}}{x \cdot x} \le 1.6672902326842323 \cdot 10^{-05}:\\ \;\;\;\;\frac{-3}{x} - \frac{1 + \frac{3}{x}}{x \cdot x}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{x}{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}}}{\sqrt[3]{x + 1}} - \frac{x + 1}{x - 1}\\ \end{array}\]

Error

Bits error versus x

Derivation

  1. Split input into 3 regimes
  2. if (- (/ (- 3) x) (/ (+ 1 (/ 3 x)) (* x x))) < -0.0001355595906297104

    1. Initial program 0.1

      \[\frac{x}{x + 1} - \frac{x + 1}{x - 1}\]
    2. Using strategy rm
    3. Applied add-cube-cbrt0.1

      \[\leadsto \color{blue}{\left(\sqrt[3]{\frac{x}{x + 1} - \frac{x + 1}{x - 1}} \cdot \sqrt[3]{\frac{x}{x + 1} - \frac{x + 1}{x - 1}}\right) \cdot \sqrt[3]{\frac{x}{x + 1} - \frac{x + 1}{x - 1}}}\]
    4. Using strategy rm
    5. Applied add-cube-cbrt0.1

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

      \[\leadsto \left(\sqrt[3]{\frac{x}{x + 1} - \frac{x + 1}{x - 1}} \cdot \sqrt[3]{\frac{x}{x + 1} - \frac{x + 1}{x - 1}}\right) \cdot \left(\left(\sqrt[3]{\sqrt[3]{\frac{x}{x + 1} - \frac{x + 1}{x - 1}}} \cdot \sqrt[3]{\sqrt[3]{\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}}}}}\right) \cdot \sqrt[3]{\sqrt[3]{\frac{x}{x + 1} - \frac{x + 1}{x - 1}}}\right)\]
    8. Using strategy rm
    9. Applied frac-sub0.1

      \[\leadsto \left(\sqrt[3]{\frac{x}{x + 1} - \frac{x + 1}{x - 1}} \cdot \sqrt[3]{\frac{x}{x + 1} - \frac{x + 1}{x - 1}}\right) \cdot \left(\left(\sqrt[3]{\sqrt[3]{\frac{x}{x + 1} - \frac{x + 1}{x - 1}}} \cdot \sqrt[3]{\sqrt[3]{\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}}}}\right) \cdot \sqrt[3]{\sqrt[3]{\color{blue}{\frac{x \cdot \left(x - 1\right) - \left(x + 1\right) \cdot \left(x + 1\right)}{\left(x + 1\right) \cdot \left(x - 1\right)}}}}\right)\]

    if -0.0001355595906297104 < (- (/ (- 3) x) (/ (+ 1 (/ 3 x)) (* x x))) < 1.6672902326842323e-05

    1. Initial program 59.4

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

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

      \[\leadsto \color{blue}{\frac{-3}{x} - \frac{1 + \frac{3}{x}}{x \cdot x}}\]

    if 1.6672902326842323e-05 < (- (/ (- 3) x) (/ (+ 1 (/ 3 x)) (* x x)))

    1. Initial program 0.2

      \[\frac{x}{x + 1} - \frac{x + 1}{x - 1}\]
    2. Using strategy rm
    3. Applied add-cube-cbrt0.2

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

      \[\leadsto \color{blue}{\frac{\frac{x}{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}}}{\sqrt[3]{x + 1}}} - \frac{x + 1}{x - 1}\]
  3. Recombined 3 regimes into one program.

Runtime

Time bar (total: 1.1m)Debug logProfile

herbie shell --seed '#(1071501266 3581234924 1086666455 2685055582 1243441566 1802958749)' 
(FPCore (x)
  :name "Asymptote C"
  (- (/ x (+ x 1)) (/ (+ x 1) (- x 1))))