From: Mark Adler on 27 May 2010 06:44 On 2010-05-26 04:10:18 -0700, Roland Franzius said: > The second product is mathematically incorrect in the context of general > matrix multiplication because a matrix product of 3x3 . 1x3 does not > exist. That vector does not have dimensions 1x3. Its dimensions are simply 3. It is not a 2-dimensional matrix: Dimensions[{1, 2, 3}] {3} Dimensions[{{1, 2, 3}}] {1, 3} Dimensions[{{1}, {2}, {3}}] {3, 1} Mathematica is being completely consistent on how those are treated for an inner product, where simply the inner two dimensions must be equal and are removed: m = {{1, 2}, {3, 4}}; Dimensions[m] {2, 2} Dimensions[{1, 2}.m] {2} Dimensions[{{1, 2}}.m] {1, 2} Dimensions[m.{1, 2}] {2} Dimensions[m.{{1}, {2}}] {2, 1} Mathematica does complain about improper matrix products, when the arguments are in fact matrices, e.g. 2x2 . 1x2: m.{{1, 2}} Dot::dotsh: Tensors {{1,2},{3,4}} and {{1,2}} have incompatible shapes. {{1, 2}, {3, 4}}.{{1, 2}} Mark |