In mathematics, the geometric algebra (GA) of a vector space is an algebra over a field, noted for its multiplication operation called the geometric product on a space of elements called multivectors, which contains both the scalar (mathematics), scalars $F$ and the vector space $V$.
Mathematically, a geometric algebra may be defined as the Clifford algebra of a vector space with a quadratic form. William Kingdon Clifford, Clifford's contribution was to define a new product, the geometric product, that unified the exterior algebra, Grassmann algebra and Hamilton's quaternion algebra into a single structure. Adding the Duality (mathematics), dual of the Grassmann exterior product (the "meet") allows the use of the Grassmann–Cayley algebra, and a Conformal geometry, conformal version of the latter together with a conformal Clifford algebra yields a Conformal geometric algebra , conformal geometric algebra (CGA) providing a framework for Klein geometry, classical geometries. In practice, these and several derived operations allow a correspondence of elements, vector subspace, subspaces and operations of the algebra with geometric interpretations.
The scalars and vectors have their usual interpretation, and make up distinct subspaces of a GA. Bivectors provide a more natural representation of the pseudovector quantities in vector algebra such as oriented area, oriented angle of rotation, torque, angular momentum, electromagnetic field and the Poynting vector. A trivector can represent an oriented volume, and so on. An element called a Blade (geometry), blade may be used to represent a subspace of $V$ and orthogonal projections onto that subspace. Rotations and reflections are represented as elements. Unlike vector algebra, a GA naturally accommodates any number of dimensions and any quadratic form such as in Theory of relativity, relativity.
Examples of geometric algebras applied in physics include the spacetime algebra (and the less common algebra of physical space) and the conformal geometric algebra. Geometric calculus, an extension of GA that incorporates differentiation (mathematics), differentiation and integral, integration, can be used to formulate other theories such as complex analysis and differential geometry, e.g. by using the Clifford algebra instead of differential forms. Geometric algebra has been advocated, most notably by David Hestenes and Chris J. L. Doran, Chris Doran, as the preferred mathematical framework for physics. Proponents claim that it provides compact and intuitive descriptions in many areas including classical mechanics, classical and quantum mechanics, electromagnetic theory and theory of relativity, relativity. GA has also found use as a computational tool in computer graphics and robotics.
The geometric product was first briefly mentioned by Hermann Grassmann, who was chiefly interested in developing the closely related exterior algebra. In 1878, William Kingdon Clifford greatly expanded on Grassmann's work to form what are now usually called Clifford algebras in his honor (although Clifford himself chose to call them "geometric algebras"). For several decades, geometric algebras went somewhat ignored, greatly eclipsed by the vector calculus then newly developed to describe electromagnetism. The term "geometric algebra" was repopularized in the 1960s by David Hestenes, Hestenes, who advocated its importance to relativistic physics.

International Conference on Clifford Algebras and their Applications in Mathematical Physics (ICCA)

an

Applications of Geometric Algebra in Computer Science and Engineering (AGACSE)

series. A main publication outlet is the Springer journal Advances in Applied Clifford Algebras.

clifford

- Numeric Geometric Algebra Module for Python.

galgebra

- Symbolic Geometric Algebra Module for Python by Alan Bromborsky (uses sympy).

GATL

- A template C++ library that uses the lazy evaluation strategy to automatically execute low-level algebraic manipulations in compile time in order to produce more efficient programs.

ganja.js

- Geometric Algebra for Javascript (with operator overloading and algebraic literals).

klein

- Production-oriented Streaming SIMD Extensions, SSE-optimized C++ library, specializing in the dual 3D Projective Geometric Algebra $\backslash mathbf(\backslash mathbb^*\_)$.

Versor

A lightweight templated C++ Library with an OpenGL interface for efficient geometric algebra programming in arbitrary metrics, including Conformal geometric algebra, conformal.

Grassmann.jl

- Conformal geometric product algebra based on static dual multivectors with graded-blade indexing (written in Julia language).

Terathon Math Library

- Production-quality C++ library by Eric Lengyel that includes the direct 3D Projective Geometric Algebra $\backslash mathcal\_$.

Fontijne, Dorst, Bouma & Mann

* GAwx

GitHub

- GA using wxMaxima, Open Source software using a free Computer Algebra System, includes readme files for motivation and setup. * cliffor

GitHub

- Clifford algebra and geometric calculus in Maxima based on indicial representation. * CLUVi

Perwass

Software allowing script creation and including sample visualizations, manual and GA introduction. * Gaigen SourceForge:projects/g25/, Fontijne For programmers, this is a code generator with support for C, C++, C# and Java. * Cinderella Visualization

Hitzer

an

Dorst

* Gaalo

Standalone GUI-Application that uses the Open-Source Computer Algebra Software Maxima (software), Maxima to break down CLUViz code into C/C++ or Java code. * Gaalop Precompile

Precompiler based on Gaalop integrated with CMake. * Gaalet, C++ Expression Template Librar

Seybold

* Clifford Algebra with Wolfram Language, Mathematica]

clifford.m

* Clifford Algebra with GiNaC]

built-in classes

ga-benchmark

- A benchmark for C/C++ Geometric Algebra libraries and library generators. The latest results of the ga-benchmark can be foun

here

Chapter 1

as PDF * * * * * Extract online at http://geocalc.clas.asu.edu/html/UAFCG.html #5 New Tools for Computational Geometry and rejuvenation of Screw Theory * * * * * * * * * * * * * * * *

A Survey of Geometric Algebra and Geometric Calculus**Alan Macdonald**

Luther College, Iowa.

Imaginary Numbers are not Real – the Geometric Algebra of Spacetime

Introduction (Cambridge GA group).

Geometric Algebra 2015, Masters Course in Scientific Computing

from Dr. Chris Doran (Cambridge).

Maths for (Games) Programmers: 5 – Multivector methods

Comprehensive introduction and reference for programmers, from Ian Bell (programmer), Ian Bell.

IMPA Summer School 2010

Fernandes Oliveira Intro and Slides.

E.S.M. Hitzer and Japan GA publications.

Google Group for GA

Geometric Algebra Primer

Introduction to GA, Jaap Suter.

Geometric Algebra Resources

curated wiki, Pablo Bleyer.

Applied Geometric Algebras in Computer Science and Engineering 2018

Early Proceedings

GAME2020

Geometric Algebra Mini Event

AGACSE 2021 Videos

English translations of early books and papers

G. Combebiac, "calculus of tri-quaternions"

(Doctoral dissertation)

M. Markic, "Transformants: A new mathematical vehicle. A synthesis of Combebiac's tri-quaternions and Grassmann's geometric system. The calculus of quadri-quaternions"

C. Burali-Forti, "The Grassmann method in projective geometry"

A compilation of three notes on the application of exterior algebra to projective geometry

C. Burali-Forti, "Introduction to Differential Geometry, following the method of H. Grassmann"

Early book on the application of Grassmann algebra

H. Grassmann, "Mechanics, according to the principles of the theory of extension"

One of his papers on the applications of exterior algebra. Research groups

Links to Research groups, Software, and Conferences, worldwide.

Cambridge Geometric Algebra group

Full-text online publications, and other material.

University of Amsterdam group

Geometric Calculus research & development

(Arizona State University).

GA-Net blog

an

Geometric Algebra/Clifford Algebra development news.

Geometric Algebra for Perception Action Systems. Geometric Cybernetics Group

