Clifford algebra is a type of algebra characterized by the geometric product of scalars, vectors, bivectors, trivectors...etc.

Just as a vector has length so a bivector has area and a trivector has volume.

Just as a vector has direction so a bivector has orientation. In three dimensions a trivector has only one possible orientation and is therefore a pseudoscalar. But in four dimensions a trivector becomes a pseudovector and the quadvector becomes the pseudoscalar.

### Rules

All the properties of Clifford algebra derive from a few simple rules.

Let and be perpendicular unit vectors.

Multiplying two perpendicular vectors results in a bivector:

Multiplying three perpendicular vectors results in a trivector:

Multiplying parallel vectors results in a scalar:

Clifford algebra is associative therefore the fact that multiplying parallel vectors results in a scalar means that:

$split}"): {\displaystyle \begin{split} {\color{green}(e_{x} e_{y})} {\color{blue} (e_{y}) } &= {\color{blue} e_{x}} {\color{red}(e_{y} e_{y})} \\ &= {\color{blue} e_{x}} {\color{red}(1)} \\ &= {\color{blue} e_{x}} \end{split}$
and:
and:

Rotation from x to y is the negative of rotation from y to x:

Therefore:
$split}"): {\displaystyle \begin{split} {\color{green}(e_{x} e_{y})} {\color{blue} (e_{x}) } &= \phantom{-}{\color{blue} e_{x}} {\color{green}(e_{y} e_{x})} \\ &= {\color{blue} -e_{x}} {\color{green}(e_{x} e_{y})} \\ &= -{\color{red} (e_{x} e_{x})} {\color{blue} e_{y}} \\ &= -{\color{red} (1)} {\color{blue} e_{y}} \\ &= -{\color{blue} e_{y}} \end{split}$

### Multiplication tables

In one dimension:
In two dimensions:
In three dimensions:
In four dimensions:

### Multiplication of arbitrary vectors

The dot product of two vectors is:

$split}"): {\displaystyle \begin{split} \mathbf{u} \cdot \mathbf{v} &= {\color{blue}\text{vector}} \cdot {\color{blue}\text{vector}} \\ &= (u_{x} + u_{y})(v_{x} + v_{y}) \\ &= {\color{red}u_{x} v_{x} + u_{y} v_{y}} \end{split}$

But this is actually quite mysterious. When we multiply and we dont get so why is it that when we multiply vectors we only multiply parallel components? Clifford algebra has a surprisingly simple answer: We dont! Instead of the dot product or the wedge product Clifford algebra uses the geometric product.

$split}"): {\displaystyle \begin{split} \mathbf{u} \mathbf{v} &= (u_{x} {\color{blue}e_{x}} + u_{y} {\color{blue} e_{y}} ) (v_{x} {\color{blue}e_{x}} + v_{y} {\color{blue} e_{y}} ) \\ &= u_{x} v_{x} {\color{red}e_{x} e_{x}} + u_{x} v_{y} {\color{green}e_{x} e_{y}} + u_{y} v_{x} {\color{green}e_{y} e_{x}} + u_{y} v_{y} {\color{red}e_{y} e_{y}} \\ &= u_{x} v_{x} {\color{red}(1)} + u_{y} v_{y} {\color{red}(1)} + u_{x} v_{y} {\color{green}e_{x} e_{y}} - u_{y} v_{x} {\color{green}e_{x} e_{y}} \\ &= (u_{x} v_{x} + u_{y} v_{y}){\color{red}(1)} + (u_{x} v_{y} - u_{y} v_{x}) {\color{green}e_{xy}} \\ &= {\color{red}\text{scalar}} + {\color{green}\text{bivector}} \end{split}$

As stated above A scalar plus a bivector (or any number of blades of different grade) is called a multivector. The idea of adding a scalar and a bivector might seem wrong but in the real world it just means that what appears to be a single equation is in fact a set of *simultaneous equations.

For example:

would just mean that:
$\displaystyle (u_{x} v_{x} + u_{y} v_{y}){\color{red}(1)} = 5 \\ \quad \quad \quad \text{and} \\ (u_{x} v_{y} - u_{y} v_{x}) {\color{green}e_{xy}} = 0$

### Basis

