\[\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: 16.1 s
Input Error: 27.7
Output Error: 12.4
Log:
Profile: 🕒
\(\frac{{\left((e^{\log_* (1 + \sqrt[3]{(e^{\varepsilon \cdot \left(b + a\right)} - 1)^*})} - 1)^*\right)}^3}{(e^{a \cdot \varepsilon} - 1)^*} \cdot \frac{\varepsilon}{(e^{b \cdot \varepsilon} - 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)}\]
    27.7
  2. Applied simplify to get
    \[\color{red}{\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 \color{blue}{\frac{(e^{\varepsilon \cdot \left(b + a\right)} - 1)^*}{(e^{a \cdot \varepsilon} - 1)^*} \cdot \frac{\varepsilon}{(e^{b \cdot \varepsilon} - 1)^*}}\]
    12.2
  3. Using strategy rm
    12.2
  4. Applied add-cube-cbrt to get
    \[\frac{\color{red}{(e^{\varepsilon \cdot \left(b + a\right)} - 1)^*}}{(e^{a \cdot \varepsilon} - 1)^*} \cdot \frac{\varepsilon}{(e^{b \cdot \varepsilon} - 1)^*} \leadsto \frac{\color{blue}{{\left(\sqrt[3]{(e^{\varepsilon \cdot \left(b + a\right)} - 1)^*}\right)}^3}}{(e^{a \cdot \varepsilon} - 1)^*} \cdot \frac{\varepsilon}{(e^{b \cdot \varepsilon} - 1)^*}\]
    12.4
  5. Using strategy rm
    12.4
  6. Applied expm1-log1p-u to get
    \[\frac{{\color{red}{\left(\sqrt[3]{(e^{\varepsilon \cdot \left(b + a\right)} - 1)^*}\right)}}^3}{(e^{a \cdot \varepsilon} - 1)^*} \cdot \frac{\varepsilon}{(e^{b \cdot \varepsilon} - 1)^*} \leadsto \frac{{\color{blue}{\left((e^{\log_* (1 + \sqrt[3]{(e^{\varepsilon \cdot \left(b + a\right)} - 1)^*})} - 1)^*\right)}}^3}{(e^{a \cdot \varepsilon} - 1)^*} \cdot \frac{\varepsilon}{(e^{b \cdot \varepsilon} - 1)^*}\]
    12.4

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)))