(CINVESTAV, Campus Guadalajara, Mexico). {{DEFAULTSORT:Geometric Algebra Geometric algebra,

Definition and notation

There are a number of different ways to define a geometric algebra. Hestenes's original approach was axiomatic, "full of geometric significance" and equivalent to the universal Clifford algebra. Given a finite-dimensional quadratic space $V$ over a Field (mathematics), field $F$ with a symmetric bilinear form (the ''inner product'', e.g. the Euclidean or Lorentzian metric) $g\; :\; V\; \backslash times\; V\; \backslash to\; F$, the geometric algebra for this quadratic space is the Clifford algebra $\backslash operatorname(V,\; g)$. As usual in this domain, for the remainder of this article, only the Real number, real case, $F\; =\; \backslash R$, will be considered. The notation $\backslash mathcal\; G(p,q)$ (respectively $\backslash mathcal\; G(p,q,r)$) will be used to denote a geometric algebra for which the bilinear form $g$ has the Metric signature, signature $(p,q)$ (respectively $(p,q,r)$). The essential product in the algebra is called the ''geometric product'', and the product in the contained exterior algebra is called the ''exterior product'' (frequently called the ''wedge product'' and less often the ''outer product''). It is standard to denote these respectively by juxtaposition (i.e., suppressing any explicit multiplication symbol) and the symbol $\backslash wedge$. The above definition of the geometric algebra is abstract, so we summarize the properties of the geometric product by the following set of axioms. The geometric product has the following properties, for $A,\; B,\; C\backslash in\; \backslash mathcal(p,q)$: *$AB\; \backslash in\; \backslash mathcal(p,q)$ (Closure (mathematics), closure) *$1A\; =\; A1\; =\; A$, where $1$ is the identity element (existence of an identity element) *$A(BC)=(AB)C$ (associativity) *$A(B+C)=AB+AC$ and $(B+C)A=BA+CA$ (distributivity) *$a^2\; =\; g(a,a)1$, where $a$ is any element of the subspace $V$ of the algebra. The exterior product has the same properties, except that the last property above is replaced by $a\; \backslash wedge\; a\; =\; 0$ for $a\; \backslash in\; V$. Note that in the last property above, the real number $g(a,a)$ need not be nonnegative if $g$ is not positive-definite. An important property of the geometric product is the existence of elements having a multiplicative inverse. For a vector $a$, if $a^2\; \backslash ne\; 0$ then $a^$ exists and is equal to $g(a,a)^a$. A nonzero element of the algebra does not necessarily have a multiplicative inverse. For example, if $u$ is a vector in $V$ such that $u^2\; =\; 1$, the element $\backslash textstyle\backslash frac(1\; +\; u)$ is both a nontrivial idempotent element (ring theory), idempotent element and a nonzero zero divisor, and thus has no inverse. It is usual to identify $\backslash R$ and $V$ with their images under the natural embeddings $\backslash R\; \backslash to\; \backslash mathcal(p,q)$ and $V\; \backslash to\; \backslash mathcal(p,q)$. In this article, this identification is assumed. Throughout, the terms ''scalar'' and ''vector'' refer to elements of $\backslash R$ and $V$ respectively (and of their images under this embedding).The geometric product

For vectors $a$ and $b$, we may write the geometric product of any two vectors $a$ and $b$ as the sum of a symmetric product and an antisymmetric product: :$ab\; =\; \backslash frac\; (ab\; +\; ba)\; +\; \backslash frac\; (ab\; -\; ba)$ Thus we can define the ''inner product'' of vectors as :$a\; \backslash cdot\; b\; :=\; g(a,b),$ so that the symmetric product can be written as :$\backslash frac(ab\; +\; ba)\; =\; \backslash frac\; \backslash left((a\; +\; b)^2\; -\; a^2\; -\; b^2\backslash right)\; =\; a\; \backslash cdot\; b$ Conversely, $g$ is completely determined by the algebra. The antisymmetric part is the exterior product of the two vectors, the product of the contained exterior algebra: :$a\; \backslash wedge\; b\; :=\; \backslash frac(ab\; -\; ba)\; =\; -(b\; \backslash wedge\; a)$ Then by simple addition: :$ab=a\; \backslash cdot\; b\; +\; a\; \backslash wedge\; b$ the ungeneralized or vector form of the geometric product. The inner and exterior products are associated with familiar concepts from standard vector algebra. Geometrically, $a$ and $b$ are parallel (geometry), parallel if their geometric product is equal to their inner product, whereas $a$ and $b$ are perpendicular if their geometric product is equal to their exterior product. In a geometric algebra for which the square of any nonzero vector is positive, the inner product of two vectors can be identified with the dot product of standard vector algebra. The exterior product of two vectors can be identified with the signed area enclosed by a parallelogram the sides of which are the vectors. The cross product of two vectors in $3$ dimensions with positive-definite quadratic form is closely related to their exterior product. Most instances of geometric algebras of interest have a nondegenerate quadratic form. If the quadratic form is fully nondegenerate quadratic form, degenerate, the inner product of any two vectors is always zero, and the geometric algebra is then simply an exterior algebra. Unless otherwise stated, this article will treat only nondegenerate geometric algebras. The exterior product is naturally extended as an associative bilinear binary operator between any two elements of the algebra, satisfying the identities :$\backslash begin\; 1\; \backslash wedge\; a\_i\; \&=\; a\_i\; \backslash wedge\; 1\; =\; a\_i\; \backslash \backslash \; a\_1\; \backslash wedge\; a\_2\backslash wedge\backslash cdots\backslash wedge\; a\_r\; \&=\; \backslash frac\backslash sum\_\; \backslash operatorname(\backslash sigma)\; a\_a\_\; \backslash cdots\; a\_,\; \backslash end$ where the sum is over all permutations of the indices, with $\backslash operatorname(\backslash sigma)$ the parity of a permutation, sign of the permutation, and $a\_i$ are vectors (not general elements of the algebra). Since every element of the algebra can be expressed as the sum of products of this form, this defines the exterior product for every pair of elements of the algebra. It follows from the definition that the exterior product forms an alternating algebra.Blades, grades, and canonical basis

A multivector that is the exterior product of $r$ linearly independent vectors is called a ''blade'', and is said to be of grade $r$. A multivector that is the sum of blades of grade $r$ is called a (homogeneous) multivector of grade $r$. From the axioms, with closure, every multivector of the geometric algebra is a sum of blades. Consider a set of $r$ linearly independent vectors $\backslash $ spanning an $r$-dimensional subspace of the vector space. With these, we can define a real symmetric matrix (in the same way as a Gramian matrix) :$[\backslash mathbf]\_\; =\; a\_i\; \backslash cdot\; a\_j$ By the spectral theorem, $\backslash mathbf$ can be diagonalized to diagonal matrix $\backslash mathbf$ by an orthogonal matrix $\backslash mathbf$ via :$\backslash sum\_[\backslash mathbf]\_[\backslash mathbf]\_[\backslash mathbf^]\_=\backslash sum\_[\backslash mathbf]\_[\backslash mathbf]\_[\backslash mathbf]\_=[\backslash mathbf]\_$ Define a new set of vectors $\backslash $, known as orthogonal basis vectors, to be those transformed by the orthogonal matrix: :$e\_i=\backslash sum\_j[\backslash mathbf]\_a\_j$ Since orthogonal transformations preserve inner products, it follows that $e\_i\backslash cdot\; e\_j=[\backslash mathbf]\_$ and thus the $\backslash $ are perpendicular. In other words, the geometric product of two distinct vectors $e\_i\; \backslash ne\; e\_j$ is completely specified by their exterior product, or more generally :$\backslash begin\; e\_1e\_2\backslash cdots\; e\_r\; \&=\; e\_1\; \backslash wedge\; e\_2\; \backslash wedge\; \backslash cdots\; \backslash wedge\; e\_r\; \backslash \backslash \; \&=\; \backslash left(\backslash sum\_j\; [\backslash mathbf]\_a\_j\backslash right)\; \backslash wedge\; \backslash left(\backslash sum\_j\; [\backslash mathbf]\_a\_j\; \backslash right)\; \backslash wedge\; \backslash cdots\; \backslash wedge\; \backslash left(\backslash sum\_j\; [\backslash mathbf]\_a\_j\backslash right)\; \backslash \backslash \; \&=\; (\backslash det\; \backslash mathbf)\; a\_1\; \backslash wedge\; a\_2\; \backslash wedge\; \backslash cdots\; \backslash wedge\; a\_r\; \backslash end$ Therefore, every blade of grade $r$ can be written as a geometric product of $r$ vectors. More generally, if a degenerate geometric algebra is allowed, then the orthogonal matrix is replaced by a block matrix that is orthogonal in the nondegenerate block, and the diagonal matrix has zero-valued entries along the degenerate dimensions. If the new vectors of the nondegenerate subspace are unit vector, normalized according to :$\backslash hat\_i=\backslash frace\_i,$ then these normalized vectors must square to $+1$ or $-1$. By Sylvester's law of inertia, the total number of $+1$s and the total number of $-1$s along the diagonal matrix is invariant. By extension, the total number $p$ of these vectors that square to $+1$ and the total number $q$ that square to $-1$ is invariant. (The total number of basis vectors that square to zero is also invariant, and may be nonzero if the degenerate case is allowed.) We denote this algebra $\backslash mathcal(p,q)$. For example, $\backslash mathcal\; G(3,0)$ models three-dimensional Euclidean space, $\backslash mathcal\; G(1,3)$ relativistic spacetime and $\backslash mathcal\; G(4,1)$ a conformal geometric algebra of a three-dimensional space. The set of all possible products of $n$ orthogonal basis vectors with indices in increasing order, including $1$ as the empty product, forms a basis for the entire geometric algebra (an analogue of the Poincaré–Birkhoff–Witt theorem, PBW theorem). For example, the following is a basis for the geometric algebra $\backslash mathcal(3,0)$: :$\backslash $ A basis formed this way is called a canonical basis for the geometric algebra, and any other orthogonal basis for $V$ will produce another canonical basis. Each canonical basis consists of $2^n$ elements. Every multivector of the geometric algebra can be expressed as a linear combination of the canonical basis elements. If the canonical basis elements are $\backslash $ with $S$ being an index set, then the geometric product of any two multivectors is :$\backslash left(\; \backslash sum\_i\; \backslash alpha\_i\; B\_i\; \backslash right)\; \backslash left(\; \backslash sum\_j\; \backslash beta\_j\; B\_j\; \backslash right)\; =\; \backslash sum\_\; \backslash alpha\_i\backslash beta\_j\; B\_i\; B\_j\; .$ The terminology "$k$-vector" is often encountered to describe multivectors containing elements of only one grade. In higher dimensional space, some such multivectors are not blades (cannot be factored into the exterior product of $k$ vectors). By way of example, $e\_1\; \backslash wedge\; e\_2\; +\; e\_3\; \backslash wedge\; e\_4$ in $\backslash mathcal(4,0)$ cannot be factored; typically, however, such elements of the algebra do not yield to geometric interpretation as objects, although they may represent geometric quantities such as rotations. Only $0,1,(n-1)$ and $n$-vectors are always blades in $n$-space.Grade projection

Using an orthogonal basis, a graded vector space structure can be established. Elements of the geometric algebra that are scalar multiples of $1$ are grade-$0$ blades and are called ''scalars''. Multivectors that are in the span of $\backslash $ are grade-$1$ blades and are the ordinary vectors. Multivectors in the span of $\backslash $ are grade-$2$ blades and are the bivectors. This terminology continues through to the last grade of $n$-vectors. Alternatively, grade-$n$ blades are called pseudoscalars, grade-$(n-1)$ blades pseudovectors, etc. Many of the elements of the algebra are not graded by this scheme since they are sums of elements of differing grade. Such elements are said to be of ''mixed grade''. The grading of multivectors is independent of the basis chosen originally. This is a grading as a vector space, but not as an algebra. Because the product of an $r$-blade and an $s$-blade is contained in the span of $0$ through $r+s$-blades, the geometric algebra is a filtered algebra. A multivector $A$ may be decomposed with the grade-projection operator $\backslash langle\; A\; \backslash rangle\; \_r$, which outputs the grade-$r$ portion of $A$. As a result: :$A\; =\; \backslash sum\_^\; \backslash langle\; A\; \backslash rangle\; \_r$ As an example, the geometric product of two vectors $a\; b\; =\; a\; \backslash cdot\; b\; +\; a\; \backslash wedge\; b\; =\; \backslash langle\; a\; b\; \backslash rangle\_0\; +\; \backslash langle\; a\; b\; \backslash rangle\_2$ since $\backslash langle\; a\; b\; \backslash rangle\_0=a\backslash cdot\; b$ and $\backslash langle\; a\; b\; \backslash rangle\_2\; =\; a\backslash wedge\; b$ and $\backslash langle\; a\; b\; \backslash rangle\_i=0$, for $i$ other than $0$ and $2$. The decomposition of a multivector $A$ may also be split into those components that are even and those that are odd: :$A^\; =\; \backslash langle\; A\; \backslash rangle\; \_0\; +\; \backslash langle\; A\; \backslash rangle\; \_2\; +\; \backslash langle\; A\; \backslash rangle\; \_4\; +\; \backslash cdots$ :$A^\; =\; \backslash langle\; A\; \backslash rangle\; \_1\; +\; \backslash langle\; A\; \backslash rangle\; \_3\; +\; \backslash langle\; A\; \backslash rangle\; \_5\; +\; \backslash cdots$ This is the result of forgetting structure from a $\backslash mathrm$-graded vector space to $\backslash mathrm\_2$-graded vector space. The geometric product respects this coarser grading. Thus in addition to being a $\backslash mathrm\_2$-graded vector space, the geometric algebra is a $\backslash mathrm\_2$-graded algebra or superalgebra. Restricting to the even part, the product of two even elements is also even. This means that the even multivectors defines an ''even subalgebra''. The even subalgebra of an $n$-dimensional geometric algebra is algebra homomorphism, isomorphic (without preserving either filtration or grading) to a full geometric algebra of $(n-1)$ dimensions. Examples include $\backslash mathcal\; G^(2,0)\; \backslash cong\; \backslash mathcal(0,1)$ and $\backslash mathcal^(1,3)\; \backslash cong\; \backslash mathcal\; G(3,0)$.Representation of subspaces

Geometric algebra represents subspaces of $V$ as blades, and so they coexist in the same algebra with vectors from $V$. A $k$-dimensional subspace $W$ of $V$ is represented by taking an orthogonal basis $\backslash $ and using the geometric product to form the blade (geometry), blade $D\; =\; b\_1b\_2\backslash cdots\; b\_k$. There are multiple blades representing $W$; all those representing $W$ are scalar multiples of $D$. These blades can be separated into two sets: positive multiples of $D$ and negative multiples of $D$. The positive multiples of $D$ are said to have ''the same orientation (vector space), orientation'' as $D$, and the negative multiples the ''opposite orientation''. Blades are important since geometric operations such as projections, rotations and reflections depend on the factorability via the exterior product that (the restricted class of) $n$-blades provide but that (the generalized class of) grade-$n$ multivectors do not when $n\; \backslash ge\; 4$.Unit pseudoscalars

Unit pseudoscalars are blades that play important roles in GA. A unit pseudoscalar for a non-degenerate subspace $W$ of $V$ is a blade that is the product of the members of an orthonormal basis for $W$. It can be shown that if $I$ and $I\text{'}$ are both unit pseudoscalars for $W$, then $I\; =\; \backslash pm\; I\text{'}$ and $I^2\; =\; \backslash pm\; 1$. If one doesn't choose an orthonormal basis for $W$, then the Plücker embedding gives a vector in the exterior algebra but only up to scaling. Using the vector space isomorphism between the geometric algebra and exterior algebra, this gives the equivalence class of $\backslash alpha\; I$ for all $\backslash alpha\; \backslash neq\; 0$. Orthonormality gets rid of this ambiguity except for the signs above. Suppose the geometric algebra $\backslash mathcal(n,0)$ with the familiar positive definite inner product on $\backslash R^n$ is formed. Given a plane (two-dimensional subspace) of $\backslash R^n$, one can find an orthonormal basis $\backslash $ spanning the plane, and thus find a unit pseudoscalar $I\; =\; b\_1\; b\_2$ representing this plane. The geometric product of any two vectors in the span of $b\_1$ and $b\_2$ lies in $\backslash $, that is, it is the sum of a $0$-vector and a $2$-vector. By the properties of the geometric product, $I^2\; =\; b\_1\; b\_2\; b\_1\; b\_2\; =\; -b\_1\; b\_2\; b\_2\; b\_1\; =\; -1$. The resemblance to the imaginary unit is not incidental: the subspace $\backslash $ is $\backslash R$-algebra isomorphic to the complex numbers. In this way, a copy of the complex numbers is embedded in the geometric algebra for each two-dimensional subspace of $V$ on which the quadratic form is definite. It is sometimes possible to identify the presence of an imaginary unit in a physical equation. Such units arise from one of the many quantities in the real algebra that square to $-1$, and these have geometric significance because of the properties of the algebra and the interaction of its various subspaces. In $\backslash mathcal(3,0)$, a further familiar case occurs. Given a canonical basis consisting of orthonormal vectors $e\_i$ of $V$, the set of ''all'' $2$-vectors is spanned by :$\backslash \; .$ Labelling these $i$, $j$ and $k$ (momentarily deviating from our uppercase convention), the subspace generated by $0$-vectors and $2$-vectors is exactly $\backslash $. This set is seen to be the even subalgebra of $\backslash mathcal(3,0)$, and furthermore is isomorphic as an $\backslash R$-algebra to the quaternions, another important algebraic system.Dual basis

Let $\backslash $ be a basis of $V$, i.e. a set of $n$ linearly independent vectors that span the $n$-dimensional vector space $V$. The basis that is dual to $\backslash $ is the set of elements of the dual vector space $V^$ that forms a biorthogonal system with this basis, thus being the elements denoted $\backslash $ satisfying :$e^i\; \backslash cdot\; e\_j\; =\; \backslash delta^i\_j,$ where $\backslash delta$ is the Kronecker delta. Given a nondegenerate quadratic form on $V$, $V^$ becomes naturally identified with $V$, and the dual basis may be regarded as elements of $V$, but are not in general the same set as the original basis. Given further a GA of $V$, let :$I\; =\; e\_1\; \backslash wedge\; \backslash cdots\; \backslash wedge\; e\_n$ be the pseudoscalar (which does not necessarily square to $\backslash pm\; 1$) formed from the basis $\backslash $. The dual basis vectors may be constructed as :$e^i=(-1)^(e\_1\; \backslash wedge\; \backslash cdots\; \backslash wedge\; \backslash check\_i\; \backslash wedge\; \backslash cdots\; \backslash wedge\; e\_n)\; I^,$ where the $\backslash check\_i$ denotes that the $i$th basis vector is omitted from the product.Extensions of the inner and exterior products

It is common practice to extend the exterior product on vectors to the entire algebra. This may be done through the use of the above mentioned #Grade projection, grade projection operator: : $C\; \backslash wedge\; D\; :=\; \backslash sum\_\backslash langle\; \backslash langle\; C\; \backslash rangle\_r\; \backslash langle\; D\; \backslash rangle\_s\; \backslash rangle\_$ (the ''exterior product'') This generalization is consistent with the above definition involving antisymmetrization. Another generalization related to the exterior product is the commutator product: : $C\; \backslash times\; D\; :=\; \backslash tfrac(CD-DC)$ (the ''commutator product'') The regressive product (usually referred to as the "meet") is the dual of the exterior product (or "join" in this context). The dual specification of elements permits, for blades $A$ and $B$, the intersection (or meet) where the duality is to be taken relative to the smallest grade blade containing both $A$ and $B$ (the join). : : $C\; \backslash vee\; D\; :=\; ((CI^)\; \backslash wedge\; (DI^))I$ with $I$ the unit pseudoscalar of the algebra. The regressive product, like the exterior product, is associative. The inner product on vectors can also be generalized, but in more than one non-equivalent way. The paper gives a full treatment of several different inner products developed for geometric algebras and their interrelationships, and the notation is taken from there. Many authors use the same symbol as for the inner product of vectors for their chosen extension (e.g. Hestenes and Perwass). No consistent notation has emerged. Among these several different generalizations of the inner product on vectors are: : $C\; \backslash ;\backslash rfloor\backslash ;\; D\; :=\; \backslash sum\_\backslash langle\; \backslash langle\; C\backslash rangle\_r\; \backslash langle\; D\; \backslash rangle\_\; \backslash rangle\_$ (the ''left contraction'') : $C\; \backslash ;\backslash lfloor\backslash ;\; D\; :=\; \backslash sum\_\backslash langle\; \backslash langle\; C\backslash rangle\_r\; \backslash langle\; D\; \backslash rangle\_\; \backslash rangle\_$ (the ''right contraction'') : $C\; *\; D\; :=\; \backslash sum\_\backslash langle\; \backslash langle\; C\; \backslash rangle\_r\; \backslash langle\; D\; \backslash rangle\_s\; \backslash rangle\_$ (the ''scalar product'') : $C\; \backslash bullet\; D\; :=\; \backslash sum\_\backslash langle\; \backslash langle\; C\backslash rangle\_r\; \backslash langle\; D\; \backslash rangle\_\; \backslash rangle\_$ (the "(fat) dot" product) makes an argument for the use of contractions in preference to Hestenes's inner product; they are algebraically more regular and have cleaner geometric interpretations. A number of identities incorporating the contractions are valid without restriction of their inputs. For example, :$C\; \backslash ;\backslash rfloor\backslash ;\; D\; =\; (\; C\; \backslash wedge\; (\; D\; I^\; )\; )\; I$ :$C\; \backslash ;\backslash lfloor\backslash ;\; D\; =\; I\; (\; (\; I^\; C)\; \backslash wedge\; D\; )$ :$(\; A\; \backslash wedge\; B\; )\; *\; C\; =\; A\; *\; (\; B\; \backslash ;\backslash rfloor\backslash ;\; C\; )$ :$C\; *\; (\; B\; \backslash wedge\; A\; )\; =\; (\; C\; \backslash ;\backslash lfloor\backslash ;\; B\; )\; *\; A$ :$A\; \backslash ;\backslash rfloor\backslash ;\; (\; B\; \backslash ;\backslash rfloor\backslash ;\; C\; )\; =\; (\; A\; \backslash wedge\; B\; )\; \backslash ;\backslash rfloor\backslash ;\; C$ :$(\; A\; \backslash ;\backslash rfloor\backslash ;\; B\; )\; \backslash ;\backslash lfloor\backslash ;\; C\; =\; A\; \backslash ;\backslash rfloor\backslash ;\; (\; B\; \backslash ;\backslash lfloor\backslash ;\; C\; )\; .$ Benefits of using the left contraction as an extension of the inner product on vectors include that the identity $ab\; =\; a\; \backslash cdot\; b\; +\; a\; \backslash wedge\; b$ is extended to $aB\; =\; a\; \backslash ;\backslash rfloor\backslash ;\; B\; +\; a\; \backslash wedge\; B$ for any vector $a$ and multivector $B$, and that the projection (linear algebra), projection operation $\backslash mathcal\_b\; (a)\; =\; (a\; \backslash cdot\; b^)b$ is extended to $\backslash mathcal\_B\; (A)\; =\; (A\; \backslash ;\backslash rfloor\backslash ;\; B^)\; \backslash ;\backslash rfloor\backslash ;\; B$ for any blade $B$ and any multivector $A$ (with a minor modification to accommodate null $B$, given #Projection and rejection, below).Linear functions

Although a versor is easier to work with because it can be directly represented in the algebra as a multivector, versors are a subgroup of linear functions on multivectors, which can still be used when necessary. The geometric algebra of an $n$-dimensional vector space is spanned by a basis of $2^n$ elements. If a multivector is represented by a $2^n\; \backslash times\; 1$ real column matrix of coefficients of a basis of the algebra, then all linear transformations of the multivector can be expressed as the matrix multiplication by a $2^n\; \backslash times\; 2^n$ real matrix. However, such a general linear transformation allows arbitrary exchanges among grades, such as a "rotation" of a scalar into a vector, which has no evident geometric interpretation. A general linear transformation from vectors to vectors is of interest. With the natural restriction to preserving the induced exterior algebra, the ''outermorphism'' of the linear transformation is the unique extension of the versor. If $f$ is a linear function that maps vectors to vectors, then its outermorphism is the function that obeys the rule :$\backslash underline(a\_1\; \backslash wedge\; a\_2\; \backslash wedge\; \backslash cdots\; \backslash wedge\; a\_r)\; =\; f(a\_1)\; \backslash wedge\; f(a\_2)\; \backslash wedge\; \backslash cdots\; \backslash wedge\; f(a\_r)$ for a blade, extended to the whole algebra through linearity.Modeling geometries

Although a lot of attention has been placed on CGA, it is to be noted that GA is not just one algebra, it is one of a family of algebras with the same essential structure.Vector space model

$\backslash mathcal\; G(3,0)$ may be considered as an extension or completion of Vector calculus#Algebraic operations, vector algebra. ''From Vectors to Geometric Algebra'' covers basic analytic geometry and gives an introduction to stereographic projection. The even subalgebra of $\backslash mathcal\; G(2,0)$ is isomorphic to the complex numbers, as may be seen by writing a vector $P$ in terms of its components in an orthonormal basis and left multiplying by the basis vector $e\_1$, yielding :$Z\; =\; e\_1\; P\; =\; e\_1\; (\; x\; e\_1\; +\; y\; e\_2)\; =\; x\; (1)\; +\; y\; (\; e\_1\; e\_2)\; ,$ where we identify $i\; \backslash mapsto\; e\_1e\_2$ since :$(e\_1\; e\_2)^2\; =\; e\_1\; e\_2\; e\_1\; e\_2\; =\; -e\_1\; e\_1\; e\_2\; e\_2\; =\; -1\; .$ Similarly, the even subalgebra of $\backslash mathcal\; G(3,0)$ with basis $\backslash $ is isomorphic to the quaternions as may be seen by identifying $i\; \backslash mapsto\; -e\_2\; e\_3$, $j\; \backslash mapsto\; -e\_3\; e\_1$ and $k\; \backslash mapsto\; -e\_1\; e\_2$. Every associative algebra has a matrix representation; replacing the three Cartesian basis vectors by the Pauli matrices gives a representation of $\backslash mathcal\; G(3,0)$: :$\backslash begin\; e\_1\; =\; \backslash sigma\_1\; =\; \backslash sigma\_x\; \&=\; \backslash begin\; 0\; \&\; 1\; \backslash \backslash \; 1\; \&\; 0\; \backslash end\; \backslash \backslash \; e\_2\; =\; \backslash sigma\_2\; =\; \backslash sigma\_y\; \&=\; \backslash begin\; 0\; \&\; -i\; \backslash \backslash \; i\; \&\; 0\; \backslash end\; \backslash \backslash \; e\_3\; =\backslash sigma\_3\; =\; \backslash sigma\_z\; \&=\; \backslash begin\; 1\; \&\; 0\; \backslash \backslash \; 0\; \&\; -1\; \backslash end\; \backslash ,.\; \backslash end$ Dotting the "Pauli matrices#Pauli vector, Pauli vector" (a dyadics, dyad): :$\backslash sigma\; =\; \backslash sigma\_1\; e\_1\; +\; \backslash sigma\_2\; e\_2\; +\; \backslash sigma\_3\; e\_3$ with arbitrary vectors $a$ and $b$ and multiplying through gives: :$(\backslash sigma\; \backslash cdot\; a)(\backslash sigma\; \backslash cdot\; b)\; =\; a\; \backslash cdot\; b\; +\; a\; \backslash wedge\; b$ (Equivalently, by inspection, $a\; \backslash cdot\; b\; +\; i\; \backslash sigma\; \backslash cdot\; (\; a\; \backslash times\; b\; )$)Spacetime model

In physics, the main applications are the geometric algebra of Minkowski spacetime, Minkowski 3+1 spacetime, , called spacetime algebra (STA), or less commonly, , interpreted the algebra of physical space (APS). While in STA points of spacetime are represented simply by vectors, in APS, points of $(3+1)$-dimensional spacetime are instead represented by paravectors: a three-dimensional vector (space) plus a one-dimensional scalar (time). In spacetime algebra the electromagnetic field tensor has a bivector representation $=\; (\; +\; i\; c\; )\backslash gamma\_0$. Here, the $i\; =\; \backslash gamma\_0\; \backslash gamma\_1\; \backslash gamma\_2\; \backslash gamma\_3$ is the unit pseudoscalar (or four-dimensional volume element), $\backslash gamma\_0$ is the unit vector in time direction, and $E$ and $B$ are the classic electric and magnetic field vectors (with a zero time component). Using the four-current $$, Maxwell's equations then become : In geometric calculus, juxtapositioning of vectors such as in $DF$ indicate the geometric product and can be decomposed into parts as $DF\; =\; D\; ~\backslash rfloor~\; F\; +\; D\; \backslash wedge\; F$. Here $D$ is the covector derivative in any spacetime and reduces to $\backslash nabla$ in flat spacetime. Where $\backslash bigtriangledown$ plays a role in Minkowski $4$-spacetime which is synonymous to the role of $\backslash nabla$ in Euclidean $3$-space and is related to the d'Alembertian by $\backslash Box=\backslash bigtriangledown^2$. Indeed, given an observer represented by a future pointing timelike vector $\backslash gamma\_0$ we have :$\backslash gamma\_0\backslash cdot\backslash bigtriangledown=\backslash frac\backslash frac$ :$\backslash gamma\_0\backslash wedge\backslash bigtriangledown=\backslash nabla$ Lorentz boost, Boosts in this Lorentzian metric space have the same expression $e^$ as rotation in Euclidean space, where $$ is the bivector generated by the time and the space directions involved, whereas in the Euclidean case it is the bivector generated by the two space directions, strengthening the "analogy" to almost identity. The Dirac matrices are a representation of $\backslash mathcal\; G(1,3)$, showing the equivalence with matrix representations used by physicists.Homogeneous model

The first model here is $\backslash mathcal\; G(4,0)$, the GA version of homogeneous coordinates used in projective geometry. Here a vector represents a point and an outer product of vectors an oriented length yet we may work with the algebra in just the same way as in $\backslash mathcal\; G(3,0)$. However, a useful inner product cannot be defined in the space and so there is no geometric product either leaving only outer product and non-metric uses of duality such as meet and join. Nevertheless, there has been investigation of four-dimensional alternatives to the full five-dimensional CGA for limited geometries such as rigid body movements. A selection of these can be found in Part IV of ''Guide to Geometric Algebra in Practice''. Note that the algebra $\backslash mathcal\; G(3,0,1)$ appears as a subalgebra of CGA by selecting just one null basis vector and dropping the other and further that the "motor algebra" (isomorphic to dual quaternions) is the even subalgebra of $\backslash mathcal\; G(3,0,1)$.Conformal model

A compact description of the current state of the art is provided by , which also includes further references, in particular to . Other useful references are and . Working within GA, Euclidean space $\backslash mathcal\; E^3$ (along with a conformal point at infinity) is embedded projectively in the CGA $\backslash mathcal(4,1)$ via the identification of Euclidean points with 1D subspaces in the 4D null cone of the 5D CGA vector subspace. This allows all conformal transformations to be done as rotations and reflections and is Covariance and contravariance of vectors, covariant, extending incidence relations of projective geometry to circles and spheres. Specifically, we add orthogonal basis vectors $e\_+$ and $e\_-$ such that $e\_+^2\; =\; +1$ and $e\_-^2\; =\; -1$ to the basis of the vector space that generates $\backslash mathcal(3,0)$ and identify null vectors :$n\_\; =\; e\_-\; +\; e\_+$ as a conformal point at infinity (see ''Compactification (mathematics), Compactification'') and :$n\_\backslash text\; =\; \backslash tfrac(e\_-\; -\; e\_+)$ as the point at the origin, giving :$n\_\backslash infty\; \backslash cdot\; n\_\backslash text\; =\; -1$. This procedure has some similarities to the procedure for working with homogeneous coordinates in projective geometry and in this case allows the modeling of Euclidean transformations of $\backslash mathbf^3$ as orthogonal transformations of a subset of $\backslash mathbf^$. A fast changing and fluid area of GA, CGA is also being investigated for applications to relativistic physics.Models for projective transformation

Two potential candidates are currently under investigation as the foundation for affine and projective geometry in three dimensions $\backslash mathcal(3,3)$and $\backslash mathcal(4,4)$ which includes representations for shears and non-uniform scaling, as well as quadric surfaces and conic sections. A new research model, Quadric Conformal Geometric Algebra (QCGA) $\backslash mathcal(9,6)$ is an extension of CGA, dedicated to quadric surfaces. The idea is to represent the objects in low dimensional subspaces of the algebra. QCGA is capable of constructing quadric surfaces either using control points or implicit equations. Moreover, QCGA can compute the intersection of quadric surfaces, as well as, the surface tangent and normal vectors at a point that lies in the quadric surface.Geometric interpretation

Projection and rejection

For any vector $a$ and any invertible vector $m$, :$a\; =\; amm^\; =\; (a\backslash cdot\; m\; +\; a\; \backslash wedge\; m)m^\; =\; a\_\; +\; a\_\; ,$ where the projection of $a$ onto $m$ (or the parallel part) is :$a\_\; =\; (a\; \backslash cdot\; m)m^$ and the rejection of $a$ from $m$ (or the orthogonal part) is :$a\_\; =\; a\; -\; a\_\; =\; (a\backslash wedge\; m)m^\; .$ Using the concept of a $k$-blade $B$ as representing a subspace of $V$ and every multivector ultimately being expressed in terms of vectors, this generalizes to projection of a general multivector onto any invertible $k$-blade $B$ as :$\backslash mathcal\_B\; (A)\; =\; (A\; \backslash ;\backslash rfloor\backslash ;\; B^)\; \backslash ;\backslash rfloor\backslash ;\; B\; ,$ with the rejection being defined as :$\backslash mathcal\_B^\backslash perp\; (A)\; =\; A\; -\; \backslash mathcal\_B\; (A)\; .$ The projection and rejection generalize to null blades $B$ by replacing the inverse $B^$ with the pseudoinverse $B^$ with respect to the contractive product. The outcome of the projection coincides in both cases for non-null blades. For null blades $B$, the definition of the projection given here with the first contraction rather than the second being onto the pseudoinverse should be used, as only then is the result necessarily in the subspace represented by $B$. The projection generalizes through linearity to general multivectors $A$. The projection is not linear in $B$ and does not generalize to objects $B$ that are not blades.Reflection

Householder transformation, Simple reflections in a hyperplane are readily expressed in the algebra through conjugation with a single vector. These serve to generate the group of general rotoreflections and rotation (mathematics), rotations. The reflection $c\text{'}$ of a vector $c$ along a vector $m$, or equivalently in the hyperplane orthogonal to $m$, is the same as negating the component of a vector parallel to $m$. The result of the reflection will be :$c\text{'}\; =\; =\; =\; =\; -mcm^$ This is not the most general operation that may be regarded as a reflection when the dimension $n\; \backslash ge\; 4$. A general reflection may be expressed as the composite of any odd number of single-axis reflections. Thus, a general reflection $a\text{'}$ of a vector $a$ may be written :$a\; \backslash mapsto\; a\text{'}\; =\; -MaM^\; ,$ where :$M\; =\; pq\; \backslash cdots\; r$ and $M^\; =\; (pq\; \backslash cdots\; r)^\; =\; r^\; \backslash cdots\; q^p^\; .$ If we define the reflection along a non-null vector $m$ of the product of vectors as the reflection of every vector in the product along the same vector, we get for any product of an odd number of vectors that, by way of example, :$(abc)\text{'}\; =\; a\text{'}b\text{'}c\text{'}\; =\; (-mam^)(-mbm^)(-mcm^)\; =\; -ma(m^m)b(m^m)cm^\; =\; -mabcm^\; \backslash ,$ and for the product of an even number of vectors that :$(abcd)\text{'}\; =\; a\text{'}b\text{'}c\text{'}d\text{'}\; =\; (-mam^)(-mbm^)(-mcm^)(-mdm^)\; =\; mabcdm^\; .$ Using the concept of every multivector ultimately being expressed in terms of vectors, the reflection of a general multivector $A$ using any reflection versor $M$ may be written :$A\; \backslash mapsto\; M\backslash alpha(A)M^\; ,$ where $\backslash alpha$ is the automorphism of reflection through the origin of the vector space ($v\; \backslash mapsto\; -v$) extended through linearity to the whole algebra.Rotations

If we have a product of vectors $R\; =\; a\_1a\_2\; \backslash cdots\; a\_r$ then we denote the reverse as : $\backslash tilde\; R\; =\; a\_r\backslash cdots\; a\_2\; a\_1.$ As an example, assume that $R\; =\; ab$ we get :$R\backslash tilde\; R\; =\; abba\; =\; ab^2a\; =\; a^2b^2\; =\; ba^2b\; =\; baab\; =\; \backslash tilde\; RR.$ Scaling $R$ so that $R\backslash tilde\; R\; =\; 1$ then :$(Rv\backslash tilde\; R)^2\; =\; Rv^\backslash tilde\; R\; =\; v^2R\backslash tilde\; R\; =\; v^2$ so $Rv\backslash tilde\; R$ leaves the length of $v$ unchanged. We can also show that :$(Rv\_1\backslash tilde\; R)\; \backslash cdot\; (Rv\_2\backslash tilde\; R)\; =\; v\_1\; \backslash cdot\; v\_2$ so the transformation $Rv\backslash tilde\; R$ preserves both length and angle. It therefore can be identified as a rotation or rotoreflection; $R$ is called a rotor (mathematics), rotor if it is a proper rotation (as it is if it can be expressed as a product of an even number of vectors) and is an instance of what is known in GA as a Versor , ''versor''. There is a general method for rotating a vector involving the formation of a multivector of the form $R\; =\; e^$ that produces a rotation $\backslash theta$ in the Plane of rotation, plane and with the orientation defined by a $2$-blade $B$. Rotors are a generalization of quaternions to $n$-dimensional spaces.Versor

A $k$-versor is a multivector that can be expressed as the geometric product of $k$ invertible vectors. Unit quaternions (originally called versors by Hamilton) may be identified with rotors in 3D space in much the same way as real 2D rotors subsume complex numbers; for the details refer to Dorst. Some authors use the term “versor product” to refer to the frequently occurring case where an operand is "sandwiched" between operators. The descriptions for rotations and reflections, including their outermorphisms, are examples of such sandwiching. These outermorphisms have a particularly simple algebraic form. Specifically, a mapping of vectors of the form :$V\; \backslash to\; V\; :\; a\; \backslash mapsto\; RaR^$ extends to the outermorphism $\backslash mathcal(V)\; \backslash to\; \backslash mathcal(V)\; :\; A\; \backslash mapsto\; RAR^.$ Since both operators and operand are versors there is potential for alternative examples such as rotating a rotor or reflecting a spinor always provided that some geometrical or physical significance can be attached to such operations. By the Cartan–Dieudonné theorem we have that every isometry can be given as reflections in hyperplanes and since composed reflections provide rotations then we have that orthogonal transformations are versors. In group terms, for a real, non-degenerate $\backslash mathcal\; G(p,q)$, having identified the group $\backslash mathcal\; G^\backslash times$ as the group of all invertible elements of $\backslash mathcal\; G$, Lundholm gives a proof that the "versor group" $\backslash $ (the set of invertible versors) is equal to the Lipschitz group $\backslash Gamma$ ( Clifford group, although Lundholm deprecates this usage).Subgroups of

Lundholm defines the $\backslash operatorname$, $\backslash operatorname$, and $\backslash operatorname^+$ subgroups, generated by unit vectors, and in the case of $\backslash operatorname$ and $\backslash operatorname^+$, only an even number of such vector factors can be present. Spinors are defined as elements of the even subalgebra of a real GA; an analysis of the GA approach to spinors is given by Francis and Kosowsky.Examples and applications

Hypervolume of a parallelotope spanned by vectors

For vectors $a$ and $b$ spanning a parallelogram we have :$a\; \backslash wedge\; b\; =\; ((a\; \backslash wedge\; b)\; b^)\; b\; =\; a\_\; b$ with the result that $a\; \backslash wedge\; b$ is linear in the product of the "altitude" and the "base" of the parallelogram, that is, its area. Similar interpretations are true for any number of vectors spanning an $n$-dimensional Parallelepiped#Parallelotope, parallelotope; the exterior product of vectors $a\_1,\; a\_2,\; \backslash ldots\; ,\; a\_n$, that is $\backslash textstyle\; \backslash bigwedge\_^n\; a\_i$, has a magnitude equal to the volume of the $n$-parallelotope. An $n$-vector does not necessarily have a shape of a parallelotope – this is a convenient visualization. It could be any shape, although the volume equals that of the parallelotope.Intersection of a line and a plane

We may define the line parametrically by $p\; =\; t\; +\; \backslash alpha\; \backslash \; v$ where $p$ and $t$ are position vectors for points P and T and $v$ is the direction vector for the line. Then :$B\; \backslash wedge\; (p-q)\; =\; 0$ and $B\; \backslash wedge\; (t\; +\; \backslash alpha\; v\; -\; q)\; =\; 0$ so :$\backslash alpha\; =\; \backslash frac$ and :$p\; =\; t\; +\; \backslash left(\backslash frac\backslash right)\; v.$Rotating systems

The mathematical description of rotational forces such as torque and angular momentum often makes use of the cross product of vector calculus in three dimensions with a convention of orientation (handedness). The cross product can be viewed in terms of the exterior product allowing a more natural geometric interpretation of the cross product as a bivector using the Hodge dual, dual relationship :$a\; \backslash times\; b\; =\; -I\; (a\; \backslash wedge\; b)\; .$ For example, torque is generally defined as the magnitude of the perpendicular force component times distance, or work per unit angle. Suppose a circular path in an arbitrary plane containing orthonormal vectors $\backslash hat$ and $\backslash hat$ is parameterized by angle. :$\backslash mathbf\; =\; r(\backslash hat\; \backslash cos\; \backslash theta\; +\; \backslash hat\; \backslash sin\; \backslash theta)\; =\; r\; \backslash hat(\backslash cos\; \backslash theta\; +\; \backslash hat\; \backslash hat\; \backslash sin\; \backslash theta)$ By designating the unit bivector of this plane as the imaginary number :$=\; \backslash hat\; \backslash hat\; =\; \backslash hat\; \backslash wedge\; \backslash hat$ :$i^2\; =\; -1$ this path vector can be conveniently written in complex exponential form :$\backslash mathbf\; =\; r\; \backslash hat\; e^$ and the derivative with respect to angle is :$\backslash frac\; =\; r\; \backslash hat\; i\; e^\; =\; \backslash mathbf\; i\; .$ So the torque, the rate of change of work $W$, due to a force $F$, is :$\backslash tau\; =\; \backslash frac\; =\; F\; \backslash cdot\; \backslash frac\; =\; F\; \backslash cdot\; (\backslash mathbf\; i)\; .$ Unlike the cross product description of torque, $\backslash tau\; =\; \backslash mathbf\; \backslash times\; F$, the geometric algebra description does not introduce a vector in the normal direction; a vector that does not exist in two and that is not unique in greater than three dimensions. The unit bivector describes the plane and the orientation of the rotation, and the sense of the rotation is relative to the angle between the vectors $$ and $$.Geometric calculus

Geometric calculus extends the formalism to include differentiation and integration including differential geometry and differential forms. Essentially, the vector derivative is defined so that the GA version of Green's theorem is true, :$\backslash int\_A\; dA\; \backslash ,\backslash nabla\; f\; =\; \backslash oint\_\; dx\; \backslash ,\; f$ and then one can write :$\backslash nabla\; f\; =\; \backslash nabla\; \backslash cdot\; f\; +\; \backslash nabla\; \backslash wedge\; f$ as a geometric product, effectively generalizing Stokes' theorem (including the differential form version of it). In $1D$ when $A$ is a curve with endpoints $a$ and $b$, then :$\backslash int\_A\; dA\; \backslash ,\backslash nabla\; f\; =\; \backslash oint\_\; dx\; \backslash ,\; f$ reduces to :$\backslash int\_a^b\; dx\; \backslash ,\; \backslash nabla\; f\; =\; \backslash int\_a^b\; dx\; \backslash cdot\; \backslash nabla\; f\; =\; \backslash int\_a^b\; df\; =\; f(b)\; -f(a)$ or the fundamental theorem of integral calculus. Also developed are the concept of Vector Manifold, vector manifold and geometric integration theory (which generalizes differential forms).History

;Before the 20th century Although the connection of geometry with algebra dates as far back at least to Euclid's ''Euclid's Elements, Elements'' in the third century B.C. (see History of elementary algebra#Greek geometric algebra, Greek geometric algebra), GA in the sense used in this article was not developed until 1844, when it was used in a ''systematic way'' to describe the geometrical properties and ''transformations'' of a space. In that year, Hermann Grassmann introduced the idea of a geometrical algebra in full generality as a certain calculus (analogous to the propositional calculus) that encoded all of the geometrical information of a space. Grassmann's algebraic system could be applied to a number of different kinds of spaces, the chief among them being Euclidean space, affine space, and projective space. Following Grassmann, in 1878 William Kingdon Clifford examined Grassmann's algebraic system alongside the quaternions of William Rowan Hamilton in . From his point of view, the quaternions described certain ''transformations'' (which he called ''rotors''), whereas Grassmann's algebra described certain ''properties'' (or ''Strecken'' such as length, area, and volume). His contribution was to define a new product — the ''geometric product'' – on an existing Grassmann algebra, which realized the quaternions as living within that algebra. Subsequently, Rudolf Lipschitz in 1886 generalized Clifford's interpretation of the quaternions and applied them to the geometry of rotations in $n$ dimensions. Later these developments would lead other 20th-century mathematicians to formalize and explore the properties of the Clifford algebra. Nevertheless, another revolutionary development of the 19th-century would completely overshadow the geometric algebras: that of vector analysis, developed independently by Josiah Willard Gibbs and Oliver Heaviside. Vector analysis was motivated by James Clerk Maxwell's studies of electromagnetism, and specifically the need to express and manipulate conveniently certain differential equations. Vector analysis had a certain intuitive appeal compared to the rigors of the new algebras. Physicists and mathematicians alike readily adopted it as their geometrical toolkit of choice, particularly following the influential 1901 textbook ''Vector Analysis'' by Edwin Bidwell Wilson, following lectures of Gibbs. In more detail, there have been three approaches to geometric algebra: quaternionic analysis, initiated by Hamilton in 1843 and geometrized as rotors by Clifford in 1878; geometric algebra, initiated by Grassmann in 1844; and vector analysis, developed out of quaternionic analysis in the late 19th century by Gibbs and Heaviside. The legacy of quaternionic analysis in vector analysis can be seen in the use of $i$, $j$, $k$ to indicate the basis vectors of $\backslash mathbf^3$: it is being thought of as the purely imaginary quaternions. From the perspective of geometric algebra, the even subalgebra of the Space Time Algebra is isomorphic to the GA of 3D Euclidean space and quaternions are isomorphic to the even subalgebra of the GA of 3D Euclidean space, which unifies the three approaches. ;20th century and present Progress on the study of Clifford algebras quietly advanced through the twentieth century, although largely due to the work of abstract algebraists such as Hermann Weyl and Claude Chevalley. The ''geometrical'' approach to geometric algebras has seen a number of 20th-century revivals. In mathematics, Emil Artin's ''Geometric Algebra'' discusses the algebra associated with each of a number of geometries, including affine geometry, projective geometry, symplectic geometry, and orthogonal geometry. In physics, geometric algebras have been revived as a "new" way to do classical mechanics and electromagnetism, together with more advanced topics such as quantum mechanics and gauge theory. David Hestenes reinterpreted the Pauli matrices, Pauli and Gamma matrices , Dirac matrices as vectors in ordinary space and spacetime, respectively, and has been a primary contemporary advocate for the use of geometric algebra. In computer graphics and robotics, geometric algebras have been revived in order to efficiently represent rotations and other transformations. For applications of GA in robotics (screw theory, kinematics and dynamics using versors), computer vision, control and neural computing (geometric learning) see Bayro (2010).Conferences and Journals

The main conferences in this subject include thInternational Conference on Clifford Algebras and their Applications in Mathematical Physics (ICCA)

an

Applications of Geometric Algebra in Computer Science and Engineering (AGACSE)

series. A main publication outlet is the Springer journal Advances in Applied Clifford Algebras.

Software

GA is a very application-oriented subject. There is a reasonably steep initial learning curve associated with it, but this can be eased somewhat by the use of applicable software. The following is a list of freely available software that does not require ownership of commercial software or purchase of any commercial products for this purpose:Actively developed open source projects

clifford

- Numeric Geometric Algebra Module for Python.

galgebra

- Symbolic Geometric Algebra Module for Python by Alan Bromborsky (uses sympy).

GATL

- A template C++ library that uses the lazy evaluation strategy to automatically execute low-level algebraic manipulations in compile time in order to produce more efficient programs.

ganja.js

- Geometric Algebra for Javascript (with operator overloading and algebraic literals).

klein

- Production-oriented Streaming SIMD Extensions, SSE-optimized C++ library, specializing in the dual 3D Projective Geometric Algebra $\backslash mathbf(\backslash mathbb^*\_)$.

Versor

A lightweight templated C++ Library with an OpenGL interface for efficient geometric algebra programming in arbitrary metrics, including Conformal geometric algebra, conformal.

Grassmann.jl

- Conformal geometric product algebra based on static dual multivectors with graded-blade indexing (written in Julia language).

Terathon Math Library

- Production-quality C++ library by Eric Lengyel that includes the direct 3D Projective Geometric Algebra $\backslash mathcal\_$.

Other projects

* GA VieweFontijne, Dorst, Bouma & Mann

* GAwx

GitHub

- GA using wxMaxima, Open Source software using a free Computer Algebra System, includes readme files for motivation and setup. * cliffor

GitHub

- Clifford algebra and geometric calculus in Maxima based on indicial representation. * CLUVi

Perwass

Software allowing script creation and including sample visualizations, manual and GA introduction. * Gaigen SourceForge:projects/g25/, Fontijne For programmers, this is a code generator with support for C, C++, C# and Java. * Cinderella Visualization

Hitzer

an

Dorst

* Gaalo

Standalone GUI-Application that uses the Open-Source Computer Algebra Software Maxima (software), Maxima to break down CLUViz code into C/C++ or Java code. * Gaalop Precompile

Precompiler based on Gaalop integrated with CMake. * Gaalet, C++ Expression Template Librar

Seybold

* Clifford Algebra with Wolfram Language, Mathematica]

clifford.m

* Clifford Algebra with GiNaC]

built-in classes

Benchmark project

ga-benchmark

- A benchmark for C/C++ Geometric Algebra libraries and library generators. The latest results of the ga-benchmark can be foun

here

See also

* Comparison of vector algebra and geometric algebra * Clifford algebra * Grassmann–Cayley algebra * Spacetime algebra * Spinor * Quaternion * Algebra of physical space * Universal geometric algebraNotes

Citations

References and further reading

:''Arranged chronologically'' * * * * * * * * * * * * * * * * * * * * * *Chapter 1

as PDF * * * * * Extract online at http://geocalc.clas.asu.edu/html/UAFCG.html #5 New Tools for Computational Geometry and rejuvenation of Screw Theory * * * * * * * * * * * * * * * *

External links

A Survey of Geometric Algebra and Geometric Calculus

Luther College, Iowa.

Imaginary Numbers are not Real – the Geometric Algebra of Spacetime

Introduction (Cambridge GA group).

Geometric Algebra 2015, Masters Course in Scientific Computing

from Dr. Chris Doran (Cambridge).

Maths for (Games) Programmers: 5 – Multivector methods

Comprehensive introduction and reference for programmers, from Ian Bell (programmer), Ian Bell.

IMPA Summer School 2010

Fernandes Oliveira Intro and Slides.

E.S.M. Hitzer and Japan GA publications.

Google Group for GA

Geometric Algebra Primer

Introduction to GA, Jaap Suter.

Geometric Algebra Resources

curated wiki, Pablo Bleyer.

Applied Geometric Algebras in Computer Science and Engineering 2018

Early Proceedings

GAME2020

Geometric Algebra Mini Event

AGACSE 2021 Videos

English translations of early books and papers

G. Combebiac, "calculus of tri-quaternions"

(Doctoral dissertation)

M. Markic, "Transformants: A new mathematical vehicle. A synthesis of Combebiac's tri-quaternions and Grassmann's geometric system. The calculus of quadri-quaternions"

C. Burali-Forti, "The Grassmann method in projective geometry"

A compilation of three notes on the application of exterior algebra to projective geometry

C. Burali-Forti, "Introduction to Differential Geometry, following the method of H. Grassmann"

Early book on the application of Grassmann algebra

H. Grassmann, "Mechanics, according to the principles of the theory of extension"

One of his papers on the applications of exterior algebra. Research groups

Links to Research groups, Software, and Conferences, worldwide.

Cambridge Geometric Algebra group

Full-text online publications, and other material.

University of Amsterdam group

Geometric Calculus research & development

(Arizona State University).

GA-Net blog

an

Geometric Algebra/Clifford Algebra development news.

Geometric Algebra for Perception Action Systems. Geometric Cybernetics Group

(CINVESTAV, Campus Guadalajara, Mexico). {{DEFAULTSORT:Geometric Algebra Geometric algebra,