User:JohnBlackburne/Geometric product

In mathematics, the geometric product is a bilinear product between two elements of a Clifford or geometric algebra. It is fundamental to such algebras, which can be defined as an algebra with an associated geometric product, so all properties of the algebra derived from the product.

The product is closely related to the inner and exterior products and so to the vector dot and cross products. Like these it is bilinear and distributive, and like the exterior product it is associative. But it is neither commutative nor anticommutative, except in a few cases which have particular geometric interpretations. And unlike these other products the geometric product with a vector, or more generally a blade, has a multiplicative inverse, which can be used to solve and simplify equations and expressions involving the geometric product.

As suggested by its name the geometric product can be interpreted geometrically. It does not have a single interpretation: rather many of the uses of the product are geometric or have geometric interpretations. These include detecting if lines and planes are parallel or perpendicular and measuring the angle between them, generating reflections and rotations in two or more dimensions, and investigating the geometric properties of pseudovectors, complex numbers and quaternions and their higher dimensional equivalents.

Definition in terms of the inner and outer product
There are two ways to define the geometric product. One is in terms of the inner and outer product, products familiar from vector algebra and exterior algebra, from which the product is defined on vectors, and then generalised to the rest of the algebra. In this and the following section the field of the vectors is the real numbers, and the product has a positive signature (so all non-zero vectors have positive norm).

The inner product
In geometric algebra the inner product of two vectors is the same as the dot product. That is it is the scalar valued symmetric product with magnitude equal to the product of the vector lengths and the cosine of the angle between them. It is usually written with a dot, so the inner product of two vectors a and b is


 * $$\mathbf{a} \cdot \mathbf{b} = ab \cos{\theta}\,$$,

where θ is the angle between the vectors. It can also be calculated from the components of the vectors. In n dimensions if the vectors are a = (a1, a2, ..., an) and b = (b1, b2, ..., bn) their inner product is


 * $$\mathbf{a} \cdot \mathbf{b} = \sum_{i=1}^n a_ib_i \,$$.

Both definitions work in all dimensions, and if equated can be used to define and calculate the angle between two vectors in any dimension. Notably for non-zero vectors the inner product is zero if and only if the angle between them is $π/2$, that is if the vectors are perpendicular or orthogonal.

The exterior product
The exterior product is the same as the product in exterior algebra, and is bivector valued. Bivectors are plane or area elements in the algebra, geometrically associated with the plane spanned by the vectors. The magnitude of the exterior product is the product of the vector lengths and the sine of the angle between them. The product is written with a wedge symbol, ∧, so the product a ∧ b can be calculated as


 * $$\mathbf{a} \wedge \mathbf{b} = ab \mathbf{B}\sin{\theta} \,$$,

where θ is the angle between the vectors and B is a unit bivector, parallel to the plane (geometry) containing a and b. If a and b are parallel this plane is not uniquely defined, but then sin θ and so a ∧ b is zero. In three dimensions it is closely related to the cross product but unlike that product it is not limited to three dimensions. In particular the exterior product and its bivector result can be associated with and so used to describe planes and their properties in higher dimensions.

The geometric product
Combining these two products gives the geometric product of two vectors,

The geometric product is written ab, without any symbol, emphasising the fundamental nature of the product as well as being more compact to write. The product is the sum of the scalar inner product a ⋅ b and the bivector exterior product a ∧ b. They are added in the same way as real and imaginary parts of a complex number or a quaternion, in that they form one quantity but can be considered separately. In this case the product can be said to have a scalar part and a bivector part.

The geometric product is in general neither symmetric or antisymmetric, except for special cases. If the vectors a and b are parallel then the bivector part a ∧ b is zero, and the geometric product is just


 * $$\mathbf{ab} = \mathbf{a} \cdot \mathbf{b}\,$$,

and so symmetric. Conversely if a and b are perpendicular the scalar part vanishes and the product becomes


 * $$\mathbf{ab} = \mathbf{a} \wedge \mathbf{b}\,$$

which is antisymmetric. So the geometric product of non-zero vectors is symmetric and scalar valued if and only if they are parallel, antisymmetric and bivector valued if and only if they are perpendicular, and whether they are parallel or perpendicular can be deduced from inspecting their (geometric) product. And the angle between the vectors can be calculated from the two parts of the product, as


 * $$ \tan \theta = \frac{| \mathbf{a} \wedge \mathbf{b} | }{\mathbf{a} \cdot \mathbf{b}}$$.

One more property can be deduced. The magnitude of a ⋅ b is ab cos θ, while that of a ∧ b is ab sin θ, and combining these with the Pythagorean trigonometric identity it can be shown that the magnitude of ab, defined as the Euclidean_norm of ab considered as a vector in the whole of the algebra, is simply a.

