3 D Geometric Algebra 1
3 D Geometric Algebra 1
3 D Geometric Algebra 1
Three-dimensional geometric
algebra
1.1 Scalars
Scalars are quantities, which can be specified by one number. For example,
temperature, mass, and work are scalars. Often, scalars are identified with real
numbers (which, we assume, reader is already familiar with). However, we define
scalars implicitly by their arithmetic properties, which are relevant in the present
context. For any scalars α and β there exists an addition operation “+” which
produces another scalar α + β, and there exists a multiplication operation (for
which no special symbol is reserved), which creates another scalar αβ. Scalars α,
β and γ obey following rules:
α + β + γ = (α + β) + γ = α + (β + γ) = (α + γ) + β (1.1)
11
12 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
α(β + γ) = αβ + αγ = βα + γα = (β + γ)α
The precise meaning and significance of this property becomes evident later
on. Because we prefer to identify scalars with numbers without direction, we also
require that
1.2 Vectors
Vectors are quantities, whose specification requires a direction as well as a nu-
merical value. For example, displacement and velocity are vectors. A vector can
be pictured by a segment of a straight line (i.e. by an arrow) regarded as having
a definite length and direction. Vectors are not tied to any specific point. Any
two vectors with the same length and direction represent the same vector (see
Fig. 1.1). To emphasize this inherent vectorial property, one occasionally uses
the term free vector. The simplest interpretation of a vector is the displacement
from a point coinciding the tail of the vector to the point coinciding with the
head of the vector. We introduce the notation Γp (a) to signify that the vector
a is transported along the line passing through the point p and containing the
tail of the vector a without changing its orientation, until the tail of the vector a
coincides with the point p. The independency of vectors from any specific point
implies that the parallel transportation is independent of path, i.e.
Γp (a) = a (1.3)
14 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
for any point p. This, in turn, implies flat space. Furthermore, we can interpret
Eq. (1.3) describing vectors as an equivalence class of rays (i.e. point bound
vectors). If a vector is multiplied by the scalar λ, its length is dilated by the
factor |λ|. The direction also changes to opposite, if the scalar is negative.
The sum a + b of the vectors a and b is found by joining the tip of vector a to
the tail of b and drawing an arrow labelled a + b that connects the remaining
tail and tip. The triangle construction is depicted in Fig. 1.3. The subtraction
a − b of vectors is equal to the addition a + (−b). Because the same arrow
can be obtained by joining the tip of vector b to the tail of a, and drawing an
arrow labelled a + b that connects the remaining tail and tip, it follows that
a + b = b + a. Thus, the sum a + b can be represented as the diagonal of the
parallelogram, which has vectors a and b as its sides. This is depicted in Fig.
1.4. As Fig. 1.5 shows, a + b + c = (a + b) + c = a + (b + c). Thus, vector
addition is associative, distributive, and commutative.
1.3. ADDITION OF VECTORS 15
a + b = Γp (a + b) (1.4)
wee see that in a flat space the parallelogram formed with four vectors in its sides
remains closed under transportation. In other words, the flat space is torsion
free. Of course, it is possible to define the concept of directed displacement also
in the curved spaces. However, the algebra of curvilinear displacements would
differ from the algebra of vectors. Consider the two-dimensional space consisting
of a surface of a sphere. It is possible to define spherical vectors as directed
segments of great circles. However, the addition of two spherical vectors is not
commutative. For further details, see Sect. 3.6.4.
a(b + c) = ab + ac (1.5)
2. It is associative, i.e.
abc = a(bc) = (ab)c (1.6)
3. In Euclidean space, the square of the vector a is equal to the square of its
length2 , i.e.
a2 = |a|2 ≥ 0 (1.7)
2
In other spaces the length of a vector is not necessarily well defined.
18 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
outside of the realms of the conventional vector analysis by using Eqs. (1.8) and
(1.9) to define the dot product a · b of any two vectors a and b in terms of the
yet unknown product ab as
ab + ba
a·b= (1.10)
2
where it follows that the symmetrized combination of geometric product is scalar
valued.
any other planar object with the same orientation and area: the particular shape
is unimportant (see Fig. 1.8). In other words, a bivector is an equivalence class
of planes, in the similar manner as a vector is an equivalence class of rays. If the
bivector is multiplied by the scalar λ, its area is dilated by the factor |λ|. The
orientation also changes to opposite, if the scalar is negative (or in other words,
−a ∧ b = b ∧ a). The sense of the bivector a ∧ b can be determined graphically
as the direction of the arc traversed by the tip of vector a, when the tail of a is
placed to the tail of b, and a is turned through the smaller of the two possible
sectors so that it coincides with b (see Fig. 1.9). We also say that the grade of
a bivector a ∧ b is two, since it is an outer product of two vector factors.
ab = a · b + a ∧ b (1.14)
We can as well regard a · b as the scalar part of the geometric product ab, i.e.
a · b = habi0̄ (1.15)
1.4. PRODUCTS OF VECTORS 21
Figure 1.9: The direction of a bivector u ∧ v, indicated by the directed solid arc
(now u and v are unit vectors).
22 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
and
a ∧ b = habi2̄ (1.16)
as the bivector part of the geometric product ab. The notation hAik̄ stands for
the k-grade part of A, where an object of the grade k consistst of sums of outer
products of k vectors. Occasionally, they are referred as k-vectors.
In Eq. (1.14), a scalar a · b is added to a bivector a ∧ b, which at a first
sight may seem absurd. You are supposed to add only “like things”, what ever
that means. Of course, you are free to ask “does the sum in Eq. (1.14) exist in
reality?” However, as commented by an anonymous reviewer in www.amazon.com,
This comment refers to the existence of fractals, but it applies also perfectly
to the present problem. The justification of Eq. (1.14) is its usefulness, which will
be amply demonstrated in what follows. Complex numbers encountered similar
objections when they were first introduced. It seemed absurd to add something
with a negative square to ordinary real number. However, this is hardly the
opinion of the mathematicians today.
Generally, the product ab is neither commutative nor anticommutative. Only
if a is perpendicular to b, then a · b = 03 , and it follows from Eq. (1.11) that for
any two perpendicular vectors ab = −ba. Also, if the vectors are perpendicular,
one can replace the outer product a ∧ b by the geometric product ab (or vice
versa). This often considerably simplifies the manipulation of formulas. Analo-
gously, only if a is parallel (or antiparallel) to b, then a ∧ b = 0, and it follows
from Eq. (1.10) that for any two parallel (or antiparallel) vectors ab = ba. Also,
if the vectors are parallel (or antiparallel), one can replace the dot product a · b
by the geometric product ab (or vice versa).
3
Unless a is a null vector, in which case aa = a · a = 0. As we shall see, null vectors play an
important role in geometry and calculus.
1.4. PRODUCTS OF VECTORS 23
Unlike the dot or the outer product, the geometric product ab is invertible,
i.e. any vector a possesses a unique inverse
a
a−1 = (1.17)
|a|2
so that aa−1 = a−1 a = 1. The invertibility of the geometric product and the un-
invertibility of the dot product is illustrated in Fig 1.10. Notice that while there
is infinite number of vectors with the same projection to the unit vector u, there
is only one bivector, which corresponds with the bivector part of the product
au. It picks up the vector a for any given projection. One can similarly show
that starting from any given bivector part with u as a factor, there corresponds
a unique projection a · uu of the vector a to the unit vector u.
24 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
1.4.4 Trivectors
We define the outer product of the vector a and the bivector b∧c as the symmetric
part of the geometric product a (b ∧ c) as
ab ∧ c + b ∧ ca
a ∧ (b ∧ c) = (1.18)
2
Since trivector is formed as an outer product of three vector factors, its grade
is three. As we shall see, the grade of the antisymmetric part of the geometric
product between a vector and a bivector is one, not three, which rules out the
possibility of using it to define the outer product between a vector and a bivec-
tor. The notation in Eq. (1.18) is unambiguous, since we use the precedence
convention, where the outer product has priority over geometric product.
Because three vector factors are included in the outer product, it is called a
trivector. The same trivector is also obtained, if we take the outer product of the
bivector a ∧ b with the vector c. Thus, the outer product is associative in each
of its vector factors, i.e.
a ∧ (b ∧ c) = (a ∧ b) ∧ c (1.19)
a ∧ b ∧ c = −b ∧ a ∧ c = −a ∧ c ∧ b (1.20)
a∧b∧c=b∧c∧a=c∧a∧b (1.21)
The trivector a∧(b ∧ c) as the grade-3 part of the geometric product a (b ∧ c),
i.e,
a ∧ b ∧ c = ha (b ∧ c)i3̄ (1.22)
where we have used the parenthesis to clearly emphasize the factors involved in
the geometric product.
1.4.5 Contractions
So far we have been introduced to the dot products a·b, and to the outer products
b ∧ c, and b ∧ c ∧ d. This leads to the question if it is possible to define mixed
products, such as a·b∧c. As we shall see this is indeed possible. This generalizes
straightforwardly to the inner products between arbitrary multivectors A and B
P P
by the simple substitution A = k hAik̄ and B = l hBil̄ , where the notation
hAik̄ stands for the k-vector part of A as before. However, as a price to pay for
this generalization, we must somewhat modify the concept of the inner product.
What is the inner product between a vector a and a bivector B = b∧c? First, we
notice that a · b is the zero-grade part of the geometric product, i.e. a · b = habi0̄ .
Its grade is the difference of the grades of a and b. By extrapolating this property,
the inner product between a and B should be the part of the geometric product
aB, whose grade is the difference of the grades of a and B. However, the grade
of a is one, and the grade of B = b ∧ c is two, so their difference is either 1 or
−1. Because the grade is always ≥ 0, it is best to define two inner products,
namely the left contraction (or contraction onto) and the right contraction (or
contraction by). The left factor lowers the grade of the right factor in the left
contraction so that the grade of the result is equal to the grade of the blade on
the right of the contraction sign minus the grade of the blade on the left of the
contraction sign. Similarly, the right factor lowers the grade of the left factor
in the right contraction so that the grade of the result is equal to the grade of
the blade on the left of the contraction sign minus the grade of the blade on the
right of the contraction sign. The left contraction is the antisymmetric part of
the geometric product aB, i.e.
1
acB = haBi1̄ = (aB − Ba) (1.24)
2
and the right contraction is is the antisymmetric part of Ba, i.e.
1
Bba = hBai1̄ = (Ba − aB) (1.25)
2
Naturally, Bca = hBai−1 = 0 and abB = haBi−1 = 0, because the grade −1
does not exist. Notice that the tip of the contraction sign shows the blade that
1.4. PRODUCTS OF VECTORS 27
contracts (or lowers the grade) of the blade on the other side of the sign. By
comparing Eqs. (1.24) and (1.25) we see that
acb ∧ c = a · bc − a · cb (1.30)
k
where i = ub u⊥
b is the unit bivector in the plane b ∧ c. To understand the
geometric significance of the right-most form in Eq. (1.31), we note that if the
k
vectors ub and u⊥
b are post multiplied by i, the result
k
ub i = u⊥
b (1.32)
k
u⊥
b i = −ub (1.33)
This clearly indicates that the product xi of any vector x in the plane i is equal
to the vector obtained by rotating x by π/2 in the plane i. The direction of
rotation is given by the positive orientation of4 i. Thus it follows that acb ∧ c is
a vector, which can be obtained by rotating the orthogonal projection of a in the
plane b ∧ c by 1/4 turn (see Fig. 1.12) and dilating the result by bc.
By taking the advantage of Eqs. (1.26) and (1.30), we can express the right
contraction of b ∧ c by a as
b ∧ cba = a · cb − a · bc (1.34)
k
Figure 1.12: Contraction acb ∧ c. The term P̂i (a) stands for the part of a in the
plane i.
The notation in Eq. (1.38) is indeed well-defined, since the left contraction of
a bivector with another bivector is equal to their right contraction. In this case
we favor dot as the symbol for contraction. By a simple derivation (which is
presented for more general case in Sect. 2.2.1) we can show that the contraction
30 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
a ∧ b · c ∧ d = a · db · c − a · cb · d (1.39)
since the the grade of a trivector minus the grade of a bivector is one. By a simple
derivation (which is presented for more general case in Sect. 2.2.1) we can show
that the left contraction of the bivector a ∧ b by the trivector c ∧ d ∧ e can be
expressed in terms of the inner products between the vector factors as
It turns out that the right contraction produces identical result, i.e.
The notation in Eq. (1.39) is indeed well-defined, since the left contraction of a
trivector with another trivector is equal to their right contraction. In this case
we favor dot as the symbol for contraction. By a simple derivation (which is
presented for more general case in Sect. 2.2.1) we can show that the contraction
of the trivectors a ∧ b ∧ c and d ∧ e ∧ f can be expressed in terms of the inner
products between the vector factors as
On the notation
As we have seen, the both the left and the right contractions of an r-vector by
another r-vector are equal in E(3). Thus in that case we favor the dot as a symbol
for contraction. Thus, for example, we denote a · b rather than abb or acb.
aA = acA + a ∧ A (1.46)
Aa = Aba + A ∧ a (1.47)
What if we would contract some vector a by the scalar α? By following our line
of reasoning we choose αca = hαai1−0 = hαai1̄ = haαi1̄ . But then it follows that
αca ≡ αa = a ∧ α = α ∧ a (1.49)
which proves that the left contraction of a vector by a scalar equals to their outer
product, which in turn gives the usual result of the multiplication of a vector by
a scalar. Along a similar line of reasoning we can conclude that
for any two scalars α and β. The reader should note, that this also proves that
generally αA is not equal to αcA + α ∧ A. The same conclusion applies as well to
the geometric product AB where A is a bivector: the geometric product of two
bivectors A and B is not related by the formula analogous to Eq. (1.46), but it
can be written as
1
AB = A · B + [A, B] + A ∧ B (1.51)
2
32 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
of two bivectors A and B. The grade of A·B is zero and the grade of A∧B is four
(if it exist, i.e. if the dimension of space is at least 4). It turns out that the grade
of the commutator of A and B, namely the middle term [A, B] = AB − BA is
two (see Sect. 1.6).
(Of course, the geometric product between the vector a and the bivector B
can be written as aB = acB + a ∧ B and Ba = Bba + B ∧ a).
vector pairs through the relation |a| |b| cos θ = (Dc a) · (Dc b), where Dc x signifies
rotation of the vector x followed by a translation c. Thus, an angle forms an
equivalence class of circular sectors. For any given sector there are infinite many
other sectors, which are obtained by rigidly displacing the given sector, and they
correspond to the same included angle.
The angle convention followed in the present treatment is not the only one.
Let u and v be two unit vectors, whose tails coincide. An angle, denoted now
by t, could be defined as the signed length (in radians) of the circular arc from
the head of u to the head of v. The sign is positive, if the direction of the arc
is the same as the sense of some given bivector j, which lies in the plane of the
angle and is used to define the positive sense of the angle t (so i = u ∧ v/|u ∧ v|
is either parallel or antiparallel compared to j, i.e. i = ±j). Otherwise the angle
t is negative (note that by this definition, j sin t = i sin θ and cos t = cos θ; See
Exercise 36). If |t| ≤ π, |t| is the included angle θ. If |t| > π, it is related to the
included angle θ as θ = 2π − |t|. In an influential textbook on the application of
geometric algebra to classical mechanics (Ref. [32]) a further step is taken and
an angle is defined as a bivector tj.
Even by sticking with the more conventional choice of the angle as an included
angle there are four different ways to define an included angle θ between vectors
u and v as a equivalence class of sectors. Usually, it is taken for granted that the
angle between vectors u and v is measured about the vertex, where the tail of
vector u and the tail of vector v coincide. This is the TT sector depicted in Fig.
1.14 (where for simplicity it is assumed that u and v are unit vectors). Also, the
direction of the unit bivector i = u ∧ v/ sin θ can be defined as the direction of
the sector, which is the direction where u turns when the angle is closed (and
depicted as a red arrow in the figure). However, as shown in the picture, there
are three other sectors, which could be used to define the included angle, namely
head-to-head (HH), head-to-tail (HT) and tail-to-head (TH) sectors. The angle
defined via HH sector does not differ from the angle defined as TT sector, nor
does the direction of the bivector i. However, in HT and TH sectors the included
angle is supplementary to the included angle defined as TT or HH sector, i.e.
Figure 1.13: Two possible angle conventions. In Fig. (a), the angle between u
and v is defined as the included angle θ. In Fig. (b), the angle between u and v
is defined as the directed angle t. The positive direction of t is indicated by the
the arrow in the arc. It is opposite to the direction of u ∧ v.
The formal rules for adding and multiplying vectors do not depend on the angle
convention. Because sin (π − θ) = sin θ and cos (π − θ) = − cos θ, the geometric
product of any two vectors a and b reads as
a2 = − |a|2 (1.57)
−→
where AB stands for the (point bound) vector, whose tail is at the point A and
−→ −−→ −→
head at B, and ∠(AB, CB) stands for the sector spanned by the vectors AB and
−−→
CB. The subscripts imply how the sides of the sectors are joined together. For
−→ −−→ −→ −−→
example, ∠(AB, CB)HT means that the head of AB is joined to the tail of CB.
Because the addition of simple bivectors can be identified with the addition of
sectors (any simple bivector can be decomposed as outer product of two vector
factors, which can be parallelly transported to any suitable point), it follows that
there exists also four possibilities to add bivectors. The particular one chosen
depends on the sector convention followed. Unless stated otherwise, we follow
exclusively the TT convention.
36 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
a × b = −i (a ∧ b) (1.62)
This equality can be extracted by separating the vector part from the simple
identity
iab = aib (1.64)
1.6. DUALITY AND CROSS PRODUCT 37
From the trivector part of Eq. (1.64), we obtain another useful identity relating
dot and outer products, namely
ia · b = a ∧ (ib) (1.65)
With the help of this duality, where a quantity is obtained from another
quantity by multiplying it with the unit trivector i (this is generalized to N -
dimensional spaces in Sect. 2.5), it is simple to obtain identities including cross
products of several vector factors. For example, by using Eq. (1.63), it is possible
to write the triple cross product as
a × (b × c) = a · cb − a · bc (1.67)
(a × b) × c = a · cb − b · ca (1.68)
which clearly is not always equal to a × (b × c). Thus, we see that the cross-
product is not associative. More identities can be created from Eq. (1.67) by
substituting cross products to one (or more) of its vector factors. For example,
the identity
(a × b) × (c × d) = (a × b) · dc − (a × b) · cd (1.69)
a ∧ b ∧ c = −ia · b × c (1.70)
A = α + iβ + a + ib (1.71)
38 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
where α = hAi0̄ is the scalar part of A, a = hAi1̄ is the vector part of A, ib = hAi2̄
is the bivector part of A, and iβ = hAi3̄ is the trivector part of A. Thus, the
geometric product A = A1 A2 of two multivectors A1 = α1 + iβ1 + a1 + ib1 and
A2 = α2 + iβ2 + a2 + ib2 contains the scalar part
α = α1 α2 − β1 β2 + a1 · a2 − b1 · b2 (1.72)
a = α1 a2 + α2 a1 − β1 b2 − β2 b1 + i (a1 ∧ b2 − a2 ∧ b1 ) (1.73)
ib = a1 ∧ a2 + i(α1 b2 + α2 b1 ) − b1 ∧ b2 (1.74)
iβ = i(α1 β2 + α2 β1 − a1 · b2 − b1 · a2 ) (1.75)
The last term −b1 ∧ b2 in the bivector part [Eq. (1.74)] is the bivector part of
the geometric product (ib1 )(ib2 ), i.e. −b1 ∧ b2 = h(ib1 )(ib2 )i2̄ . This also shows
that the commutator of any two bivectors is also a bivector, because [ib1 , ib2 ] =
−[b1 , b2 ]/2 = −b1 ∧ b2 .
a∗ = − a (1.76)
Consequently, it is stated that there exist two kinds of vectors, namely ordinary
“polar” vectors, which obey Eq. (1.76), and “axial” vectors which are cross-
products of polar vectors obeying (a × b)∗ = a∗ × b∗ = (−a) × (−b) = a × b.
However, this confusing admittance of two kinds of vectors is unnecessary, since
an axial vector is nothing more than a bivector disguised as an vector. We see
at once that (a × b)∗ = (−ia ∧ b)∗ = − (i)∗ a∗ ∧ b∗ = −a × b, which clearly
shows that a × b is an ordinary vector. As a side note, even in the conventional
1.7. INDEMPOTENTS, INVERSES AND PITFALLS 39
AB = AC (1.79)
does not necessarily imply that B = C (see the Exercise 2). The invalidity of the
zero rule is obtained as a special case of the above: the equation
AB = 0 (1.80)
does not necessarily imply that either A or B is zero (see the Exercise 3). One
can, though, conclude that A is zero, if AB is zero for an arbitrary B.
Because the cancellation rule (AB = AC ⇔ B = C) is not always valid,
it follows that not all multivectors possess inverse. Especially if A2 = A, the
multivector A does not possess an inverse. This can be seen by writing C = AB
so AC = A2 B = AB. If AA−1 = 1, then B = C, which is a contradiction if B
differs from C. Also, because geometric product is not commutative, the the left
multiplicative inverse L−1 of the multivector A defined via
L−1 A = 1 (1.81)
40 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
is not necessarily equal to the right multiplicative inverse R−1 , which is defined
via
AR−1 = 1 (1.82)
A−1
k̄
Ak̄ = Ak̄ A−1
k̄
=1 (1.83)
and it is obtained as
A†k̄
A−1 = (1.84)
k̄
|Ak̄ |2
where A†k̄ is the reverse of Ak̄ , i.e.,
and |Ak̄ |2 = A†k̄ ·Ak̄ is the square of the magnitude of a k-blade Ak̄ . The magnitude
of a multivector A is analogously given as the scalar part of the product of A
with its reverse, i.e.
N
X
|A|2 = A† A 0̄ = |hAik̄ |2
(1.86)
k=0
|A|2 = 12 + 12 + 22 + 72 + 52 = 80
αx + ax · b = e (1.87)
5
An r-blade is a multivector, which can be factored as a outer product of r vectors. Note
however that generally the r-vector part hAir̄ of siome multivector A can be a sum of r-blades.
For example, in four-dimensional Euclidean space the bivector u1 ∧ u2 + u3 ∧ u4 can not be
written as a (simple) blade.
1.8. VECTOR EQUATIONS 41
where the unknown x and the parameters a, b and e are vectors, and the pa-
rameter α is a scalar. If both sides of Eq. (1.87) are dotted with vector b,
e·b
x·b= (1.88)
α+a·b
follows. By inserting this to Eq. (1.87), the unknown vector x can be easily
solved as
e e · ba
x= − (1.89)
α α (α + a · b)
This solution can be easily generalized for more complicated cases, such as
αx + a1 x · b1 + a2 x · b2 = c (1.90)
(where a1 , b1 , a2 , b2 and c are vectors). If both sides of Eq. (1.90) are dotted
with vector b2 , the equation
(α + a2 · b2 ) x · b2 + a1 · b2 x · b1 = c · b2 (1.91)
a1 · b2 c · b2
a = a1 − a2 b = b1 e = c − a2 (1.94)
α + a2 · b2 α + a2 · b2
αx + x × d = c (1.96)
42 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
where the unknown x and the parameters c and d are vectors, and the parameter
α is a scalar. The solution to Eq. (1.96) is obtained by first multiplying the both
sides of Eq. (1.96) with the unit trivector i, which produces
αix + x ∧ d = ic (1.97)
and then taking the outer product of them (from right) by d, which gives α(ix) ∧
d = (ic) ∧ d or
c·d
x·d= (1.98)
α
where Eq. (1.63) was used to switch between dot and wedge. By using this and
x ∧ d = xd − x · d, Eq. (1.96) can be written as
c·d
x(αi + d) = + ic (1.99)
α
where the solution
c · dd + αd × c + α2 c
x= (1.100)
α(α2 + d2 )
follows by multiplying both sides (from right) with (αi+d)−1 = (d−αi)/(α2 +d2 ).
The interested reader can easily verify the correctness of the inverse by performing
the multiplication (αi + d)(αi + d)−1 (or equaivalently, (αi + d)−1 (αi + d)).
It is easy to show that this series is absolutely convergent for all multivectors A,
which obey A2 = λA or A2 = λ, where λ is a finite scalar. It is more complicated
to show that the result also converges for any finite multivector A (i.e. for a
multivector A with finite magnitude |A|). From now on we simply regard Eq.
(1.101) as an algebraic definition for the exponential function.
Consider next the product exp(A) exp(B). If A and B commute, then
The left-hand side of Eq. (1.102) is referred as the disentangled, and the right-
hand side of Eq. (1.102) is referred as the entangled form of the product of
exponentials. The reader can easily verify Eq. (1.102) by using the binomial
expansion formula
l l
l
X l! X l!
(A + B) = Al−k B k = Ak B l−k (1.103)
k=1
k!(l − k)! k=1
k!(l − k)!
which is valid for mutually commuting A and B. Contrary to the common belief,
the mutual commutativity is sufficient but not necessary condition for the validity
of Eq. (1.102). For example, let A = αiu and B = αiv, where the angle between
the unit vectors u and v is 2π/3. If α is any multiple of 2π, then Eq. (1.102) is
satisfied.
If A and B do not commute, it is more difficult to obtain formulas analogous
to that in Eq. (1.102). Some of them, however, can be found with relative little
effort. Consider the case, where the commutator
[A, B] ≡ AB − BA (1.104)
Since now [B, Ak ] = kAk−1 [B, A] (see Exercise 23), it follows that
∞ ∞
X λk [B, A]k X λk−1 Ak−1 [B, A]
[B, exp(−λA)] = (−1)k = −λ (−1)k−1
k=1
k! k=1
(k − 1)!
= −λ exp(−λA)[B, A]
U AU −1 = V AV −1 (1.108)
U BU −1 = V BV −1 (1.109)
and
The hyperbolic sine and cosine functions are also defined via the usual series
expansion
∞
A2 A4 X A2k
cosh A = 1 + + = (1.112)
2 4! k=0
(2k)!
∞
A3 A5 X A2k+1
sinh A = A + + = (1.113)
3! 5! k=0
(2k + 1)!
The hyperbolic cosine cosh A is the even, and sinh A is the odd part of exp A, i.e.
By utilizing the parity of the hyperbolic functions, it is evident that they can
be obtained as symmetric and antisymmetric combinations of the exponential
46 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
function, i.e.
exp A + exp(−A)
cosh A = (1.115)
2
exp A − exp(−A)
sinh A = (1.116)
2
The trigonometric functions cosine and sine are defined (as usual)
∞
A2 A4 A 4 X A2k
cos A = 1 − + − = (−1)k (1.117)
2 4! 6! k=0
(2k)!
∞
A 3 A5 A7 X A2k+1
sin A = A − + − = (−1)k (1.118)
3! 5! 7! k=0
(2k + 1)!
so
exp(IA) = cos A + I sin A (1.121)
By comparing Eq. (1.121) to Eq. (1.54) we see that a spinor (i.e. geometric
product of two vector factors) z = ab can be written in an exponential form
where θ is the angle between the vectors a and b, i is the unit bivector in the
k k
plane a ∧ b (i.e. i = a ∧ b/ |a ∧ b| ≡ ua u⊥
a where ua is a unit vector in the
direction of a, and u⊥
a is a unit vector orthogonal to a in the plane a ∧ b), and
λ is a positive scalar given by exp λ = |a| |b|. Since the effect of postmultiplying
the vector a by z is
az = |a|2 b (1.123)
we see that z rotates a by an angle θ to the positive direction of i and dilates its
length by the factor of |a|2 . And vice versa, given the rotation plane i, the angle
θ from the unit vector u to another unit vector v, we can rotate the unit vector
u to another unit vector v by post multiplying it with exp(iθ), i.e.
v = u exp(iθ) (1.124)
1.9. EXPONENTIAL FUNCTION 47
consisting of the vectors, from which the nth vector is always perpendicular to the
(n − 1)th vector and its length is obtained by multiplying the length of (n − 1)th
vector by the factor θ/n, always converges to the vector v (see Fig. 1.16).
By writing spinors S1 = ab and S2 = cd as S1 = |a| |b| (α1 + iβ 1 ) and
S2 = |c| |d| (α2 + iβ 2 ), where αk = cos θk is a scalar and β k = −ijk sin θk a vector
(jk is a unit bivector of the plane hSk i2̄ ), we can easily verify the combination
rule
S = S1 S2 = |a| |b| |c| |d| (α + iβ) (1.126)
where
α = α1 α2 − β 1 · β 2 (1.127)
β = α1 β 2 + α2 β 1 + β 2 × β 1 (1.128)
48 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
By taking the advantage of Eq. (1.122), this implies the exponential disentangle-
ment formula
Now, the scalars λ1 , λ2 are positive, uβ is the unit vector in the direction of
the vector cos θ1 v2 + cos θ2 v1 + sin θ1 sin θ2 v1 × v2 and the angle θ is given by
cos θ = cos θ1 cos θ2 − sin θ1 sin θ2 v1 · v2 , where vk = −ijk .
where ijk is the unit bivector in the plane vj ∧ vk . This is part of a more
fundamental relation
vi ijk = uφijk cos φijk + i sin φijk = uφijk exp iφijk (1.131)
where uφijk = φijk /φijk = vi cijk / cos φijk is the unit vector in the plane ijk , which
k
is orthogonal both to the vector vi and its projection P̂ijk (vi ) in the plane ijk
(see the text after Eq. (1.30) in Sect. 1.4.5). The vector uφijk specifies the axis
of rotation, about which the vector vi can be rotated to the plane ijk . The angle
φijk (or magnitude of the vector φ) is uniquely determined by Eq. (1.131), and
it lies in the range 0 ≤ φijk ≤ 2π. The sign of sin φijk is positive (negative) if
vi ∧ ijk is right-handed (left-handed). It should be emphasized that Eq. (1.130)
is not sufficient to determine φijk uniquely (because the angle φijk varies in the
interval of the size 2π, but the function arcsin x returns values in the interval of
the size π).
The cosine of the dihedral angle τijk between planes vi ∧ vj and vj ∧ vk is
given by
cos τijk = iij · ijk (1.132)
Note that the orientation of the plane iij is opposite of the orientation of ijk ,
when the two planes coincide. By using Laplace’s rule in Eq. (2.24), it is evident
1.10. DIHEDRAL ANGLES 49
that the cosine of the dihedral angle can be written in terms of the angles θij
between the vectors vi and vj as
cos θik − cos θjk cos θij
cos τijk = (1.133)
sin θij sin θjk
The bivectors iij and ijk can be written as iij = vi⊥ ∧ vj = vi⊥ vj and ijk =
vj ∧ vk⊥ = vj vk⊥ , where vi⊥ (vk⊥ ) is the component of vi (vk ) orthogonal to vj .
Thus, the product of the bivectors iij and ijk can be written in terms of the
dihedral angle τijk as
iij ijk = vi⊥ vk⊥ = cos τijk − ivj sin τijk (1.134)
where the minus sign in follows from the choice of vk⊥ , vi⊥ , vj as right-handed
triplet (see Fig. 1.18). Obviously, Eq. (1.134) can as well be written in the
exponential form as
iij ijk = exp (ivj τijk ) (1.135)
Eq. (1.135) is the definition of the dihedral angle: it determines uniquely both
the magnitude τijk = |ivj τijk | (0 ≤ τijk ≤ 2π) and the orientation of the plane
ivj . It is specifically emphasized that this does not apply to Eq. (1.132). It
can not be used to determine the dihedral angle, because the function arccos x is
restricted to the range 0 ≤ x ≤ π.
50 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
Let vi , vj , and vk be three unit vectors, and θij the angle between vi and
vj , θjk the angle between vj and vk , and θik the angle between vk and vi . Let
furthermore τijk be the dihedral angle between the planes vi ∧ vj and vj ∧ vk , τjik
the dihedral angle between the planes vj ∧ vi and vi ∧ vk , and τikj the dihedral
angle between the planes vi ∧ vk and vk ∧ vj .
By taking the geometric products of the unit vectors vi , vj , and vk as
we obtain
exp (θij iij ) exp (θjk ijk ) exp (θki iki ) = 1 (1.137)
where many (scalar) relations of spherical trigonometry can be read off. For
example, by solving
− exp (θki iki ) = exp (θij iij ) exp (θjk ijk ) (1.138)
cos θik − iki sin θik = (cos θij + iij sin θij ) (cos θjk + ijk sin θjk )
= cos θij cos θjk + iij ijk sin θij sin θjk
+ijk sin θjk cos θij + iij cos θjk sin θij (1.139)
1.11. BASIS REPRESENTATION 51
cos θik − iki sin θik = cos θij cos θjk + cos τijk sin θij sin θjk
+ijk sin θjk cos θij + iij cos θjk sin θij
−ivj sin τijk sin θij sin θjk (1.140)
where we may extract from the scalar part a standard relation of spherical
trigonometry:
cos θik = cos θij cos θjk + cos τijk sin θij sin θjk (1.141)
Other similar relations are easily found by cyclically permuting the indices i, j, k.
From the bivector part we obtain
iki sin θik = ivj sin τijk sin θij sin θjk
−ijk sin θjk cos θij − iij cos θjk sin θij (1.142)
|vi ∧ vj ∧ vk |2 = 1 − cos2 θij − cos2 θjk − cos2 θik + 2 cos θij cos θjk cos θik (1.143)
and one can use angles φijk between vectors and planes to obtain
vi ∧ vj ∧ vk
= sin φijk sin θjk = sin φjki sin θik = sin φkij sin θij (1.145)
i
a = a1 u1 + a2 u2 + a3 u3 (1.146)
52 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
i1 = u2 u3 = iu1 (1.147)
i2 = u3 u1 = iu2 (1.148)
i3 = u1 u2 = iu3 (1.149)
where the set {i1 , i2 , i3 } is right-handed. Any bivector B can be expanded in this
bivector basis as
B = B1 i1 + B2 i2 + B3 i3 (1.150)
1 u1 u2 u3 i1 i2 i3 i
1 1 u1 u2 u3 i1 i2 i3 i
u1 u1 1 i3 −i2 i −u3 u2 i1
u2 u2 −i3 1 i1 u3 i −u1 i2
u3 u3 i2 −i1 1 −u2 u1 i i3 (1.151)
i1 i1 i −u3 u2 −1 −i3 i2 −u1
i2 i2 u3 i −u1 i3 −1 −i1 −u2
i3 i3 −u2 u1 i −i2 i1 −1 −u3
i i i1 i2 i3 −u1 −u2 −u3 −1
where
a(i) = a · g(i) (1.153)
1.11. BASIS REPRESENTATION 53
Any bivector may analogously be represented in the bivector basis {ig1 , ig2 , ig3 }
as
B = B (1) ig1 + B (2) ig2 + B (3) ig3 (1.156)
where
B (i) = B · [ig(i) ]† = −B · [ig(i) ] (1.157)
is the contravariant component of the bivector B. Similarly, one can use the
covariant components ai = a · gi and Bi = −B · (igi ) to represent the vector a as
Vice versa, the reciprocal (or contravariant) basis vectors can be written as
3
X
(i)
g = g (ij) gj (1.161)
j=1
gij = gi · gi (1.162)
54 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
By using the reciprocality of the co- and contravariant basis vectors (Eq. (1.155))
together with the definitions in Eqs. (1.160) and (1.161), we obtain
3
X 3
X 3
X
(i) (ik) (l) (ik)
δij = g · gj = g gjl gk · g = g gjl δkl = g (ik) gjk (1.164)
kl=1 kl=1 k=1
where it follows that the contravariant Gram tensor is the inverse of the covariant
one (and vice versa), i.e.
3
X
g (ik) gkj = δij (1.165)
k=1
for any frame {g1 , g2 , g3 }. By comparing the coefficients in Eqs. (1.166) and
(1.167), it is evident that
β = c3 g1 · (g2 × g3 ) (1.168)
B (3) = c(12) B (1) = c(23) B (2) = c(31) (1.169)
a(1) = c(1) + c3 g1 g2 · g3 a(2) = c(2) − c3 g1 · g3 g2
a(3) = c(3) + c3 g1 · g2 g3 (1.170)
α = c0 + c(12) g1 · g2 + c(23) g2 · g3 + c(31) g3 · g1 (1.171)
where the second term in the vectorial part (for example c3 g1 g2 · g3 in a(1) ) comes
from c3 hg1 g2 g3 i1̄ = c3 [g1 c (g2 ∧ g3 ) + g1 (g2 · g3 )].
1.12 Quaternions
A comparison of the products of the unit bivectors {i1 , i2 , i3 } in Eq. (1.151) with
the quaternionic multiplication table
i2 = j2 = k2 = −1 (1.172)
ij = k = −ji jk = i = −kj ki = j = −ik (1.173)
ijk = −1 (1.174)
56 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
reveals that Hamilton’s unit quaternions {i, j, k} are a set of left-handed orthonor-
mal unit bivectors (i.e. i = −i1 , j = −i2 , and k = −i3 ), and any quaternion
(where Q(0) , Q(1) , Q(2) , and Q(3) are scalars) is an even-graded multivector or
spinor (i.e. a multivector, which possesses a scalar plus a bivector part), and the
product between two quaternions is equal to their geometric product. Quater-
nions are closed under geometric product, i.e. the product
Q = u1 (u1 + u2 )
Solution:
Q† = (u1 + u2 ) u1
so
Q† Q = (u1 + u2 ) u1 u1 (u1 + u2 ) = (u1 + u2 ) · (u1 + u2 ) = 2
so
√
|Q| = 2
where i is the unit bivector of the bivector part of the quaternion. The scalar θ
can be solved straightforwardly from the Euler representation of the exponential
function, as the next Example illustrates:
Q = u1 (u1 + u2 )
1.12. QUATERNIONS 57
Solution:
√
Q = u1 (u1 + u2 ) = 1 + u1 ∧ u2 = |Q| (cos θ + i3 sin θ) = 2 (cos θ + i3 sin θ)
√
(where the magnitude |Q| = 2 was calculated in Example 8), which implies that
√ √
cos θ = 1/ 2 and sin θ = 1/ 2 or equivalently, cot θ = 1, where it follows that
θ = π/4 and
√ π
Q= 2 exp i3
4
Q = u1 (u1 + u2 )
Q† 1 1 π
Q−1 = = (u 1 + u 2 ) u 1 = √ exp − i3
|Q|2 2 2 4
√
k
We obtain the kth root of a quaternion Q as
p p (θ + 2mπ)i
k
Q = k |Q| exp (1.179)
k
p
where the argument θ is confined to the interval 0 ≤ θ ≤ π, the factor k
|Q|
stands for the real and positive kth root of the magnitude of Q, and m =
0, 1, ..., (k − 1). Since a quaternion Q can be written as Q = exp λ exp(iθ) =
exp(λ + iθ), where the scalar λ is related to |Q| as exp λ = |Q|, we obtain a
definition for the (main branch of the) logarithm of a quaternion:
ln Q = λ + iθ (1.180)
and notices that h(z) has poles at z = i and z = −i (so the radius of convergence
for the power series representation of h(z) is 1, and it is centered in the origin
z = 0).
1.15 Exercises
Exercise 1 Let a = u1 + 5u2 , b = 2u2 + u3 and c = u1 + u2 − u3 . Calculate
a) a∧b b) a×b c) ab d) a∧b∧c e) (a ∧ b)·(b ∧ c) f ) a·(b ∧ c) g) [a · (b ∧ c)]·a.
Exercise 5 Show that |b| a + |a| b and |b| a − |a| b are orthogonal.
Exercise 6 Show that |b| a + |a| b bisects the angle between a and b.
Exercise 8 Let a = u1 +5u2 , b = 2u2 +u3 . Calculate the directed angle t between
a and b, when the direction of the plane of the angle is a) in the direction of a ∧ b
b) opposite to that of a ∧ b.
Exercise 9 Derive the law of sines for plane triangles. In other words, find out
how the ratios (sine of an angle)/(length of the opposite side) are related for
the three angles and sides of the triangle (hint: wedge both sides of the equation
a + b + c = 0 by a and b in turn).
Exercise 10 Does changing the included angle convention from θ to t (see Sect.
1.4.2) affect the results in spherical trigonometry derived in this chapter?
Exercise 16 Determine the scalar coefficients α, β and the vectors a, b for the
most general indempotent A = α + iβ + a + ib (i.e. for A, which obeys A2 = A).
62 CHAPTER 1. THREE-DIMENSIONAL GEOMETRIC ALGEBRA
Exercise 18 Which of the following are always true and which are not always
true
√
a) |A|2 = A† A 0̄
b) |a| = a·a
c) a × b = b × a d) a × (b + c) = a × b + a × c
e) (a × b) × (c × a) = λa for some scalar λ
f ) a · (λb) = λa · b for some scalar λ
g) a · (ib) = ia · b for unit trivector i
u1 · (a × u1 ) + u2 · (a × u2 ) + u3 · (a × u3 ) = 2a
Exercise 23 Prove by induction that [B, Ak ] = kAk−1 [B, A], if both A and B
commute with [A, B] = AB − BA.
1.15. EXERCISES 63
Exercise 24 Let A and B commute with [A, B] = AB − BA. Use Eq. (1.107)
to derive a binomial expansion for (A + B)k .
Exercise 30 Prove that the Pauli matrices {σ1 ,σ2 ,σ3 } satisfy σi σj = δij 1 +
iijk σk , where the Kronecker’s delta δij is one if i = j and zero otherwise, and
the permutation symbol ijk is zero, if any two indices are the same, ijk is +1 if
{i, j, k} is a cyclic permutation of {1, 2, 3} (i.e. {i, j, k} = {1, 2, 3}, {2, 3, 1}, {3, 1, 2})
and ijk is −1 if {i, j, k} is an anticyclic permutation of {1, 2, 3} (i.e. {i, j, k} =
{2, 1, 3}, {3, 2, 1}, {1, 3, 2}).
Exercise 31 Verify that the orthonormal vectors {u1 ,u2 ,u3 } can be represented
in terms of the Pauli matrices {σ1 ,±σ2 ,σ3 }, i.e. the sign of Pauli matrix σ2 is
not uniquely determined by the product ui uj = δij + iijk uk .
where α and β are odd multivectors (i.e. can contain scalar and trivector parts)
and asterisk signifies changing the sign of the trivector part. Use u1 u3 +u3 u1 = 0
to determine the value of β, and the relation u21 = 1 ↔ 1 to fix the value of β.
Similarly, show that the identities u2 u3 + u3 u2 = 0 and u22 = 1 ↔ 1 imply that
" #
0 γ
u2 ↔
γ∗ 0
αx + a1 x · b1 + a2 x · b2 + x × d = c (1.189)
Hint: Combine the solutions to the vector equations in Eqs. (1.90) and (1.96).
Exercise 38 Prove that it is possible to interchange the dot and cross in a·b × c.
Exercise 44 Suppose that vectors a and b are not parallel and a = c + d, where
c is parallel to b and d is orthogonal to b. Express c and d in terms of a and b.