# Plane-based geometric algebra

Plane-based geometric algebra is an application of Clifford algebra to modelling planes, lines, points, and rigid transformations. Generally this is with the goal of solving applied problems involving these elements and their intersections, projections, and their angle from one another in 3D space. Originally growing out of research on spin groups, it was developed with applications to robotics in mind. It has since been applied to machine learning, rigid body dynamics, and computer science, especially computer graphics. It is usually combined with a duality operation into a system known as "Projective Geometric Algebra", see below.
Plane-based geometric algebra takes planar reflections as basic elements, and constructs all other transformations and geometric objects out of them. Formally: it identifies planar reflections with the grade-1 elements of a Clifford Algebra, that is, elements that are written with a single subscript such as "${\boldsymbol {e}}_{1}$". With some rare exceptions described below, the algebra is almost always Cl$_{3,0,1}$(R), meaning it has three basis grade-1 elements whose square is $1$ and a single basis element whose square is $0$.
Plane-based GA subsumes a large number of algebraic constructions applied in engineering, including the axis–angle representation of rotations, the quaternion and dual quaternion representations of rotations and translations, the plücker representation of lines, the point normal representation of planes, and the homogeneous representation of points. Dual Quaternions then allow the screw, twist and wrench model of classical mechanics to be constructed.
The plane-based approach to geometry may be contrasted with the approach that uses the cross product, in which points, translations, rotation axes, and plane normals are all modelled as "vectors". However, use of vectors in advanced engineering problems often require subtle distinctions between different kinds of vector because of this, including Gibbs vectors, pseudovectors and contravariant vectors. The latter of these two, in plane-based GA, map to the concepts of "rotation axis" and "point", with the distinction between them being made clear by the notation: rotation axes such as ${\boldsymbol {e}}_{13}$ (two lower indices) are always notated differently than points such as ${\boldsymbol {e}}_{123}$ (three lower indices).
All objects considered below are still "vectors" in the technical sense that they are elements of vector spaces; however they are not (generally) vectors in the sense that one could usefully visualize them as arrows (or take their cross product). Therefore to avoid conflict over different algebraic and visual connotations coming from the word 'vector', this article avoids use of the word.

## Construction

Plane-based geometric algebra starts with planes and then constructs lines and points by taking intersections of planes. Its canonical basis consists of the plane such that $x=0$, which is labelled ${\boldsymbol {e}}_{1}$, the $y=0$, which is labelled ${\boldsymbol {e}}_{2}$, and the $z=0$ plane, ${\boldsymbol {e}}_{3}$.
Other planes may be obtained as weighted sums of the basis planes. for example, ${\boldsymbol {e}}_{2}+{\boldsymbol {e}}_{3}$ would be the plane midway between the y- and z-plane. In general, combining two geometric objects in plane-based GA will always be as a weighted average of them – combining points will give a point between them, as will combining lines, and indeed rotations.
An operation that is as fundamental as addition is the geometric product. For example:
   ${\boldsymbol {e}}_{1}{\boldsymbol {e}}_{23}={\boldsymbol {e}}_{123}$
Here we take ${\boldsymbol {e}}_{1}$, which is a planar reflection in the $x=0$ plane, and ${\boldsymbol {e}}_{23}$, which is a 180-degree rotation around the x-axis. Their geometric product is ${\boldsymbol {e}}_{123}$, which is a point reflection in the origin, because that is the transformation that results from a 180-degree rotation followed by a planar reflection in a plane orthogonal to the rotation's axis.
For any pair of elements A{\textstyle A} and $B$, their geometric product A{\textstyle A}$B$ is the transformation $B$ followed by the transformation A{\textstyle A}. Note that transform composition is not transform application; for example ${\boldsymbol {e}}_{1}{\boldsymbol {e}}_{23}$ is not "${\boldsymbol {e}}_{23}$ transformed by ${\boldsymbol {e}}_{1}$", it is instead the transform ${\boldsymbol {e}}_{23}$ followed by the transform ${\boldsymbol {e}}_{1}$. Transform application is implemented with the sandwich product, see below.
This geometric interpretation is usually combined with the following assertion:
   ${\boldsymbol {e}}_{1}{\boldsymbol {e}}_{1}=1\qquad {\boldsymbol {e}}_{2}{\boldsymbol {e}}_{2}=1\qquad {\boldsymbol {e}}_{3}{\boldsymbol {e}}_{3}=1\qquad {\boldsymbol {e}}_{0}{\boldsymbol {e}}_{0}=0$