Every multivector of the Clifford algebra can be expressed as a linear combination of the canonical basis elements. The basis elements of the Clifford algebra Cℓ3 are and the general element of Cℓ3 is given by

If are all real then the Clifford algebra is Cℓ3(R). If the coefficients are allowed to be complex then the Clifford algebra is Cℓ3(C).

A multivector can be separated into components of different grades:

$\displaystyle \langle \mathbf{A} \rangle_0 = a_0{\color{red}(1)}\\ \langle \mathbf{A} \rangle_1 = a_1 {\color{blue}e_x} + a_2 {\color{blue}e_y} + a_3 {\color{blue}e_z}\\ \langle \mathbf{A} \rangle_2 = a_4 {\color{green}e_{xy}} + a_5 {\color{green}e_{xz}} + a_6 {\color{green}e_{yz}}\\ \langle \mathbf{A} \rangle_3 = a_7 {\color{orange}e_{xyz}}\\$

The elements of even grade form a subalgebra because the sum or product of even grade elements always results in an element of even grade. The elements of odd grade do not form a subalgebra.

### Relation to other algebras

$\displaystyle Cℓ_0 (\mathbf{R})$ : Real numbers (scalars). A scalar can (and should) be thought of as zero vectors multiplied together. See Empty product.

$\displaystyle Cℓ_0 (\mathbf{C})$ : Complex numbers

$\displaystyle Cℓ_1 (\mathbf{R})$ : Split-complex numbers

$\displaystyle Cℓ_1 (\mathbf{C})$ : Bicomplex numbers

$\displaystyle Cℓ_2^0 (\mathbf{R})$ : Complex numbers (The superscript 0 indicates the even subalgebra)

$\displaystyle Cℓ_3^0 (\mathbf{R})$ : Quaternions

$\displaystyle Cℓ_3^0 (\mathbf{C})$ : Biquaternions

### Multivector multiplication using tensors

To find the product

we have to multiply every component of the first multivector with every component of the second multivector.

$split}"): {\displaystyle \begin{split} AB = & \phantom{+} (a_0 b_0 {\color{red}1}{\color{red}1} + a_0 b_1 {\color{red}1}{\color{blue} e_{x}} + a_0 b_2 {\color{red}1}{\color{blue} e_{y}} + a_0 b_3 {\color{red}1}{\color{green} e_{xy}}) \\ &+ (a_1 b_0 {\color{blue} e_{x}}{\color{red}1} + a_1 b_1 {\color{blue} e_{x}}{\color{blue} e_{x}} + a_1 b_2 {\color{blue} e_{x}}{\color{blue} e_{y}} + a_1 b_3 {\color{blue} e_{x}}{\color{green} e_{xy}}) \\ &+ (a_2 b_0 {\color{blue} e_{y}}{\color{red}1} + a_2 b_1 {\color{blue} e_{y}}{\color{blue} e_{x}} + a_2 b_2 {\color{blue} e_{y}}{\color{blue} e_{y}} + a_2 b_3 {\color{blue} e_{y}}{\color{green} e_{xy}}) \\ &+ (a_3 b_0 {\color{green} e_{xy}}{\color{red}1} + a_3 b_1 {\color{green} e_{xy}}{\color{blue} e_{x}} + a_3 b_2 {\color{green} e_{xy}}{\color{blue} e_{y}} + a_3 b_3 {\color{green} e_{xy}}{\color{green} e_{xy}}) \end{split}$

Then we reduce each of the 16 resulting terms to its standard form.

$split}"): {\displaystyle \begin{split} AB = & \phantom{+} (a_0 b_0 {\color{red}1} + a_0 b_1 {\color{blue} e_{x}} + a_0 b_2 {\color{blue} e_{y}} + a_0 b_3 {\color{green} e_{xy}}) \\ &+ (a_1 b_0 {\color{blue} e_{x}} + a_1 b_1 {\color{red}1} + a_1 b_2 {\color{green} e_{xy}} + a_1 b_3 {\color{blue} e_{y}}) \\ &+ (a_2 b_0 {\color{blue} e_{y}} - a_2 b_1 {\color{green} e_{xy}} + a_2 b_2 {\color{red}1} - a_2 b_3 {\color{blue} e_{x}}) \\ &+ (a_3 b_0 {\color{green} e_{xy}} - a_3 b_1 {\color{blue} e_{y}} + a_3 b_2 {\color{blue} e_{x}} - a_3 b_3 {\color{red}1}) \end{split}$