Derivation from first principles
Another way to define the geometric product is using the properties of the product. These properties are as follows.

It is associative, so for quantities A, B and C

Because of associativity the product can be written without brackets, as ABC, as whatever of AB or BC is calculated first the result is the same.

It is left and right distributive, so for quantities A, B and B

and

It is bilinear, so for scalar λ and quantities A and B

This also means that although the geometric product is not generally commutative it is whenever the product is between a scalar and another quantity.

Finally the product of a vector with itself is a contraction; that is the product of vector a with itself, written aa or a2, is a scalar. In general this can be positive, negative or zero, but for algebras with positive signature it is positive for non-zero vectors. In particular for vector a

where a is the magnitude or length of vector a. In this article the definitions and most of the examples assume that the metric is positive - the more general case where this can take other than positive values will be covered later.

These properties define the geometric product. The first three properties, associativity, distributivity and bilinearity, are shared with many other products, such as the exterior product and matrix multiplication. It is the fourth property, contraction, that distinguishes the geometric product, and through the signature imposes a structure on the algebra.

Inner product derivation
To complete the definition it is useful to derive the inner and exterior products, to show how they can be derived from the axioms and so that the definitions are the same. First the square of the sum of two vectors, using the distributive property of the geometric product, can be expanded into separate terms


 * $$(\mathbf{a} + \mathbf{b})^2 = (\mathbf{a} + \mathbf{b})(\mathbf{a} + \mathbf{b}) = \mathbf{a}^2 + \mathbf{b}^2 + \mathbf{ab} + \mathbf{ba}\,$$.

This can be rearranged to give


 * $$\mathbf{ab} + \mathbf{ba} = (\mathbf{a} + \mathbf{b})^2 - \mathbf{a}^2 - \mathbf{b}^2\,$$.

Everything on the right hand side of this equation is the square of a vector, so is a scalar. The commutative quantity ab + ba, the anticommutator of the product, is therefore also scalar valued. This is halved so its magnitude matches the inner product, which is therefore defined as

From the law of cosines applied to a triangle with sides a, b and a + b it can be shown that this equals


 * $$\mathbf{a} \cdot \mathbf{b} = ab \cos\theta\,$$

where θ is the angle between the vectors, to confirm this is the same product as the dot product from vector algebra.

Outer product derivation
The outer product can be derived in a similar way, starting with a slightly more complex expression, (a ⋅ b)2 - a2b2, again multiplying out the products and simplifying:


 * $$\begin{align}(\mathbf{a}\cdot\mathbf{b})^2 - \mathbf{a}^2\mathbf{b}^2 &= \left(\frac{1}{2}(\mathbf{ab} + \mathbf{ba})\right)^2 - \mathbf{a}^2\mathbf{b}^2\\ &= \frac{1}{4}(\mathbf{ab}^2 + \mathbf{abba} + \mathbf{baab} + \mathbf{ba}^2) - \mathbf{a}^2\mathbf{b}^2\\ &= \frac{1}{4}(\mathbf{ab}^2 + 2\mathbf{a}^2\mathbf{b}^2 + \mathbf{ba}^2) - \mathbf{a}^2\mathbf{b}^2\\ &= \frac{1}{4}(\mathbf{ab}^2 - 2\mathbf{a}^2\mathbf{b}^2 + \mathbf{ba}^2)\\ (\mathbf{a}\cdot\mathbf{b})^2 - \mathbf{a}^2\mathbf{b}^2 &= \left(\frac{1}{2}(\mathbf{ab} - \mathbf{ba})\right)^2\end{align}$$.

To satisfy this the exterior product is defined

that is half the commutator for the product. The above identity is then


 * $$(\mathbf{a} \wedge \mathbf{b})^2 = (\mathbf{a}\cdot\mathbf{b})^2 - \mathbf{a}^2\mathbf{b}^2$$,

or Lagrange's identity. This is scalar valued, as a ⋅ b, a2 and b2 are all scalars. If the angle between the vectors is θ it can be written as


 * $$(\mathbf{a} \wedge \mathbf{b})^2 = (ab \cos \theta)^2 - a^2b^2 = a^2b^2(\cos^2 \theta - 1) = -(ab \sin\theta)^2\,$$

The exterior product has a scalar valued but negative, or at least non-positive, square. It is therefore is neither a scalar nor a vector (both of which have positive squares), so must be a new quantity, the bivector described above. From this its magnitude is ab sin θ. This is the area of the parallelogram with sides a and b, so it is natural to associate the bivector a ∧ b with this area. It should be noted though that any shape with area ab sin θ and parallel to the plane containing a and b can be used.

