Quaternion

In mathematics, the quaternions are a non-commutative extension of the complex numbers. They were first described by the Irish mathematician Sir William Rowan Hamilton in 1843 and applied to mechanics in three-dimensional space. At first, the quaternions were regarded as pathological, because they disobeyed the commutative law ab = ba. Although they have been superseded in most applications by vectors, they still find uses in both theoretical and applied mathematics, in particular for calculations involving three-dimensional rotations.

In modern language, the quaternions form a 4-dimensional normed division algebra over the real numbers. The algebra of quaternions is often denoted by H (for Hamilton), or in blackboard bold by $$\mathbb H$$.

Definition
While the complex numbers are obtained by adding the element i to the real numbers which satisfies i2 = &minus;1, the quaternions are obtained by adding the elements i, j and k to the real numbers which satisfy the following relations.


 * $$i^2 = j^2 = k^2 = ijk = -1\,$$

If the multiplication is assumed to be associative (as indeed it is), the following relations follow directly:


 * $$\begin{matrix}

ij & = & k, & & & & ji & = & -k, \\ jk & = & i, & & & & kj & = & -i, \\ ki & = & j, & & & & ik & = & -j. \end{matrix}$$

(these are derived in detail below). Every quaternion is a real linear combination of the basis quaternions 1, i, j, and k, i.e. every quaternion is uniquely expressible in the form a + bi + cj + dk where a, b, c, and d are real numbers. In other words, as a vector space over the real numbers, the set H of all quaternions has dimension 4, whereas the complex number plane has dimension 2. Addition of quaternions is accomplished by adding corresponding coefficients, as with the complex numbers. By linearity, multiplication of quaternions is completely determined by the multiplication table above for the basis quaternions. Under this multiplication, the basis quaternions, with their negatives, form the quaternion group of order 8, Q8.The scalar part of the quaternion is a while the remainder is the vector part. Thus a vector in the context of quaternions has zero for scalar part.

Example
Let


 * $$\begin{matrix}

x & = & 3 + i \\ y & = & 5i + j - 2k \end{matrix}$$ Then


 * $$\begin{matrix}

x + y & = & 3 + 6i + j - 2k \\ \\ xy & = & (3 + i)(5i + j - 2k) \\ & = & 15i + 3j - 6k + 5i^2 + ij - 2ik \\ & = & 15i + 3j - 6k - 5 + k + 2j \\ & = & -5 + 15i + 5j - 5k \\ \\ yx & = & (5i + j - 2k)(3 + i) \\ & = & 15i + 5i^2 + 3j + ji - 6k - 2ki \\ & = & 15i - 5 + 3j - k - 6k - 2j \\ & = & -5 + 15i + j - 7k \end{matrix}$$

Arithmetic
Unlike real or complex numbers, multiplication of quaternions is not commutative: e.g.


 * $$\begin{matrix}

ij & = & k \\ ji & = & -k \\ jk & = & i \\ kj & = & -i \\ ki & = & j \\ ik & = & -j \\ \end{matrix}$$

The quaternions are an example of a division ring, an algebraic structure similar to a field except for commutativity of multiplication. In particular, multiplication is still associative and every non-zero element has a unique inverse.

Quaternions form a 4-dimensional associative algebra over the reals (in fact a division algebra) and contain the complex numbers, but they do not form an associative algebra over the complex numbers. The quaternions, along with the complex and real numbers, are the only finite-dimensional associative division algebras over the field of real numbers. The non-commutativity of multiplication has some unexpected consequences, among them that polynomial equations over the quaternions can have more distinct solutions than the degree of the polynomial.

The equation $$z^2 + 1 = 0$$, for instance, has the infinitely-many quaternion solutions $$z = bi + cj + dk$$ with $$b^2 + c^2 + d^2 = 1$$.

The conjugate $$z^*$$ of the quaternion $$z = a + bi + cj + dk$$ is defined as


 * $$z^* = a - bi - cj - dk \,$$

and the absolute value of z is the non-negative real number defined by


 * $$|z| = \sqrt{zz^*} = \sqrt{a^2+b^2+c^2+d^2}. \,$$

Note that $$(wz)^* = z^* w^*$$, which is not in general equal to $$w^* z^*$$. The multiplicative inverse of the non-zero quaternion z can be conveniently computed as z&minus;1 = z* / |z|2.

