Dot product as matrix products?

1. Feb 13, 2010

tgt

Why not make dot(u,v)=transpose(u)v rather than transpose(v)u?

2. Feb 13, 2010

Hurkyl

Staff Emeritus
What's the difference?

3. Feb 14, 2010

jostpuur

At least difference emerges when transpose is replaced with Hermitian conjugate, when complex vectors are used. Physicist use the convention

$$(u|v) = u^{\dagger} v$$

and IMO it is lot better than the mathematicians' convention

$$(u|v) = v^{\dagger} u$$

When something is done in a dumb way, the reason is usually "for historical reasons". I guess that's the answer to the OP question this time too.

4. Feb 14, 2010

D H

Staff Emeritus
One way generates a scalar and the other way generates an NxN matrix. Which is which depends on whether the vector is a 1xN row vector or a Nx1 column vector.

5. Feb 14, 2010

jostpuur

This response is not logical!

If we assume $u$ and $v$ to be Nx1 vectors, then both $u^Tv$ and $v^Tu$ give a single component 1x1 matrix.

tgt did not ask about why to use Nx1 or 1xN matrices, so it is better not to start switching between them now.

The truth is that there are two different conventions for complex inner products, and they are

$$(u|v) = \sum_{k=1}^N u^*_k v_k$$

and

$$(u|v) = \sum_{k=1}^N u_k v^*_k$$

so I thought it would be natural to guess that the original question was related to this issue.

6. Feb 14, 2010

tgt

7. Feb 14, 2010

HallsofIvy

No, you have misread. If u and v are column vectors (most common convention), then uTv is a scalar and uvT is a matrix.

But the question was about the difference between uTv and vTu, both of which are scalars. And the answer is that if the vectors are over the real numbers, there is no difference and if the vectors are over the complex numbers, one is the complex conjugate of the other. In the latter case, which we use as inner product is a matter of convention.

8. Feb 14, 2010

D H

Staff Emeritus
Yes, I misread the OP as uTv versus uvT, as opposed to uTv versus vTu.