\[\frac{\varepsilon \cdot \left(e^{\left(a + b\right) \cdot \varepsilon} - 1\right)}{\left(e^{a \cdot \varepsilon} - 1\right) \cdot \left(e^{b \cdot \varepsilon} - 1\right)}\]
Test:
NMSE problem 3.4.2
Bits:
128 bits
Bits error versus a
Bits error versus b
Bits error versus eps
Time: 56.6 s
Input Error: 62.0
Output Error: 0.0
Log:
Profile: 🕒
\(\begin{cases} \frac{1}{b} + \frac{1}{a} & \text{when } \frac{\varepsilon \cdot \left(e^{\left(a + b\right) \cdot \varepsilon} - 1\right)}{\left(e^{a \cdot \varepsilon} - 1\right) \cdot \left(e^{b \cdot \varepsilon} - 1\right)} \le -5.261000094268735 \cdot 10^{-233} \\ \frac{1}{b} + \frac{1}{a} & \text{when } \frac{\varepsilon \cdot \left(e^{\left(a + b\right) \cdot \varepsilon} - 1\right)}{\left(e^{a \cdot \varepsilon} - 1\right) \cdot \left(e^{b \cdot \varepsilon} - 1\right)} \le 7.712899964207506 \cdot 10^{-180} \\ \frac{1}{b} + \frac{1}{a} & \text{otherwise} \end{cases}\)

    if (/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1))) < -5.261000094268735e-233 or 7.712899964207506e-180 < (/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1)))

    1. Started with
      \[\frac{\varepsilon \cdot \left(e^{\left(a + b\right) \cdot \varepsilon} - 1\right)}{\left(e^{a \cdot \varepsilon} - 1\right) \cdot \left(e^{b \cdot \varepsilon} - 1\right)}\]
      61.4
    2. Applied taylor to get
      \[\frac{\varepsilon \cdot \left(e^{\left(a + b\right) \cdot \varepsilon} - 1\right)}{\left(e^{a \cdot \varepsilon} - 1\right) \cdot \left(e^{b \cdot \varepsilon} - 1\right)} \leadsto \frac{1}{b} + \frac{1}{a}\]
      0.0
    3. Taylor expanded around 0 to get
      \[\color{red}{\frac{1}{b} + \frac{1}{a}} \leadsto \color{blue}{\frac{1}{b} + \frac{1}{a}}\]
      0.0

    if -5.261000094268735e-233 < (/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1))) < 7.712899964207506e-180

    1. Started with
      \[\frac{\varepsilon \cdot \left(e^{\left(a + b\right) \cdot \varepsilon} - 1\right)}{\left(e^{a \cdot \varepsilon} - 1\right) \cdot \left(e^{b \cdot \varepsilon} - 1\right)}\]
      62.2
    2. Applied taylor to get
      \[\frac{\varepsilon \cdot \left(e^{\left(a + b\right) \cdot \varepsilon} - 1\right)}{\left(e^{a \cdot \varepsilon} - 1\right) \cdot \left(e^{b \cdot \varepsilon} - 1\right)} \leadsto \frac{1}{b} + \frac{1}{a}\]
      0.0
    3. Taylor expanded around 0 to get
      \[\color{red}{\frac{1}{b} + \frac{1}{a}} \leadsto \color{blue}{\frac{1}{b} + \frac{1}{a}}\]
      0.0

  1. Removed slow pow expressions

Original test:


(lambda ((a default) (b default) (eps default))
  #:name "NMSE problem 3.4.2"
  (/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1)))
  #:target
  (/ (+ a b) (* a b)))