By using the distance function d(z, w) = |z &minus; w|, the quaternions form a metric space (isometric to the usual Euclidean metric on R4) and the arithmetic operations are continuous. We also have |zw| = |z| |w| for all quaternions z and w. Using the absolute value as norm, the quaternions form a real Banach algebra.

Fundamental formula
The set of equations


 * $$ i^2 = j^2 = k^2 = i j k = -1 $$

is the fundamental formula for quaternion multiplication. The multiplication table of basis quaternions is easily derivable from it. Since


 * $$ i j k = -1 $$

then, right-multiplying both sides by k,


 * $$ i j k k = -k, $$
 * $$ i j (-1) = -k, $$
 * $$ i j = k. $$

Alternatively, left-multiplying both sides by i,


 * $$ i i j k = -i, $$
 * $$ (-1) j k = -i, $$
 * $$ j k = i. $$

This last equation can consequently be left-multiplied on both sides by j,


 * $$ j j k = j i, $$
 * $$ -k = j i, $$

and continuing in this fashion the rest of the multiplication table is forthwith derived.

Profile
The set of quaternions that square to −1 is the set of vectors of absolute value 1, that is


 * $$\left\{ q : q ^2 = -1 \right\} = \left\{ q : q^* = -q\ \mbox{and}\ q q^* = 1 \right\} = S^2 \, $$

From this set equality one can view H as the union of complex planes sharing the same real line and taking an imaginary unit from the set. Furthermore, the unit sphere in H, the 3-sphere, is formed by the collection of unit circles in these complex planes. As the general point on a circle is


 * $$e^{ai}= \cos {a} + i \sin {a}\,$$

(known as Euler's formula), the general point on the 3-sphere is ear where r is a unit vector of H, $$r \in S^2$$. Since two quaternions p and q do not commute ( p q ≠ q p) unless they lie in the same complex subplane extending the real line (there is an r &isin; S2 and there are a, b, c, d &isin; R such that p = a + b r and q = c + d r), this profile arises when we seek commutative subrings of the quaternion ring.

Rotation group
As is explained in more detail in quaternions and spatial rotation, the multiplicative group of non-zero quaternions acts by conjugation on the copy of R3 consisting of quaternions with real part equal to zero. The conjugation by a unit quaternion (a quaternion of absolute value 1) with real part cos(t) is a rotation by an angle 2t, the axis of the rotation being the direction of the imaginary part. The advantages of quaternions are:


 * 1) Non singular representation (compared with Euler angles for example)
 * 2) More compact (and faster) than matrices
 * 3) Pairs of unit quaternions can represent a rotation in 4d space.

The set of all unit quaternions forms a 3-dimensional sphere S3 and a group (a Lie group) under multiplication. S3 is the double cover of the group SO(3,R) of real orthogonal 3&times;3 matrices of determinant 1 since two unit quaternions correspond to every rotation under the above correspondence. The group S3 is isomorphic to SU(2), the group of complex unitary 2&times;2 matrices of determinant 1. Let A be the set of quaternions of the form a + bi + cj + dk where a, b, c and d are either all integers or all rational numbers with odd numerator and denominator 2. The set A is a ring and a lattice. There are 24 unit quaternions in this ring, and they are the vertices of a 24-cell regular polytope with Schläfli symbol {3,4,3}.

Representing quaternions by matrices
There are at least two ways of representing quaternions as matrices, in such a way that quaternion addition and multiplication correspond to matrix addition and matrix multiplication (i.e., quaternion-matrix homomorphisms). One is to use 2&times;2 complex matrices, and the other is to use 4&times;4 real matrices.

In the first way, the quaternion a + bi + cj + dk is represented as


 * $$\begin{pmatrix} a+bi & c+di \\ -c+di & a-bi \end{pmatrix}$$

This representation has several nice properties.


 * Complex numbers (c = d = 0) correspond to diagonal matrices.
 * The square of the absolute value of a quaternion is the determinant of the corresponding matrix.
 * The conjugate of a quaternion corresponds to the conjugate transpose of the matrix.
 * Restricted to unit quaternions, this representation provides the isomorphism between S3 and SU(2). The latter group is important in quantum mechanics when dealing with spin; see also Pauli matrices.

In the second way, the quaternion a + bi + cj + dk is represented as


 * $$\begin{pmatrix}

\;\; a & -b & \;\; d & -c \\ \;\; b & \;\; a & -c & -d \\ -d & \;\; c & \;\; a & -b \\ \;\; c & \;\; d & \;\; b & \;\; a \end{pmatrix}$$