The geometric interpretation of the first three defining equations is that if we perform the same planar reflection twice we get back to where we started; e.g. any grade-1 element (plane) multiplied by itself results in the identity function, "$1$". The statement that ${\boldsymbol {e}}_{0}{\boldsymbol {e}}_{0}=0$ is more subtle.

### Elements at infinity

The algebraic element ${\boldsymbol {e}}_{0}$ represents the plane at infinity. It behaves differently from any other plane – intuitively, it can be "approached but never reached". In 3 dimensions, ${\boldsymbol {e}}_{0}$ can be visualized as the sky. Lying in it are the points called "vanishing points", or alternatively "ideal points", or "points at infinity". Parallel lines such as metal rails on a railway line meet one another at such points.
Lines at infinity also exist; the horizon line is an example of such a line. For an observer standing on a plane, all planes parallel to the plane they stand on meet one another at the horizon line. Algebraically, if we take ${\boldsymbol {e}}_{2}$ to be the ground, then ${\boldsymbol {e}}_{2}+5{\boldsymbol {e}}_{0}$ will be a plane parallel to the ground (displaced 5 meters from it). These two parallel planes meet one another at the line-at-infinity ${\boldsymbol {e}}_{02}$.
Most lines, for examples ${\boldsymbol {e}}_{23}$, can act as axes for rotations; in fact they can treated as imaginary quaternions. But lines that lie in the plane-at-infinity ${\boldsymbol {e}}_{0}$, such as the line ${\boldsymbol {e}}_{30}$, cannot act as axes for a "rotation". Instead, these are axes for translations, and instead of having an algebra resembling complex numbers or quaternions, their algebraic behaviour is the same as the dual numbers, since they square to 0. Combining the three basis lines-through-the-origin ${\boldsymbol {e}}_{23}$, ${\boldsymbol {e}}_{13}$, ${\boldsymbol {e}}_{12}$, which square to $-1$, with the three basis lines at infinity ${\boldsymbol {e}}_{10}$, ${\boldsymbol {e}}_{20}$, ${\boldsymbol {e}}_{30}$ gives the necessary elements for (Plücker) coordinates of lines.

### Derivation of other operations from the geometric product

