<<

Graded Symmetry Groups: Plane and Simple

MARTIN ROELFS∗, KU Leuven, Belgium STEVEN DE KENINCK∗, University of Amsterdam, The Netherlands The symmetries described by Pin groups are the result of combining a finite “Every two dimensional 3-reflection can be decom- number of discrete reflections in (hyper)planes. The current work shows how posed as a translation along a line followed or preceded an analysis using provides a picture complementary to by a reflection in the same line.” that of the classic approach, while retaining information Key to understanding theorem1 and its proof is a graded and very about the number of reflections in a given transformation. This imposes a graded structure on Lie groups, not evident in their matrix representation. By geometric perspective on symmetry groups, which we take some embracing this graded structure, the invariant decomposition theorem was time to explain in section2. Following Hamilton, we build all isomet- proven: any composition of 푘 linearly independent reflections can be decom- ric transformations by composing reflections, while devoting extra posed into ⌈푘/2⌉ commuting factors, each of which is the of at most attention to the graded structure this imposes. The factors of any two reflections. This generalizes a conjecture by M. Riesz, and has e.g.the isometry are reflections and bireflections: a pair of reflections that Mozzi-Chasles’ theorem as its 3D Euclidean special case. To demonstrate its form either a rotation, translation, or hyperbolic rotation (boost). utility, we briefly discuss various examples such as Lorentz transformations, We will not only prove theorem1, but also provide an analytical Wigner rotations, and screw transformations. The invariant decomposition 푘 solution for the decomposition of 푘 reflections into ⌈ 2 ⌉ commuting also directly leads to closed form formulas for the exponential and logarith- simple orthogonal factors. Having such a geometrically inspired de- mic function for all groups, and identifies element of geometry such composition makes many algebraic operations, such as computing as planes, lines, points, as the invariants of 푘-reflections. We conclude by exponentials and logarithms, much easier. presenting novel matrix/vector representations for geometric algebras R푝푞푟 , and use this in E(3) to illustrate the relationship with the classic covariant, Paul Dirac famously remarked that his research work was done contravariant and adjoint representations for the transformation of points, in pictures, and that he often thought projective geometry the most planes and lines. useful, but Additional Key Words and Phrases: Lie groups, Lie algebras, Invariant de- “When I came to publish the results I suppressed the composition, Pseudo-Euclidean group, Conformal group, closed form expo- projective geometry as the results could be expressed nential and logarithmic formulas, Wigner rotation, Mozzi-Chasles’ theorem, more concisely in analytic form.” – P. A. M. Dirac [5] Baker-Campbell-Hausdorff formula, Lorentz group, Geometric gauge But the pictures provide additional geometric insights which are not easily gained purely from algebra. For example, while the Clifford- 1 INTRODUCTION Lipschitz group and the twisted Clifford-Lipschitz group might be Central to this paper is the generalisation of a conjecture by M. algebraically isomorphic [24], the geometrical interpretation makes Riesz [20], stating that a of an n-dimensional geometric it clear that the conjugation law of the twisted Clifford-Lipschitz 푛 group has to be used to apply reflections, see section 3.3. The empha- algebra R푝푞 can always be decomposed into at most ⌊ 2 ⌋ simple commuting orthogonal . We extend this conjecture to the sis on geometry is motivated further by recent advances in computer graphics [11, 12], which demonstrate that vectors can be identified wider class of algebras R푝푞푟 , which includes 푟 null vectors, and consider the group of all reflections therein, Pin(푝, 푞, 푟). The with (hyper)planes instead of points, an idea dating back to Michel resulting theorem then states: Chasles [4], but not often considered. A pictorial approach will help to underscore the importance of this insight. Theorem 1 (invariant decomposition). A product of 푘 reflec- In section3 we introduce Clifford algebras, whose graded struc- 푘 tions 푈 = 푢1푢2 ···푢푘 can be decomposed into exactly ⌈ 2 ⌉ commuting ture and concise expression for reflections makes them the ideal 푘 factors. These are ⌊ 2 ⌋ products of two reflections, and, for odd 푘, one algebraic framework for formalizing graded symmetry groups. In extra reflection. These factors are called simple. section4 we establish blades as the natural choice to represent the primitive elements of geometry such as points, lines, spheres, etc. We 4 In the three dimensional Euclidean group this says that every - then turn our attention to Spin Lie algebras, and their identification arXiv:2107.03771v1 [math-ph] 8 Jul 2021 reflection can be decomposed into two commuting 2-reflections, as bivector algebras in section5. A proof and novel algorithm for better known as the Mozzi-Chasles’ theorem: the invariant decomposition is presented in section6. In sections7,9 “Every three dimensional rigid body motion can be and 9.3 we use this invariant decomposition to present closed form decomposed as a translation along a line followed or solutions for exponentials, factorization of group elements, and loga- preceded by a rotation around the same line.” rithms, respectively. We conclude in section 10 with a novel method Our generalisation shows that this is - in contrast to popular belief - to construct efficient matrix-matrix and matrix-vector representa- not the simplest example, and a similar statement can be made for tions of graded symmetry groups, and show how these contain the the 3-reflections in the two dimensional Euclidean group. classic covariant, contravariant and adjoint matrix representations. All the analytical results of this work were also condensed into a ∗Both authors contributed equally to the paper Authors’ addresses: Martin Roelfs, Department of Physics, KU Leuven, Kortrijk, Bel- cheat sheet, which can be found on the last page of this manuscript. gium, [email protected]; Steven De Keninck, Informatics Institute, University of Amsterdam, Amsterdam, The Netherlands, [email protected].

1 Roelfs and De Keninck

Fig. 3. When viewed in 3D, translations (right) can be seen as rotations Fig. 1. Reflections in 2D. From left to right, a single line reflection, two inter- (left) around infinite points. secting line reflections forming a rotation, and two parallel line reflections forming a translation. plane, the composition of three reflections still produces a new isom- etry, the glide reflection. But when four reflections are combined, we 2 GEOMETRIC INTUITION 2.1 The Euclidean Group E(2) To build an intuition that will carry over from the Orthogonal group all the way to the Conformal group, we first study the distance preserving transformations of the plane. We build on Hamilton’s observation that rotations and translations can be constructed by composing reflections, and use that idea as our guiding principle. Figure1 illustrates how the reflection of a shape in a line (left) is the basic building block from which both the rotations (middle) and Fig. 4. (left) Three line reflections produce a glide reflection. Example 9.3 translations (right) can be constructed through composition. The shows that in E(2) the seemingly distinct rotoreflections are also just glide resulting bireflection will transform the shape with twice the angle reflections. (right) Four line reflections produce no new isometry, but instead or distance between the lines respectively. again a rotation/translation. Figure2 illustrates how, when creating a bireflection, only the in- can factorize these such that two adjacent reflections are identical. tersection point and the relative separation between the reflections Two identical reflections leave the entire plane unchanged, andasa matters. Indeed, the same rotation can be created using any of the consequence every composition of four reflections in a plane can configurations in fig.2. This is important, as this gauge degree of be simplified down to two reflections, as demonstrated infig.5. freedom allows us to select a favorable factorization of any bireflec- tion. Because of the associativity of reflections, this means that 푘 reflections have 푘 − 1 gauge degrees of freedom. We also note at

Fig. 5. Given four line reflections 푎푏푐푑, the gauge symmetry allows the pairs 푎푏 and 푐푑 to be rotated into 푎′푏′ and 푐′푑′, until 푏′ and 푐′ are incident and vanish from the expression. The result is a bireflection.

Fig. 2. Three different sets of line reflections that intersect in the same 2.3 Graded Symmetry Groups point and at the same angle create the same rotation around that point. Before we continue our geometric view, it makes sense at this point this point how this approach unifies the treatment of rotations and to introduce the usual group theoretic notation. A group G is a translations, showing clearly not only how small changes in one set of elements and a single binary , written here with of the elementary reflections creates the continuous rotational and juxtaposition, that satisfies the following requirements: translational symmetries, but that indeed rotations and translations (1) For any ordered pair 푎,푏 ∈ G : 푎푏 ∈ G (closure) are part of the same continuous manifold. This relation is illustrated (2) The associative law holds. ∀푎,푏, 푐 ∈ G : (푎푏)푐 = 푎푏푐 = 푎(푏푐) further in fig.3, which shows how translations can be understood (3) There is an identity element 1 ∈ G, such that as rotations around infinite or vanishing points. ∀푎 ∈ G : 1푎 = 푎 = 푎1 (4) Each non-degenerate 푎 ∈ G has an inverse 2.2 Cartan–Dieudonné 푎−1 ∈ G : 푎푎−1 = 1 = 푎−1푎 Having constructed our translations and rotations as bireflections, Because compositions of reflections satisfy all these conditions, they we ask which isometries can be created by composing a larger num- form a group. In standard notation, the reflection group of oriented ber of reflections. For our 2D example, we find infig.4 how in the reflections through the origin, in a space with 푝 positive and 푞

2 Graded Symmetry Groups: Plane and Simple negative dimensions, is denoted Pin(푝, 푞). However, this notation order of application is important. Additionally, because applying can be extended to also include 푟 null dimensions, to Pin(푝, 푞, 푟). the same reflection twice is the same as doing nothing, reflections These null dimensions can be leveraged to describe reflections not satisfy 푎2 = ±1, and hence 푎−1 = 푎/푎2. (In Euclidean spaces 푎2 = 1, through the origin. whereas in general pseudo-Euclidean spaces we can also encounter In an 푛 dimensional orthogonal space, any isometry can be written reflections satisfying 푎2 = −1.) In fig.6 we use gauge symmetry as a product of at most 푛 reflections. This is the famous Cartan- to reflect 푏 w.r.t 푎, similar to the process of figs.2 and5. (Note Dieudonné theorem: that if orientation is relevant, we have to be a bit more careful, see sections 2.6 and 3.3.) Theorem 2 (Cartan-Dieudonné). Every orthogonal transforma- tion of an 푛-dimensional space can be decomposed into at most 푛 reflections in hyperplanes.

Proof. The proof follows by induction. When 푛 = 1, the only isometry different from identity is clearly a point reflection through the origin. Now assume Cartan-Dieudonné holds in 푛 = 푘 − 1 dimensions, and thus that any isometry in 휙푘−1 can be written as Î푘−1 휙푘−1 = 푖=1 푢푖 , where 푢푖 is a reflection. We shall now prove that it also holds for 푛 = 푘 dimensions. Let 휙푘 be an isometry different from identity in 푛 = 푘 dimensions, Fig. 6. Reflecting the reflection 푏 in the reflection 푎. In the expression 푎푏푎, fixing the origin. Then assume 푣 ∈ R푘 is a hyperplane such that we rotate 푏푎 into 푏′푎′ such that 푏′ = 푎 and 푎푏′ = 푎2 = 1. The remaining 푎′ 휙푘 [푣] ≠ 푣. is the reflection of 푏 w.r.t. 푎. Define the bisector 푢푘 = 푣 − 휙푘 (푣). Reflection in the bisector 푢푘 maps 푣 to the same hyperplane as 휙 . Hence, 휙 = 푢 휙 acts as 푘 푘−1 푘 푘 2.5 Beyond E(2) the identity element on 푣: 휙푘−1 [푣] = 푣, while 휙푘−1 is an isometry on the 푘 − 1 dimensional subspace orthogonal to 푣. But by assumption The Euclidean group of the plane is a great place to build intu- Î푘−1 ition, but we would like to conclude the geometric introduction by 휙푘−1 can be written as a product of reflections: 휙푘−1 = 푢푖 . 푖=1 showing how this mindset extends to other dimensionalities and Therefore, the isometry 휙 can be written as 휙 = Î푘 푢 . □ 푘 푘 푖=1 푖 groups. Hence, all isometries are graded by the number of reflections they 2.5.1 Pseudo-Euclidean E(푝, 푞). The ideas introduced above in E(2) can be factored in. This leads us to the definition of graded symmetry apply identically to higher dimensions and signatures, where reflec- groups: tions are performed in hyperplanes in general pseudo-Euclidean Definition 3 (Graded symmetry group). An element푈 ∈ Pin(푝, 푞, 푟) groups E(푝, 푞)  Pin(푝, 푞, 1)/{±1}. The orthogonal basis hyper- is said to be of grade 푘 if it can be factored into 푘 linearly indepen- planes of a pseudo-Euclidean group are 푝 positive hyperplanes and dent reflections: 푞 negative hyperplanes through the origin, and a single null hyper- plane to represent the hyperplane at infinity. In three dimensional 푈 = 푢1푢2 ···푢푘 . space this is of course the important Euclidean group of rigid body Because the product of a 푘-reflection with a linearly independent motions. For general hyperplanes in 푛 = 푝 + 푞 pseudo-Euclidean di- ( + ) 푙-reflection is a 푘 푙 -reflection, Pin groups are graded symmetry mensions, 푛 + 1 reflections create closure, providing an increasingly groups [2, Chapter 3.1]. rich set of transformations as the number of dimensions increases. As is customary, we write group elements using lowercase roman However, as we shall prove in section6, these transformations can characters (푎,푏, 푐), however, we write 푘-reflections using names always be understood as a product of commuting bireflections act- with 푘 characters. This aligns with our composition operator, which ing in a plane and at most a single reflection. Such transformations is written using juxtaposition. As an example, in 퐸(2) a rotation are called simple. Therefore, our intuitions from smaller dimensions might be called 푎푏, while a glide reflection might be called 푎푏푐. remain valid in higher dimensions, plane and simple.