In this representation, the conjugate of a quaternion corresponds to the transpose of the matrix. The fourth power of the absolute value of a quaternion is the determinant of the corresponding matrix.

Quaternion operations
Quaternion operations have extended applications in electrodynamics and general relativity. The use of quaternions can replace tensors in representation. It is sometimes easier to use quaternions with complex elements, leading to a form that is not a division algebra. However, the same operations can be performed using a combination of conjugate operations. Only quaternions with real elements will be discussed here. The discussion will involve describing quaternions in two forms. One as a combination of a vector and a scalar, and the other as a combination of the two constructors and the bivector (i, j, and k).

Define two quaternions:
 * $$p = a + \vec{u} = a + bi + cj + dk$$
 * $$q = t + \vec{v} = t + xi + yj + zk$$

where $$\vec{u}$$ represents the vector (b, c, d), and $$\vec{v}$$ represents the vector (x, y, z).

Addition and products
Like complex numbers, vectors, and matrices, the addition of two quaternions is equivalent to summing the elements together:
 * Quaternion addition: p + q :


 * $$p + q = a + t + \vec{u} + \vec{v} = (a + t) + (b + x)i + (c + y)j + (d + z)k$$

Addition follows all of the commutativity and associativity rules of real and complex number.

The usual non-commutative multiplication between two quaternions is termed the Grassmann product. This product has been described briefly above. The complete form is described below:
 * Quaternion multiplication: pq :


 * $$pq = at - \vec{u}\cdot\vec{v} + a\vec{v} + t\vec{u} + \vec{u}\times\vec{v}$$


 * $$pq = (at - bx - cy - dz) + (bt + ax + cz - dy)i + (ct + ay + dx - bz)j + (dt + az + by - cx)k$$

Due to the non-commutative nature of the quaternion multiplication, pq is not equivalent to qp. The Grassmann product is useful to describe many other algebraic functions. The vector portion of the multiplication of qp follows:


 * $$qp = at - \vec{u}\cdot\vec{v} + a\vec{v} + t\vec{u} - \vec{u}\times\vec{v}$$


 * : p*q :

Another multiplication between two quaternions is termed the Euclidean product. Instead of the first quaternion, its conjugate is taken:


 * $$p^*q = at + \vec{u}\cdot\vec{v} + a\vec{v} - t\vec{u} - \vec{u}\times\vec{v}$$

Due to the non-commutative nature of the quaternion multiplication, p*q is not equivalent to q*p.


 * $$q^*p = at + \vec{u}\cdot\vec{v} - a\vec{v} + t\vec{u} + \vec{u}\times\vec{v}$$


 * Quaternion dot-product: p &middot; q :

The dot-product is also referred to as the Euclidean inner-product, and is equivalent to a 4-vector dot product. The dot product is the sum of the quantity of each element of p multiplied by each element of q. It is a commutative product between quaternions, and returns a scalar quantity.


 * $$p \cdot q = at + \vec{u}\cdot\vec{v} = at + bx + cy + dz$$

The dot-product can be rewritten using the Euclidean product:


 * $$p \cdot q = \frac{p^*q + q^*p}{2}$$

This product is useful to isolate an element from a quaternion. For instance, the i term can be pulled out from p:


 * $$p \cdot i = b$$

The Euclidean outer-product is not used often; however, it is mentioned as a pair with the inner-product:
 * Quaternion outer-product: Outer(p,q) :


 * $$\operatorname{Outer}(p,q) = a\vec{v} - t\vec{u} - \vec{u}\times\vec{v}$$


 * $$\operatorname{Outer}(p,q) = (ax - bt - cz + dy)i + (ay + bz - ct - dx)j + (az - by + cx - dt)k$$

The outer-product can be rewritten using the Euclidean product:


 * $$\operatorname{Outer}(p,q) = \frac{p^*q - q^*p}{2}$$

The cross-product of quaternions is also known as the odd-product or the Grassman outer-product. It is equivalent to the vector cross-product, and returns a vector quantity only:
 * Quaternion cross-product: p &times; q


 * $$p \times q = \vec{u}\times\vec{v}$$


 * $$p \times q = (cz - dy)i + (dx - bz)j + (by - cx)k$$

The cross-product can be rewritten using the Grassman product:


 * $$p \times q = \frac{pq - qp}{2}$$