Finally we collect like products into the four components of the final multivector.

$split}"): {\displaystyle \begin{split} AB = & \phantom{+} ( a_0 b_0 + a_1 b_1 + a_2 b_2 - a_3 b_3 ) {\color{red}1} \\ &+ ( a_1 b_0 + a_0 b_1 + a_3 b_2 - a_2 b_3 ) {\color{blue} e_{x} } \\ &+ ( a_2 b_0 - a_3 b_1 + a_0 b_2 + a_1 b_3 ) {\color{blue} e_{y} } \\ &+ ( a_3 b_0 - a_2 b_1 + a_1 b_2 + a_0 b_3 ) {\color{green} e_{xy} } \end{split}$

This is all very tedious and error-prone. It would be nice if there was some way to cut straight to the end. Tensor notation allows us to do just that.

To find the tensor that we need we first need to know which terms end up as scalars, which terms end up as vectors...etc. There is an easy way to do this and it involves the multiplication table.

First lets start with an easy one.

#### Complex numbers

The multiplication table for $\displaystyle Cℓ_2^0 (\mathbf{R})$

We can see then that:

It worked! All the terms in the first row are scalars and all the terms in the second row are bivectors. This is exactly what we are looking for.

Pay special attention to the signs in the final matrix above.

Therefore to find the product

We would multiply:

Each row of the final matrix has exactly the right terms with exactly the right signs.

The vector above represents a complex number. You should think of the first column of the matrix above as representing another complex number. All the other terms in the matrix are just there to make our lives a little bit easier.

It works. It works so well that complex numbers can be represented as matrices as:

Which for some odd reason corresponds perfectly to a multiplication table for complex numbers:

#### Quaternions

The multiplication table for $\displaystyle Cℓ_3^0 (\mathbf{R})$ is:

The entire 2nd row of the multiplication table is just multiplied by the entire first row.
The entire 3rd row of the multiplication table is just multiplied by the entire first row.
The entire 4th row of the multiplication table is just multiplied by the entire first row.

We can see then that if we multiply each row by the first row again then we get:

This works because we have in effect multiplied each term by a second term twice. In other words we have multiplied every term by the square of another term and the square of every term is either 1 or -1.

Therefore to find the product

We would multiply:

Just as complex numbers can be represented as matrices, so a quaternion can be represented as:

Which corresponds to a multiplication table for quaternions:

 1 −k −j −i k 1 i −j j −i 1 k i j −k 1

#### CL2

The multiplication table for $\displaystyle Cℓ_{2} (\mathbf{R})$ is:

We can see then that:

Therefore to find the product

We would multiply:

$\displaystyle \left( \begin{array}{rrrr} {\color{red} b_0 } & {\color{blue} b_1 } & \phantom{-} {\color{blue} b_2 } & {\color{green} -b_3 } \\ {\color{blue} b_1 } & {\color{red} b_0 } & {\color{green} b_3 } & {\color{blue} {-b_2 }} \\ {\color{blue} b_2 } & {\color{green} -b_3 } & {\color{red} b_0 } & {\color{blue} b_1 } \\ {\color{green} b_3 } & {\color{blue} -b_2 } & {\color{blue} {b_1 }} & {\color{red} b_0 } \end{array} \right) \left( \begin{array}{rrrr} {\color{red} a_0 } \\ {\color{blue} a_1 } \\ {\color{blue} a_2 } \\ {\color{green} a_3 } \end{array} \right) = \left( \begin{array}{rrrr} {\color{red} b_0 } {\color{red} a_0 } & + & {\color{red} b_1 } {\color{red} a_1 } & + & {\color{red} b_2 } {\color{red} a_2 } & - & {\color{red} b_3 } {\color{red} a_3 } \\ {\color{blue} b_1 } {\color{blue} a_0 } & + & {\color{blue} b_0 } {\color{blue} a_1 } & + & {\color{blue} b_3 } {\color{blue} a_2 } & - & {\color{blue} {b_2 }} {\color{blue} a_3 } \\ {\color{blue} b_2 } {\color{blue} a_0 } & - & {\color{blue} b_3 } {\color{blue} a_1 } & + & {\color{blue} b_0 } {\color{blue} a_2 } & + & {\color{blue} b_1 } {\color{blue} a_3 } \\ {\color{green} b_3 } {\color{green} a_0 } & - & {\color{green} b_2 } {\color{green} a_1 } & + & {\color{green} {b_1 }} {\color{green} a_2 } & + & {\color{green} b_0 } {\color{green} a_3 } \end{array} \right)$