2.4 Conjugation - Group Action We now turn our attention to the intuition behind the conjugation, i.e. the action of the group on itself. We know how to compose two reflections 푎,푏 into a bireflection 푎푏, but how do we reflect 푏 in 푎? The solution is the one we intuitively use when being asked to write upside down. We turn the page, write, and turn the page back. Indeed, we can simply use composition and this ‘sandwich’ construction (3) −1 Fig. 7. The composition of two point reflections in 퐸 produces a transla- to apply one transformation to another. The expression 푎푏푎 will tion - as before we can use the gauge symmetries to rotate each set of three −1 −1 reflect 푏 w.r.t 푎, while (푎푏)푐(푏 푎 ) will rotate reflection 푐 with reflections around their intersection until identical reflections annihilate, −1 −1 rotation 푎푏, which is equivalent to 푎(푏푐푏 )푎 , applying reflection ultimately leaving only two parallel reflections. 푎 after reflection 푏 to 푐. Because reflections do not commute, the

3 Roelfs and De Keninck

2.5.2 Orthogonal O(푝, 푞). The Orthogonal group 푂 (푝, 푞), which Similarly, the group of oriented 2푘-reflections, Spin(푝, 푞, 푟), is a contains only reflections and rotations that keep the origin fixed, is double cover of the group of non-oriented 2푘-reflections, SO(푝, 푞, 푟): a subgroup of the pseudo-Euclidean group 퐸(푝, 푞). As it is embedded SO(푝, 푞, 푟) Spin(푝, 푞, 푟)/{±1}. in the Euclidean group, we can construct it by selecting only the  reflections in (hyper)planes through the origin. In the orthogonal Various other noteworthy double covers are listed in table1. The groups, closure is reached after exactly 푛 reflections. (This is easily graded symmetry group approach makes it straightforward to pre- verified in the orthogonal group in 2 dimensions 푂 (2), where any 3 serve orientation, and so the rest of this paper will concern Pin(푝, 푞, 푟) reflections through the origin can be simplified to just one, using unless otherwise specified. the gauge symmetry just like in fig.5.)

2.5.3 Conformal O(푝 + 1, 푞 + 1). The Conformal group Conf(푝, 푞), 푘-reflections whose transformations preserve local angles, is also generated from O(푝, 푞, 푟) Pin(푝, 푞, 푟)/{±1} successive reflections. In this case they are inversions: ‘reflections’  in hyperspheres (circles in 2D, spheres in 3D, ...). Realizing that a E(푝, 푞)  Pin(푝, 푞, 1)/{±1} line can be seen as a circle with an infinite radius, it is clear that Conf(푝, 푞)  O(푝+1, 푞+1)/{±1} the pseudo-Euclidean group E(푝, 푞) is a subgroup of the conformal Pin(푝+1, 푞+1)/{±1, ±푖} group Conf(푝, 푞).  2푘-reflections SO(푝, 푞, 푟)  Spin(푝, 푞, 푟)/{±1} SE(푝, 푞)  Spin(푝, 푞, 1)/{±1} SConf(푝, 푞)  SO(푝+1, 푞+1)/{±1}  Spin(푝+1, 푞+1)/{±1, ±푖} Table 1. The (special) orthogonal, pseudo-Euclidean and conformal groups are unoriented versions of Pin groups [19, 24].

Fig. 8. Reflecting grid 1 in two circles. (left) Reflections in two parallel lines (circles with infinite radius) produce translations. (middle) Reflections in two general circles produce conformal transformations. (right) Reflections in two circles with a shared center produce dilations. 3 GEOMETRIC ALGEBRA For practical calculations involving symmetry groups, the typical approach is to use matrix representations. We would however like to 2.6 Observing orientation leads to double covers consider an alternative approach, which models symmetry groups The Pin and Spin groups, which will turn out to play an important using geometric algebras (Clifford algebras) over the real numbers. role in the remainder of this article, are the double covers of the This choice is based on our geometric intuition: combining reflec- orthogonal and special orthogonal groups respectively. They too tions imposes a graded structure, a property shared with geometric admit a simple geometric interpretation that fits in the same intuitive algebras, yet hidden in the matrix approach. framework. The hyperplanes (or hyperspheres) in which we reflect, are as- 3.1 Introduction signed an orientation, i.e. a front and back. We simply discriminate We start by giving a brief introduction to the geometric algebra both half spaces of our fundamental reflection, a property that nat- concepts used in this paper. For a full pedagogical introduction urally extends to the higher grade transformations. As an example, to geometric algebra we refer the reader to [7, 9], although the fig.9 shows the four different ways in which the same rotation can approach taken in this paper extends that taken in traditional re- be performed. We arrive at four because a rotation is a bireflection, sources. A geometric algebra R푝푞푟 of 푛 = 푝 + 푞 + 푟 dimensions has and each of the constituent reflections can have two different ori- 푝 positive, 푞 negative, and 푟 null vectors e푖 , with entations. Combinations of oriented reflections produce oriented rotations, which arrive at the same final position via either the short e푖 e푖 ∈ {+1, −1, 0}, e푖 e푗 = −e푗 e푖 . or long path. A product of 푘 basis vectors is a basis 푘-blade, denoted e.g. The reflection group which preserves orientation is called the Pin group, denoted Pin(푝, 푞, 푟), where 푝, 푞, and 푟 are the number of e푖 푗 = e푖 e푗 , e푖 푗푘 = e푖 e푗 e푘, . . . , 퐼 := e12...푛 = e1e2 ··· e푛. positive, negative and null dimensions respectively. By distinguish- The highest grade basis blade 퐼 := e is the pseudoscalar of R . ing the orientation, the Pin group always has two distinct elements 12...푛 푝푞푟 These 푘-blades combine into 푘-vectors (of grade 푘), e.g. a vector representing the same transformation, while the orthogonal group 푎 = Í 푎 e , a bivector 퐵 = Í 퐵 e , etc. A general has only one. This is why Pin(푝, 푞, 푟) is a double cover of O(푝, 푞, 푟) 푖 푖 푖 푖>푗 푖 푗 푖 푗 푥 is a sum of 푘-vectors: [19, 24]: O(푝, 푞, 푟)  Pin(푝, 푞, 푟)/{±1}. 푥 = ⟨푥⟩ + ⟨푥⟩1 + ⟨푥⟩2 + ... + ⟨푥⟩푛 ,

4 Graded Symmetry Groups: Plane and Simple

Fig. 9. One rotation from SO(2), that takes the blue triangle to the red one, two distinguishable elements 푆푖 from Spin(2) that result in the same rotation (the two paths), and 4 oriented reflections 푃푗 from Pin(2) that combine into 푆푖 . Note that as before, any two reflections with the same intersection point and relative angle and orientation will produce the same elements in Spin(2) and 푆푂 (2). where ⟨푥⟩푘 denotes the grade 푘 part of 푥 and ⟨푥⟩ := ⟨푥⟩0 is the hyperplane using part. The product of a 푘-vector 푥 and 푙-vector 푦 푎푥 + 푏푦 + 푐푧 + ... = 0 → 푣 = 푎e1 + 푏e2 + 푐e3 + .... 푥푦 = ⟨푥푦⟩ |푘−푙 | + ⟨푥푦⟩ |푘−푙+2| + ... + ⟨푥푦⟩푘+푙−2 + ⟨푥푦⟩푘+푙 , However, for the pseudo-Euclidean and conformal groups the pro- has lowest grade |푘 −푙| and highest grade 푘 +푙, that define the inner cess is a bit more involved. To realize a GA representation of a (dot) and outer (wedge) products pseudo-Euclidean group, we need to represent general hyperplanes, not just those through the origin. This is accomplished by the em- 푥 · 푦 := ⟨푥푦⟩ |푘−푙 | , 푥 ∧ 푦 := ⟨푥푦⟩푘+푙 . bedding