The even-product of quaternions is also referred to as the Grassman inner-product. It is also not widely used, but it mentioned due to the similarity between it and the odd-product. It is the purely symmetric product; therefore, it is completely commutative.
 * Quaternion even-product: Even(p,q) :


 * $$\operatorname{Even}(p,q) = at - \vec{u}\cdot\vec{v} + a\vec{v} + t\vec{u}$$


 * $$\operatorname{Even}(p,q) = (at - bx - cy - dz) + (ax + bt)i + (ay + ct)j + (az + dt)k$$

The even-product can be rewritten using the Grassman product:


 * $$\operatorname{Even}(p,q) = \frac{pq + qp}{2}$$

The inverse of a quaternion is defined in a way that p&minus;1p = 1. It is defined above in the definition section, under properties (note the difference in variable notation). It is formed the same way that the complex inverse is found:
 * Quaternion reciprocal: p&minus;1


 * $$p^{-1} = \frac{p^*}{p p^*}$$

The product of a quaternion and its conjugate is a scalar. The division of a quaternion by a scalar is equivalent to multiplication by the scalar inverse, such that each element of the quaternion is divided by the divisor.

The non-commutativity of quaternions allows for two divisions of numbers p&minus;1q and qp&minus;1. This means that the notation of q/p cannot be used unless p is a scalar only.
 * Quaternion division: p&minus;1q

The scalar of a quaternion can be isolated in the same way that was described earlier with the dot-product:
 * Quaternion scalar: Scalar(p) :

$$1\cdot p = \frac{p + p^*}{2} = a$$

The vector of a quaternion can be isolated using the outer-product in the same way the inner product is used to isolate the scalar:
 * Quaternion vector: Vector(p) :

$$\operatorname{Outer}(1, p) = \frac{p - p^*}{2} = \vec{u} = bi + cj + dk$$

The absolute value of a quaternion is the scalar quantity that determines the length of the quaternion from the origin.
 * Quaternion modulus: $$|p|$$ :


 * $$|p| = \sqrt{p \cdot p} = \sqrt{p^*p} = \sqrt{a^2 + b^2 + c^2 + d^2}$$

The sign of a complex number finds the complex number of the same direction found on the unit circle. The quaternion sign also produces the unit quaternion:
 * Quaternion sign: sgn(p) :


 * $$\sgn(p) = \frac{p}{|p|}$$

The argument finds the angle of the 4-vector quaternion from the unit scalar (i.e. 1). This returns a scalar angle.
 * Quaternion argument: arg(p) :


 * $$\arg(p) = \arccos\left(\frac{\operatorname{Scalar}(p)}{|p|}\right)$$

Exponentials and logarithms
Exponential and logarithmic functions can be defined, because quaternions have a division algebra.


 * Natural exponential: $$\exp(p) = \exp(a)(\cos(|\vec{u}|) + \sgn(\vec{u})\sin(|\vec{u}|))$$


 * Natural logarithm: $$\ln(p) = \ln(|p|) + \sgn(\vec{u})\arg(p)$$


 * Power: $$p^q = \exp(\ln(p)q)$$

Trigonometry

 * Sine: $$\sin(p) = \sin(a)\cosh(|\vec{u}|) + \cos(a)\sgn(\vec{u})\sinh(|\vec{u}|)$$


 * Cosine: $$\cos(p) = \cos(a)\cosh(|\vec{u}|) - \sin(a)\sgn(\vec{u})\sinh(|\vec{u}|)$$


 * Tangent: $$\tan(p) = \frac{\sin(p)}{\cos(p)}$$

Hyperbolic

 * Hyperbolic sine: $$\sinh(p) = \sinh(a)\cos(|\vec{u}|) + \cosh(a)\sgn(|\vec{u}|)\sin(|\vec{u}|)$$


 * Hyperbolic cosine: $$\cosh(p) = \cosh(a)\cos(|\vec{u}|) + \sinh(a)\sgn(|\vec{u}|)\sin(|\vec{u}|)$$


 * Hyperbolic tangent: $$\tanh(p) = \frac{\sinh(p)}{\cosh(p)}$$

Inverse hyperbolic functions

 * Inverse hyperbolic sine: $$\operatorname{arcsinh}(p) = \ln(p + \sqrt{p^2 + 1})$$


 * Inverse hyperbolic cosine: $$\operatorname{arccosh}(p) = \ln(p + \sqrt{p^2 - 1})$$


 * Inverse hyperbolic tangent: $$\operatorname{arctanh}(p) = \frac{\ln(1+p)-\ln(1-p)}{2}$$

