\[\left(e^{x} - 2\right) + e^{-x}\]
Test:
NMSE problem 3.3.7
Bits:
128 bits
Bits error versus x
Time: 10.3 s
Input Error: 13.9
Output Error: 0.2
Log:
Profile: 🕒
\(\begin{cases} \frac{\left({\left(e^{x}\right)}^2 - {2}^2\right) \cdot e^{x} + \left(e^{x} + 2\right) \cdot 1}{\left(e^{x} + 2\right) \cdot e^{x}} & \text{when } x \le -0.12694146f0 \\ (\left({x}^{6}\right) * \frac{1}{360} + \left((\left({x}^{4}\right) * \frac{1}{12} + \left({x}^2\right))_*\right))_* & \text{otherwise} \end{cases}\)

    if x < -0.12694146f0

    1. Started with
      \[\left(e^{x} - 2\right) + e^{-x}\]
      0.8
    2. Using strategy rm
      0.8
    3. Applied exp-neg to get
      \[\left(e^{x} - 2\right) + \color{red}{e^{-x}} \leadsto \left(e^{x} - 2\right) + \color{blue}{\frac{1}{e^{x}}}\]
      0.6
    4. Applied flip-- to get
      \[\color{red}{\left(e^{x} - 2\right)} + \frac{1}{e^{x}} \leadsto \color{blue}{\frac{{\left(e^{x}\right)}^2 - {2}^2}{e^{x} + 2}} + \frac{1}{e^{x}}\]
      0.6
    5. Applied frac-add to get
      \[\color{red}{\frac{{\left(e^{x}\right)}^2 - {2}^2}{e^{x} + 2} + \frac{1}{e^{x}}} \leadsto \color{blue}{\frac{\left({\left(e^{x}\right)}^2 - {2}^2\right) \cdot e^{x} + \left(e^{x} + 2\right) \cdot 1}{\left(e^{x} + 2\right) \cdot e^{x}}}\]
      0.6

    if -0.12694146f0 < x

    1. Started with
      \[\left(e^{x} - 2\right) + e^{-x}\]
      14.4
    2. Applied taylor to get
      \[\left(e^{x} - 2\right) + e^{-x} \leadsto {x}^2 + \left(\frac{1}{12} \cdot {x}^{4} + \frac{1}{360} \cdot {x}^{6}\right)\]
      0.2
    3. Taylor expanded around 0 to get
      \[\color{red}{{x}^2 + \left(\frac{1}{12} \cdot {x}^{4} + \frac{1}{360} \cdot {x}^{6}\right)} \leadsto \color{blue}{{x}^2 + \left(\frac{1}{12} \cdot {x}^{4} + \frac{1}{360} \cdot {x}^{6}\right)}\]
      0.2
    4. Applied simplify to get
      \[\color{red}{{x}^2 + \left(\frac{1}{12} \cdot {x}^{4} + \frac{1}{360} \cdot {x}^{6}\right)} \leadsto \color{blue}{(\left({x}^{6}\right) * \frac{1}{360} + \left((\left({x}^{4}\right) * \frac{1}{12} + \left({x}^2\right))_*\right))_*}\]
      0.2

  1. Removed slow pow expressions

Original test:


(lambda ((x default))
  #:name "NMSE problem 3.3.7"
  (+ (- (exp x) 2) (exp (- x)))
  #:target
  (* 4 (sqr (sinh (/ x 2)))))