Suppose we have $$\left[\begin{array}{cccc} x_1 & 0 & 0 & 0 \\ x_2 & x_1 & 0 & 0 \\ x_3 & x_2 & x_1 & 0 \\ x_4 & x_3 & x_2 & x_1 \end{array}\right] \times \left[\begin{array}{c} y_1 \\ y_2 \\ y_3 \\ y_4 \end{array}\right]$$ Where $x_i, y_i \in \mathbb{Z}$ and in the range of $[70,2^{31}-1]$ for $i=1,\dots,4$. In this context we call each $x_i, y_i$ as single precision and $x_iy_j$ as double precision for $j=1,\dots,4$. We have two options of computing this matrix-vector product
- Single Lower Triangular matrix-vector product
- Partition into $2\times2$ sub-matrices that results into two Triangular matrix and a Topelitz matrix
The number of operations for each will be
- $10$M(single precision)+$6$A(double precision)
- $9$M(single precision)+$3$A(single precision)+$6$A(double precision)
What can be other ways of performing this matrix-vector multiplication? Such that the number of operations change like the above two techniques.
Is there a way of reducing the number of double precision addition?