\[\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i\]
Test:
Linear.V4:$cdot from linear-1.19.1.3
Bits:
128 bits
Bits error versus xBits error versus yBits error versus zBits error versus tBits error versus aBits error versus bBits error versus cBits error versus i
\((y * x + \left((i * c + \left(a \cdot b\right))_*\right))_* + t \cdot z\)
Started with
\[\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i\]
0.0
Applied simplify to get
\[\color{red}{\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i} \leadsto \color{blue}{(i * c + \left(a \cdot b\right))_* + (y * x + \left(t \cdot z\right))_*}\]
0.0
Using strategy rm
0.0
Applied fma-udef to get
\[(i * c + \left(a \cdot b\right))_* + \color{red}{(y * x + \left(t \cdot z\right))_*} \leadsto (i * c + \left(a \cdot b\right))_* + \color{blue}{\left(y \cdot x + t \cdot z\right)}\]
0.0
Applied associate-+r+ to get
\[\color{red}{(i * c + \left(a \cdot b\right))_* + \left(y \cdot x + t \cdot z\right)} \leadsto \color{blue}{\left((i * c + \left(a \cdot b\right))_* + y \cdot x\right) + t \cdot z}\]
0.0
Applied simplify to get
\[\color{red}{\left((i * c + \left(a \cdot b\right))_* + y \cdot x\right)} + t \cdot z \leadsto \color{blue}{(y * x + \left((i * c + \left(a \cdot b\right))_*\right))_*} + t \cdot z\]
0.0
Removed slow pow expressions
Original test:
(lambda ((x default) (y default) (z default) (t default) (a default) (b default) (c default) (i default))
#:name "Linear.V4:$cdot from linear-1.19.1.3"
(+ (+ (+ (* x y) (* z t)) (* a b)) (* c i)))