As a final check if the inner and exterior products are summed,


 * $$ \mathbf{a} \cdot \mathbf{b} + \mathbf{a} \wedge \mathbf{b} = \frac{1}{2}(\mathbf{ab} + \mathbf{ba}) + \frac{1}{2}(\mathbf{ab} - \mathbf{ba}) = \frac{1}{2}(\mathbf{ab} + \mathbf{ba} + \mathbf{ab} - \mathbf{ba}) = \frac{1}{2}(\mathbf{ab} + \mathbf{ab}) = \mathbf{ab},$$

the same as equation $$. If they are subtracted it is the same as reversing the order of the product, called reversion and equivalent to complex conjugation:

Properties
As already noted the geometric product is neither symmetric nor antisymmetric: instead it can be said to have both symmetric and antisymmetric parts, those being the scalar and bivector parts as seen in equation $$. Alternately the inner product, defined in terms of the anticommutator as in equation $$, selects the symmetric part of the product, and the exterior product, related to the commutator as in $$ selects the antisymmetric part of the product.

Geometrically the product measures the degree of parallelism or perpendicularity of the vectors. If they are parallel their exterior product is zero, their geometric product is scalar and symmetric. If they are perpendicular their inner product is zero and the geometric product is bivector valued and antisymmetric. More generally the relative magnitudes of the scalar and bivector parts relates to the degree of parallelism or the angle between the vectors.

A special case of this is the product of a vector with itself. From the contraction property this is a scalar with value equal to the square of the length of the vector. One consequence of this is that every non-zero vector has a multiplicative inverse. From equation $$ the inverse is


 * $$\mathbf{a}^{-1} = \frac{\mathbf{a}}{a^2}\,$$,

as when multiplied by a on the left or right this simplifies to 1.

This value is the multiplicative identity element of the algebra, so 1a = a1 = a, and this product is part of the algebra. More generally the geometric product of any real number and vector is just the vector scaled by the value of the number, the same as scalar multiplication in the vector space. In the same way the product of two real numbers included in algebra. The products covered so far can be summarised in a table, with λ and μ scalars, a and b vectors, and the product in each case being the geometric product.

The magnitude of a ⋅ b + a ∧ b is given by


 * $$\begin{align}|\mathbf{ab}|^2 &= |\mathbf{a}\cdot\mathbf{b}|^2+|\mathbf{a}\wedge\mathbf{b}|^2 \\&= (ab \cos \theta)^2 + (ab \sin \theta)^2 \\&= a^2b^2(\cos^2 \theta + \sin^2 \theta) \\&= a^2b^2 \end{align}$$.

So |ab| = |a| × |b|. The product is only zero if one of the vectors is zero, unlike the exterior and inner products, and like the product of the vector with itself has a multiplicative inverse.

The geometric algebra contains scalars, vectors such as, bivector such as a ∧ b, and more general quantities such as a ⋅ b + a ∧ b. By taking the products of quantities like these, together with sums and differences of such products, the whole of the algebra can be generated. For the product associated with n-dimensional real vector space ℝn the algebra is written Cℓn(ℝ), and is itself a 2n dimensional vector space.

Reflections
Perhaps the simplest application for the geometric product is to carry out reflections. In two dimensions reflections are usually done in a line, in three dimensions they are usually carried out in a plane. In both cases the reflection can also be specified by a normal to the line or the plane, without loss of generality specified by a unit vector. Suppose this vector is n.

The reflection of a vector a in the line (or plane) through the origin and perpendicular to n is just:

This can be seen by decomposing a into components parallel and perpendicular to n, that is


 * $$\mathbf{a} = \mathbf{a}_\parallel + \mathbf{a}_\perp$$.

The reflection is then

$$\begin{align}\mathbf{a}' &= -\mathbf{nan} \\ &= -\mathbf{n}(\mathbf{a}_\parallel + \mathbf{a}_\perp)\mathbf{n}\\ &= -(\mathbf{n}\mathbf{a}_\parallel\mathbf{n} + \mathbf{n}\mathbf{a}_\perp\mathbf{n}\\ &= -(\mathbf{nn}\mathbf{a}_\parallel - \mathbf{nn}\mathbf{a}_\perp)\\ &= -\mathbf{a}_\parallel + \mathbf{a}_\perp\end{align}$$.

The resulting vector


 * $$\mathbf{a}' = -\mathbf{a}_\parallel + \mathbf{a}_\perp$$

is the reflection of a in the direction given by n, that is in a line in two dimensions or a plane in three dimensions, on an k-1 dimensional hyperplane through the origin in k-dimensional space (a Householder transformation).