Inverse trigonometric functions
This was listed last, because the inverse hyperbolic functions needed to be defined over quaternions first.


 * Inverse sine: $$\arcsin(p) = -\sgn(\vec{u})\operatorname{arcsinh}(p \sgn(\vec{u}))$$


 * Inverse cosine: $$\arccos(p) = -\sgn(\vec{u})\operatorname{arccosh}(p)$$


 * Inverse tangent: $$\arctan(p) = -\sgn(\vec{u})\operatorname{arctanh}(p \sgn(\vec{u}))$$

Construction of quaternions from complex numbers
According to the Cayley-Dickson construction, a quaternion is an ordered pair of complex numbers. Letting j be a new root of &minus;1, different from both i and &minus;i, and given u and v are a pair of complex numbers, then
 * $$ q = u + j v $$

is a quaternion.

If $$ u = a + i b $$ and $$ v = c + i d $$ then
 * $$ q = a + i b + j c + j i d $$.

Moreover, let
 * $$ j i = - i j $$,

so that
 * $$ q = a + i b + j c + i j (-d) $$,

and also let the product of quaternions be associative.

With these rules, we can now derive the multiplication table for i, j and i j, the imaginary components of a quaternion:
 * $$ i i = -1, $$
 * $$ i j = (i j), $$
 * $$ i (i j) = (i i) j = -j, $$
 * $$ j i = - (i j), $$
 * $$ j j = -1, $$
 * $$ j (i j) = - j (j i) = - (j j) i = i, $$
 * $$ (i j) i = - (j i) i = -j (i i) = j, $$
 * $$ (i j) j = i (j j) = -i, $$
 * $$ (i j) (i j) = -(i j) (j i) = -i (j j) i = i i = -1. $$

Notice how the dyad i j behaves just like the k in the definition.

For any complex number v = c + i d, its product with j has the following property:
 * $$ j v = v^* j $$

since
 * $$ j v = j c + j i d = j c - (i j) d = (c - i d) j = v^* j $$.

Let p be the quaternion with complex components w and z:
 * $$ p = w + j z $$.

Then the product q p is
 * $$ q p = (u + j v) (w + j z) = u w + u j z + j v w + j v j z $$
 * $$ = u w + j u^* z + j v w + j j v^* z $$
 * $$ = (u w - v^* z) + j (u^* z + v w). $$

Since the product of complex numbers is commutative, we have
 * $$ (u + j v) (w + j z) = (u w - z v^*) + j (u^* z + w v) $$

which is precisely how quaternion multiplication is defined by the Cayley-Dickson construction.

Note that if u = a + i b, v = c + i d, and p = a + i b + j c + k d then p&prime;s construction from u and v is rather
 * $$ p = u + v j = u + j v^* $$.

Generalizations
If F is any field with characteristic different from 2, and a and b are elements of F, one may define a four-dimensional unitary associative algebra over F by using two generators i and j and the relations i2 = a, j2 = b and ij = &minus;ji. These algebras are called quaternion algebras either isomorphic to the algebra of 2&times;2 matrices over F, or they are division algebras over F.

History
Quaternions were introduced by Irish mathematician Sir William Rowan Hamilton in 1843. Hamilton was looking for ways of extending complex numbers (which can be viewed as points on a plane) to higher spatial dimensions. He could not do so for 3 dimensions, but 4 dimensions produce quaternions. According to the story Hamilton told, on October 16, he was out walking along the Royal Canal in Dublin with his wife when the solution in the form of the equation


 * $$i^2 = j^2 = k^2 = ijk = -1\,$$

suddenly occurred to him; Hamilton then promptly carved this equation into the side of the nearby Brougham Bridge (now called Broom Bridge). This involved abandoning the commutative law, a radical step for the time. Vector algebra and matrices were still in the future.

Not only this, but Hamilton had in a sense invented the cross and dot products of vector algebra. Hamilton also described a quaternion as an ordered quadruple (4-tuple) of real numbers, and described the first coordinate as the 'scalar' part, and the remaining three as the 'vector' part. If two quaternions with zero scalar parts are multiplied, the scalar part of the product is the negative of the dot product of the vector parts, while the vector part of the product is the cross product. But the significance of these was still to be discovered. Hamilton proceeded to popularize quaternions with several books, the last of which, Elements of Quaternions, had 800 pages and was published shortly after his death.

