8

Does there exist a truly "standard" dot product over complex vectors?

Wikipedia and Wolfram's MathWorld indicate directly or indirectly that the second argument is conjugated.

Matlab's dot product is the opposite. "When A and B are both column vectors, dot(A,B) is the same as A'*B." This has attractiveness from the perspective that it is more consistent with the vector definition for real numbers. I.e., if dot conjugated the second argument it would be B'*A

I am confused about whether there is a "standard" approach. Did Matlab just go rogue on this one? Or were others before them using a dot product that implied linearity in the second argument?

This ambiguity seems more dangerous and error-prone than a simple notational preference. E.g., how mathematicians use "i" to represent the square root of negative one, vs. engineers who use "j".

horchler
  • 3,203
  • 2
    According to my experience, in mathematics it is more common to conjugate the second argument, in physics the first. Must be because conjugating the first argument goes well with Dirac's notation for quantum mechanics. – Giuseppe Negro Oct 22 '13 at 16:19

4 Answers4

3

If we consider column vectors in $\mathbb{C}^n$, it's more natural to define the standard inner product by $$ \langle\mathbf{x}\mid\mathbf{y}\rangle = \mathbf{x}^H\mathbf{y} $$ rather than $\mathbf{y}^H\mathbf{x}$ ($H$ denotes the conjugate transpose, notation for the inner product varies among authors), so it's “naturally” antilinear in the first variable and linear in the second.

If one identifies coordinate vectors with rows (writing maps on the right), then the “natural” way becomes the opposite.

It's just a convention; just learn how to translate from one to the other.

egreg
  • 238,574
2

In fact I've got a book in which the dot product is considered antilinear in the first argument despite other books having antilinearity in the second one.

However this ambiguity is in no way dangerous, because you may make a composition of operators to have linearity in the argument that you want.

The book in question is Richtmyer, Morton. Difference Methods for Initial-Value Problems

1

Wikipedia reads: conjugating the second argument "is how the inner product was originally defined and is still used in some old-school math communities. However, all of engineering and computer science, and most of physics and modern mathematics now define the inner product to be linear in the second argument and conjugate-linear in the first argument because this is more compatible with several other conventions in mathematics." https://en.wikipedia.org/wiki/Inner_product_space#Notes

That is why I have given up $x\cdot y = y^Hx$ for the more logical $x\cdot y = x^H y$, where $x^H$ is the Hermitian (conjugated transpose).

Nevertheless, this is how inner product is defined. For mathematicians, usually dot product = inner product, whereas for physicists, dot product and cross product do not involve any conjugation! Beware!

Why "the second argument is linear" is better: Why did mathematicians choose the inner product to be linear in the first argument instead of the second?

Matlab conjugates, Mathematica does not, Maple conjugates in the dot product but not in the cross product. In Matlab, $i'=-i$. More on this and on the conjugation of the cross product: https://math.stackexchange.com/a/3567679/

0

Either of the two vectors can be conjugated. The only thing to keep in mind is that the scalar antilinear property always holds with respect to the vector that is conjugated

Arup Hore
  • 119