With the geometric product having been defined a transform composition, there are several practically useful operations that can be extracted from it, similar to how the dot product and cross product were extracted from the quaternion product. These include:
* Application of any rigid transformation (dual quaternion) or reflection T{\textstyle T} to any object, including points, lines, planes and indeed other rigid transformations, is TAT$^~${\textstyle TA{\tilde {T}}}, where A{\textstyle A} is object to be transformed. This is known as group conjugation or colloquially as the "sandwich product".
* The meet (or "wedge product") $\wedge$, which is useful for taking intersections of objects; for example, the intersection of the plane $P$ with the line $L$ is the point $P\wedge L$.
* The inner product $\cdot$, which is useful for taking projections of objects onto other objects; the projection of $A$ onto $B$ is $(A\cdot B){\tilde {B}}$ – this formula holds whether the objects are points, lines, or planes.
* The norm of $A$ is ${\sqrt {A{\tilde {A}}}}$ and is denoted $\lVert A\rVert$. It can be used to take angles between most objects: the angle between $A$ and $B$, whether they are lines or planes, is $\arccos(\lVert A\cdot B\rVert )$. This assumes that $A$ and $B$ both have norm $1$, eg $\lVert A\rVert =\lVert B\rVert =1$. Thus it can be seen that the inner product is a generalization of the dot product.
* The transformation from $A$ to $B$ is $1+B{\tilde {A}}$, with $A$ and $B$ being points, lines or planes; here, ${\tilde {A}}$ is the reverse (essentially the inverse). This again assumes $A$ and $B$ have unit norm.
* The commutator product $\times$, defined as 1/2 (AB−BA){\textstyle {\frac {1}{2}}(AB-BA)}. This is related to the Lie Bracket and Poisson bracket. If A{\textstyle A} is the logarithm of a transformation being undergone by object $B$, we have that the derivative with respect to time ${\dot {B}}$ is A{\textstyle A}$\times$$B$.
For example, recall that ${\boldsymbol {e}}_{1}$ is a plane, as is ${\boldsymbol {e}}_{1}+{\boldsymbol {e}}_{2}+{\boldsymbol {e}}_{0}$. Their geometric product is their "reflection composition" – a reflection in ${\boldsymbol {e}}_{1}$ followed by a reflection in ${\boldsymbol {e}}_{1}+{\boldsymbol {e}}_{2}+{\boldsymbol {e}}_{0}$, which results in the dual quaternion $1+{\boldsymbol {e}}_{12}+{\boldsymbol {e}}_{10}$. But this may be more than is desired; if we wish to take only the intersection line of the two planes, we simply need to look at just the "grade-2 part" of this result, e.g. the part with two lower indices ${\boldsymbol {e}}_{12}+{\boldsymbol {e}}_{10}$. The information needed to specify that the intersection line is contained inside the transform composition of the two planes, because a reflection in a pair of planes will result in a rotation around their intersection line.

## Interpretation as algebra of reflections

The algebra of all distance-preserving transformations in 3D is called the Euclidean Group, $E(3)$. By the Cartan–Dieudonné theorem, any element of it, which includes rotations and translations, can be written as a series of reflections in planes.
In plane-based GA, essentially all geometric objects can be thought of as a transformation. Planes such as ${\boldsymbol {e}}_{1}$ are planar reflections, points such as ${\boldsymbol {e}}_{123}$ are point reflections, and lines such as ${\boldsymbol {e}}_{12}$ are line reflections - which in 3D are the same thing as 180-degree rotations. The identity transform is the unique object that is constructed out of zero reflections. All of these are elements of $E(3)$.
Some elements of $E(3)$, for example rotations by any angle that is not 180 degrees, do not have a single specific geometric object which is used to visualize them; nevertheless, they can always be thought of as being made up of reflections, and can always be represented as a linear combination of some elements of objects in plane-based geometric algebra. For example, $0.8+0.6{\boldsymbol {e}}_{12}$ is a slight rotation about the ${\boldsymbol {e}}_{12}$ axis, and it can be written as a geometric product (a transform composition) of ${\boldsymbol {e}}_{1}$ and $0.8{\boldsymbol {e}}_{1}+0.6{\boldsymbol {e}}_{2}$, both of which are planar reflections intersecting at the line ${\boldsymbol {e}}_{12}$.
In fact, any rotation can be written as a composition of two planar reflections that pass through its axis; thus it can be called a 2-reflection. Rotoreflections, glide reflections, and point reflections can also always be written as compositions of 3 planar reflections and so are called 3-reflections. The upper limit of this for 3D is a screw motion, which is a 4-reflection. For this reason, when considering screw motions, it is necessary to use the grade-4 element of 3D plane-based GA, ${\boldsymbol {e}}_{1230}$, which is the highest-grade element.

### Geometric interpretation of geometric product as "cancelling out" reflections

A reflection in a plane followed by a reflection in the same plane results in no change. The algebraic interpretation for this geometry is that grade-1 elements such as ${\boldsymbol {e}}_{1}$ square to 1. This simple fact can be used to give a geometric interpretation for the general behaviour of the geometric product as a device that solves geometric problems by "cancelling mirrors".
To give an example of the usefulness of this, suppose we wish to find a plane orthogonal to a certain line L in 3D and passing through a certain point P. L is a 2-reflection and $P$ is a 3-reflection, so taking their geometric product PL in some sense produces a 5-reflection; however, as in the picture below, two of these reflections cancel, leaving a 3-reflection (sometimes known as a rotoreflection). In the plane-based geometric algebra notation, this rotoreflection can be thought of as a planar reflection "added to" a point reflection. The plane part of this rotoreflection is the plane that is orthogonal to the line L and the original point P. A similar procedure can be used to find the line orthogonal to a plane and passing through a point, or the intersection of a line and a plane, or the intersection line of a plane with another plane.