It alsso generalises to other quantities. For example suppose B is a bivector, which can be written as the product of two perpendicular vectors b1 and b2 (this is true of all simple bivectors, so of all bivectors in three dimensions), that is


 * $$\mathbf{B}= \mathbf{b}_1\mathbf{b}_2\,$$.

Then the reflection of B in a hyperplane perpendicular to n is


 * $$\begin{align}\mathbf{B}' &= {\mathbf{b}_1}'{\mathbf{b}_2}'\\

&= (-\mathbf{nb}_1\mathbf{n})(-\mathbf{nb}_2\mathbf{n})\\ &= \mathbf{nb}_1\mathbf{nnb}_2\mathbf{n}\\ &= \mathbf{nb}_1\mathbf{b}_2\mathbf{n}\\ &= \mathbf{nBn}\end{align}$$,

It reflects like a vector except for a sign flip, the same behaviour as a pseudovector. Pseudovectors represent bivector-like quantities in vector algebra, that is quantities such as angular velocity and magnetic field which transform this way under reflection. In vector algebra this requires a separate rule, but here the same mathematics is used for vectors and bivectors.

Rotations
If two reflections are carried out one after the other the result in general is a rotation. The exception is two reflections in parallel lines or surfaces, which results in a translation, but this can be avoided by only reflecting in lines and surfaces through the origin. To carry out the two reflections, in directions given by non-parallel unit vectors m and n respectively, equation $$ is used twice,
 * $$\mathbf{a}'' = -\mathbf{na'n}\,$$

and
 * $$\mathbf{a}' = -\mathbf{mam}\,$$,

which together give the formula for rotation,


 * $$\mathbf{a}'' = -\mathbf{n(-mam)n} = \mathbf{nmamn} = \mathbf{(nm)a(mn)}\,$$.

The quantities mn and nm are related by


 * $$\mathbf{(nm)(mn)} = \mathbf{n(mm)n} = \mathbf{nn} = 1\,$$,

so mn is the multiplicative inverse of nm. If m and n are both unit vectors both mn and nm have unit magnitude. Such quantities are called rotors. They are just elements of the algebra, like vectors and bivectors, but are notable enough that they are often written using a different notation, such as R for nm. The quantity mn is called the reversion of nm and is written R̃, so RR̃ = R̃R = 1, and the rotation formula becomes


 * $$\mathbf{a}'' = R\mathbf{a}\tilde{R}\,$$.

In the above description the dimension was not specified and the derivation is independent of dimension; rotors can be used to describe rotations in all dimensions of two or more. The geometric product of two rotors represents a rotation, the rotation being the same the rotations of the two rotors applied in sequence.

Two dimensions
In two dimensions all rotations are in the same plane and the product of two rotors is a rotor in the same plane, rotating through an angle which is the sum of the signed angles of the separate rotations. Two dimensional rotors are closely related to complex numbers with unit modulus and the rotations they generate, with reversion equivalent to complex conjugation.

Three dimensions
In three dimensions the product of rotors is also a rotor. This can be seen geometrically as in three dimensions two planes share a common line. If the two rotors are R1 = n1m1 and R2 = n2m2, it is always possible to choose the vectors such that one of each pair lies long the common line, so for example n1 = m2. The product of the rotors is then


 * $$R_1R_2 = \mathbf{m}_1\mathbf{n}_1\mathbf{m}_2\mathbf{n}_2 = \mathbf{m}_1\mathbf{n}_1\mathbf{n}_1\mathbf{n}_2 =  \mathbf{m}_1\mathbf{n}_2\,$$,

the product of two unit vectors and so another rotor. Different vectors need to be chosen if the product order is reversed, so the product of rotors is not commutative in three or more dimensions. Three dimensional rotors are isomorphic to rotation quaternions and describe rotations in the same way, and reversion is equivalent to the quaternion conjugate.

Higher dimensions
In four or more dimensions not all rotations are described by rotors. Rotors that are the product of distinct unit vectors generate a simple rotation, with a plane of rotation that is the the unique plane containing the vectors. More general rotations such as a double rotations in four dimensions can be generated by combinations of unit rotors generated from two vectors.

Other products
Other products can be calculated, such as the product of a vector and bivector. It can be shown that this is in general neither a scalar, vector, or bivector, and instead requires the introduction of a new quantity, the trivector, associated with volumes or three dimensions. This can be continued up to the dimension of the space. For example in three dimensions the geometric algebra consists of scalars, vectors, bivectors and trivectors and linear combinations of them. The algebra consisting of these elements is closed under the geometric product, so no other quantities are generated.