A general 푘-blade is the wedge product of 푘 vectors, or equivalently 푎푥 + 푏푦 + 푐푧 + ... + 훿 = 0 → 푣 = 푎e1 + 푏e2 + 푐e3 + ... + 훿e0, the product of 푘 anti-commuting/orthogonal vectors. Because of where 훿, the oriented offset from the origin, is associated with the this property, blades always square to scalars and are called simple. null vector e0 of R . E.g. (푥 ∧ 푦)2 = (푥 ′푦′)2 = −푥 ′2푦′2 ∈ C, where 푥 ′ · 푦′ = 0. 푝,푞,1 For the Conformal group, it is customary to first define a Witt Another useful product is the commutator product, defined by basis, where two null-vectors are defined to represent spheres at 1 푥 × 푦 := 2 (푥푦 − 푦푥). the origin with zero and infinite radius. 1 The main involution 푥^ of a multivector 푥 is defined by the map 푛 := (e− − e+), 푛∞ := e− + e+. 표 2 e푖 ↔ −e푖 . The reverse 푥˜ of a multivector 푥 is defined by reversing the e e order of the basis factors e푖 e푗 ...e푛 ↔ e푛..e푗 e푖 . Both of these maps Here +, − are the extra positive and negative basis vectors of reduce to grade-dependent sign changes on the original multivector. R푝+1,푞+1 respectively. A general hypersphere with radius 휌 at posi- The squared norm of any element is defined as tion 1 2 3 (√ 푥 = 푥 e1 + 푥 e2 + 푥 e3 + ... 푥푥˜ Re (푥푥˜) ≥ 0 ∥푥 ∥ := √ (1) is now mapped to a vector using1 −푥푥˜ Re (푥푥˜) < 0 1 2 2 푣 = 푛표 + 푥 + 2 (푥 − 휌 )푛∞. Using the norm, any element 푥 for which ∥푥 ∥ ≠ 0 can be normalized For the remainder of this paper we will only refer to hyperplanes, in to the understanding that the word hyperplane can always be replaced 푥 := 푥/∥푥 ∥. (2) by hypersphere. In all cases these embeddings produce vectors that represent the desired reflections or inversions respectively, and 3.2 Embedding reflections compose as required using the geometric product. With this minimal To obtain an algebraic representation of graded symmetry groups, amount of setup we obtain a unified algebraic method to perform we need to establish an embedding which maps grade 1 reflections practical calculations with graded symmetry groups. onto grade 1 vectors, while mapping the product to the composition operator. Because reflections square to ±1, this is an ideal task for 3.3 Conjugation - Applying reflections Clifford algebras. For the Pin groups Pin(푝, 푞) finding this algebraic With the identification of oriented hyperplanes with signed vectors representation is a straightforward task, as the invertible vectors in mind, a hyperplane 푣 reflects in a hyperplane 푢 as 푣 ∈ R , normalized such that 푣2 = ±1, can directly be identified 푝푞 ↦→ [ ] − −1 with reflections in hyperplanes through the origin. This is because 푣 푢 푣 = 푢푣푢 . (3) a hyperplane through the origin, defined via a linear equation 푎푥 + 1Note that this embedding is dual to the customary one used in CGA, where hyper- 푏푦 + 푐푧 + ... = 0, can be mapped onto a vector representing that spheres are instead represented by (푛 − 1)-vectors [9]

5 Roelfs and De Keninck

This ensures that 푢[푢] = −푢, and hence a hyperplane reflected which result in the same final state, but by rotating in the opposite in itself changes orientation. For an intuitive understanding of the direction. sandwich structure we think back to section 2.4: when asked to write Now that we have found how to perform a rotation by 푥 = 1/2, upside down, one simply rotates the paper, writes, then rotates it is clear that a rotation over any separation can be performed by the paper back. Because any 푙-reflection 푉 = 푣1푣2 ··· 푣푙 should forming a bireflection transform covariantly under a 푘-reflection 푈 = 푢1푢2 ···푢푘 , i.e. 푢(푦1푢 + 푦2푣) = (푦1푢 + 푦2푣)푣, 푈 [푉 ] = 푈 [푣1]푈 [푣2]···푈 [푣푙 ], where 푦1,푦2 ∈ R. Because 푦1 and 푦2 are linked via the normal- the transformation of 푉 under 푈 is ization condition, it follows that the bireflection 푅 = 푢푣 forms a 푉 ↦→ 푈 [푉 ] = (−1)푘푙푈푉푈 −1. (4) one-parameter subgroup R(푥) = 푅푥 = (푢푣)푥 of rotations of 2푥휎 about the intersection of 푢 and 푣. The one-parameter subgroup The term (−1)푘푙 ensures the correct orientation. We recognize this transformation law as that of the twisted Clifford–Lipschitz group R(푥) = 푅푥 = 푒푥 Ln 푅 [24, Chapter 5.2]. It is important to note that from an algebraic point of view, the term (−1)푘푙 is not required; the twisted and non- is generated by the bivector 푏 = Ln 푅. To show that 푏 is a bivector, twisted Clifford–Lipschitz groups are isomorphic [24, Chapter 5.2]. we consider the derivative of the normalization condition RRe = −1 However, the geometric demand for the correct orientation does RR = 1: force the inclusion of the minus signs. ¤ R¤ R + RR = 0. By solving 푈 [퐼] = det(푈 )퐼, the of the transforma- e e tion 푈 is found to be  ¤  But žRRe = R¤ Re, and thus Rg¤ Re = −R¤ Re. Only bivectors anticom- det(푈 ) = (−1)푘 . mute under reversal, it follows that R¤ Re is a bivector.2 Explicit cal- Hence, if 푈 is odd it inverts handedness, whereas an even 푈 pre- culation then gives serves handedness. R¤ Re = 푏RRe = 푏, 3.4 Simple Rotors and thus 푏 = R¤ Re = Ln 푅 is a bivector. The principal logarithm Ln 푅 The composition of two reflections 푢 and 푣 produces the simple is given by bireflection푢푣, representing a continuous transformation with twice ⟨푅⟩ arccosh (⟨푅⟩)⟨푅⟩2 > 0 the separation 휎 from 푣 to 푢, as shown in fig.9. When applying the  2 2 −1 −1  2 bireflection 푢푣 to 푣, the result is (푢푣)푣 (푢푣) = 푢푣푢 , and hence 푣 Ln 푅 = ⟨푅⟩2 ⟨푅⟩2 = 0 . (5) is effectively reflected in 푢 such as displayed in fig.6. If 푢푣 is applied  2 ⟨푅⟩2 arccos (⟨푅⟩)⟨푅⟩2 < 0 푥 times, this rotates 푣 by 2푥휎, and is the same as applying (푢푣)푥  once. How is this to be extended to 푥 ∈ R, such that rotations over Note that the form Ln 푅 = 푅¤푅e reveals the logarithm to be exactly ¤ an arbitrary√ separation can be performed? The first step might be the derivative 푅 moved back with 푅eto the origin, as expected. If the = ( )1/2 2 to construct 푢푣 푢푣 , which will rotate 푣 directly onto 푢. To bireflection 푅 is a spatial rotation, i.e. ⟨푅푖 ⟩2 < 0, then eq. (5) ensures do so, observe that reflection in a bisector a full 2휋 range.3 Additionally, the logarithm of a rotation is by no Ln 푅 푤± = 푢 ± 푣, means unique. The principal logarithm is one such logarithm, but so is where the bar denotes normalization as defined in eq. (2), already ln 푅 = Ln 푅 + 2휋푚⟨푅⟩ , has the effect of mapping 푣 onto ±푢. Specifically, 2 where 푚 ∈ Z. The principal logarithm of 2푘-reflections will be the −1 (푢 ± 푣)푣 (푢 ± 푣) −푤±푣푤± = − subject of section 9.3, and eq. (5) is at its core. (푢 ± 푣)2 The bireflections 푅 = 푢푣 and 푅e = 푣푢 are invariants of the rotations (푢 ± 푣)(±푣 + 푣2푢−1)(±푢) = − = ∓ R(푥) = 푅푥 : 2 푢, (푢 ± 푣) 푥 −푥 푥 −푥 푅 푅푅 = 푅, 푅 푅푅e = 푅,e where we have used that 푢2 = 푣2 to find 푣2푢−1 = 푢. When this is followed by a reflection in 푢, or preceded by a reflection in 푣, the and so is any of 푢푣 and 푣푢. Of particular interest 1 are the symmetric and anti-symmetric combinations results are the bireflections (±푢푣) 2 = 푢푤± = 푤±푣, rotating 푣 into ±푢: 1   1   푅 = 2 푅 + 푅e + 2 푅 − 푅e 1 − 1 −1 −1     (±푢푣) 2 푣 (±푢푣) 2 = (푢푤±)푣 (푤± 푢 ) 푏 1 푏 −푏 1 푏 −푏 푒 = 2 푒 + 푒 + 2 푒 − 푒 . −1 −1 = (푤±푣)푣 (푣 푤± )

= ±푢. 2For 2푘-reflections with 2푘 < 6 this argument suffices; for a general proof see section5. 3Typically the two parameter arctan2(푦, 푥) function is invoked to maintain 2휋 This goes back to the notion of double cover as expressed in fig.9, resolution, as it does all the bookkeeping needed to determine the correct quadrant. 1/2 since applying (±푢푣) twice is identical to applying ±푢푣, both of However, all such manual bookkeeping can be avoided by using eq. (5).

6 Graded Symmetry Groups: Plane and Simple

These combinations allows us to define the generalized cosine and hyperplanes (not through the origin) of R푝푞, i.e. lines in the example sine functions: of E(2). This is the narrative chosen in this paper, but sometimes it   c (푏) := 푢 · 푣 = ⟨푅⟩ = 1 푒푏 + 푒−푏 , (6) can be helpful to switch narrative. 2 Importantly, the geometric algebra approach makes no distinction 1  푏 −푏  between elements of geometry and transformations, both are of s (푏) := 푢 ∧ 푣 = ⟨푅⟩2 = 2 푒 − 푒 . (7) multivector type, and both transform identically. By contrast, in the 푧 Í∞ 푛 2 Since 푒 = 푛=0 푧 /푛! and 푏 ∈ C, these can be simplified to standard matrix formalism, a Pin group element 푅 ∈ Pin(푝, 푞, 푟) is ∞ represented by a 푑-dimensional matrix representation 퐷(푅), which ∑︁ √︁  ( ) = 1 2푛 = 2 respects the composition law of the group: c 푏 (2푛)!푏 cosh 푏 푛=0 퐷(푅1푅2) = 퐷(푅1)퐷(푅2), (8) ∞ ∑︁ + √︁  ( ) = 1 2푛 1 = 2 where 푅1, 푅2 ∈ Pin(푝, 푞, 푟). These are then used to transform vectors s 푏 (2푛+1)!푏 푏 sinch 푏 . 푛=0 푥ì of dimension 푑 in the underlying : In the last step we introduced the sinch function over the complex 푥ì ↦→ 퐷(푅)푥. ì (9) numbers: ( ( ) Every element of geometry is represented by a vector of different sinh 푧 푧 ≠ 0 sinch(푧) := 푧 , dimension. Considering E(3) as a guiding example, both points 1 푧 = 0 and planes are 4 dimensional, while lines are represented by 6 where 푧 ∈ C. It follows that 푏 ∝ s(푏) = 푢∧푣, and hence 푏 is a 2-blade. dimensional vectors satisfying the Plücker conditions. These matrix It might seem unusual that 푏2 ∈ C, while we are describing Clifford representations are given explicitly in eq. (44). algebras over the real numbers. Indeed it is, but we will find that the The matrix approach therefore creates a hard distinction between invariant decomposition of a real 푘-reflection can nonetheless result elements of geometry (vectors) on the one hand, and group ele- in complex simple bireflections, see e.g. example 6.4. However, this ments (matrices) on the other: the former transforms under the is merely a manifestation of the fundamental theorem of algebra, matrix-vector product, while the later transforms under conjuga- and so no more mysterious. tion via the matrix product. Additionally, for a given transformation The hyperplanes 푢 and 푣 intersect in a hyperline. This hyperline 푅, different types of geometric elements transform under different is shared, and left invariant, by the whole one-parameter subgroup matrix representations 퐷(푅) of that transformation. Even for ele- R(푥) = (푢푣)푥 . Therefore we wish to associate the (hyper)line with ments of geometry with the same number of dimension, such as the invariant of R(푥), the blade 푏 ∝ 푢 ∧ 푣. This brings us to the defi- points and planes in E(3), the transformation matrices are not iden- nition of the elements of geometry as invariants of transformations. tical. In section 10.3 the matrix representations of E(3) are given, to illustrate the relationship of geometric elements to their matrix 4 ELEMENTS OF GEOMETRY representations. We would like to identify which of our geometric The study of these matrix representations gives rise to the rich algebra make natural representations of the elements of geometry, mathematical of representation theory, for sources specific to such as points, lines, planes, spheres, etc. Taking E(3) as an example, (particle) physics see e.g. [1, 25]. However, the graded symmetry reflections are associated with planes by construction. Two planes group approach presents an alternative way of studying representa- 푢 and 푣 meet in a line, 푢 ∧ 푣 [8]. This association is strengthened tion theory via 푘-blades. by the observation that the bireflection 푢푣 generates a rotation Summary: Plane and simple. The association of vectors with hy- ∝ ∧ around a line, and is generated by the 2-blade 푏 푢 푣, which perplanes, and not with points, has several advantages. Most impor- represents this line. Therefore, elements of geometry are blades, tantly, it allows the graded view of reflections and their compositions. i.e. outer products of hyperplanes (or equivalently the product of Using again E(3) to illustrate, vectors are naturally associated with orthogonal hyperplanes): the plane they reflect in. When a vector 푣 represents a plane, the 1 , 푢 , 푢1 ∧ 푢2, . . . , 푢1 ∧ ... ∧ 푢푛 ∝ 퐼 . conjugation of an element 푋 with R푣 = 푣 represents the associated |{z} |{z} | {z } | {z } reflection of 푋. The composition of two orthogonal (or parallel) re- space hyperplane hyperline origin flections in planes is associated with the (possibly ideal) line shared This approach to identifying elements of geometry as blades, or by both planes. As a result, when a bivector 푏 represents a line, it can equivalently as invariants of transformations, is valid in all dimen- 푏 be exponentiated to generate the family of bireflections R푏 = 푒 sions, and importantly it includes the ideal elements at infinity as that leave that line invariant, i.e. around that line. Similarly, the valid elements of geometry. composition of three orthogonal reflections produces a trivector 푡 In pseudo-Euclidean spaces R푝푞1, there are two different narra- that is naturally associated with the (possibly ideal) point where the tives. Taking E(2) as an example, the vectors are planes through three planes intersect. And again this multivector represents at the the origin 퐼. These intersect the Euclidean plane to form lines. Simi- same time the unique point reflection R푡 = 푡 that leaves that point larly, bivectors are lines through the origin 퐼, which intersect the invariant. We call this identification of vectors with hyperplanes Euclidean plane in points. As pseudo-Euclidean spaces R푝푞1 serve the plane based view. as homogenous representations of the pseudo-Euclidean plane, the Identifying the geometric elements this way may seem counter natural narrative is to ignore the embedding and view vectors as intuitive at first, but the strong link between elements and their

7 Roelfs and De Keninck associated transformations greatly simplifies many applications. principal logarithm Ln 푅 can be found explicitly. Since all classical The bivectors we have considered above are all constructed as the Lie groups are isomorphic to Spin groups [6], this factorization is product of two orthogonal planes, or equivalently as the outer prod- expected to be applicable to all classical Lie groups, although the uct of two arbitrary non-identical planes. Such bivectors are called scope of the current work is limited to Pin groups. simple. However, not all bivectors are simple. Recall that E(3) al- We conclude this section by proving that Ln 푅 is always a bivector. lows us to combine up to four reflections: the screw motions, which Theorem 4. Any 2푘-reflection 푅 = (푢 푣 )(푢 푣 )···(푢 푣 ) is leave a set of two orthogonal lines invariant. (The screw axis and 1 1 2 2 푘 푘 generated by a bivector. an orthogonal infinite line around it.) For such a transformation the associated invariant will be a non-simple bivector, namely a linear Proof. A 2푘-reflection 푅 = (푢1푣1)(푢2푣2)···(푢푘푣푘 ) determines combination of the screw axis line and its orthogonal ideal line. As a one-parameter subgroup R(푡) := 푅푡 , which satisfies the normal- we will show, any non-simple bivector in an 푛-dimensional space ization condition RRe = 1, where the 푡 dependence of R has been ⌊ / ⌋ can be decomposed into at most 푛 2 commuting simple bivectors. suppressed to improve readability. Differentiation of this normaliza- A novel procedure to do so is outlined in the following sections and tion condition gives is key to efficient calculation of the exponential map and various ¤ ¤ + = other multivector functions. RRe RRe 0.  ¤  ¤  ¤   ¤  But because žRRe = ReRe = R¤ Re, it follows that žRRe = − RRe . 5 SPIN GROUPS AND ALGEBRAS ¤ Therefore RR swaps sign under reversion, and can only contain Any composition of 푚 reflections 푈 = 푢1푢2 ···푢푚 is an element of e + ∈ the Lie group Pin(푝, 푞, 푟), where 푢2 = ±1, depending on the metric. terms of grade 2 4푚 for 푚 N. We will now prove that only 푚 = 0 푖 is allowed. Consider the action of R on a vector 푢: We already saw in section 3.4 that a bireflection 푅푖 = 푢푖푣푖 can be raised to the power 푡 ∈ R, and determines a one-parameter subgroup 푢R := R푢Re. 푡 푡 Ln 푅푖 R푖 (푡) = 푅푖 = 푒 , Taking the derivative yields with the geometric interpretation of a rotation, translation, or hyper- ¤ ¤ 푢¤R = R푢Re + R푢Re bolic rotation (boost). While the bireflection 푅푖 = 푢푖푣푖 is an element ¤ ¤ of the Lie group Spin(푝, 푞, 푟), the bivector Ln 푅푖 is an element of the = RRe푢R − 푢RRRe Î푘   Lie algebra 픰픭픦픫(푝, 푞, 푟). Similarly, any 2푘-reflection 푅 = = 푅푖 ¤ 푖 1 = 2 RRe × 푢R. determines a one-parameter subgroup R(푡) = 푅푡 = 푒푡 Ln 푅 The left hand side of this equation is a vector, and thus so is the right hand side. But the product of an 푟-vector and a 1-vector results 푡 Ln 푅 푡 Ln 푅 푡 Ln 푅 = 푒 1 푒 2 ··· 푒 푘 , in an (푟 − 1)-vector and an (푟 + 1)-vector. So the only way for the which is a product of 푘 rotations, translations, or boosts. As we shall right hand side to be a 1-vector, is if 푟 = 2. This establishes that Ln 푅 2푘 푅 prove in theorem4, the generator of the -reflection is still Ln 푅 = R¤ Re a bivector, and thus the Lie algebra 픰픭픦픫(푝, 푞, 푟) is a bivector algebra [6]. In general the simple bivectors 푏푖 := Ln 푅푖 do not commute, is a bivector. and thus Ln 푅 is given by the Baker–Campbell–Hausdorff formula □ [7, 13]: 6 INVARIANT DECOMPOSITION 푘 ∑︁ ∑︁  Any bivector 퐵 in a geometric algebra with dimension 푛, can be Ln 푅 = 푏푖 + 푏푖 × 푏 푗 + O 푏푖푏 푗푏푘 , 푖=1 푖<푗 decomposed into at most 푘 = ⌊푛/2⌋ commuting orthogonal 2-blades,  as was previously conjectured or partially derived by [15, 20]: where O 푏푖푏 푗푏푘 contains higher order commutators. However, as we will prove in corollary 5.1, there always exists a factorization of 퐵 = 푏1 + 푏2 + ... + 푏푘, 푅 into 푅 = (푢′ 푣 ′ )(푢′ 푣 ′ )···(푢′ 푣 ′ ), such that the bireflections 푢′푣 ′ 1 1 2 2 푘 푘 푖 푖 where 푏푖푏 푗 = 푏푖 ∧푏 푗 and thus 푏푖 ·푏 푗 = 푏푖 ×푏 푗 = 0, and each 푏푖 squares are mutually commuting. In terms of these mutually commuting 2 to a scalar 푏푖 = 휆푖 . The 푏푖 are found by solving the characteristic bireflections the principal logarithm is just polynomial 푘 ∑︁ ′ ′ 푘 Ln 푅 = Ln 푢 푣 . ∑︁ 푘−푚 푖 푖 0 = (푏1 − 푏푖 )(푏2 − 푏푖 ) ··· (푏푘 − 푏푖 ) = (−푏푖 ) 푊푚, (10) 푖=1 푚=0 Any element 푅 ∈ Spin(푝, 푞, 푟) can therefore be understood as a where product of simple bireflections 푢′푣 ′ ∈ Spin(푝, 푞, 푟), each of which 푖 푖 1 1 follows the generalized Euler’s formula 푊 := 퐵푚 = 퐵 ∧ 퐵 ∧ ... ∧ 퐵 (11) 푚 푚! 2푚 푚! ′ ′ 푏′ ′ ′ | {z } 푢 푣 = 푒 푖 = c 푏  + s 푏 . 푚 푖 푖 푖 푖 ∑︁ ··· In section 9.1 we discuss how the factorization into bireflections = 푏푖1푏푖2 푏푖푚 . (12) ′ ′ 1≤푖1 <푖2 <...<푖푚 ≤푘 푢푖 푣푖 can be performed, after which section 9.3 discusses how the

8 Graded Symmetry Groups: Plane and Simple

Defining 푟 = ⌊푘/2⌋, eq. (10) has solutions eq. (15) is valid iff Δ ≠ 0. The only potentially problematic case 푟 푟−1 occurs when the discriminant Δ = 0, and thus 휆1 = 휆2, as this 휆 푊0 + 휆 푊2 + ... + 푊푘  푖 푖 퐵−1  푟−1 푟−2 k even implies that does not exist and therefore eq. (15) is not valid.  휆 푊1 + 휆 푊3 + ... + 푊 3  푖 푖 푘−1 However, it is easy to verify from 퐵 = 푏1 +푏2, that in this case 퐵 = 푏푖 = , (13) 푟 푟−1 4휆1퐵, and thus the exponent of 퐵 is still well behaved. Additionally,  휆 푊1 + 휆 푊3 + ... + 푊푘  푖 푖 k odd although eq. (15) can no longer be used when Δ = 0, any 2-blade 푏  푟 + 푟−1 + + 푖 휆푖 푊0 휆푖 푊2 ... 푊푘−1 1  which satisfies 푏푖퐵 = 휆푖 + 2 퐵 ∧ 퐵 could be used, if a split into blades for 휆푖 with algebraic multiplicity of 1, which we shall prove in is still required. theorem5. Example 6.2 (Mozzi–Chasles’ theorem in 3DPGA). The famous The distinction between even and odd 푘 is only important when −1 Mozzi–Chasles’ theorem is the 3DPGA (R ) case of the invariant 휆푖 = 0; when 휆푖 ≠ 0, 푏 = 푏푖 /휆푖 can be used to show that the two 3,0,1 푖 decomposition. The theorem states that the most general rigid body forms are identical. However, the limit of 휆푖 → 0 is the same for both cases: motion in 3D is a screw motion: a rotation about an axis, either 푊푘 followed or preceded by a translation orthogonal to that axis [3, 17]. lim 푏푖 = . 휆푖 →0 푊푘−1 This is depicted in fig. 10. This provides a quick method to calculate the null bivector in pseudo- Since any handedness preserving transformation 푅 is generated Euclidean spaces. The series in the numerator and denominator by a bivector, we consider the invariant decomposition of a bivector 2 2 terminate after at most 푘 wedge products of 퐵. In order to calculate 퐵. Because in R3,0,1 (퐵 ∧ 퐵) = 0, the values of 푏푖 = 휆푖 given by 2 the values of 휆푖 = 푏 , eq. (13) is squared and rearranged, giving the eq. (17) are 푖 1 1 polynomialmsp 휆1,2 = 2 퐵 · 퐵 ± 2 퐵 · 퐵. 푘 Consequently, 휆1 = 퐵 · 퐵 ≤ 0, and 휆2 = 0. Therefore, using eq. (15), ∑︁ 2 푘−푚 0 = 푊푚 0 (−휆푖 ) (14) 퐵 ∧ 퐵 푏2 = , 푏1 = 퐵 − 푏2. 푚=0 2퐵       2 − 2 − ··· 2 − 퐵 = 푏1 휆푖 푏2 휆푖 푏푘 휆푖 . The generic motion 푅 = 푒 is therefore decomposable into a com- muting orthogonal rotation 푒푏1 and translation 푒푏2 : Thus, the values of 휆푖 are the roots of eq. (14), after which eq. (13) 퐵 푏 푏 푏 can be used to find the blades 푏푖 . Equation (13) is valid for all 휆푖 ∈ C, 푅 = 푒 = 푒 1 푒 2 = 푒 1 (1 + 푏2). = 0 including 휆푖 . Therefore, the most general handedness preserving isometry in 3D We will first give some examples in small algebras to clarify the Euclidean space is indeed a screw transformation. algorithm. This section is then concluded by proving the invariant decomposition eq. (13) in theorem5, and proving the polynomial Example 6.3 (Invariant decomposition in Spacetime Algebra (STA)). 2 eq. (14) in theorem6. In the STA (R1,3), the pseudoscalar 퐼 = e1234 satisfies 퐼 = −1, and thus Example 6.1 (Invariant decomposition in STA, 3DCGA, 3DPGA.). √︃ 1 1 2 2 Consider a non-simple bivector 퐵 = 푏1 + 푏2 in a geometric algebra 휆1,2 = 2 퐵 · 퐵 ± 2 (퐵 · 퐵) − (퐵 ∧ 퐵) with 푛 < 6, such as those encountered in Spacetime Algebra (STA) √︃ 1 1 2 2 [7, 14], 3DPGA [8, 11], or 3DCGA [9]. Solving eq. (10) gives = 2 퐵 · 퐵 ± 2 (퐵 · 퐵) + 퐵 ∧ 퐵 . 0 = ( − )( − ) √︁ 2 2 푏1 푏푖 푏2 푏푖 Consequently, (퐵 · 퐵) − (퐵 ∧ 퐵) ≥ 퐵 · 퐵, and thus sign(휆1) = 퐵 = 푏1푏2 − 푏푖 (푏1 + 푏2) + 휆푖 − sign(휆2). Therefore any Lorentz transformation Λ = 푒 can be 푏 푏 1 decomposed into a commuting boost 푒 1 and rotation 푒 2 using = 퐵 ∧ 퐵 − 푏푖퐵 + 휆푖, 2 eq. (15), as and thus Λ = 푒퐵 = 푒푏1 푒푏2 . 1 휆푖 + 2 퐵 ∧ 퐵 푏 = . (15) Example 6.4 (Seeming counter example). An insightful seeming 푖 퐵 counter example to the existence of an orthogonal decomposition The values of 휆푖 can be obtained after squaring the expression for in all spaces, due to M. Riesz [20, Page 170], is the space R2,2, whose 푏푖 , resulting in the polynomial 2 2 2 2 basis vectors satisfy e1 = e2 = −e3 = −e4. Consider e.g. the bivector 0 = 휆2 − 휆 퐵 · 퐵 + 1 (퐵 ∧ 퐵)2. (16) 푖 푖 4 1 퐵 = 2 (e12 + e14 − e23 − e34), The 휆푖 are the roots of eq. (16): 2 √︃ which squares to 퐵 = 퐵 ∧ 퐵 = −e1234. From eq. (17) it follows that = 1 · ± 1 ( · )2 − ( ∧ )2 푖 휆1,2 2 퐵 퐵 2 퐵 퐵 퐵 퐵 . (17) 휆1,2 = ± 2 . If we decide to exclude complex solutions, then indeed no invariant decomposition can be performed, but if we carry on Depending on the sign of the discriminant Δ := (퐵 · 퐵)2 − (퐵 ∧ 퐵)2, regardless, we find the complex simple bivectors this can have either real or complex solutions. 1 Since 푏1 = [(1 − 푖)e12 + (1 + 푖)e14 + (−1 − 푖)e23 + (−1 + 푖)e34], − − 4 −1 푏1 푏2 푏1 푏2 1 퐵 = = √ , (18) 푏2 = [(1 + 푖)e12 + (1 − 푖)e14 + (−1 + 푖)e23 + (−1 − 푖)e34]. 휆1 − 휆2 Δ 4

9 Roelfs and De Keninck

Fig. 10. Mozzi-Chasles’ theorem: any 4-reflection in E(3) can be decomposed into two commuting bireflections: a rotation and an orthogonal translation. The 4-reflection has 3 gauge degrees of freedom, indicated by the dashed blue, orange, and orange-blue lines. For simplicity the panels display a rotation around the orange-blue line, while the other gauge degrees of freedom have been preset. The final result is a rotation around the blue line, and a translation along it.

2 These satisfy 퐵 = 푏1 + 푏2, 푏푖 = 휆푖 , and 푏1푏2 = 푏1 ∧ 푏2. Therefore, that 푏푖 ∧ 푊푘−1 = 푊푘 , the proof of theorem5 is immediate. For odd all the demands on the invariant decomposition are satisfied. Conse- 푘, quently, bivectors in R do not pose a counter example, but rather 푟 푟−1 푟−2 2,2 푁푖 = 휆푖 푊1 + 휆푖 푊3 + 휆푖 푊5 + ... + 푊푘 an indication that 휆 is allowed to be complex. 푖 푟 푟−1 푟−2 퐷푖 = 휆푖 푊0 + 휆푖 푊2 + 휆푖 푊4 + ... + 푊푘−1, Example 6.5 (Invariant decomposition when 5 < 푛 ≤ 7.). In a and thus space of 5 < 푛 ≤ 7, any bivector 퐵 has an invariant decomposition 푟  1  푟−1  1  푏1퐷1 = 휆 푏1푊0 + 푏1 · 푊2 + 휆 푏1 ∧ 푊2 + 푏1 · 푊4 into 1 휆1 1 휆1 퐵 = 푏1 + 푏2 + 푏3. + ... + 푏1 ∧ 푊푘−1 푟 푟−1 The 푏푖 are given by = 휆1푊1 + 휆1 푊3 + ... + 푊푘 = 푁1 1 휆 푊 + 푊 휆푖퐵 + 퐵 ∧ 퐵 ∧ 퐵 The proof for even 푘 follows, mutatis mutandis, along the same lines. = 푖 1 3 = 3! 푏푖 1 , (19) This proves equation eq. (13), assuming the 푏푖 commute. To prove 휆푖푊0 + 푊2 휆 + 퐵 ∧ 퐵 푖 2 this last statement, and thereby justify the ansatz, we need only to where the 휆푖 are the roots of show that 푊푖 ×푊푗 = 0. However, this follows directly if we use that 3 2 2 2 2 퐵 × 퐵 = 0, and thus 0 = 휆푖 − 푊1 0 휆푖 + 푊2 0 휆푖 − 푊3 0 (20) 0 = 퐵푖 × 퐵 푗  2 = 휆3 − 퐵 · 퐵 휆2 + 1 (퐵 ∧ 퐵)2 휆 − 1 (퐵 ∧ 퐵 ∧ 퐵)2.     푖 푖 4 푖 3! 푖 + 푖 + + 푖 × 푖 + 푖 + + 푗 = 퐵 0 퐵 2 ... 퐵 2푖 퐵 0 퐵 2 ... 퐵 2푗 . ( ) The matrix equivalent of this decomposition for SU 3 was pub- Since this holds grade by grade, we find for the highest grade term lished previously [21]. 푖 × 푗 × 퐵 2푖 퐵 2푗 = 0, and thus 푊푖 푊푗 = 0, from which it follows × Theorem 5 (Invariant decomposition). Assuming all 휆푖 ∈ C trivially that 푏푖 푏 푗 = 0. □ are distinct, 푏푖 is given by eq. (13). Corollary 5.1. Any 2푘-reflection 푅 = (푢1푣2)(푢2푣2)···(푢푘푣푘 ) can be factored into commuting bireflections: Proof. First we make the ansatz that the decomposition of 퐵 into ( ′ ′ )( ′ ′ )···( ′ ′ ) at most 푘 orthogonal 2-blades exists, to find expression eq. (13) for 푅 = 푢1푣2 푢2푣2 푢푘푣푘 , 푏 , which satisfies 퐵 = Í푘 푏 by construction. Then we prove that ′ ′ ′ ′ 푖 푖=1 푖 such that (푢푖 푣푖 ) × (푢푗 푣 푗 ) = 0. This follows immediately because 푏푖 × 푏 푗 = 0, thereby justifying the ansatz. any 2푘-reflection is generated by a bivector Ln 푅 (theorem4), and In order to prove theorem5, we will prove that 푏푖퐷푖 = 푁푖 , with any bivector can be split into commuting 2-blades (theorem5). 푁푖 and 퐷푖 the numerator and denominator of the relevant case of Corollary 5.2. For any value of 휆푖 , the bivector 푏푖 calculated using eq. (13). Without loss of generality, let us consider 푏푖 = 푏1. The 푊푚 satisfy the recursive relationship theorem5 will commute with 퐵, or with any other 푏 푗 . Only for specific values of 휆푖 is 푏푖 also simple, which leads to theorem6. 1 푏1 ∧ 푊푚 + 푏1 · 푊푚+2 = 푊푚+1, (21) 휆1 2 Theorem 6. The 휆푖 = 푏푖 are the roots of eq. (14) [15, Eq. (4.14)]. which is straightforwardly verified using Proof. Squaring eq. (12) directly gives ∑︁ 푏1푊푚 = 푏1 · 푊푚 + 푏1 ∧ 푊푚 푊 2 = 푏2 푏2 ···푏2 푚 0 푖1 푖2 푖푚 ∑︁ ∑︁ 1≤ < < < ≤ = 휆1 푏푖 ···푏푖 + 푏1 푏푖 푏푖 ···푏푖 . 푖1 푖2 ... 푖푚 푘 2 푚 1 2 푚 ∑︁ 1<푖2 <...<푖푚 1<푖1 <푖2 <...<푖푚 = 휆푖1 휆푖2 ··· 휆푖푚 , 1≤ < < < ≤ Careful evaluation of 휆푖 → 0 shows that eq. (21) also holds in this 푖1 푖2 ... 푖푚 푘 limit. With the recursive relationship of eq. (21), and the realization and thus the equality eq. (14) follows immediately. □

10 Graded Symmetry Groups: Plane and Simple

To perform the invariant decomposition, the roots 휆푖 are first deter- 8 TANGENT DECOMPOSITION mined using theorem6, after which theorem5 can be used to find To define the tangent function, we first define the generalized sine the corresponding 2-blades 푏푖 . If precisely of the 휆푖 equals 0, then and cosine series as 푏푖 can alternatively be obtained as 1  퐵 −퐵  1   ∑︁ s(퐵) = 푒 − 푒 = 푅 − 푅e (26) 푏 = 퐵 − 푏 . (22) 2 2 푖 푗     푗≠푖 1 퐵 −퐵 1 c(퐵) = 2 푒 + 푒 = 2 푅 + 푅e . (27) This could simplify any implementation, as the distinction between even and odd 푘 can be dropped. The method presented here extends The generalization of the tangent function is then defined in terms previously published methods [7, 10, 11] to geometric algebras of of s(퐵) and c(퐵) as ∈ C arbitrary metric and dimension, for all unique 휆푖 . s(퐵) 푅 − 푅e t(퐵) := = . (28) c(퐵) 7 EXPONENTIAL OF A BIVECTOR 푅 + 푅e Using the invariant decomposition of theorem5, the exponential of We additionally define the bivector a bivector 퐵 follows straightforwardly after performing the decom- ⟨ ⟩ 푘 푘 푅 2 ∑︁ position of 퐵 into {푏 } , using which a group element 푅 = exp [퐵] T:= = t(푏 푗 ), 푖 푖=1 ⟨푅⟩ can be written as 푗=1 푅 = 푒퐵 = 푒푏1 푒푏2 ··· 푒푏푘 (23) where the last equality follows from 푘 푘 푘 Ö Ö ∑︁ Ö = [c(푏푖 ) + s(푏푖 )]. (24) ⟨푅⟩ = c(푏푖 ), ⟨푅⟩2 = s(푏푖 ) c(푏 푗 ), 푖=1 푖=1 푖=1 푗≠푖 where c(푏 ) and s(푏 ) were previously defined in eqs. (6) and (7). It 푖 푖 where the 푏푖 are given by the invariant decomposition of 퐵. We follows that the 푏 span a commuting orthogonal basis for 푅: 푖 would like to find the simple bivectors t(푏푖 ), which are obtained by {1, 푏푖, 푏푖 푗, . . . , 푏12...푘 }, applying the invariant decomposition section6 to the bivector T. However, theorem7 allows the quantities 푊푚 to be expressed using where 푏푖 푗 := 푏푖 ∧ 푏 푗 . These basis elements satisfy various grades of 푅: 푏 푏 = 푏 푏 = 푔 + 푏 ∧ 푏 , 푖 푗 푗 푖 푖 푗 푖 푗 1 푊 = ⟨푅⟩ T푚 = ⟨푅⟩ , where 푔푖 푗 = 푏푖 · 푏 푗 = diag(휆1, 휆2, . . . , 휆푘 ) is the effective metric. 푚 푚! 2푚 2푚 Any element in this basis is invariant under each of the 푅 = 푒푏푖 , a 푖 where the limit ⟨푅⟩ → 0 is well-behaved. Therefore the invariant special case is 퐵 itself. decomposition has the solutions With this observation in mind, we return to the gauge degrees of 푟 푟−1 freedom. In section2 we have intuitively seen that a 2푘-reflection  휆푖 ⟨푅⟩ + 휆푖 ⟨푅⟩4 + ... + ⟨푅⟩2푘  k even has 2푘 − 1 gauge degrees of freedom. However, the commuta-  휆푟−1 ⟨푅⟩ + 휆푟−2 ⟨푅⟩ + ... + ⟨푅⟩  푖 2 푖 6 2푘−2 tivity imposed by the invariant decomposition restricts the num- t(푏푖 ) = , (29) 푟 푟−1 ber of degrees of freedom to 푘, corresponding to the number of  휆 ⟨푅⟩2 + 휆 ⟨푅⟩6 + ... + ⟨푅⟩2푘  푖 푖 k odd commuting bireflections it contains. Given an even 2푘-reflection  휆푟 ⟨푅⟩ + 휆푟−1 ⟨푅⟩ + ... + ⟨푅⟩  푖 푖 4 2푘−2 푅 = 푅1푅2 ··· 푅푘 , each bireflection 푅푖 = 푢푖푣푖 is specified by the reflec- where 푟 = ⌊푘/2⌋. To find the values of 휆 , eq. (14) becomes tions 푢푖 and 푣푖 . However, these are not unique: 푢푖 and 푣푖 can be freely 푖 rotated around their intersection. These rotations are determined 푘 R ( ) = 휃푖 ∑︁ 2 푘−푚 by the one parameter subgroup 푖 휃푖 푅푖 , since any 0 = ⟨푅⟩2푚 (−휆푖 ) . (30) ′ ′ 푚=0 푢푖 = R푖 [푢푖 ], 푣푖 = R푖 [푣푖 ], The interesting feature of this formulation of the invariant decom- define the same bireflection 푅푖 : position is that it uses all the grades of the rotor, making for an ′ ′ 휃푖 −휃푖 휃푖 −휃푖 푢푖 푣푖 = 푅푖 푢푖푅푖 푅푖 푣푖푅푖 = 푢푖푣푖 = 푅푖 . exception free experience. We will now give some examples of the The other bireflections 푅푗 = 푢푗 푣 푗 with 푗 ≠ 푖 do not share this gauge tangent decomposition, after which we conclude this section with degree of freedom because 푢푗 × 푅푖 = 푣 푗 × 푅푖 = 0, and thus theorem7. [ ] 휃푖 −휃푖 Example 8.1 (Tangent decomposition in STA, 3DCGA, 3DPGA, 푢푗 = R푖 푢푗 = 푅푖 푢푗 푅푖 = 푢푗 etc.). A rotor 푅 in a space with 푛 < 6 has a tangent decomposition [ ] 휃푖 −휃푖 푣 푗 = R푖 푣 푗 = 푅푖 푣 푗 푅푖 = 푣 푗 . given by A 2푘-reflection 푅 therefore has only 푘 gauge degrees of freedom 휆푖 ⟨푅⟩ + ⟨푅⟩ t(푏 ) = 4 { }푘 푖 ⟨ ⟩ 휃푖 푖=1. As a result, the 푘 parameter gauge group of the reflections 푅 2 { }푘 푢푖, 푣푖 푖=1 is where the 휆푖 are the roots of

휃1푏1 휃2푏2 휃푘푏푘 2 2 2 푅(휃1, 휃2, . . . , 휃푘 ) = 푒 푒 ··· 푒 . (25) 휆푖 ⟨푅⟩ − 휆푖 ⟨푅⟩2 · ⟨푅⟩2 + ⟨푅⟩4 = 0,

11 Roelfs and De Keninck which are Example 9.1 (3DPGA). In the particular case of 3DPGA the factor- √︃ 2 2 2 ization of 푅 into a rotation 푅1 and a translation 푅2 can be greatly ⟨푅⟩2 · ⟨푅⟩2 ± (⟨푅⟩2 · ⟨푅⟩2) − 4 ⟨푅⟩ ⟨푅⟩4 = simplified, because the tangent decomposition of example 8.1 always 휆1,2 2 2 ⟨푅⟩ yields 휆2 = 0 and thus Theorem 7. Given a non-simple rotor 푅 defined by eq. (23), for ⟨푅⟩4 t(푏2) = , t(푏1) = ⟨푅⟩2 − t(푏2). 0 ≤ 푚 ≤ 푘, the grade 2푚 part ⟨푅⟩2푚, is given by ⟨푅⟩2 푚 Therefore, the factors 푅1 and 푅2 are ⟨푅⟩2 ⟨푅⟩ = 2푚 (31) 2푚 푚−1 푅 = 1 + t(푏 ), 푅 = 푅/푅 . 푚! ⟨푅⟩0 2 2 1 2 1 ⟨ ⟩ = ⟨ ⟩ ∧ ∧ ⟨ ⟩ If 푅 4 = 0, the rotor 푅 is simple and the factorisation trivial. 푚−1 푅 2 ... 푅 2 푚! ⟨푅⟩0 | {z } 푚 Example 9.2 (Wigner rotation). The multiplication of two non- collinear boosts produces a Wigner rotation [26], which can be de- Proof. We will need to use composed into a mutually commuting orthogonal boost and rotation

푘 푘 푘1 푘2 Ö Ö using eq. (32). Let 푅1 = 푒 , and 푅2 = 푒 be the two original boosts. ⟨푅⟩0 = c(푏푖 ), ⟨푅⟩2푘 = s(푏푖 ), These boosts do not commute, and so 푅 = 푒푘1 푒푘2 ≠ 푒푘1+푘2 but typi- 푖=1 푖=1 cally requires the Baker–Campbell–Hausdorff formula. However, 푘 푘 ∑︁ Ö ∑︁ Ö the tangent decomposition allows the product 푅 to be decomposed ⟨푅⟩ = s(푏 ) c(푏 ), ⟨푅⟩ = c(푏 ) s(푏 ). 2 푖 푗 2(푘−1) 푖 푗 in a mutually commuting orthogonal boost 푒푏1 and rotation 푒푏2 . =1 ≠ =1 ≠ 푖 푗 푖 푖 푗 푖 Grade by grade we find By direct computation we find the recursive relationship ⟨푅⟩ = c (푘1) c (푘2) + s (푘1) · s (푘2) 푘 Ö ⟨푅⟩2 = c (푘1) s (푘2) + s (푘1) c (푘2) ⟨푅⟩2 ∧ ⟨푅⟩2(푘−1) = 푘 s(푏푖 ) c(푏푖 ) 푖=1 ⟨푅⟩4 = s (푘1) ∧ s (푘2) = 푘 ⟨푅⟩ ⟨푅⟩ , 0 2푘 The techniques of example 8.1 will yield t(푏1) and t(푏2), after which and therefore by induction we find 푅1 = 1 + t(푏1), 푅2 = 푅e1푅. D E ⟨푅⟩푘 ⟨푅⟩2 ∧ ⟨푅⟩2(푘−1) 2 푘 ⟨푅⟩ = = 2푘 . 9.2 Factorization of a (2 + 1)-reflection 2푘 −1 푘 ⟨푅⟩0 푘! ⟨푅⟩푘 0 Consider a (2푘 + 1)-reflection 푃 in a geometric algebra R푝푞푟 of □ dimension 푛 = 푝 + 푞 + 푟. Such an element can be factored into a mutually commuting reflection 푟 and 2푘-reflection 푅, such that 9 FACTORIZATION & LOGARITHM OF ROTORS 푃 = 푟푅 = 푅푟, (34) We will demonstrate that any 푟-reflection 푅 can be factored into 푟 where 푟 = ⟨푃⟩ . This follows from the Cartan-Dieudonné theorem2, ⌈ 2 ⌉ mutually commuting factors. For a 2푘-reflection these are 푘 1 bireflections, for a (2푘 + 1)-reflection these are 푘 mutually com- by using that 푟 is a valid factor of 푃, and therefore 푅 := 푃/푟 is a muting bireflections and a reflection. Once the factorization ofa 2푘-reflection. Because 푟 maps back to the same subspace, since 2푘-reflection into 푘 mutually commuting bireflections has been 푟 [푟] = −푟, performed, the logarithm follows immediately. 푅 is an isometry orthogonal to 푟 by Cartan-Dieudonné. It follows 9.1 Factorization of a 2푘-reflection into bireflections that the sought-after commuting reflection 푟 and 2푘-reflection 푅 are simply Given a 2푘-reflection 푅, we want to find the factorization 푃 푟 = ⟨푃⟩1, 푅 = . (35) 푅 = 푅1푅2 ··· 푅푘 푟 푏 This completes the factorization of a (2푘 + 1)-reflection into a mu- into 푘 Euler’s formulas 푅푖 = 푒 푖 . The tangent decomposition of 푅 tually commuting reflection and 2푘-reflection, the latter of which yields the simple bivectors t(푏푖 ), which can be used to find the 푅푖 up to sign, since can be decomposed into 푘 bireflections using section 9.1. Example 9.3. Any trireflection 푃 = 푎푏푐 can be decomposed into a 푅푖 = [1 + t(푏푖 )] (32) commuting reflection 푟1 and bireflection 푅 = 푟2푟3. This is depicted = |c(푏푖 )| [1 + t(푏푖 )] in fig. 11. The reflection 푟1 is given by = |c(푏푖 )| + sign [c(푏푖 )] s(푏푖 ) 푟1 = ⟨푃⟩1, To preserve the distinction between ±푅, the first 푘 − 1 bireflections are calculated using eq. (32), after which the final bireflection follows while the bireflection is given by from 푃 = ··· 푅 = 푟2푟3 = , 푅푘 푅e1 푅e푘−1푅. (33) 푟1

12 Graded Symmetry Groups: Plane and Simple

Fig. 11. From left to right. (1) An arbitrary trireflection 푎푏푐. (2) Rotation of 푎푏 into 푎′푏′ so that 푏′ ⊥ 푐. (3) The composition is now a point reflection 푏′푐 followed by a reflection 푎′. (4) Rotate 푏′푐 into 푏′′푐′ so that 푐′ ⊥ 푎′. (5) The final decomposition of 푎푏푐 = 푎′푏′′푐′ reveals a commuting translation 푎′푏′′ and orthogonal reflection 푐′. (This example is in fact the 2D equivalent of Mozzi-Chasles’ theorem - and the smallest example of the invariant decomposition.) where the notation is unambiguous, due to the commu- 10.1 A matrix representation for R푝푞푟 tation of 푃 and 푟1. In 2DPGA, this has as a consequence that any For an 푛 dimensional real Clifford algebra, a 2푛 × 2푛 real matrix rotoreflection is fundamentally a commuting reflection and trans- realization can be constructed starting from the following basis lation, since ⟨푃⟩3 is ideal, and thus ⟨푟2푟3⟩2 is ideal, making 푟2푟3 a matrices: translation.  1 0  ′  1 0   0 1   0 1   0 0  퐼 = 0 1 , 퐼 = 0 −1 , 푃 = 1 0 , 푄 = −1 0 , 푅 = 1 0 (37) 9.3 Logarithm of a rotor Using the 푃, 푄, 푅 matrices, we now assign signature matrices 푆푖 With the factorization of a 2푘-reflection 푅 into mutually commuting corresponding to the Clifford signature R푝푞푟 : orthogonal bireflections {푅1, 푅2, . . . , 푅푘 } as described in section 9.1 in hand, the principal logarithm is simply 2 푃 푒푖 = +1 + + +  Ln 푅 = Ln 푅1 Ln 푅2 ... Ln 푅푘 . (36) =  2 푆푖 푄 푒푖 = −1 (38) where Ln 푅푖 is given by eq. (5):  2 푅 푒푖 = 0 2  ⟨푅푖 ⟩2 arccosh (⟨푅푖 ⟩)⟨푅푖 ⟩2 > 0 Next, the basis matrices E푖 corresponding to the basis vectors e푖 are  2 Ln 푅푖 = ⟨푅푖 ⟩2 ⟨푅푖 ⟩2 = 0 . constructed using the (Kronecker) product for matrices:  2 ⟨푅푖 ⟩2 arccos (⟨푅푖 ⟩)⟨푅푖 ⟩2 < 0  (푖−1) times (푛−푖) times When 푅 → 푈 푅푈e for any 푈 ∈ Pin(푝, 푞, 푟), Ln(푅) → 푈 Ln(푅)푈e, z }| { z }| { 푖 푖 ′ ′ as can be computed directly from the series expansion. Thus, if the E푖 = 퐶1 ⊗ ... ⊗ 퐶푖−1 ⊗푆푖 ⊗ 퐼 ⊗ ... ⊗ 퐼 , invariant decomposition of Ln(푅) is known, the invariant decom- 푗 where 퐶 is 퐼 if the corresponding 푖, 푗 basis elements should anti- position of 푈 Ln(푅)푈 is simply {푈 Ln(푅 )푈 }푘 . 푖 e 푖 e 푖=1 commute, and 퐼 ′ when they should commute. For Clifford algebras 퐶푖 = 퐼 10 CLIFFORD REPRESENTATION over the reals, 푗 . Matrix representations for higher grade basisvectors e ··· are In this section we introduce a novel algorithm for the construction 푖 푗 푘 푛 푛 now constructed with standard : of a 2 × 2 real matrix representation for geometric algebras R푝푞푟 of dimension 푛 = 푝 + 푞 + 푟. Although much has been published on E푖 푗 ···푘 = E푖 E푗 ··· E푘, (39) the matrix representations of Clifford algebras, see e.g. [16, 18], this 푛 algorithm has some distinguishing features. Firstly, it allows fine times 푛 z }| { grained control over basis order, permutation and metric signature. with the 2 I2푛 = 퐼 ⊗ ... ⊗ 퐼 representing the scalar Secondly, this representation models Clifford’s geometric product unit. The resulting set of matrices not just as matrix-matrix product, but also as matrix-vector prod- uct, enabling efficient implementation using software. 푖 2푛 {R } = = {I2푛 , E1, E2,..., E12,..., E12···푛 } (40) Lastly, we demonstrate that this particular representation leads 푖 1 directly to the familiar block-diagonal form of the group action, is closed under matrix multiplication, and indeed a valid represen- subsuming the traditional covariant, contravariant, and adjoint rep- tation for the Clifford algebra R푝푞푟 . This set is determined up to resentations. along the diagonal. We therefore understand the block permutations R푖 → OR푖 O푇 , where O is a . 푖 푇 diagonal form to be a manifestation of the grade-preserving nature Although all OR O are equivalent representations of R푝푞푟 , there of conjugation. Owing to these particularly appealing properties, is nonetheless a unique permutation which offers substantial com- we refer to this representation as the Clifford representation. putational advantages over the others. To construct this Clifford

13 Roelfs and De Keninck representation C푖 , we first construct a permutation matrix O with In this form, transformations of elements by rotors are still ex- matrix elements ecuted by conjugation, which can be reformulated to a one sided 푖 transformation by solving O푖 푗 = R푗0. (41)   ì Finally, we construct the Clifford representation C푖 by conjugating 퐷 퐷(푅ì)푥 ì 푅˜ = 퐴푥ì each of the basis matrices R푖 : for 퐴. In the example below we work this out for the Euclidean 푖 푖 푇 C = OR O (42) group E(3), recovering the familiar homogeneous representations. The ordering matrix O is a permutation matrix that ensures that the only non-zero element of the first column of C푖 is positive, and 10.3 Matrix representations of E(3) in the 푖-th row. The sandwich makes sure the same permutations A multivector 푥 ∈ R3,0,1, given by are being applied to the rows and columns, preserving the group relations. 푥 = 푠 +푣 ì표 +푣 ì∞ + 퐵표 + 퐵∞ + 푡∞ì + 푡표ì + 푝, (43) The resulting set of matrices C푖 is the unique matrix representa- where tion of the Clifford algebra R푝푞푟 where the matrix form of a multi- 1 16 vector has the unmodified multivector coefficients as its first column. 푠 = 푥 , 푝 = 푥 e0123, As a result, both the matrix-matrix and matrix-vector product rep- 2 3 4 5 resent the geometric product. 푣ì표 = 푥 e1 + 푥 e2 + 푥 e3, 푣ì∞ = 푥 e0, 6 7 8 9 10 11 Note that this procedure allows us to easily select the metric 퐵표 = 푥 e23 + 푥 e31 + 푥 e12, 퐵∞ = 푥 e01 + 푥 e02 + 푥 e03, signature of the basis vectors eq. (38), the permutations of the basis 푡 ì = 푥15e , 푡 ì = 푥12e + 푥13e + 푥14e , elements eq. (39), and the order of all basis blades eq. (40). 표 123 ∞ 032 013 021 with the order and permutation of the basis elements carefully 10.2 Efficient implementation selected (it determines the similarity transformation), has a matrix To demonstrate the efficiency of the Clifford representation, consider representation 퐷(푥): for example the matrix representation of R0 2, isomorphic to 푆푈 (2), , 1 2 3 4 6 7 8 15 constructed following the procedure above for the element 푥 =  푥 푥 푥 푥 0 −푥 −푥 −푥 0 0 0 0 0 0 −푥 0   푥2 푥1 푥8 −푥7 0 −푥15 푥4 −푥3 0 0 0 0 0 0 −푥6 0  푎 + 푏e + 푐e + 푑e :  3 − 8 1 6 − 4 − 15 2 − 7  1 2 21  푥 푥 푥 푥 0 푥 푥 푥 0 0 0 0 0 0 푥 0   푥4 푥7 −푥6 푥1 0 푥3 −푥2 −푥15 0 0 0 0 0 0 −푥8 0   5 9 10 11 1 12 13 14 2 3 4 6 7 8 16 15   푥 푥 푥 푥 푥 푥 푥 푥 −푥 −푥 −푥 푥 푥 푥 −푥 푥  푎 푎 −푏 −푐 −푑  푥6 푥15 −푥4 푥3 0 푥1 푥8 −푥7 0 0 0 0 0 0 푥2 0       7 4 15 − 2 − 8 1 6 3     −   푥 푥 푥 푥 0 푥 푥 푥 0 0 0 0 0 0 푥 0  푏 푏 푎 푑 푐  푥8 −푥3 푥2 푥15 0 푥7 −푥6 푥1 0 0 0 0 0 0 푥4 0  퐷( ) :=   = 푎I + 푏E1 + 푐E2 + 푑E21.  9 5 14 13 2 16 11 10 1 8 7 15 4 3 12 6 . 푐 푐 −푑 푎 푏   푥 푥 −푥 푥 −푥 −푥 푥 −푥 푥 푥 −푥 −푥 푥 −푥 푥 −푥       푥10 푥14 푥5 −푥12 −푥3 −푥11 −푥16 푥9 −푥8 푥1 푥6 −푥4 −푥15 푥2 푥13 −푥7        푑 푑 푐 −푏 푎   푥11 −푥13 푥12 푥5 −푥4 푥10 −푥9 −푥16 푥7 −푥6 푥1 푥3 −푥2 −푥15 푥14 −푥8       12 16 11 10 6 5 14 13 15 4 3 1 8 7 9 2   푥 −푥 푥 −푥 −푥 −푥 푥 −푥 푥 −푥 푥 푥 푥 −푥 −푥 푥  This is of course the well known real representation of the Pauli  푥13 −푥11 −푥16 푥9 −푥7 −푥14 −푥5 푥12 푥4 푥15 −푥2 −푥8 푥1 푥6 −푥10 푥3   14 10 9 16 8 13 12 5 3 2 15 7 6 1 11 4  matrices [1, 25], as expected. Note however, how the first column  푥 푥 −푥 −푥 −푥 푥 −푥 −푥 −푥 푥 푥 푥 −푥 푥 −푥 푥   푥15 푥6 푥7 푥8 0 푥2 푥3 푥4 0 0 0 0 0 0 푥1 0  of this matrix contains, in order, all four coefficients needed to com-  16 12 13 14 15 9 10 11 6 7 8 2 3 4 5 1   푥 −푥 −푥 −푥 −푥 푥 푥 푥 푥 푥 푥 푥 푥 푥 푥 푥  pletely determine the matrix. In practice this allows storage of just ì the 2푛 vector coefficients, instead of the 22푛 matrix coefficients. Ad- It is apparent from this matrix that the first column vector 푥 lists all ditionally, this enables an efficient implementation of the geometric the coefficients, and can thus be used as a representation of 푥. ∈ R ì product between two multivectors 푎,푏 represented in this 2푛 vector Because a multivector 푥 3,0,1 can be represented by 푥, we 푥 space as 푎,ì 푏ì : would like to represent the conjugation of a multivector with a #‰ normalized rotor 푅 ∈ SE(3), 푥 ↦→ 푅푥푅, as a matrix-vector product 푎푏 = 퐷(ì푎)푏.ì e   ì Apart from the clear performance improvements, the vector form 퐷 퐷(푅ì)푥 ì 푅˜ = 퐴푥.ì also allows easy implementation of other geometric algebra features such as grade selection, reversion, conjugation, etc.: With this carefully chosen basis, 퐴 reveals five familiar matrix rep- resentations of SE(3). To construct 퐴, we start with the rotor 푅: 1 0 0 0 1 0 0 0     푅 = 푎 + 푏e23 + 푐e31 + 푑e12 + 푒e01 + 푓 e02 + 푔e03 + ℎe0123,     0 −1 0 0  0 −1 0 0 ì   ì ì   ì 푥˜ :=   푥, 푥 :=  푥, . . . . and a general multivector 푥 as defined in eq. (43): 0 0 −1 0  0 0 −1 0         푥 = 푠 +푣 ì표 +푣 ì∞ + 퐵표 + 퐵∞ + 푡∞ì + 푡표ì + 푝. 0 0 0 −1 0 0 0 1      ì  ˜ì It is worth noting that 퐷(푥˜ì) = 퐷(ì푥)푇 , while many other operations By symbolically solving the linear system 퐴푥ì = 퐷 퐷(푅)푥 ì 푅 for 퐴, such as dualisation have no straightforward matrix equivalent. we find that the matrix representation of conjugation is givenby

14 Graded Symmetry Groups: Plane and Simple the matrix-vector product plane? In the matrix formulation this is a difficult question to an- swer, whereas using the multivector approach the answer is simply 1   푠      퐵 ∧ 푡.ì The GA formulation therefore offers both conceptual clarity      R0   푣ì표  and computational advantages over the matrix formulation.      ⊤     s R1  푣ì∞       R0  퐵  ì    표  11 CONCLUSION 퐴푥 =    , (44)  TRR  퐵∞     L’application des mêmes idées de The application of the same ideas    ì   Rt  푡∞  dualité peut s’étendre à la Mé- of duality can be extended to Me-      01   ì  canique. En effet, l’élément prim- chanics. Indeed, the primitive ele-    푡표      itif des corps auquel on applique ment of bodies to which the first  1  푝      d’abord les premiers principes de principles of this science are ap- cette science, est, comme dans plied is, as in ancient Geometry, where la Géométrie ancienne, le point the mathematical point. Are we " 2 2 2 2 # 푎 +푏 −푐 −푑 2(푎푑+푏푐) 2(−푎푐+푏푑) mathématique. Ne sommes-nous not permitted to think, now, that (− + ) 2− 2+ 2− 2 ( + ) R = 2 푎푑 푏푐 푎 푏 푐 푑 2 푎푏 푐푑 , pas autorisés à penser, main- by taking the plane for the ba- 2(푎푐+푏푑) 2(−푎푏+푐푑) 푎2−푏2−푐2+푑2 tenant, qu’en prenant le plan sic element, and no longer the    푐푔−푎푒−푏ℎ−푑 푓   푐푔+푎푒+푏ℎ−푑 푓  0 푡3 −푡2 pour l’élément de l’étendue, et point, we shall be led to other doc- T = −푡3 0 푡1 , t = 2 푑푒−푎푓 −푏푔−푐ℎ , s = 2 푑푒+푎푓 −푏푔+푐ℎ . 푡2 −푡1 0 푏푓 −푎푔−푐푒−푑ℎ 푏푓 +푎푔−푐푒+푑ℎ non plus le point, on sera conduit trines, making, as it were, a new à d’autres doctrines, faisant pour science? The matrix 퐴 is block diagonal, corresponding to the fact that con- ainsi dire une nouvelle science? jugation is a grade preserving operation. The block matrices on the Michel Chasles (1875, [4]) diagonal are 1 × 1, 4 × 4, 6 × 6, 4 × 4 and 1 × 1 dimensional, and are all homogeneous matrix representations of SE(3) acting on invari- Based on the results of this paper, we feel emboldened when ant vectorspaces of the corresponding dimension: 푠, 푣ì = 푣ì표 +푣 ì∞, we answer our confrère: not only is it permitted to take planes as 퐵 = 퐵표 + 퐵∞, 푡 ì = 푡표ì + 푡∞ì , and 푝 respectively. They are given by the basis elements, it is extremely fruitful. Only when vectors are " # associated with hyperplanes, can we develop intuitions about trans- R0 퐷1 (푅) = 퐷5 (푅) = 1, 퐷2 (푅) = , formations and elements of geometry which carry over to spaces of t⊤R1 any metric and number of dimensions, intuitions which in turn have " # " # been crucial to the development of the invariant decomposition. R0 Rt 퐷3 (푅) = , 퐷4 (푅) = . A plane based approach has been taken by geometers since time TRR 01 immemorial, but only in recent work by amongst others Jon Selig [23] and Charles Gunn [11] has it been recognized that planes map el- Firstly, the scalar and pseudoscalar transform under the trivial repre- egantly onto vectors in R , i.e. 3DPGA. The current work demon- sentation. Secondly, the matrix 퐷4 (푅) is the familiar 4 × 4 covariant 3,0,1 strates that this approach works more generally: vectors can be homogeneous representation of the Euclidean group acting on a 4D associated with reflections and/in hyperplanes for pseudo- space of homogeneous points: groups, or inversions and/in hyperspheres for the conformal group. " ′ # " #" # 푡∞ì Rt 푡∞ì Hyperplanes intersect to form geometric elements with decreas- ′ = . ing degrees of freedom, such as hyperlines, hyperpoints, etc. This 푡 ì 01 푡표ì 표 behavior is mirrored by the of vectors, which wedges Thirdly, the matrix 퐷2 (푅) is the 4 × 4 contravariant homogeneous vectors into bivectors, trivectors, etc., which makes their identifica- representation acting on a 4D vector space of homogeneous planes: tion natural. " # " #" # The composition of an even number of reflections led naturally 푣ì′ R0 푣ì 표 = 표 to Spin(푝, 푞, 푟) elements, which are generated by bivector elements ′ ⊤ . 푣ì∞ t R1 푣ì∞ of the Lie algebra 픰픭픦픫(푝, 푞, 푟). Because the geometric product elim- inates any identical reflections in the 2푘-reflection, it necessarily Lastly, the matrix 퐷3 (푅) is the 6 × 6 adjoint representation acting follows that the resulting rotor is always decomposable into at most on a 6D vector space of Plücker line coordinates [22]: 푘 mutually commuting orthogonal bireflections. The complemen- " ′ # " #" # tary statement in the Lie algebra 픰픭픦픫(푝, 푞, 푟), is that the generating 퐵표 R0 퐵표 = . bivector can be split into 푘 mutually commuting orthogonal simple 퐵′ TRR 퐵 ∞ ∞ bivectors. Additionally, the composition of 2푘 + 1 reflections can be These well known representations, represent the group action of decomposed into a commuting reflection and 2푘-reflection, which 푅 on the corresponding invariant vectorspaces, which are tradi- can then be decomposed further into 푘 commuting bireflections. tionally identified as the elements of geometry. The matrix 4 × 4 This insight led to the invariant decomposition: a novel algorithm representations to transform points and planes already require 16 to either split a bivector into mutually commuting orthogonal simple real numbers: the same as the entire multivector 푥. Additionally, bivectors (section6), or to split a rotor into mutually commuting how would we intersect a 6 dimensional line with a 4 dimensional orthogonal simple rotors (section 9.1).

15 Roelfs and De Keninck

Because simple bivectors square to scalars, simple rotors, as the [22] Jonathan Selig. 2006. Lie Groups and Lie Algebras in Robotics. Springer Netherlands, exponential of a simple bivector, follow a generalized Euler’s for- Dordrecht, 101–125. https://doi.org/10.1007/1-4020-2307-3_5 [23] J. M. Selig. 2000. Clifford algebra of points, lines and planes. Robotica 18 (2000), mula. Therefore, after the decomposition has been performed, the 545 – 556. exponential and logarithmic functions are no more complicated [24] Jayme Vaz, Jr. and Roldao da Rocha. 2016. An Introduction to Clifford Algebras and Spinors. OUP. https://doi.org/10.1093/acprof:oso/9780198782926.001.0001 than those of complex analysis (sections7 and 9.3 respectively). [25] S. Weinberg. 2005. The Quantum theory of fields. Vol. 1: Foundations. Cambridge The famous Mozzi-Chasles theorem is now understood to be a University Press, Cambridge. special case of the invariant decomposition, and it appears that [26] E. Wigner. 1939. On Unitary Representations of the Inhomogeneous Lorentz Group. Annals of Mathematics 40, 1 (1939), 149–204. https://doi.org/10.2307/ Michel Chasles’ suggestion that perhaps vectors should have been 1968551 identified with planes, not points, does indeed offer significant ad- vantages.

ACKNOWLEDGMENTS The authors would like to thank Dr. Ir. Leo Dorst for invaluable discussions about this research. The research of M. R. was supported by KU Leuven IF project C14/16/067.

REFERENCES [1] V. Bargmann. 1947. Irreducible Unitary Representations of the Lorentz Group. Annals of Mathematics 48, 3 (1947), 568–640. [2] Nicolas Bourbaki. 1989. Algebra I. Springer-Verlag, Berlin New York. [3] Michel Chasles. 1830. Note sur les propriétés générales du système de deux corps semblables entr’eux. Bulletin des Sciences Mathématiques, Astronomiques, Physiques et Chemiques 14 (1830), 321–326. [4] Michel Chasles. 1875. Aperçu historique sur l’origine et le développement des méthodes en géométrie, particulièrement de celles qui se rapportent à la géométrie moderne ; suivi d’un Mémoire de géométrie sur deux principes généraux de la science, la dualité et l’homographie. Gauthier-Villars (Paris). http://catalogue.bnf.fr/ark: /12148/cb30226316s [5] Paul Adrien Maurice Dirac. 1972. Projective Geometry, Origin of Quantum Equations. [6] C. Doran, D. Hestenes, F. Sommen, and N. Van Acker. 1993. Lie groups as spin groups. J. Math. Phys. 34, 8 (1993), 3642–3669. https://doi.org/10.1063/1.530050 arXiv:https://doi.org/10.1063/1.530050 [7] Chris Doran and Anthony Lasenby. 2003. Geometric Algebra for Physicists. Cam- bridge University Press, Cambridge. https://doi.org/10.1017/CBO9780511807497 [8] Leo Dorst. 2020. A Guided Tour to the Plane-Based Geometric Algebra PGA. [9] L. Dorst, D. Fontijne, and S. Mann. 2009. Geometric Algebra for Computer Science: An Object-Oriented Approach to Geometry. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA. [10] L. Dorst and R. Valkenburg. 2011. Square Root and Logarithm of Rotors in 3D Conformal Geometric Algebra Using Polar Decomposition. 81–104. https://doi.org/ 10.1007/978-0-85729-811-9_5 [11] Charles Gunn. 2011. Geometry, Kinematics, and Rigid Body Mechanics in Cayley- Klein Geometries. Ph.D. Dissertation. https://doi.org/10.14279/depositonce-3058 [12] Charles G. Gunn and Steven De Keninck. 2019. Geometric Algebra and Com- puter Graphics. In ACM SIGGRAPH 2019 Courses (Los Angeles, California) (SIG- GRAPH ’19). Association for Computing Machinery, New York, NY, USA, Article 12, 140 pages. https://doi.org/10.1145/3305366.3328099 [13] Brian Hall. 2003. Lie Groups, Lie Algebras, and Representations: An Elementary Introduction. Springer. [14] D. Hestenes and A. Lasenby. 2015. Space-time Algebra, second edition. Birkhäuser, Cham, Springer International Publishing Switzerland 2015. 1–102 pages. https: //doi.org/10.1007/978-3-319-18413-5 [15] David Hestenes and Garret Sobczyk. 1984. Clifford algebra to geometric calculus : a unified language for mathematics and physics. D. Reidel ; Distributed in the U.S.A. and Canada by Kluwer Academic Publishers, Dordrecht; Boston; Hingham, MA, U.S.A. [16] Gerald N. Hile and Pertti Lounesto. 1990. Matrix representations of Clifford algebras. Linear Algebra Appl. 128 (1990), 51–63. https://doi.org/10.1016/0024- 3795(90)90282-H [17] Giulio Mozzi. 1763. Discorso matematico sopra il rotamento momentaneo dei corpi. (1763). [18] J. Polchinski. 2007. String theory. Vol. 2: Superstring theory and beyond. Cambridge University Press. https://doi.org/10.1017/CBO9780511618123 [19] Ian Robertson Porteous. 1969. Topological geometry. Cambridge University Press, Cambridge. [20] Marcel Riesz. 1993. Clifford Numbers and Spinors (Chapters. I–IV) Springer Netherlands, Dordrecht, 1–196. https://doi.org/10.1007/978-94-017-1047-3_1 [21] Martin Roelfs. 2021. Geometric invariant decomposition of SU(3). arXiv:2102.11940 [math-ph]

16 Plane and Simple Cheat Sheet Geometric Algebra (§3) Pin groups & algebras (§5) Simple Rotor Exponential (§3.4) Group Isomorphisms (§2) p positive basis vectors n = p + q + r dimensional The familiar Orthogonal, Pseudo-Euclidean and Pin(p, q, r) Generalized Euler’s formula q negative basis vectors oriented reflection group R = eb = c(b) + s(b) Conformal groups are unorientated Pin groups: R , , r null basis vectors 2 , , / { } p q r reflection u = u 1, u = 1 O(p q) Pin(p q) 1 With λ = b2, the generalized trig functions are n = p + q + r dim. k 〈 〉 ± ± k-reflection K = ui Pin(p, q, r) k 1 ∈ 〈 〉 c(b) = cosh pλ i i {+1, 1, 0}, i j = j i. k B e e e e e e 2k-reflection ∏︀ R = uivi = e ∈ − − 1 (︁ )︁ B ∏︀spin(p, q, r) sinh pλ /pλ λ = 0 basis-blade product of basis vectors ∈ s(b) = b ⎧ 6 . ( + ) = = (︀ )︀ λ eij = eiej, eijk = eiejek 2k 1 -reflection P rR Rr ⎨⎪1 = 0 n , , , / { } n 1 2 with r = P 1 E(p q) Pin(p q 1) 1 1 1 1 2 〈 〉 normalize R ⎩⎪ R = R/ R ± , , k k 2 1 2 1 4 conjugation of X Pin(p q r) s or X Rpqr s ∈ 〈 〉 ∈ 1 + R R 0 3 1 3 3 1 8 with K Pin(p, q, r) : square root pR = 〈 〉 ≥ k ⟨︀ ⟩︀ {︃ < 4 1 4 6 4 1 16 ∈ 〈 〉 1 + R R 0 ( )ks ˜ − 〈 〉 5 1 5 10 10 5 1 32 X 1 KXK rotor x y R = py/x 7→ − → ... logarithm Ln R = pseudoscalar I = e1e2 en spin , , 2 The Lie algebra (p q r) R 2 rccosh ( R ) R > 0 spin , , 〈 〉 〈 〉 〈 〉2 k-blade product of k orthogonal vectors (p q r) 2 , , /{ } is a bivector algebra. ⎧ R 2 R = 0 Conf(p q) O(p+1 q+1) 1 〈 〉 〈 〉2 ⎪ rccos 2 < ± or outer product of k vectors = β ∧ ⎨ R 2 ( R ) R 0 , /{ , } simple bivector b u1 u2 〈 〉 〈 〉 〈 〉2 Pin(p+1 q+1) 1 i k-vector linear combination of k-blades 2 ± ± with b C Rotor Exponential (§7)⎩⎪ , n/2 ∈ vector = aiei bivector = aijeij b c bivector k B = Bijeij = bm B bi multivector ∑︀ sum of k-vectors∑︀ R = e = i=1 e ∑︁j>i ∑︁m=1 x = x + x 1 + x 2 + ... 1 generalized sine∏︀ s(B) = 2 R R 〈 〉 〈 〉 〈 〉 Invariant Decomposition (§6) 1 − where x g selects grade g ( ) = + 〈 〉 generalized cosine c B 2(︀R R)︀ / ̃︀ Matrix/Vector Representations (§11) versor product of invertible vectors Any bivector B can be split into k = n 2 generalized tangent t(B) = s(B(︀)/ c(B)︀) b c ̃︀ commuting simple bivectors bi. Define rotor R normalized versor of even grade 0 0 2 m Tangent Decomposition (§8) [ 1 0 ] e = 0 B 2m 1 0 i x reverse eiej ek ek ejei :=〈 〉 , = / . I = [ 0 1 ] ⎧ ··· ↔ ··· Wm r k 2 Given a rotor = 0 1 2 m! b c 1 0 Si ⎪[ 1 0 ] ei = +1 ˜ Re ˜ k k I0 = [ 0 -1 ] ⎪ pxx (xx) 0 λr λr 1 ... ⎨ 0 1 2 ̃︀ W0 + − W2 + + Wk [ -1 0 ] e = 1 norm x x = ⎧ ≥ i i R = (c(bi) + s(bi)) = R (1 + t(bi)), i r 1 r 2 k even − k k ⎪ ˜ Re ˜ < λ W1 + λ W3 + ... + Wk 1 ⎨p xx (xx) 0 ⎧ i − i − i=1 〈 〉 i=1 ⎪ − ∏︁ ∏︁ ( 1) times⎪ (n i) times − bi = ⎪ i ⎩ − ⎪ λr + λr 1 + ... + the simple bivectors (bi) are found from the − x x = x / x ⎪ i W1 i − W3 Wk t normalize ⎩⎪ ⎨⎪ k odd ...... k k r r 1 Ei = I I Si I0 I0 λ W0 + λ − W2 + ... + Wk 1 Invariant Decomposition by substituting i i − ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⎪ i ⏞ ⏟ ⏞ ⏟ Products (§3) ⎪ n, , ,..., ,..., .. ⎪ Wm = R . Γ = {I2 E1 E2 E1E2 E1E2 En} where the⎩⎪λi C are the unique roots of 2m ∈ 〈 〉 Geometric product of k-vector x and l-vector y k Clifford representation: ... 2 λ k m Factorization & Logarithm (§10) xy = xy k9l + xy k9l+2 + + xy k+l 0 = Wm ( i) − i i T i | | | | 0 − C = OΓ O where Oij = Γ 〈 〉 〈 〉 〈 〉 m=0 ⟨ ⟩ 2 j0 ∑︁ R is a 2k-reflection. In ascending order of t(bi) : inner x y = xy k l for <6D these are | − | · 〈 〉 first k 1 factors Ri = 1 + t(bi) Further Reading outer x ∧ y = xy k+l 1 2 2 λ1,2 B B (B B) (B ∧ B) th − k 1 1 〈 〉 2 k factor Rk = R / − Ri commutator x y = (xy yx) · ± · − 1 i=1 M. Roelfs & S. De Keninck, Graded Symmetry 2 (︁ √︀ λ , + ( ∧ ))︁ × − 1 2 2 B B (2k + 1) P = rR = Rr with r = P , -reflection ∏︀ Groups: Plane and Simple, 2021. b1 2 k 〈 〉 B Ln Ln logarithm R = i=1 Ri ∑︀ 1/1