In 0 dimensions:

In 1 dimension:

In 2 dimensions:

In 3 dimensions:

In 4 dimensions:

In 5 dimensions:

In 6 dimensions:

In 7 dimensions:

In 8 dimensions:

In 9 dimensions:

### Bivectors in higher dimensions

A simple bivector can be used to represent a single rotation. But in four dimensions a rigid object can rotate in two different ways simultaneously. Such a rotation can only be represented as the sum of two simple bivectors. In six dimensions a rigid object can rotate in three different ways simultaneously. Such a rotation can only be represented as the sum of three simple bivectors.

The wedge product of two vectors is a bivector, but not all bivectors are wedge products of two vectors. For example, in four dimensions the bivector

cannot be written as the wedge product of two vectors. A bivector that can be written as the wedge product of two vectors is simple. In two and three dimensions all bivectors are simple, but not in four or more dimensions;

A bivector has a real square if and only if it is simple.

But:

### Other quadratic forms

The square of a vector is:

$split}"): {\displaystyle \begin{split} \mathbf{v} \mathbf{v} &= (v_{x} {\color{blue}e_{x}} + v_{y} {\color{blue}e_{y}}) (v_{x} {\color{blue}e_{x}} + v_{y} {\color{blue}e_{y}}) \\ &= v_{x} v_{x} {\color{red}e_{x} e_{x}} + v_{x} v_{y} {\color{green}e_{x} e_{y}} + v_{y} v_{x} {\color{green}e_{y} e_{x}} + v_{y} v_{y} {\color{red}e_{y} e_{y}} \\ &= v_{x} v_{x} {\color{red}(1)} + v_{y} v_{y} {\color{red}(1)} + v_{x} v_{y} {\color{green}e_{x} e_{y}} - v_{y} v_{x} {\color{green}e_{x} e_{y}} \\ &= (v_{x} v_{x} + v_{y} v_{y}){\color{red}(1)} + (v_{x} v_{y} - v_{y} v_{x}) {\color{green}e_{xy}} \\ &= (v_{x}^2 + v_{y}^2){\color{red}(1)} + (0) {\color{green}e_{xy}} \\ &= (v_{x}^2 + v_{y}^2){\color{red}(1)} \\ &= {\color{red}\text{scalar}} \end{split}$
() is called the quadratic form.

Every nondegenerate quadratic form on a finite-dimensional real vector space is equivalent to the standard diagonal form:

where n = p + q is the dimension of the vector space. The pair of integers (p, q) is called the *signature of the quadratic form. The real vector space with this quadratic form is often denoted Rp,q. The Clifford algebra on Rp,q is denoted Cℓp,q(R). The symbol Cℓn(R) means either Cℓn,0(R) or Cℓ0,n(R) depending on whether the author prefers positive-definite or negative-definite spaces.

A standard basis {ei} for Rp,q consists of n = p + q mutually orthogonal vectors, p of which square to +1 and q of which square to −1. The algebra Cℓp,q(R) will therefore have p vectors that square to +1 and q vectors that square to −1.

*Spacetime algebra (STA) is a name for the Clifford algebra Cl3,1(R), or equivalently the geometric algebra G(M4), which can be particularly closely associated with the geometry of special relativity and relativistic spacetime. See also *Algebra of physical space.

The spacetime algebra may be built up from an orthogonal basis of one time-like vector and three space-like vectors, , with the multiplication rule

where is the Minkowski metric with signature (− + + +).

Thus:

The basis vectors share these properties with the *Gamma matrices, but no explicit matrix representation need be used in STA.

$\displaystyle Cℓ_{3,0} (\mathbf{R})$ :Algebra of physical space (Time = scalar)