### Rotations and translations as even subalgebra

Rotations and translations are transformations that preserve distances and handedness (chirality), e.g. when they are applied to sets of objects, the relative distances between those objects does not change; nor does their handedness, which is to say that a right-handed glove will not turn into a left-handed glove. All transformations in 3D euclidean plane-based geometric algebra preserve distances, but reflections, rotoreflections, and transflections do not preserve handedness.
Rotations and translations do preserve handedness, which in 3D Plane-based GA implies that they can be written as a composition of an even number of reflections. A rotations can thought of as a reflection in a plane followed by a reflection in another plane which is not parallel to the first (the quaternions, which are set in the context of PGA above). If the planes were parallel, composing their reflections would give a translation.
Rotations and translations are both special cases of screw motions, e.g. a rotation around a line in space followed by a translation directed along the same line. This group is usually called SE(3), the group of Special (handedness-preserving) Euclidean (distance-preserving) transformations in 3 dimensions. This group has two commonly-used representations that allow them to be used in algebra and computation, one being the 4×4 matrices of real numbers, and the other being the Dual Quaternions. The Dual Quaternion representation (like the usual quaternions) is actually a double cover of SE(3). Since the Dual Quaternions are closed under multiplication and addition and are made from an even number of basis elements in, they are called the even subalgebra of 3D euclidean (plane-based) geometric algebra. The word 'spinor' is sometimes used to describe this subalgebra.
Describing rigid transformations using planes was a major goal in the work of Camille Jordan. and Michel Chasles since it allows the treatment to be dimension-independent.

## Generalizations
### Inversive Geometry

Inversive geometry is the study of geometric objects and behaviours generated by inversions in circles and spheres. Reflections in planes are a special case of inversions in spheres, because a plane is a sphere with infinite radius. Since plane-based geometric algebra is generated by composition of reflections, it is a special case of inversive geometry. Inversive geometry itself can be performed with the larger system known as Conformal Geometric Algebra(CGA), of which Plane-based GA is a subalgebra.
CGA is also usually applied to 3D space, and is able to model general spheres, circles, and conformal (angle-preserving) transformations, which include the transformations seen on the Poincare disk. It can be difficult to see the connection between PGA and CGA, since CGA is often "point based", although some authors take a plane-based approach to CGA which makes the notations for Plane-based GA and CGA identical.

### Projective Geometric Algebra

Plane-based geometric algebra is able to represent all Euclidean transformations, but in practice it is almost always combined with a dual operation of some kind to create the larger system known as "Projective Geometric Algebra", PGA. Duality, as in other Clifford and Grassmann algebras, allows a definition of the regressive product; denoting dual of $x$ as $x\star$, the regressive product $\vee$ has the property that $(a\vee b)\star =a\star \wedge b\star$. This is extremely useful for engineering applications - in plane-based GA, the regressive product can join a point to another point to obtain a line, and can join a point and a line to obtain a plane. It has the further convenience that if any two elements (points, lines, or planes) have norm (see above) equal to $1$, the norm of their regressive product is equal to the distance between them. The join of several points is also known as their affine hull.

#### Variants of duality and terminology

