\[(x * y + z)_* - \left(1 + \left(x \cdot y + z\right)\right)\]
Test:
simple fma test
Bits:
128 bits
Bits error versus x
Bits error versus y
Bits error versus z
Time: 11.1 s
Input Error: 19.7
Output Error: 16.2
Log:
Profile: 🕒
\(\frac{{\left((x * y + z)_*\right)}^3 - 1}{{\left({\left((x * y + z)_*\right)}^2\right)}^2 - {\left({1}^2 + (x * y + z)_* \cdot 1\right)}^2} \cdot \left({\left((x * y + z)_*\right)}^2 - \left({1}^2 + (x * y + z)_* \cdot 1\right)\right) - \left(x \cdot y + z\right)\)
  1. Started with
    \[(x * y + z)_* - \left(1 + \left(x \cdot y + z\right)\right)\]
    19.7
  2. Using strategy rm
    19.7
  3. Applied associate--r+ to get
    \[\color{red}{(x * y + z)_* - \left(1 + \left(x \cdot y + z\right)\right)} \leadsto \color{blue}{\left((x * y + z)_* - 1\right) - \left(x \cdot y + z\right)}\]
    15.7
  4. Using strategy rm
    15.7
  5. Applied flip3-- to get
    \[\color{red}{\left((x * y + z)_* - 1\right)} - \left(x \cdot y + z\right) \leadsto \color{blue}{\frac{{\left((x * y + z)_*\right)}^{3} - {1}^{3}}{{\left((x * y + z)_*\right)}^2 + \left({1}^2 + (x * y + z)_* \cdot 1\right)}} - \left(x \cdot y + z\right)\]
    20.8
  6. Applied simplify to get
    \[\frac{\color{red}{{\left((x * y + z)_*\right)}^{3} - {1}^{3}}}{{\left((x * y + z)_*\right)}^2 + \left({1}^2 + (x * y + z)_* \cdot 1\right)} - \left(x \cdot y + z\right) \leadsto \frac{\color{blue}{{\left((x * y + z)_*\right)}^3 - 1}}{{\left((x * y + z)_*\right)}^2 + \left({1}^2 + (x * y + z)_* \cdot 1\right)} - \left(x \cdot y + z\right)\]
    16.1
  7. Using strategy rm
    16.1
  8. Applied flip-+ to get
    \[\frac{{\left((x * y + z)_*\right)}^3 - 1}{\color{red}{{\left((x * y + z)_*\right)}^2 + \left({1}^2 + (x * y + z)_* \cdot 1\right)}} - \left(x \cdot y + z\right) \leadsto \frac{{\left((x * y + z)_*\right)}^3 - 1}{\color{blue}{\frac{{\left({\left((x * y + z)_*\right)}^2\right)}^2 - {\left({1}^2 + (x * y + z)_* \cdot 1\right)}^2}{{\left((x * y + z)_*\right)}^2 - \left({1}^2 + (x * y + z)_* \cdot 1\right)}}} - \left(x \cdot y + z\right)\]
    16.1
  9. Applied associate-/r/ to get
    \[\color{red}{\frac{{\left((x * y + z)_*\right)}^3 - 1}{\frac{{\left({\left((x * y + z)_*\right)}^2\right)}^2 - {\left({1}^2 + (x * y + z)_* \cdot 1\right)}^2}{{\left((x * y + z)_*\right)}^2 - \left({1}^2 + (x * y + z)_* \cdot 1\right)}}} - \left(x \cdot y + z\right) \leadsto \color{blue}{\frac{{\left((x * y + z)_*\right)}^3 - 1}{{\left({\left((x * y + z)_*\right)}^2\right)}^2 - {\left({1}^2 + (x * y + z)_* \cdot 1\right)}^2} \cdot \left({\left((x * y + z)_*\right)}^2 - \left({1}^2 + (x * y + z)_* \cdot 1\right)\right)} - \left(x \cdot y + z\right)\]
    16.2

Original test:


(lambda ((x default) (y default) (z default))
  #:name "simple fma test"
  (- (fma x y z) (+ 1 (+ (* x y) z)))
  #:target
  -1)