Use controversy
Even by this time there was controversy about the use of quaternions. Some of Hamilton's supporters, like Cargill Gilston Knott, vociferously opposed the growing fields of vector algebra and vector calculus (developed by Oliver Heaviside and Willard Gibbs among others), maintaining that quaternions provided a superior notation. While this is debatable in three dimensions, quaternions cannot be directly applied in higher dimensions (though extensions like octonions and Clifford algebras may be more applicable). Vector notation had nearly universally replaced quaternions in science and engineering by the mid-20th century.

Some early formulations of Maxwell's equations used a quaternion-based notation (although Maxwell's original formulation simply used 20 equations in 20 variables), but it proved unpopular compared to the vector-based notation of Heaviside. (All of these formulations were mathematically equivalent.)

Recent years
Quaternions are often used in computer graphics (and associated geometric analysis) to represent rotations (see quaternions and spatial rotation) and orientations of objects in three-dimensional space. They are smaller than other representations such as matrices, and operations on them such as composition can be computed more efficiently. Quaternions also see use in control theory, signal processing, attitude control, physics, and orbital mechanics, mainly for representing rotations/orientations in three dimensions. For example, it is common for spacecraft attitude-control systems to be commanded in terms of quaternions, which are also used to telemeter their current attitude. The rationale is that combining many quaternion transformations is more numerically stable than combining many matrix transformations, avoiding such phenomena as gimbal lock, which can occur when Euler angles are used. Using quaternions also reduces overhead from that when rotation matrices are used, because one carries only four components, not nine, and the multiplication algorithms to combine successive rotations are faster.

Since 1989, the National University of Ireland, Maynooth has organized a pilgrimage, where scientists (including physicists Murray Gell-Mann in 2002 and Steven Weinberg in 2005 and mathematician Andrew Wiles in 2003) take a walk from Dunsink Observatory to the Royal Canal bridge where, unfortunately, no trace of Hamilton's carving remains.

Quotes about quaternions

 * Quaternions came from Hamilton after his really good work had been done; and, though beautifully ingenious, have been an unmixed evil to those who have touched them in any way, including Clark Maxwell. -- Lord Kelvin, 1892.
 * . . .quaternions appear to exude an air of nineteenth century decay, as a rather unsuccessful species in the struggle-for-life of mathematical ideas. Mathematicians, admittedly, still keep a warm place in their hearts for the remarkable algebraic properties of quaternions but, alas, such enthusiasm means little to the harder-headed physical scientist. -- Simon L. Altmann, 1986

External articles and resources
Links
 * Geometric Tools documentation Includes several papers focusing on computer graphics applications of quaternions. Covers useful techniques such as spherical linear interpolation.
 * Geometric Tools source code Includes free C++ source code for a complete quaternion class suitable for computer graphics work, under a very liberal license.
 * Doing Physics with Quaternions
 * Quaternions for Computer Graphics and Mechanics (Gernot Hoffman)
 * Quaternion Calculator [Java]
 * The Physical Heritage of Sir W. R. Hamilton (PDF)
 * Hamilton&rsquo;s Research on Quaternions
 * Quaternion Julia Fractals 3D Raytraced Quaternion Julia Fractals by David J. Grossman
 * Quaternion Math and Conversions Great page explaining basic math with links to straight forward rotation conversion formulae.

Encyclopedias
 * "Quaternion". 1911 encyclopedia.
 * Tait, Peter Guthrie, "Quaternion". M.A. Sec. R.S.E. Encyclopaedia Britannica, Ninth Edition, 1886, Vol. XX, pp. 160-164. (bzipped PostScript file)

Books
 * Conway, John Horton, and Smith, Derek A., (2003) On Quaternions and Octonions: Their Geometry, Arithmetic, and Symmetry, A. K. Peters, Ltd.
 * Crowe, Michael J. (1967). A History of Vector Analysis: The Evolution of the Idea of a Vectorial System University of Notre Dame Press.  Surveys the major and minor vector systems of the 19th century (Hamilton, M&ouml;bius, Bellavitis, Clifford, Grassmann, Tait, Peirce, Maxwell, MacFarlane, MacAuley, Gibbs, Heaviside).  The competition between quaternions and other systems is a major theme.
 * Kuipers, Jack (2002). Quaternions and Rotation Sequences: A Primer With Applications to Orbits, Aerospace, and Virtual Reality (Reprint edition). Princeton University Press. ISBN 0691102988
 * Ward, J. P. (1997). Quaternions and Cayley Numbers: Algebra and Applications, Kluwer Academic Publishers. ISBN 0792345134.