There is variation across authors as to the precise definition given for $\star$ that is used above. No matter which definition is given, the regressive product gives completely identical results. Since it is therefore of mainly theoretical rather than practical interest, precise discussion of the dual is usually not included in introductory material on projective geometric algebra. The different approaches to defining $x\star$ include:
* Stating that $x\star$ is the right complement of $x$ with the pseudoscalar (the pseudoscalar is the dimension-dependent wedge product of all basis 1-vectors). In 3D therefore we have $x\wedge x\star ={\text{e}}_{1230}$; in 2D we instead have $x\wedge x\star ={\text{e}}_{120}$. This approach relates elements of plane-based geometric algebra to other elements of plane based geometric algebra (eg, other euclidean transformations); for example in 3D, a planar reflection (plane) would dualize to a point reflection (point). This was the original and still most common definition of the dual, and is sometimes referred to as the Hodge dual.
* The Projective dual also maps planes to points, but it is not the case that both are reflections; instead, the projective dual switches between the space that plane-based geometric algebra operates in and a non-euclidean (but neither hyperbolic nor elliptic) space discussed by Klein. For example, planes in plane-based geometric algebra, which perform planar reflections, are mapped to points in dual space which are involved in non-trivial transformations known as collineations. Therefore, $x$ and $x\star$ cannot both be drawn in familiar Euclidean space. Different authors have termed the plane-based GA part of PGA "Euclidean space" and "Antispace".
* Conformal Geometric Algebra(CGA) is a larger system of which plane-based GA a subalgebra. The connection is subtle. The join of three points in CGA is defined geometrically as a circle, whereas in PGA it is a plane, which demonstrates that they are different operations. PGA "points" have a fundamentally different algebraic representation than CGA points; to compare the two algebras, PGA points must be recognized as a special case of CGA point pairs, where the pair has one point at infinity ("point reflections"). General point pairs and circles are involved in non-Euclidean transformations (as are most CGA objects, including all duals of PGA objects). To work with both, authors either carefully convert between point reflections and CGA points or work within a PGA-isomorphic subalgebra within CGA - possibly multiple such.
The second form of duality, combined with the fact that geometric objects are represented homogeneously (meaning that multiplication by scalars does not change them), is the reason that the system is known as "Projective" Geometric Algebra. It should be clarified that projective geometric algebra does not include the full projective group; this is unlike 3D Conformal Geometric Algebra, which contains the full conformal group.

### Projective geometric algebra of non-euclidean geometries and Classical Lie Groups in 3 dimensions

To a first approximation, the physical world is euclidean, i.e. most transformations are rigid; Projective Geometric Algebra is therefore usually based on Cl$_{3,0,1}$(R), since rigid transformations can be modelled in this algebra. However, it is possible to model other spaces by slightly varying the algebra.
| Geometric space | Transformation group | Apparent "plane at infinity" squares to | Names for handedness-preserving subgroup (even subalgebra) | Notes |
| Euclidean | Pin(3, 0, 1) Cl$_{3,0,1}$(R) | 0 | Dual quaternions; Spin(3, 0, 1); double cover of rigid transformations | Most important for engineering applications, since transformations are rigid; also most "intuitive" for humans |
| Elliptic | Pin(4, 0, 0) Cl$_{4,0,0}$(R) | 1 | Split-biquaternions; Spin(4, 0, 0); double cover of 4D rotations | Also known as "spherical geometry". Analogous to Cl$_{3,0,0}$(R); provides a model the Gnonomic world map projection. Includes Poincaré duality. |
| Hyperbolic | Pin(3, 1, 0) Cl$_{3,1,0}$(R) | −1 | Complex quaternion; Spin(3, 1, 0); double cover of Lorentz group | Also known as "saddle geometry". Group can perform rotations and spacetime boosts, a.k.a. boosts. (2,1,0) is equivalent to the Klein disk model of 2D hyperbolic geometry. |
In these systems, the points, planes, and lines have the same coordinates that they have in plane-based GA. But transformations like rotations and reflections will have very different effects on the geometry. In all cases below, the algebra is a double cover of the group of reflections, rotations, and rotoreflections in the space.
All formulae from the euclidean case carry over to these other geometries – the meet still functions as a way of taking the intersection of objects; the geometric product still functions as a way of composing transformations; and in the hyperbolic case the inner product become able to measure hyperbolic angle.
All three even subalgebras are classical Lie groups (after taking the quotient by scalars). The associated Lie algebra for each group is the grade 2 elements of the Clifford algebra, not taking the quotient by scalars.