Abstract definition of matrix multiplication
In the following tables, matrix A represents the quantities of the materials P and Q to produce products M and N. Matrix B represents the prices of the materials P and Q of the suppliers C1 and C2.
In this case, the first row of the second column of AB, aq + bs, represents the total cost of the producing product A.
Product\Resource |
}}} P {{{ |
}}} Q {{{ |
}}} M {{{ |
}}} a {{{ |
}}} b {{{ |
}}} N {{{ |
}}} c {{{ |
}}} d {{{ |
Resource\Company |
}}} C1 {{{ |
}}} C2 {{{ |
}}} P {{{ |
}}} p {{{ |
}}} q {{{ |
}}} Q {{{ |
}}} r {{{ |
}}} s {{{ |
Blocking
The matrix multiplication of the original arrays can be transformed into matrix multiplication of blocks. For example,
C_block(1,1)=A_block(1,1)*B_block(1,1) + A_block(1,2)*B_block(2,1)
+-----+-----+ +-----+-----+ +-----+-----+ | x x | | | --> | --> | | | | | | | x x | | | --> | --> | | ↓ ↓ | | +-----+-----+ = +-----+-----+ * +-----+-----+ | | | | | | | | | | | | | | | | | | ↓ ↓ | | +-----+-----+ +-----+-----+ +-----+-----+