\[(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: 5.5 s
Input Error: 44.8
Output Error: 45.5
Log:
Profile: 🕒
\((x * y + z)_* - \left(1 + {\left(\sqrt[3]{{\left(\sqrt[3]{x \cdot y + z}\right)}^3}\right)}^3\right)\)
  1. Started with
    \[(x * y + z)_* - \left(1 + \left(x \cdot y + z\right)\right)\]
    44.8
  2. Using strategy rm
    44.8
  3. Applied add-cube-cbrt to get
    \[(x * y + z)_* - \left(1 + \color{red}{\left(x \cdot y + z\right)}\right) \leadsto (x * y + z)_* - \left(1 + \color{blue}{{\left(\sqrt[3]{x \cdot y + z}\right)}^3}\right)\]
    45.5
  4. Using strategy rm
    45.5
  5. Applied add-cube-cbrt to get
    \[(x * y + z)_* - \left(1 + {\left(\sqrt[3]{\color{red}{x \cdot y + z}}\right)}^3\right) \leadsto (x * y + z)_* - \left(1 + {\left(\sqrt[3]{\color{blue}{{\left(\sqrt[3]{x \cdot y + z}\right)}^3}}\right)}^3\right)\]
    45.5

Original test:


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