$\displaystyle Cℓ_{3,1} (\mathbf{R})$ :Spacetime algebra (Time = vector)

$\displaystyle Cℓ_{0,2} (\mathbf{R})$ :Quaternions (Three quaternions = two vectors that square to -1 and one bivector that squares to -1)

### Pauli matrices and Tensors

Clifford algebra in two and three dimensions has the same multiplication table as Pauli matrices () so it is tempting to assume that Clifford algebra is derived from Pauli matrices. But in fact, I think it would be more accurate to say that tensors in general owe their properties to, and are ultimately derived from, Clifford algebra rather than the other way around.

$split}"): {\displaystyle \begin{split} \mathbf{u} \otimes \mathbf{v} &= \begin{bmatrix} u_{x} {\color{blue} e_{x}} \\ u_{y} {\color{blue} e_{y}} \end{bmatrix} \begin{bmatrix} v_{x} {\color{blue}e_{x}} & v_{y} {\color{blue}e_{y}} \end{bmatrix} \\ \\ &= \begin{bmatrix} u_{x} v_{x} {\color{red} e_{x} e_{x} } & u_{x} v_{y} {\color{green} e_{x} e_{y} } \\ u_{y} v_{x} {\color{green} e_{y} e_{x} } & u_{y} v_{y} {\color{red} e_{y} e_{y} } \end{bmatrix} \end{split}\\ \\ \\ \\$
$split}"): {\displaystyle \begin{split} (\mathbf{u} \otimes \mathbf{v}) \cdot (\mathbf{v})^{-1} &= \begin{bmatrix} u_{x} v_{x} {\color{red} e_{x} e_{x} } & u_{x} v_{y} {\color{green} e_{x} e_{y} } \\ u_{y} v_{x} {\color{green} e_{y} e_{x} } & u_{y} v_{y} {\color{red} e_{y} e_{y} } \end{bmatrix} \cdot \begin{bmatrix} v_{x} {\color{blue} e_{x}} \\ v_{y} {\color{blue} e_{y}} \end{bmatrix}^{-1} \\ \\ &= \begin{bmatrix} u_{x} v_{x} {\color{red} e_{x} e_{x} } & u_{x} v_{y} {\color{green} e_{x} e_{y} } \\ u_{y} v_{x} {\color{green} e_{y} e_{x} } & u_{y} v_{y} {\color{red} e_{y} e_{y} } \end{bmatrix} \cdot \begin{bmatrix} v_{x} {\color{blue} e_{x}} (v_x^2 + v_y^2)^{-1} \\ v_{y} {\color{blue} e_{y}} (v_x^2 + v_y^2)^{-1} \end{bmatrix} \\ \\ &= \begin{bmatrix} u_{x} v_{x} {\color{red} e_{x} e_{x} } v_{x} e_{x} (v_x^2 + v_y^2)^{-1} + u_{x} v_{y} {\color{green} e_{x} e_{y} } v_{y} e_{y} (v_x^2 + v_y^2)^{-1} \\ u_{y} v_{x} {\color{green} e_{y} e_{x} } v_{x} e_{x} (v_x^2 + v_y^2)^{-1} + u_{y} v_{y} {\color{red} e_{y} e_{y} } v_{y} e_{y} (v_x^2 + v_y^2)^{-1} \end{bmatrix} \\ \\ &= \begin{bmatrix} (u_{x} v_{x} {\color{red} e_{x} e_{x} } v_{x} e_{x} + u_{x} v_{y} {\color{green} e_{x} e_{y} } v_{y} e_{y}) (v_x^2 + v_y^2)^{-1} \\ (u_{y} v_{x} {\color{green} e_{y} e_{x} } v_{x} e_{x} + u_{y} v_{y} {\color{red} e_{y} e_{y} } v_{y} e_{y}) (v_x^2 + v_y^2)^{-1} \end{bmatrix} \\ \\ &= \begin{bmatrix} (u_{x} v_{x} v_{x} {\color{red} e_{x} e_{x} } e_{x} + u_{x} v_{y} v_{y} {\color{green} e_{x} e_{y} } e_{y}) (v_x^2 + v_y^2)^{-1} \\ (u_{y} v_{x} v_{x} {\color{green} e_{y} e_{x} } e_{x} + u_{y} v_{y} v_{y} {\color{red} e_{y} e_{y} } e_{y}) (v_x^2 + v_y^2)^{-1} \end{bmatrix} \\ \\ &= \begin{bmatrix} (u_{x} v_{x} v_{x} e_{x} {\color{red}e_{x} e_{x}} + u_{x} v_{y} v_{y} e_{x} {\color{red}e_{y} e_{y}}) (v_x^2 + v_y^2)^{-1} \\ (u_{y} v_{x} v_{x} e_{y} {\color{red}e_{x} e_{x}} + u_{y} v_{y} v_{y} e_{y} {\color{red}e_{y} e_{y}}) (v_x^2 + v_y^2)^{-1} \end{bmatrix} \\ \\ &= \begin{bmatrix} (u_{x} v_{x} v_{x} {\color{blue}e_{x}} + u_{x} v_{y} v_{y} {\color{blue}e_{x}}) (v_x^2 + v_y^2)^{-1} \\ (u_{y} v_{x} v_{x} {\color{blue}e_{y}} + u_{y} v_{y} v_{y} {\color{blue}e_{y}}) (v_x^2 + v_y^2)^{-1} \end{bmatrix} \\ \\ &= \begin{bmatrix} u_{x} {\color{blue}e_{x}} (v_{x} v_{x} + v_{y} v_{y}) (v_x^2 + v_y^2)^{-1} \\ u_{y} {\color{blue}e_{y}} (v_{x} v_{x} + v_{y} v_{y}) (v_x^2 + v_y^2)^{-1} \end{bmatrix} \\ \\ &= \begin{bmatrix} u_{x} {\color{blue}e_{x}} \\ u_{y} {\color{blue}e_{y}} \end{bmatrix} \\ \\ \\ &= \mathbf{u} \end{split}$

