一个n维行向量乘以一个n维列向量是一个数,或者可以看成一个1*1的矩阵。一个n维列向量乘以一个n维行向量得到一个n*n的矩阵,这个矩阵的秩是1(若行向量和列向量都不为零向量)。因为假设a为一个n维列向量,b=[b1,b2,...,bn] 为一个n维行向量,则a*b=a*[b1,b2,...,bn]=[a*b1,a*b2,...,a*bn],可以看出各列之间是线性相关的(都是a乘以一个数),所以若a和b都不为0向量时,a*b是一个秩为1的n*n的矩阵。所以当然不是所有的行列式都可以表示成一个行向量和一个列向量的乘积的形式。但是,任意非零矩阵都可以表示成若干个秩1矩阵的和,而秩1矩阵都可以表示为一个列向量乘以一个行向量,所以可以表示为sum_{i=0}^m a_i*b_i 的形式,其中a_i为列向量,b_i为行向量。