Geometric algebra is an extension of vector algebra, providing additional algebraic structures on vector spaces, with geometric interpretations.
Vector algebra uses all dimensions and signatures, as does geometric algebra, notably 3+1 spacetime as well as 2 dimensions.
Geometric algebra (GA) is an extension or completion of vector algebra (VA). The reader is herein assumed to be familiar with the basic concepts and operations of VA and this article will mainly concern itself with operations in
lG3
The fundamental difference is that GA provides a new product of vectors called the "geometric product". Elements of GA are graded multivectors: scalars are grade 0, usual vectors are grade 1, bivectors are grade 2 and the highest grade (3 in the 3D case) is traditionally called the pseudoscalar and designated
I
The ungeneralized 3D vector form of the geometric product is:
ab=a ⋅ b+a\wedgeb
In VA, entities such as pseudovectors and pseudoscalars need to be bolted on, whereas in GA the equivalent bivector and pseudovector respectively exist naturally as subspaces of the algebra.
For example, applying vector calculus in 2 dimensions, such as to compute torque or curl, requires adding an artificial 3rd dimension and extending the vector field to be constant in that dimension, or alternately considering these to be scalars. The torque or curl is then a normal vector field in this 3rd dimension. By contrast, geometric algebra in 2 dimensions defines these as a pseudoscalar field (a bivector), without requiring a 3rd dimension. Similarly, the scalar triple product is ad hoc, and can instead be expressed uniformly using the exterior product and the geometric product.
Here are some comparisons between standard
{R}3
Many of these relationships only require the introduction of the exterior product to generalize, but since that may not be familiar to somebody with only a background in vector algebra and calculus, some examples are given.
u x v
u
v
u\wedgev
We have the pseudoscalar
I=e1e2e3
e1I=Ie1=e2e3
I(e2\wedgee3)=Ie2e3=-e1
e2\wedgee3
This yields a convenient definition for the cross product of traditional vector algebra:
{u} x {v}=-I({u}\wedge{v})
The
I
I2=(e1e2
2 | |
e | |
3) |
=e1e2e3e1e2e3 =-e1e2e1e3e2e3 =e1e1e2e3e2e3 =-e3e2e2e3 =-1
The equivalence of the
R3
-I=-{e1}{e2}{e3}
u\wedgev=\sum1\leq(uivj-viuj){ei}\wedge{ej} =\sum1\leq(uivj-viuj){ei}{ej}
See also Cross product as an exterior product. Essentially, the geometric product of a bivector and the pseudoscalar of Euclidean 3-space provides a method of calculation of the Hodge dual.
The pseudovector/bivector subalgebra of the geometric algebra of Euclidean 3-dimensional space form a 3-dimensional vector space themselves. Let the standard unit pseudovectors/bivectors of the subalgebra be
i=
e2 |
e3 |
j=
e1 |
e3 |
k=
e1 |
e2 |
A x B=\tfrac{1}{2}(AB-BA)
AB
From the definition of the commutator product,
i
j
k
The anti-commutativity of the commutator product also implies that
These equalities and properties are sufficient to determine the commutator product of any two pseudovectors/bivectors
A
B
Their commutator product
A x B
Ordinarily,
{\Vertu\Vert}2=u ⋅ u
Making use of the geometric product and the fact that the exterior product of a vector with itself is zero:
uu={\Vertu\Vert}2={u}2=u ⋅ u+u\wedgeu=u ⋅ u
In three dimensions the product of two vector lengths can be expressed in terms of the dot and cross products
{\Vertu\Vert}2{\Vertv\Vert}2 = ({u ⋅ v
The corresponding generalization expressed using the geometric product is
{\Vertu\Vert}2{\Vertv\Vert}2 =({u ⋅ v
This follows from expanding the geometric product of a pair of vectors with its reverse
(uv)(vu)=({u ⋅ v
u x v=\sumi<j{\begin{vmatrix}ui&uj\\vi&vj\end{vmatrix}{e}i x {e}j}
u\wedgev=\sumi<j{\begin{vmatrix}ui&uj\\vi&vj\end{vmatrix}{e}i\wedge{e}j}
Linear algebra texts will often use the determinant for the solution of linear systems by Cramer's rule or for and matrix inversion.
An alternative treatment is to axiomatically introduce the wedge product, and then demonstrate that this can be used directly to solve linear systems. This is shown below, and does not require sophisticated math skills to understand.
It is then possible to define determinants as nothing more than the coefficients of the wedge product in terms of "unit k-vectors" (
{e}i\wedge{e}j
A one-by-one determinant is the coefficient of
e1
R1
A two-by-two determinant is the coefficient of
e1\wedgee2
R2
A three-by-three determinant is the coefficient of
e1\wedgee2\wedgee3
R3
...
When linear system solution is introduced via the wedge product, Cramer's rule follows as a side-effect, and there is no need to lead up to the end results with definitions of minors, matrices, matrix invertibility, adjoints, cofactors, Laplace expansions, theorems on determinant multiplication and row column exchanges, and so forth.
Matrix inversion (Cramer's rule) and determinants can be naturally expressed in terms of the wedge product.
The use of the wedge product in the solution of linear equations can be quite useful for various geometric product calculations.
Traditionally, instead of using the wedge product, Cramer's rule is usually presented as a generic algorithm that can be used to solve linear equations of the form
Ax=b
x=
1 | |
|A| |
\operatorname{adj}(A)b.
This is a useful theoretic result. For numerical problems row reduction with pivots and other methods are more stable and efficient.
When the wedge product is coupled with the Clifford product and put into a natural geometric context, the fact that the determinants are used in the expression of
{R}N
As is also shown below, results such as Cramer's rule also follow directly from the wedge product's selection of non-identical elements. The result is then simple enough that it could be derived easily if required instead of having to remember or look up a rule.
Two variables example
\begin{bmatrix}a&b\end{bmatrix}\begin{bmatrix}x\ y\end{bmatrix}=ax+by=c.
Pre- and post-multiplying by
a
b
(ax+by)\wedgeb=(a\wedgeb)x=c\wedgeb
a\wedge(ax+by)=(a\wedgeb)y=a\wedgec
Provided
a\wedgeb ≠ 0
\begin{bmatrix}x\ y\end{bmatrix}=
1 | |
a\wedgeb |
\begin{bmatrix}c\wedgeb\ a\wedgec\end{bmatrix}.
For
a,b\in{R}2
{e}1\wedge{e}2
u\wedgev=\begin{vmatrix}u1&u2\ v1&v2\end{vmatrix}{e}1\wedge{e}2
Similarly, for three, or N variables, the same ideas hold
\begin{bmatrix}a&b&c\end{bmatrix}\begin{bmatrix}x\ y\ z\end{bmatrix}=d
\begin{bmatrix}x\ y\ z\end{bmatrix}=
1 | |
a\wedgeb\wedgec |
\begin{bmatrix} d\wedgeb\wedgec\\ a\wedged\wedgec\\ a\wedgeb\wedged \end{bmatrix}
Again, for the three variable three equation case this is Cramer's rule since the
{e}1\wedge{e}2\wedge{e}3
A numeric example with three equations and two unknowns:In case there are more equations than variables and the equations have a solution, then each of the k-vector quotients will be scalars.
To illustrate here is the solution of a simple example with three equations and two unknowns.
\begin{bmatrix}1\ 1\ 0\end{bmatrix} x+\begin{bmatrix}1\ 1\ 1\end{bmatrix} y=\begin{bmatrix}1\ 1\ 2\end{bmatrix}
The right wedge product with
(1,1,1)
x
\begin{bmatrix}1\ 1\ 0\end{bmatrix} \wedge \begin{bmatrix}1\ 1\ 1\end{bmatrix} x=\begin{bmatrix}1\ 1\ 2\end{bmatrix} \wedge \begin{bmatrix}1\ 1\ 1\end{bmatrix}
(1,1,0)
y
\begin{bmatrix}1\ 1\ 0\end{bmatrix} \wedge \begin{bmatrix}1\ 1\ 1\end{bmatrix} y=\begin{bmatrix}1\ 1\ 0\end{bmatrix} \wedge \begin{bmatrix}1\ 1\ 2\end{bmatrix}.
Observe that both of these equations have the same factor, soone can compute this only once (if this was zero it wouldindicate the system of equations has no solution).
Collection of results for
x
y
\begin{bmatrix}x\ y\end{bmatrix} =
1 | |
(1,1,0)\wedge(1,1,1) |
\begin{bmatrix} (1,1,2)\wedge(1,1,1)\\ (1,1,0)\wedge(1,1,2) \end{bmatrix}.
Writing
{e}i\wedge{e}j={e}ij
\begin{bmatrix}x\ y\end{bmatrix} =
1 | |
{e |
13+{e}23
For the plane of all points
{r}
{r}0
{r}1
{r}2
(({r}2-{r}0) x ({r}1-{r}0)) ⋅ ({r}-{r}0)=0.
The equivalent wedge product equation is
({r}2-{r}0)\wedge({r}1-{r}0)\wedge({r}-{r}0)=0.
Using the Gram–Schmidt process a single vector can be decomposed into two components with respect to a reference vector, namely the projection onto a unit vector in a reference direction, and the difference between the vector and that projection.
With
\hat{u}=u/{\Vertu\Vert}
v
\hat{u}
Proj{\hat{u
Orthogonal to that vector is the difference, designated the rejection,
v-\hat{u}(\hat{u} ⋅ v)=
1 | |
{\Vertu\Vert |
2}({\Vertu\Vert}2v-u(u ⋅ v))
The rejection can be expressed as a single geometric algebraic product in a few different ways
u | |
{u |
2}(uv-u ⋅ v) =
1 | |
u |
(u\wedgev) =\hat{u}(\hat{u}\wedgev) =(v\wedge\hat{u})\hat{u}
The similarity in form between the projection and the rejection is notable. The sum of these recovers the original vector
v=\hat{u}(\hat{u} ⋅ v)+\hat{u}(\hat{u}\wedgev)
Here the projection is in its customary vector form. An alternate formulation is possible that puts the projection in a form that differs from the usual vector formulation
v =
1 | |
u |
({u} ⋅ v)+
1 | |
u |
({u}\wedgev) =({v} ⋅ u)
1 | |
u |
+(v\wedgeu)
1 | |
u |
Working backwards from the result, it can be observed that this orthogonal decomposition result can in fact follow more directly from the definition of the geometric product itself.
v=\hat{u}\hat{u}v=\hat{u}(\hat{u} ⋅ v+\hat{u}\wedgev)
With this approach, the original geometrical consideration is not necessarily obvious, but it is a much quicker way to get at the same algebraic result.
However, the hint that one can work backwards, coupled with the knowledge that the wedge product can be used to solve sets of linear equations (see: http://www.grassmannalgebra.info/grassmannalgebra/book/bookpdf/TheExteriorProduct.pdf), the problem of orthogonal decomposition can be posed directly,
Let
v=au+x
u ⋅ x=0
v
u
u\wedgev=u\wedge(au+x)=u\wedgex
Here the geometric product can be employed
u\wedgev=u\wedgex=ux-u ⋅ x=ux
Because the geometric product is invertible, this can be solved for x:
x=
1 | |
u |
(u\wedgev).
The same techniques can be applied to similar problems, such as calculation of the component of a vector in a plane and perpendicular to the plane.
For three dimensions the projective and rejective components of a vector with respect to an arbitrary non-zero unit vector, can be expressed in terms of the dot and cross product
v=(v ⋅ \hat{u})\hat{u}+\hat{u} x (v x \hat{u}).
For the general case the same result can be written in terms of the dot and wedge product and the geometric product of that and the unit vector
v=(v ⋅ \hat{u})\hat{u}+(v\wedge\hat{u})\hat{u}.
It's also worthwhile to point out that this result can also be expressed using right or left vector division as defined by the geometric product:
v=(v ⋅
|
+(v\wedgeu)
1 | |
u |
v=
1 | |
u |
(u ⋅ v)+
1 | |
u |
(u\wedgev).
Like vector projection and rejection, higher-dimensional analogs of that calculation are also possible using the geometric product.
As an example, one can calculate the component of a vector perpendicular to a plane and the projection of that vector onto the plane.
Let
w=au+bv+x
u ⋅ x=v ⋅ x=0
w
u
v
w\wedgeu\wedgev=(au+bv+x)\wedgeu\wedgev=x\wedgeu\wedgev.
Having done this calculation with a vector projection, one can guess that this quantity equals
x(u\wedgev)
x =(w\wedgeu\wedgev)
1 | |
u\wedgev |
=
1 | |
u\wedgev |
(u\wedgev\wedgew).
Notice the similarities between this planar rejection result and the vector rejection result. To calculate the component of a vector outside of a plane we take the volume spanned by three vectors (trivector) and "divide out" the plane.
Independent of any use of the geometric product it can be shown that this rejection in terms of the standard basis is
x=
1 | |
(Au,v)2 |
\sumi<j<k\begin{vmatrix}wi&wj&wk\\ui&uj&uk\\vi&vj&vk\\\end{vmatrix} \begin{vmatrix}ui&uj&uk\\vi&vj&vk\ {e}i&{e}j&{e}k\ \end{vmatrix}
(Au,v)2 =\sumi<j\begin{vmatrix}ui&uj\\vi&vj\end{vmatrix} =-(u\wedgev)2
u
v
The (squared) magnitude of
x
{\Vertx\Vert}2= x ⋅ w=
1 | |
(Au,v)2 |
\sumi<j<k{\begin{vmatrix}wi&wj&wk\\ui&uj&uk\\vi&vj&vk\\\end{vmatrix}}2
Thus, the (squared) volume of the parallelopiped (base area times perpendicular height) is
\sumi<j<k{\begin{vmatrix}wi&wj&wk\\ui&uj&uk\\vi&vj&vk\\\end{vmatrix}}2
Note the similarity in form to the w, u, v trivector itself
\sumi<j<k{\begin{vmatrix}wi&wj&wk\\ui&uj&uk\\vi&vj&vk\\\end{vmatrix}}{e}i\wedge{e}j\wedge{e}k,
{e}i\wedge{e}j\wedge{e}k
If a vector is factored directly into projective and rejective terms using the geometric product
v=
1 | |
u |
(u ⋅ v+u\wedgev)
Let
r =
1 | |
u |
(u\wedgev) =
u | |
u2 |
(u\wedgev)=
1 | |
{\Vertu\Vert |
2}u(u\wedgev)
It can be shown that
r=
1 | |
{\Vert{u |
\Vert}2}\sumi<j\begin{vmatrix}ui&uj\\vi&vj\end{vmatrix} \begin{vmatrix}ui&uj\ ei&ej\end{vmatrix}
r=v-\hat{u}(\hat{u} ⋅ v)
The rejective term is perpendicular to
u
\begin{vmatrix}ui&uj\ ui&uj\end{vmatrix}=0
r ⋅ u=0
The magnitude of
r
{\Vertr\Vert}2=r ⋅ v=
1 | |
{\Vert{u |
\Vert}2}\sumi<j\begin{vmatrix}ui&uj\\vi&
2 | |
v | |
j\end{vmatrix} |
.
So, the quantity
{\Vertr\Vert}2{\Vert{u}\Vert}2=\sumi<j\begin{vmatrix}ui&uj\\vi&
2 | |
v | |
j\end{vmatrix} |
u
v
It is also noteworthy that the bivector can be expressed as
u\wedgev=\sumi<j{\begin{vmatrix}ui&uj\\vi&vj\end{vmatrix}ei\wedgeej}.
Thus is it natural, if one considers each term
ei\wedgeej
Going back to the geometric product expression for the length of the rejection
1 | |
u |
(u\wedgev)
This may not be a general result for the length of the product of two k-vectors, however it is a result that may help build some intuition about the significance of the algebraic operations. Namely,
When a vector is divided out of the plane (parallelogram span) formed from it and another vector, what remains is the perpendicular component of the remaining vector, and its length is the planar area divided by the length of the vector that was divided out.
If A is the area of the parallelogram defined by u and v, then
A2={\Vertu x v\Vert}2=\sumi<j{\begin{vmatrix}ui&uj\\vi&
2 | |
v | |
j\end{vmatrix}} |
,
A2=-(u\wedgev)2=\sumi<j{\begin{vmatrix}ui&uj\\vi&
2 | |
v | |
j\end{vmatrix}} |
.
Note that this squared bivector is a geometric multiplication; this computation can alternatively be stated as the Gram determinant of the two vectors.
({\sin\theta})2=
{\Vertu x v\Vert | |
2}{{\Vert |
u\Vert}2{\Vertv\Vert}2}
({\sin\theta})2=-
(u\wedgev)2 | |
{u |
2{v}2}
In vector algebra, the volume of a parallelopiped is given by the square root of the squared norm of the scalar triple product:
= \sum_^2
In order to justify the normal to a plane result above, a general examination of the product of a vector and bivector is required. Namely,
This has two parts, the vector part where
i=j
i=k
The trivector term is
w\wedgeu\wedgev
(u\wedgev)w
The properties of this generalized dot product remain to be explored, but first here is a summary of the notation
Let
w=x+y
x=au+bv
y ⋅ u=y ⋅ v=0
w
u\wedgev
With the conditions and definitions above, and some manipulation, it can be shown that the term
y ⋅ (u\wedgev)=0
It can be shown that a unit vector derivative can be expressed using the cross product
d | \left( | |
dt |
r | |
\Vertr\Vert |
\right) =
1 | |
{\Vertr\Vert |
3}\left(r x
dr | |
dt |
\right) x r =\left(\hat{r} x
1 | |
{\Vertr\Vert |
The equivalent geometric product generalization is
d | \left( | |
dt |
r | |
\Vertr\Vert |
\right) =
1 | |
{\Vertr\Vert |
3}r\left(r\wedge
dr | |
dt |
\right) =
1 | |
{r |
Thus this derivative is the component of
1 | |
{\Vertr\Vert |
r
1 | |
{\Vertr\Vert |
\hat{r}
This intuitively makes sense (but a picture would help) since a unit vector is constrained to circular motion, and any change to a unit vector due to a change in its generating vector has to be in the direction of the rejection of
\hat{r}
dr | |
dt |
When the objective isn't comparing to the cross product, it's also notable that this unit vector derivative can be written
{{r}}
d\hat{r | |