Hacker News new | ask | show | jobs
by noqc 848 days ago
One of the things that it takes the longest to learn in mathematics is that most things are defined in the dumbest way possible.

In particular, if (over a vector space V) you want to define a bilinear product m:V x V -> V, this is exactly the same thing as deciding on m just over pairs of basis vectors. If I were to call that "the universal property of the tensor product", you'd probably say "uh huh".

1 comments

It's annoyingly one of those things that once you understand, you can't see how you didn't understand it before. e.g. the tensor algebra (aka free algebra) over a vector space is "just" the dumbest possible multiplication: if i and j are basis vectors, then i*j = i⊗j. No further simplification possible. j*i*i*j = j⊗i⊗i⊗j, etc. with associativity and distributivity and linearity: (5i+3j)*k = 5i⊗k + 3j⊗k, etc.

Then, if you have a dot product, a Clifford algebra is "just" the tensor algebra with a single simple extra reduction rule: For a vector v, v*v = v⋅v. So now e.g. `kjiijl = kj(i⋅i)jl = kjjl = k(j⋅j)l = kl = k⊗l`, which can't be reduced further.

The real magic is that it turns out you can prove[0] that ij=-ji for two basis vectors i,j, so e.g. (ij)^2 = ijij = -ijji = -ii = -1. So `ij` is a square root of -1, as is `ik` and `jk` (but they're different square roots of -1), and you get things like complex numbers or quaternions for free, and suddenly a ton of geometry appears (with `ij` corresponding to a chunk of plane in the same way a basis vector `i` is a chunk of line/arrow. `ijk` becomes a chunk of volume. etc.).

But it's all "just" the dumbest possible multiplication plus v*v = v⋅v.

[0] Proof: (i+j)^2 = i^2+ij+ji+j^2 = 1+ij+ji+1 = 2+ij+ji. But also (i+j)^2 = (i+j)⋅(i+j) = i⋅(i+j) + j⋅(i+j) = 2. So 2 = 2+ij+ji, so ij=-ji.

Pedantic nitpick: it's not the dumbest possible multiplication; it's the dumbest possible bilinear multiplication. There are "freer" free products on vectors than tensor product; the freest possible one is their Cartesian product as sets, which just makes a tuple out of them ij = (i, j). If you regarded the resulting sets as a vector space, it would not be true that i0 + 0j = (i, 0) + (0, j) ≠ (i, j). The tensor product is the freest that is well-behaved as a vector space in the sense that it respects the underlying scalar operations from its arguments.
my point was merely that in most cases where "universal object" is used, it could be replaced with "dumbest object such that".
In your proof, doesn't i⋅(i+j) + j⋅(i+j) = (1+ij) + (ji+1) = 2 + ij + ji, not 2?

What am I missing? I think ij = -ji is an independent axiom.

It's dot products there, which are also distributive. So i⋅i + i⋅j + j⋅i + j⋅j = 1 + 0 + 0 + 1 = 2.

We got dot products from the fact that v^2 = v⋅v for any vector v (so in particular, i+j). Then dot products are linear so you can expand that out. So basically the proof compares using FOIL on geometric products to FOIL on dot products.

Note that `ij` is not a vector; it's a tensor (or "multivector" and in particular a "blade" in the GA lingo). The dot product reduction only applies to vectors from the original space. But i, j, and i+j are vectors.

For simplicity and practically this is all over real vector spaces. You can make similar definitions with other fields, but you have to be careful when working mod 2.

For simplicity I'm also using an orthonormal basis. You also need to be a bit more careful if working with e.g. special relativity where your timelike basis vector t has t⋅t=-1 (though you can see things still work).

The proof is supposed to be showing that ij = -ji. Not that both ij = ji = 0.

In this case, i and j are two dimensional units. So yes, ij is a bivector (unit scalar quantity of two dimension units), so ij does not equal zero.

I think the ij = -ij requires another axiom. Or another constraint on how the space operates which results in the same result.

I didn't show ij = ji = 0. I'm assuming i⋅j = j⋅i = 0 (an orthogonal basis), but i⋅j != ij and j⋅i != ji.

(i+j)^2 = (i+j)⋅(i+j) because v^2=v⋅v for any vector v. When you expand RHS, you get i⋅i + i⋅j + j⋅i + j⋅j = 1 + 0 + 0 + 1 = 2. When you expand the LHS (i+j)^2 as Clifford multiplication, you get 2 + ij + ji. Since RHS and LHS are equal, ij+ji=0.

Ah, thanks! I will have to go through those steps more carefully.

> Or another constraint on how the space operates which results in the same result.

I see that would be the orthonormality of i and j.