The dot product behaves more like division than multiplication!

### Geometric calculus

In calculus units like feet or seconds behave like constants

And:

But:

#### Derivatives in three dimensions

The derivative of a scalar function:

which is similar to the total differential which is a differential form:

The derivative of a vector function:

The derivative of a bivector function:

The derivative of a pseudoscalar function:

### Classical mechanics

Classical mechanics

The derivative of potential is force:

Assuming time is a scalar:

And:

The rate at which energy is transferred from the electromagnetic field to the particle is:

### Maxwell's equations

E(x, y, z, t) and B(x, y, z, t) are vector fields called the electric field and the magnetic field.

The behaviour of electric and magnetic fields, whether in cases of electrostatics, magnetostatics, or electrodynamics (electromagnetic fields), is governed by Maxwell's equations:

 Maxwell's equations (vector fields) Gauss's law Gauss's law for magnetism Ampère–Maxwell law Faraday's law

where ρ is the charge density, ε0 is the electric constant, μ0 is the magnetic constant, and J is the current per unit area.

#### Algebra of physical space

In geometric algebra two multivectors are introduced. One for the field and one for the current.

The field multivector, known as the *Riemann–Silberstein vector, is
The current multivector is
where, in the *algebra of physical space (APS) with the vector basis . The unit *pseudoscalar is (assuming an *orthonormal basis). Orthonormal basis vectors share the algebra of the *Pauli matrices, but are usually not equated with them.

After defining the derivative

Maxwell's equations are reduced to the single equation[1]

In three dimensions, the derivative has a special structure allowing the introduction of a cross product:

from which it is easily seen that Gauss's law is the scalar part, the Ampère–Maxwell law is the vector part, Faraday's law is the pseudovector part, and Gauss's law for magnetism is the pseudoscalar part of the equation. After expanding and rearranging, this can be written as

#### Spacetime algebra

We can identify APS as a subalgebra of the *spacetime algebra (STA) , defining and . The s have the same algebraic properties of the *gamma matrices but their matrix representation is not needed. The derivative is now

The Riemann–Silberstein becomes a bivector

and the charge and current density become a vector

Owing to the identity

Maxwell's equations reduce to the single equation

## References

1. Oersted Medal Lecture David Hestenes "Reforming the Mathematical Language of Physics" (Am. J. Phys. 71 (2), February 2003, pp. 104–121) Online:http://geocalc.clas.asu.edu/html/Oersted-ReformingTheLanguage.html p26