Stephane Breuils

Kanta Tachibana

Eckhard Hitzer

New Applications of Clifford's Geometric Algebra

Keywords: Mathematics Subject Classification (2010). Primary 15A66; Secondary 68T01, 70E60, 00A79, 52-06 Clifford's geometric algebra, engineering applications, neural networks, signal and image processing, encryption, implementations, discrete mathematics, surface representation

The new applications of Clifford's geometric algebra surveyed in this paper include kinematics and robotics, computer graphics and animation, neural networks and pattern recognition, signal and image processing, applications of versors and orthogonal transformations, spinors and matrices, applied geometric calculus, physics, geometric algebra software and implementations, applications to discrete mathematics and topology, geometry and geographic information systems, encryption, and the representation of higher order curves and surfaces.

Introduction

In the decade since the geometric algebra (GA) application survey [START_REF] Hitzer | Applications of Clifford's Geometric Algebra[END_REF], a wealth of new applications 1 has been developed. We take this as an occasion to write a new survey based on the proceedings of the conference series Applied Geometric Algebra for Computer Science and Engineering of the years 2015 and 2018. Furthermore, we also survey applications annually presented in the international conference workshops Empowering Novel Geometric Algebra for Graphics and Engineering in the years 2016 to 2020 2 . Though the above mentioned sources provide the core material for our survey, we freely add further applications known to us. For lack of space this survey is necessarily incomplete, but we hope to show a representative spectrum of geometric algebra applications that emerged during the last decade.

Geometric algebra 3 has become popularly used in applications dealing with geometry. This framework allows to reformulate and redefine problems involving geometry in a more intuitive and general way. Geometric algebra was defined thanks to the work of W. K. Clifford [START_REF] Clifford | Applications of Grassmann's Extensive Algebra[END_REF] to unify and generalize Grassmann algebra [START_REF] Grassmann | Extension Theory (Die Ausdehnungslehre von 1862[END_REF] and W.R. Hamilton's quaternions [START_REF] Hamilton | Elements of Quaternions[END_REF] into a universal algebraic framework by adding the inner product to H. G. Grassmann's outer product 4 .

One of the geometric algebras that is often applied is conformal geometric algebra (CGA). It became better known through [START_REF] Hestenes | New Algebraic Tools for Classical Geometry[END_REF], is well described and illustrated in [START_REF] Dorst | Geometric Algebra for Computer Science: An Object-Oriented Approach to Geometry[END_REF], and in a brief illustrated form in [START_REF] Hitzer | Method for the General Evaluation and Control of Pose, Molecular Conformation, Tracking, and the Like[END_REF]. Here we only present Fig. 1 illustrating the definition of some geometric objects from control points in CGA.

This paper first surveys applications of GA in kinematics and robotics in Section 2. Section 3 continues with applications of GA in computer graphics and animation, while Section 4 surveys GA based neural networks and pattern recognition. Next, Section 5 provides an overview of applications of GA to signal and image processing. Then, Section 6 treats application relevant versors, their factorization and related orthogonal transformations. Section 7 surveys the topics Clifford algebra, spinors and matrices, followed by Section 8 on applications of geometric calculus. This is followed by Section 9 on GA applied to physics, Section 10 on software implementations, Section 11 on discrete mathematics, topology and geographic information systems, and finally Section 12 on the representation of and computation with higher order curves and surfaces. The paper ends with conclusions and an extensive list of references.

Applications in Kinematics and Robotics

The control function of autonomous vehicles relates to their environment by including the motion of actuators, motors and servo motors. Vehicles moving

p 1 • p 2 • p 3 • p 1 • p 2 • p 3 • p 4 • Circle: C = p 1 ∧ p 2 ∧ p 3 Sphere: S = p 1 ∧ p 2 ∧ p 3 ∧ p 4 p 1 • p 2 • p 1 p 2 p 3 Line: L = p 1 ∧ p 2 ∧ e ∞ Plane π = p 1 ∧ p 2 ∧ p 3 ∧ e ∞ Figure 1
. Definition of some geometric primitives from control points in CGA.

in three-dimensional space need the solution of geometric equations of motion between position, attitude, their velocities, angular velocities, and external forces and torques. Geometric computation based on CGA has successfully been proposed for snake robots, a trident snake robot [START_REF] Hrdina | CGA-based robotic snake control[END_REF], the Bennett link [START_REF] Chai | Analytical mobility analysis of Bennett linkage using geometric algebra[END_REF], bipedal walking robots [START_REF] Campos-Macias | Inverse kinematics for a 6-DOF walking humanoid robot leg[END_REF], robot arms [START_REF] Tordal | Efficient implementation of inverse kinematics on a 6-dof industrial robot using conformal geometric algebra[END_REF], 3-RPR parallel manipulators [START_REF] Yao | Singularity analysis of 3-RPR parallel manipulators using geometric algebra[END_REF], and Delta robots [START_REF] Hadfield | The Forward and Inverse Kinematics of a Delta Robot[END_REF].

An n-link structure (snake type robot) in the plane can be controlled by CGA, see [START_REF] Hrdina | CGA-based robotic snake control[END_REF]. Applying the yaw torque of the joint, the link moves in a plane. The implementation of high-speed geometric calculation using GA specialized for the plane geometry of a snake type robot can be found in [START_REF] Hildenbrand | Local controllability of snake robots based on CRA, theory and practice[END_REF][START_REF] Tichy | Application of 2D PGA as an Subalgebra of CRA in Robotics[END_REF]. [START_REF] Tordal | Efficient implementation of inverse kinematics on a 6-dof industrial robot using conformal geometric algebra[END_REF] efficiently implements the inverse kinematics calculation for an industrial robot, a robot arm with three degrees of freedom at the shoulder, one degree of freedom for the elbow, and two degrees of freedom for the wrist. It runs twice as fast as matrix algebra and 45 times faster than the robot maker's own implementation. A bipedal walking robot with three degrees of freedom in the hip joint, one degree of freedom in the knee, and two degrees of freedom in the ankle is controlled in [START_REF] Campos-Macias | Inverse kinematics for a 6-DOF walking humanoid robot leg[END_REF]. While balancing the weight, the authors use CGA to describe and solve the equation of motion during walking.

The posture of a Bennett link in [START_REF] Chai | Analytical mobility analysis of Bennett linkage using geometric algebra[END_REF] is described as the angle of a line segment in a plane and the angle between planes. Efficient calculation is performed in geometric algebra. It is possible to change the length of the links that extend from three fixed ends, and change the position and orientation of the triangular body that holds the other end. In [START_REF] Yao | Singularity analysis of 3-RPR parallel manipulators using geometric algebra[END_REF] the resulting singularity is analyzed using puller coordinates that describe plane geometry with GA.

CGA is also used in [START_REF] Hadfield | The Forward and Inverse Kinematics of a Delta Robot[END_REF] to geometrically calculate the kinematics of a delta robot's parts, which is a popular industrial type of robot.

Applications in Computer Graphics and Animation

In the field of computer graphics (CG) 5 and animation, there are many opportunities where Conformal Geometric Algebra is used. In the past, it was necessary to combine vectors, rotation matrices (sometimes using quaternions instead), and one dimension higher translation matrices, and convert between different formalisms, but with CGA, translational motion, rotational motion, and dilation can all be expressed in a unified manner. Furthermore, highspeed calculation is very important for creating CG with many vertices, see [START_REF] Papaefthymiou | An inclusive Conformal Geometric Algebra GPU animation interpolation and deformation algorithm[END_REF].

In [START_REF] Papaefthymiou | A conformal geometric algebra code generator comparison for virtual character simulation in mixed reality[END_REF], execution and processing speed of software that realizes CGA, is compared, executing animation blending with Gaigen, Libvsr, and Gaalop. Papagiannakis [START_REF] Papagiannakis | Geometric algebra rotors for skinned character animation blending[END_REF] shows that (automatically generated) computer implementations of GA can perform at a faster level compared to standard (dual) quaternion geometry implementations for real-time skinned character animation blending. Papagiannakis et al. [START_REF] Papagiannakis | glGA: an OpenGL Geometric Application Framework for a Modern, Shader-based Computer Graphics Curriculum[END_REF] present glGA, as an OpenGL GA framework for a modern, shader-based computer graphics curriculum. glGA runs on all major desktop and mobile platforms and allows, e.g., the creation of an augmented reality environment, in which life-size, virtual characters exist in a marker-less real scene. Aristidou [START_REF] Aristidou | Hand tracking with physiological constraints[END_REF] applies a GA based inverse kinematics solver to control the postures of a hand (based on minimal optical motion capture) subject to physiological constraints that restrict the allowed movements to a feasible and natural set. The result are smooth and biomechanically correct movements, with low processing time, i.e. effective real-time hand motion tracking and reconstruction. Belon et al. in [START_REF] Belon | Practical geometric modeling using geometric algebra motors[END_REF] implemented a GPU-based calculation that smoothly interpolates the normal information of the CG model represented by vertices and faces, and showed that even a model with millions of vertices can be calculated with CGA at a practical speed. Yuan et al. in [START_REF] Yuan | Feature preserving multiresolution subdivision and simplification of point clouds: A conformal geometric algebra approach[END_REF] proposed a CGA based method to extract only geometric features by performing k-means clustering on a large amount of point cloud data.

GA-Based Neural Network and Pattern Recognition

Complex numbers, quaternions and generally Clifford's geometric algebras can be used as mathematical framework for neural networks. Historically, inner-and vector product in three dimensions originated from the scalar and vector parts of the quaternion product. In aerospace engineering and color image processing quaternions are already standard engineering tools. Thus naturally after complex numbers, they were the first hypercomplex numbers applied in neural networks.

Quaternion Neural Networks

The 2020 survey [START_REF] Parcollet | A survey of quaternion neural networks[END_REF], based on 94 references, provides a review of past and recent research on quaternion neural networks, with state-of-the-art performances while reducing the number of neural parameters, and with applications in different domains, like image, speech and signal processing. The paper details methods, algorithms and applications for each quaternion-valued neural network proposed. Another 2020 survey [START_REF] Garcia-Retuerta | Quaternion Neural Networks: State-of-the-Art and Research Challenges[END_REF] of quaternion applications in neural networks, aims to provide a better understanding of the design challenges of quaternion neural networks and identify important research directions in this increasingly important area for artificial vision and artificial intelligence. In [START_REF] Gaudet | Deep Quaternion Networks[END_REF] the authors explore the benefits of generalizing neural networks to quaternions and provide the architecture components needed to build deep quaternion networks. They review quaternion convolutions, developing a novel quaternion weight initialization scheme, and novel algorithms for quaternion batch-normalization. A number of standard tests in classification and segmentation are performed with improved performance and fewer parameters.

Recurrent quaternionic neural networks are researched in [START_REF] Liu | Constrained Quaternion-Variable Convex Optimization: A Quaternion-Valued Recurrent Neural Network Approach[END_REF] with focus on constrained quaternion-variable convex quaternion gradient-based optimization both theoretically and with numerical simulations. The recurrent network QuaterNet of [START_REF] Pavllo | QuaterNet: A Quaternion-based Recurrent Model for Human Motion[END_REF] represents rotations with quaternions and its loss function performs forward kinematics on a skeleton to penalize absolute position errors instead of angle errors. Error accumulation along the kinematic chain, as well as discontinuities when using Euler angle or exponential map parameterizations are avoided. On short-term predictions, QuaterNet improves the state-of-the-art quantitatively. For long-term generation, the approach is qualitatively realistic.

In [START_REF] Comminiello | Quaternion Convolutional Neural Networks for Detection and Localization of 3D Sound Events[END_REF] the problem of localizing and detecting sound events is addressed in the spatial sound field by using quaternion-valued data processing. In particular, the spherical harmonic components of the signals captured by a first-order ambisonic microphone are processed by using a quaternion convolutional neural network. Experiments show improved accuracy in 3D sound event detection and localization, exploiting the correlated nature of ambisonic signals. For natural language processing (NLP) tasks [START_REF] Tay | Lightweight and efficient neural natural language processing with quaternion networks[END_REF] proposes a series of lightweight and memory efficient neural architectures (e.g. Quaternion Attention Model and Quaternion Transformer). The models exploit computation using quaternion algebra and hypercomplex spaces, enabling not only expressive inter-component interactions but also significantly (by 75%) reduced parameter size, verified by extensive experiments. Parameterizing hypercomplex multiplications is proposed in [START_REF] Zhang | Beyond Fully-Connected Layers with Quaternions: Parametrization of Hypercomplex Multiplications with 1/n Parameters[END_REF], allowing models to learn multiplication rules from data. As a result, the method subsumes the quaternion product, and learns to operate on arbitrary nD hypercomplex spaces, providing architectural flexibility using arbitrarily 1/n learnable parameters compared with the fully-connected layer counterpart. Experiments show flexibility and effectiveness in applications to LSTM and transformer models on natural language inference, machine translation, text style transfer, and subject verb agreement.

To remove self-feedbacks, [START_REF] Kobayashi | Quaternion Projection Rule for Rotor Hopfield Neural Networks[END_REF] proposes a quaternion projection rule for rotor Hopfield neural networks. Using computer simulations, improved noise tolerance is shown. In [START_REF] Kobayashi | Quaternion-Valued Twin-Multistate Hopfield Neural Networks With Dual Connections[END_REF] dual connections (DCs) are introduced to twin-multistate quaternion Hopfield neural networks (QHNNs). Computer simulations investigate the noise tolerance. The QHNNs with DCs were weak against an increase in the number of training patterns, but robust against increased resolution factors. Hybrid quaternionic Hopfield neural networks [START_REF] Kobayashi | Hybrid quaternionic Hopfield neural network[END_REF] have both orders of quaternion multiplication. Using computer simulations, these networks outperform conventional quaternionic Hopfield neural networks in noise tolerance.

An investigation into the global stability of quaternion-valued neural networks (QVNNs) with time-varying delays is presented in [START_REF] Liu | Stability Analysis of Quaternion-Valued Neural Networks: Decomposition and Direct Approaches[END_REF]. The Lyapunov function method, the Lyapunov-Krasovskii functional, and the linear matrix inequality (LMI) ensure global µ-stability and power stability of the delayed QVNN. Numerical examples show feasibility and effectiveness.

Geometric Algebra Neural Networks

Geometric algebra (or Clifford) neural networks extend hypercomplex neural networks from quaternions to arbitrarily high dimensions. Several works look into existence, uniqueness and global stability questions of GA neural networks, often including numerical examples and numerical simulations. For example, [START_REF] Li | Existence and global exponential stability of antiperiodic solution for Clifford-valued inertial Cohen-Grossberg neural networks with delays[END_REF] investigates Clifford-valued inertial Cohen-Grossberg neural networks with delays, while [START_REF] Li | Existence and Global Exponential Stability of Pseudo Almost Periodic Solution for Clifford-Valued Neutral High-Order Hopfield Neural Networks With Leakage Delays[END_REF] researches pseudo almost periodic solutions for Clifford-valued neutral high-order Hopfield neural networks with leakage delays, and [START_REF] Rajchakit | Existence, uniqueness and global stability of Clifford-valued neutral-type neural networks with time delays[END_REF] focuses on Clifford-valued neutral-type neural networks with time delays.

Furthermore, [START_REF] Shen | Weighted pseudo almost periodic solutions for Cliffordvalued neutral-type neural networks with leakage delays on time scales[END_REF] studies weighted pseudo almost periodic solutions for Clifford-valued neutral-type neural networks with leakage delays on time scales, and [START_REF] Li | On µ-Pseudo Almost Periodic Solutions for Clifford-Valued Neutral Type Neural Networks With Delays in the Leakage Term[END_REF] studies µ-pseudo almost periodic solutions for Clifford-valued neutral type neural networks with delays in the leakage term. Moreover, [START_REF] Aouiti | Dynamics behavior for second-order neutral Clifford differential equations: inertial neural networks with mixed delays[END_REF] addresses the dynamics behavior for second-order neutral Clifford differential equations using inertial neural networks with mixed delays. In [START_REF] Valle | Hypercomplex-valued recurrent correlation neural networks[END_REF] hypercomplex-valued recurrent correlation neural networks are extended to include quaternions and octonions, and applied as associative memories designed for the storage and recall of gray-scale images.

A synthesis of complex-and hyperbolic-valued Hopfield neural networks undertaken in [START_REF] Kobayashi | Synthesis of complex-and hyperbolic-valued Hopfield neural networks[END_REF], improves noise tolerance. Improved convergence, better noise tolerance and faster recall is achieved with hyperbolic-valued Hopfield neural networks in hybrid mode, that is, asynchronous mode after synchronous mode [START_REF] Kobayashi | Hyperbolic-Valued Hopfield Neural Networks in Hybrid Mode[END_REF]. The conventional projection rule is employed in synchronous mode, and the noise robust projection rule is employed in asynchronous mode.

Signal and Image Processing

Clifford's geometric algebra provides a natural intuitive geometric framework 6 for holistic non-marginal signal and (color) image processing.

Quaternionic Signal Processing

In [START_REF] Hitzer | General two-sided quaternion Fourier transform, convolution and Mustard convolution[END_REF] the general two-sided quaternion Fourier transform (QFT) [START_REF] Hitzer | Quaternion Fourier Transform on Quaternion Fields and Generalizations[END_REF][START_REF] Hitzer | Directional Uncertainty Principle for Quaternion Fourier Transforms[END_REF][START_REF] Hitzer | The orthogonal 2D planes split of quaternions and steerable quaternion Fourier transformations[END_REF] is applied, and the classical convolution of quaternion-valued signals over R 2 with the Mustard convolution [START_REF] Mustard | Fractional convolution[END_REF] are related. A Mustard convolution can be expressed in the spectral domain as the point wise product of the QFTs of the factor functions. In full generality is the classical convolution of quaternion signals expressed in terms of finite linear combinations of Mustard convolutions, and vice versa the Mustard convolution of quaternion signals in terms of finite linear combinations of classical convolutions. This approach is generalized to Clifford algebra valued signals in [START_REF] Hitzer | General steerable two-sided Clifford Fourier transform, convolution and Mustard convolution[END_REF]. In [START_REF] Hitzer | Quaternionic Wiener-Khinchine theorems and spectral representation of convolution with steerable two-sided quaternion Fourier transform[END_REF] the QFT serves to obtain Wiener-Khinchine theorems for the cross-correlation and for the auto-correlation of quaternion signals, and a new four term spectral representation for their convolution. A generalization to Clifford algebra valued signals can be found in [START_REF] Hitzer | General one-sided Clifford Fourier transform, convolution products in the spatial and frequency domains, and auto-correlation theorems[END_REF].

Prolate spheroidal wave functions are associated with the quaternionic Fourier transform in [START_REF] Zou | Prolate spheroidal wave functions associated with the quaternionic Fourier transform Math[END_REF]. A fundamental problem in tele-communication and signal processing is finding the energy distribution of signals in both time and frequency domains. Therefore, the quaternionic signal whose timefrequency energy distribution is most concentrated in a given time-frequency domain needs to be found. A new kind of quaternionic signals whose energy concentration is maximal in both time and frequency under the quaternionic Fourier transform [START_REF] Hitzer | Quaternion Fourier Transform on Quaternion Fields and Generalizations[END_REF][START_REF] Hitzer | Directional Uncertainty Principle for Quaternion Fourier Transforms[END_REF][START_REF] Hitzer | The orthogonal 2D planes split of quaternions and steerable quaternion Fourier transformations[END_REF] is studied. The new signals are generalizations of classical prolate spheroidal wave functions to a quaternionic space, and are called quaternionic prolate spheroidal wave functions. Their definition and fundamental properties are presented and it is shown that they can reach extremal cases within the energy concentration problem both from theoretical and experimental viewpoints. The qualities of the results derived can be widely applied to four-dimensional valued problems. In particular, these functions provide an effective method for band-limited quaternionic signals relying on extrapolation.

Generalized sampling expansions associated with quaternion Fourier transform are developed in [START_REF] Cheng | Generalized sampling expansions associated with quaternion Fourier transform[END_REF]. A motivation is that quaternion-valued signals along with the quaternion Fourier transform [START_REF] Hitzer | Quaternion Fourier Transform on Quaternion Fields and Generalizations[END_REF][START_REF] Hitzer | Directional Uncertainty Principle for Quaternion Fourier Transforms[END_REF][START_REF] Hitzer | The orthogonal 2D planes split of quaternions and steerable quaternion Fourier transformations[END_REF] provide an effective framework for vector-valued signal and image processing. However, the sampling theory of quaternion-valued signals had so far not been well developed. The authors therefore present generalized sampling expansions associated with the QFT by using generalized translations and convolution. They show that σ-band-limited quaternion-valued signals, in the QFT sense, can be reconstructed from the samples of output signals of M -linear systems based on the QFT. Furthermore, the quaternion linear canonical transform is a generalization of the QFT with six parameters. Using the relationship with the QFT, the sampling formula for σ-band-limited quaternion-valued signals in the quaternion linear canonical transform sense, is derived. Examples are given for illustration.

Image and Color Image Processing

In [START_REF] Hrdina | Fisheye correction by CGA non-linear transformation[END_REF] a fisheye lense correction is developed based on non-linear transformations expressed in conformal geometric algebra (CGA) Cl(4, 1). The non-linear image transformation is achieved exclusively by means of CGA elements and operations. The correspondence between classical and CGA fisheye correction algorithms is shown, i.e. the proportionality of classical model results with the new CGA algorithm and exact formulas are given in terms of CGA. Consequently, the geometric construction in CGA allows to universally determine the inverse model.

Geometric algebras for uniform color spaces are studied in [START_REF] Hrdina | Geometric algebras for uniform color spaces[END_REF]. The advantages and disadvantages of specific geometric algebras and related practical implementations in colorimetry are addressed. The color space CIEL * a * b * is endowed with Euclidean metric, the neighborhood of a point is therefore a sphere, and the choice of conformal geometric algebra Cl(4, 1) becomes thus natural. For the color space CM C(l : c), the neighborhood is an ellipsoid, therefore quadric geometric algebra [START_REF] Hitzer | Three-Dimensional Quadrics in Conformal Geometric Algebras and Their Versor Transformations[END_REF][START_REF] Hitzer | Foundations of Conic Conformal Geometric Algebra and Compact Versors for Rotation, Translation and Scaling[END_REF][START_REF] Hrdina | Geometric algebra for conics[END_REF] is chosen for linearizing the metric by means of the scalar product. Distance problems in color spaces with these particular geometric algebras applied are considered.

A hardware implementation for color edge detection using Prewittinspired filters based on geometric algebra is considered in [START_REF] Orouji | A Hardware Implementation for Color Edge Detection Using Prewitt-Inspired Filters Based on Geometric Algebra[END_REF]. Motivation comes from geometric algebra (GA) as a powerful mathematical tool that offers intuitive solutions for image-processing problems, including color edge detection. Rotor-based and Prewitt-inspired Sangwine (RBS and PIS) filters [START_REF] Ell | Quaternion Fourier Transforms for Signal and Image Processing[END_REF] are regarded to be amongst the most efficient algorithms based on GA operators for solving color edge detection problems. Algorithms in the GA framework can have enormous computational loads that limit generalpurpose processor ability to execute them in reasonable time. Recently, some specialized hardware architectures, called full-hardware implementations, are proposed. These architectures, such as the ConformalALU co-processor, are able to execute GA algorithms in acceptable time with moderate use of computational resources. So far, all color edge detection hardwares in any GA framework exploited RBS filters. Nevertheless, [START_REF] Orouji | A Hardware Implementation for Color Edge Detection Using Prewitt-Inspired Filters Based on Geometric Algebra[END_REF] presents a full-hardware architecture for efficient execution of PIS filters. Importantly, PIS filters consume less computational resources and are faster to execute. For comparison, the hardware obtained with the Gaalop pre-compiler [START_REF] Hildenbrand | Gaalop -High Performance Parallel Computing Based on Conformal Geometric Algebra[END_REF] uses twice as much resources with the same speed as the newly proposed hardware. As evidence of faster operation, the proposed hardware is shown to be able to execute an edge detection algorithm almost 315 times faster than a GA co-processor, while using only 2.5 times of its resources.

Signal Processing Theory in Quaternion-and Geometric Algebra

An overview of new application relevant developments in the field of Clifford Fourier transforms (CFT) has been given in [START_REF] Hitzer | New Developments in Clifford Fourier Transforms[END_REF]. In [START_REF] Hitzer | The Quaternion Domain Fourier Transform and its Properties[END_REF] a natural definition is chosen for a quaternion Fourier transform operating on quaternion valued signals over quaternion domains. This quaternion domain Fourier transform (QDFT) transforms quaternion valued signals (for example electromagnetic scalar-vector potentials, color data, space-time data, etc.) defined over a quaternion domain (space-time or other 4D domains) from a quaternion position space to a quaternion frequency space. It uses the full potential provided by hypercomplex algebra in higher dimensions and may moreover be useful for solving quaternion partial differential equations or functional equations, and in crystallographic texture analysis. The QDFT is defined and its main properties are analyzed, including quaternion dilation, modulation and shift properties, Plancherel and Parseval identities, covariance under orthogonal transformations, transformations of coordinate polynomials and differential operator polynomials, transformations of derivative and Dirac derivative operators, as well as signal width related to band width uncertainty relationships. In [START_REF] Bujack | Demystification of the Geometric Fourier Transforms and Resulting Convolution Theorems[END_REF] many application relevant Clifford Fourier transforms are shown to be separable and decomposable into sums of real valued transforms with constant multivector factors. This fact eases their interpretation, their analysis, implementation and application.

Regarding signal processing theory, a basis-free solution to the Sylvester equation in geometric algebra is derived in [START_REF] Shirokov | On Basis-Free Solution to Sylvester Equation in Geometric Algebra[END_REF]. Note that the Sylvester equation and its particular case, the Lyapunov equation, are widely used in image processing, control theory, stability analysis, signal processing, model reduction, and many more. [START_REF] Shirokov | On Basis-Free Solution to Sylvester Equation in Geometric Algebra[END_REF] presents a basis-free solution to the Sylvester equation in geometric algebras of arbitrary dimension. The basis-free solutions involve only the elementary operations of geometric product, summation, and conjugation. The results can easily be implemented for numerical and symbolic computation, e.g. in MATLAB with [START_REF] Ab Lamowicz | CLIFFORD -A Maple Package for Clifford Algebra Computations with Bigebra, SchurFkt, GfG -Groebner for Grassmann, Cliplus, Define, GTP, Octonion, SP, SymGroupAlgebra, and code support[END_REF][START_REF] Sangwine | Clifford Multivector Toolbox (for MATLAB) 2015-2016[END_REF][START_REF] Sangwine | Clifford Multivector Toolbox (for MATLAB)[END_REF].

In [START_REF] Simsek | Centrohermitian and Skew-Centrohermitian Solutions to the Minimum Residual and Matrix Nearness Problems of the Quaternion Matrix Equation (AXB, DXE) = (C, F )[END_REF] are studied centrohermitian and skew-centrohermitian solutions to the minimum residual and matrix nearness problems of a general quaternion matrix equation. The precise solutions of the minimum residual and matrix nearness problems of the quaternion matrix equation (AXB, DXE) = (C, F ) are established for centrohermitian and skew-centrohermitian matrices, where X is an unknown quaternion matrix and A, B, C, D, E, and F are known quaternion matrices of suitable matching sizes. Moreover, an algorithm to get the solutions of the problem considered is provided, and a numerical example is also given. The implementation of this algorithm for numerical computations in MATLAB is, e.g., possible with [START_REF] Sangwine | Quaternion and octonion toolbox for Matlab[END_REF].

Also on the theoretical side, quaternionic Laplace transforms are developed as a new approach in solving linear quaternion differential equations in [START_REF] Cai | Laplace transform: a new approach in solving linear quaternion differential equations[END_REF]. The theory of real quaternion differential equations has recently received more attention, but significant challenges still remain due to their non-commutativity structure. They have numerous applications throughout engineering and physics. Specifically, the solution problem of a quaternion differential equation is transformed to a quaternion algebra problem. The Laplace transform makes solving linear ODEs and the related initial value problems much easier. It has two major advantages over previous methods discussed in the literature: The corresponding initial value problems can be solved without first determining a general solution, and more importantly, a particularly powerful feature of this method is the use of Heaviside functions. This helps solving problems, which are represented in terms of complicated quaternionic periodic functions.

Versors, Their Factorization and Orthogonal Transformations

Versors (or Lipschitzian elements) in a Clifford algebra and geometric algebra are geometric products of vectors [START_REF] Lounesto | Clifford Algebras and Spinors[END_REF]. In geometric algebras, versors generally define geometric transformations [START_REF] Hitzer | Introduction to Clifford's Geometric Algebra[END_REF], e.g., rotations, all symmetry transformations of crystal cells [START_REF] Hestenes | Point Groups and Space Groups in Geometric Algebra[END_REF][START_REF] Hitzer | Interactive 3D Space Group Visualization with CLUCalc and the Clifford Geometric Algebra Description of Space Groups[END_REF], and all conformal transformations in conformal geometric algebra [START_REF] Hestenes | New Algebraic Tools for Classical Geometry[END_REF][START_REF] Hitzer | Method for the General Evaluation and Control of Pose, Molecular Conformation, Tracking, and the Like[END_REF]. Their treatment and in particular their factorization is therefore of highest practical interest.

In [START_REF] Helmstetter | Factorization of Lipschitzian Elements[END_REF] a Lipschitzian element a is given in a Clifford algebra Cl(V, q) associated with vector space V over a field K that contains at least three scalars. It is proven that, if a is not in the subalgebra generated by a totally isotropic subspace of V , then it is a product of linearly independent vectors of V . An effective algorithm is proposed to decompose a into such a product of vectors, and can be implemented in software like [START_REF] Ab Lamowicz | CLIFFORD -A Maple Package for Clifford Algebra Computations with Bigebra, SchurFkt, GfG -Groebner for Grassmann, Cliplus, Define, GTP, Octonion, SP, SymGroupAlgebra, and code support[END_REF][START_REF] Sangwine | Clifford Multivector Toolbox (for MATLAB) 2015-2016[END_REF][START_REF] Sangwine | Clifford Multivector Toolbox (for MATLAB)[END_REF].

A Cayley factorization of four-dimensional rotations and its applications is presented in [START_REF] Perez-Gracia | On Cayley's Factorization of 4D Rotations and Applications[END_REF]. Note that every four-dimensional rotation can be decomposed into (commutative) left-and right-isoclinic rotations. This decomposition, known as Cayley factorization of four-dimensional rotations, can be performed using the Elfrinkhof-Rosen method. In this paper, a more straightforward alternative approach is presented using the corresponding orthogonal subspaces, for which orthogonal bases can be defined. This yields easy formulations, both in the space of 4 × 4 real orthogonal matrices representing fourdimensional rotations as well as in the Clifford algebra Cl(4, 0, 0) = Cl(4, 0). Cayley factorization has many important applications. It can be used to easily transform rotations represented using matrix algebra to various Clifford algebras. As a practical application of the proposed method, it is shown how Cayley factorization can be used to efficiently compute the screw parameters of three-dimensional rigid-body transformations. An implementation is, e.g., again possible using [START_REF] Ab Lamowicz | CLIFFORD -A Maple Package for Clifford Algebra Computations with Bigebra, SchurFkt, GfG -Groebner for Grassmann, Cliplus, Define, GTP, Octonion, SP, SymGroupAlgebra, and code support[END_REF][START_REF] Sangwine | Clifford Multivector Toolbox (for MATLAB) 2015-2016[END_REF][START_REF] Sangwine | Clifford Multivector Toolbox (for MATLAB)[END_REF].

Another application of Cayley factorization to the orthonormalization of noisy rotation matrices is shown in [START_REF] Sarabandi | On Cayley's Factorization with an Application to the Orthonormalization of Noisy Rotation Matrices[END_REF]. Cayley factorization, directly provides the double quaternion representation of rotations in four dimensions. This factorization can be performed without divisions, thus avoiding the common numerical issues attributed to the computation of quaternions from rotation matrices. In this paper, it is shown how Cayley factorization is particularly useful, when specialized to three dimensions, to re-orthonormalize a noisy rotation matrix by converting it to quaternion form and then obtaining back the corresponding proper rotation matrix. This re-orthonormalization method is commonly implemented using the Shepperd-Markley method, but the method derived here is shown to outperform it by returning results closer to those obtained using the singular value decomposition which are known to be optimal in terms of the Frobenius norm. Suitable for implementations in MATLAB is, e.g., the package described in [START_REF] Sangwine | Quaternion and octonion toolbox for Matlab[END_REF].

Versor transformations of conics are described in [START_REF] Hitzer | Foundations of Conic Conformal Geometric Algebra and Compact Versors for Rotation, Translation and Scaling[END_REF][START_REF] Hrdina | Geometric algebra for conics[END_REF], and versor transformations of quadrics in [START_REF] Hitzer | Three-Dimensional Quadrics in Conformal Geometric Algebras and Their Versor Transformations[END_REF].

In [START_REF] Roelfs | Graded Symmetry Groups: Plane and Simple[END_REF] it is observed, that the symmetries described by pin groups are the result of combining a finite number of discrete reflections in (hyper)planes. It is shown how geometric algebra provides a picture complementary to matrix Lie algebra, while retaining information about the number of reflections in a transformation. This imposes a (previously hidden) graded structure on Lie groups. This graded structure enables to show an invariant decomposition theorem: any composition of k linearly independent reflections can be decomposed into k/2 commuting factors, each the product of at most two reflections. Examples are given from Lorentz transformations, Wigner rotations, and screw transformations. A further consequence are closed formulas for exponential and logarithmic functions for all spin groups, and identification of geometric entities, such as planes, lines, points, as the invariants of k-reflections.

In [START_REF] Dong | Matrices of SL(4, R) that are the Product of Two Skew-Symmetric Matrices[END_REF] matrices of SL(4, R) are studied that are products of two skewsymmetric matrices with the final aim of studying projective line transformations in three dimensions. Note that Jordan normal forms (Jordan forms) of matrices that are products of two skew-symmetric matrices over a field of characteristic = 2 have long been a research topic in linear algebra since the early twentieth century. For such matrices, their Jordan form is not necessarily real, nor does the matrix similarity transformation change the matrix into the Jordan form. In three-dimensional oriented projective geometry, orientation-preserving projective transformations are matrices of the special linear group SL(4, R) that transform four-dimensional vector spaces over the field of real numbers R and have unit determinant, and those matrices of SL(4, R) that are the product of two skew-symmetric matrices are the generators of the group SL(4, R). The canonical forms of orientation-preserving projective transformations under the group action of SL(4, R)-similarity transformations, called SL(4, R)-Jordan forms, are seen to be more useful in geometric applications than conventional complex-valued Jordan forms. In [START_REF] Dong | Matrices of SL(4, R) that are the Product of Two Skew-Symmetric Matrices[END_REF], the authors find all the SL(4, R)-Jordan forms of the matrices of SL(4, R) that are the product of two skew-symmetric matrices, and divide them into six classes, so that each class has an unambiguous geometric interpretation in three-dimensional oriented projective geometry. They then consider the lifts of these transformations to SO(3, 3) (component subgroup of O(3, 3) connected to the identity) by extending the action of SL(4, R) from points to lines in space, so that in the vector space R 3,3 spanned by the Plücker coordinates of lines, these projective transformations become special orthogonal transformations, and the six classes are lifted to six different rotations in two-dimensional planes of R 3,3 .

In the field of crystallographic space group symmetry, an interactive, animated, explorative, three-dimensional visualization software has been developed based on conformal geometric algebra for all 230 space groups, with a new documentation in the book [START_REF] Hitzer | Space Group Visualizer, Independently published -KDP[END_REF].

The geometry of E 8 from a Clifford (versor) point of view is considered in three complementary ways in [START_REF] Dechant | The E8 Geometry from a Clifford Perspective[END_REF]. Note that E 8 is the largest exceptional root system, which is a set of vectors in an eight-dimensional real vector space satisfying certain properties [START_REF]What is E8?[END_REF]. Firstly, in earlier work (see references in [START_REF] Dechant | The E8 Geometry from a Clifford Perspective[END_REF]), the author had already shown how to construct four-dimensional exceptional root systems from three-dimensional root systems using Clifford algebra techniques, by constructing them in the four-dimensional even subalgebra of a three-dimensional Clifford algebra; for instance the icosahedral root system H 3 gives in this way rise to the largest (and therefore exceptional) non-crystallographic root system H 4 . Arnold's trinities and the McKay correspondence then hint that there might be an indirect connection between the icosahedron and E 8 . Secondly, in a related construction, the author has made this connection explicit for the first time: in the eight-dimensional Clifford algebra of three-dimensional spaces the 120 elements of the icosahedral group H 3 are doubly covered by 240 eight-component objects, which endowed with a reduced inner product are exactly the E 8 root system. It was previously known that E 8 splits into H 4 -invariant subspaces, and the author had discussed the folding construction relating the two pictures. This folding is a partial version of the one used for the construction of the Coxeter plane, so thirdly in [START_REF] Dechant | The E8 Geometry from a Clifford Perspective[END_REF] the geometry of the Coxeter plane in a Clifford algebra framework is discussed. The complete factorization of the Coxeter versor in Clifford algebra into exponentials of bivectors describing rotations in orthogonal planes with the rotation angle giving the correct exponents is advocated for, which gives much more geometric insight than the usual approach of complexification and search for complex eigenvalues. In particular, these factorizations for two-, three-and four-dimensional root systems, and D 6 as well as E 8 , are found explicitly, whose Coxeter versor factories as W = exp( π 30 B C ) exp( 11π 30 B 2 ) exp( 7π 30 B 3 ) exp( 13π 30 B 4 ). This explicitly describes 30-fold rotations in four orthogonal planes with the correct exponents {1, 7, 11, 13, 17, 19, 23, 29} arising completely algebraically from the factorization.

[104] investigates the geometric meaning of the general orthogonal planes split with respect to any two pure unit quaternions f, g ∈ H, f 2 = g 2 = -1, including the case f = g, that has proved extremely useful for the construction and geometric interpretation of general classes of double-kernel quaternion Fourier transformations (QFT) [START_REF] Hitzer | The orthogonal 2D planes split of quaternions and steerable quaternion Fourier transformations[END_REF], and a.o. has applications that include color image processing, where the orthogonal planes split with f = g = the gray-line, naturally splits a pure quaternionic three-dimensional color signal into luminance and chrominance components. It has further been found independently in the quaternion geometry of rotations [START_REF] Meister | A concise quaternion geometry of rotations[END_REF], that the pure quaternion units f, g and the analysis planes, which they define, play a key role in the spherical geometry of rotations, and the geometrical interpretation of integrals related to the spherical Radon transform of probability density functions of unit quaternions, as relevant for texture analysis in crystallography. In [START_REF] Hitzer | The orthogonal planes split of quaternions and its relation to quaternion geometry of rotations[END_REF] these connections have been further investigated.

An analogue of polar decomposition is studied in [START_REF] Sangwine | Polar Decomposition of Complexified Quaternions and Octonions[END_REF]. A new polar representation of complexified quaternions (also known as biquaternions, isomorphic to Cl(3, 0)), also applicable to complexified octonions is presented. The result is a product of two exponentials, one trigonometric or circular, and one hyperbolic. The trigonometric exponential is a real quaternion, the hyperbolic exponential has a real scalar part and imaginary vector part. This factorization is shown to be isomorphic to the polar decomposition of linear algebra. A first generalization to Clifford algebras can be found in [START_REF] Hitzer | Exponential Factorization of Multivectors in Cl(p, q), p + q < 3[END_REF].

Clifford Algebra, Spinors and Matrices

The relatively recent book An Introduction to Clifford Algebras and Spinors [START_REF] Vaz | An Introduction to Clifford Algebras and Spinors[END_REF] provides a comprehensive introduction to this vast subject that supplies a key motivation to study and apply Clifford algebras wherever spinors and their applications surface.

Many practical problems require the inverse of a multivector or of a matrix of multivectors. In [START_REF] Hitzer | Multivector and multivector matrix inverses in real Clifford algebras[END_REF] it is shown how to compute the inverse of multivectors in finite dimensional real Clifford algebras Cl(p, q). For algebras over vector spaces of fewer than six dimensions, explicit formulae for discriminating between divisors of zero and invertible multivectors are provided, and for the computation of the inverse of a general invertible multivector. For algebras over vector spaces of dimension six or higher, isomorphisms between algebras are used, and between multivectors and matrix representations with multivector elements in Clifford algebras of lower dimension. For this explicit details of how to compute several forms of isomorphism that are essential to invert multivectors in arbitrarily chosen algebras are provided. The computation of the inverses of matrices of multivectors is briefly discussed by adapting an existing textbook algorithm for matrices to multivectors. This work is further extended in [START_REF] Hitzer | Construction of multivector inverse for Clifford algebras over 2m + 1-dimensional vector spaces from multivector inverse for Clifford algebras over 2m-dimensional vector spaces[END_REF][START_REF] Shirokov | Concepts of trace, determinant and inverse of Clifford algebra elements[END_REF].

The immersion in S n by complex spinors is pursued in [START_REF] Leao | Immersion in S n by Complex Spinors[END_REF]. Since the first work of Thomas Friedrich showing that isometric immersions of Riemann surfaces are related to spinors and the Dirac equation, various works appeared generalizing this approach to more general Spin-manifolds, in particular to the case of submanifolds of Spin-manifolds of constant curvature. [START_REF] Leao | Immersion in S n by Complex Spinors[END_REF] further investigates the case of submanifolds of Spin C -manifolds of constant curvature. Note that spinors are of primary importance in quantum physics, and the Dirac equation, e.g., describes the behavior of relativistic electron spinors. Furthermore Riemann surfaces are of great importance in general relativity, describing gravity.

In [START_REF] Shirokov | Calculation of Elements of Spin Groups Using Method of Averaging in Clifford's Geometric Algebra[END_REF] elements of spin groups (e.g. rotors) are calculated using an averaging method in Clifford's geometric algebra of arbitrary dimension. This method generalizes Hestenes method for the case of dimension four. The method of averaging in Clifford's geometric algebra has previously been proposed by the author D. Shirokov (see references in [START_REF] Shirokov | Calculation of Elements of Spin Groups Using Method of Averaging in Clifford's Geometric Algebra[END_REF]). He presents explicit formulas for elements of spin groups that correspond to the elements of orthogonal groups as two-sheeted covering. These formulas allow to compute rotors (even versors), which connect two different frames related by a rotation in geometric algebra of arbitrary dimension.

Hadamard matrices are orthogonal square matrices with entries restricted to +1 and -1. In [START_REF] Leopardi | Gastineau-Hills' Quasi-Clifford Algebras and Plug-In Constructions for Hadamard Matrices[END_REF] Gastineau-Hills' quasi-Clifford algebras (algebras over a commutative field K with characteristic = 2, and m generators, each squaring to an element of the field, and specification of the commutation and anti-commutation relationships of the generators) and plug-in constructions for Hadamard matrices are considered. The quasi-Clifford algebras as described by Gastineau-Hills in 1980 and 1982 (see references in [START_REF] Leopardi | Gastineau-Hills' Quasi-Clifford Algebras and Plug-In Constructions for Hadamard Matrices[END_REF]) receive new attention. These algebras and their representation theory provide effective tools to address the following problem arising from a plug-in construction for Hadamard matrices: Given λ, a pattern of amicability/anti-amicability, with λ j,k = λ k,j = ±1, find a set of n monomial {-1, 0, 1} matrices D of minimal order such that D j D T kλ j,k D k D T j = 0 (j = k). This theoretical work may find future applications in artificial intelligence and deep learning.

Applications of Geometric Calculus

Expositions of geometric calculus can be found in [START_REF] Gürlebeck | Quaternionic and Clifford Calculus for Physicists and Engineers[END_REF][START_REF] Hestenes | Space Time Calculus[END_REF][START_REF] Hestenes | Multivector Calculus[END_REF][START_REF] Hestenes | Clifford Algebra to Geometric Calculus: A Unified Language for Mathematics and Physics[END_REF][START_REF] Hitzer | Geometric Calculus for Engineers[END_REF][START_REF] Hitzer | Vector Differential Calculus[END_REF][START_REF] Hitzer | Multivector Differential Calculus[END_REF] and of the related more theoretical Clifford analysis in [START_REF] Brackx | Clifford Analysis[END_REF]. Here we introduce some interesting new developments in this field.

Coordinate free integrals in geometric calculus are studied in [START_REF] Alho | Coordinate Free Integrals in Geometric Calculus[END_REF]. A method is introduced for evaluating integrals in geometric calculus without introducing coordinates, based on using the fundamental theorem of calculus repeatedly and cutting the resulting manifolds so as to create a boundary and allow for the existence of an antiderivative at each step. The method is a direct generalization of the usual method of integration on R. It may lead to both practical applications and help unveil new connections to various fields of mathematics.

The geometric calculus of the Gauss map is considered in [START_REF] Lewintan | Geometric Calculus of the Gauss Map[END_REF]. In this paper classical differential geometry is connected with concepts from geometric calculus. Moreover, it introduces and analyzes a more general Laplacian for multivector-valued functions (e.g. versors, spinors, vectors, paravectors, parabivectors, or blades, etc.) on manifolds. This allows, e.g., to formulate a higher codimensional analog of Jacobi's field equation.

The iterative closest point method for the adjustment of airborne laser scanning data strips in the framework of conformal geometric algebra, using rotors, translators, motors and differentiating with respect to bivector angles and translation vectors is shown in [START_REF] Hitzer | Strip Adjustment of Airborne Laserscanning Data with Conformal Geometric Algebra[END_REF].

Geometric Algebra Applied in Physics

W.K. Clifford himself was in Cambridge a student of James C. Maxwell, the famous pioneer of modern electro-magnetism. Maxwell himself applied quaternions to the formulation of electro-magnetic field equations. The inventor of quaternions W.R. Hamilton worked evenly on problems from mathematics and physics, and P.A.M. Dirac independently discovered space-time algebra represented in the form of matrices. The Pauli matrix algebra of the Schrödinger equation in the presence of a magnetic field is a matrix representation of the geometric algebra of three-dimensional Euclidean space, and finally the well-known 20th century promoter of geometric algebra D. Hestenes certainly made important contributions to many disciplines of physics. And as may therefore be expected applications of geometric algebra in many fields of physics continue to flourish. We present some of them, including approaches to unified field theory.

In [START_REF] Lasenby | Geometric Algebra as a Unifying Language for Physics and Engineering and Its Use in the Study of Gravity[END_REF] geometric algebra (GA) is presented as a unifying language for physics and engineering and its use in the study of gravity. Geometric algebra is a mathematical language that aids a unified approach and understanding in topics across mathematics, physics and engineering. In [START_REF] Lasenby | Geometric Algebra as a Unifying Language for Physics and Engineering and Its Use in the Study of Gravity[END_REF], space-time algebra (STA) is introduced, and some of its applications in electromagnetism, quantum mechanics and acoustic physics are discussed. Then a gauge theory approach to gravity is examined that employs GA to provide a coordinate free formulation of general relativity (field theory of gravity), and what a suitable Lagrangian for gravity might look like in two dimensions is discussed. Finally the extension of the gauge theory approach to include scale invariance is briefly introduced, and attention drawn to interesting properties with respect to the cosmological constant of the type of Lagrangians which may be favored in this approach. A survey is provided largely accessible to anyone, equipped only with an introductory knowledge of GA, whether in mathematics, physics or engineering.

Geometric algebra (GA) for the physics of gravity and gravitational waves is presented in [START_REF] Lasenby | Geometric Algebra, Gravity and Gravitational Waves[END_REF]. An approach to gravitational waves based on GA and gauge theory gravity (GTG) is discussed. After a brief introduction to GA, GTG is considered, which uses symmetries expressed within the GA of flat space-time to derive gravitational forces as gauge forces corresponding to making these symmetries local. Then solutions for black holes and plane gravitational waves are considered in this approach, noting the simplicity of GA in both writing the solutions, and checking some of their properties. Next, a preferred gauge emerges for gravitational plane waves, in which a memory effect corresponding to non-zero velocities left after the passage of gravitational waves becomes clear, and the physical nature of this effect is demonstrated. In a final section the mathematical details of the gravitational wave treatment in GA is presented, and linked with other approaches to exact waves in the literature. Even for approaches not based on GA, the general relativity metric-based version of the preferred gauge is recommended, i.e. the Brinkmann metric, to be more widely considered for use by astrophysicists and others for the study of gravitational plane waves. These advantages are shown to extend to a treatment of joint gravitational and electromagnetic plane waves, and in a final subsection, exact solutions found for particle motion in exact impulsive gravitational waves are used to discuss whether backward in time motion can be induced by strongly non-linear waves.

In [START_REF] Mcclellan | Application of Geometric Algebra to the Electroweak Sector of the Standard Model of Particle Physics[END_REF] the application of GA is considered to the electroweak sector of the standard model of particle physics. GA offers an intriguing approach to understanding the fields of the standard model (SM) of elementary particle physics. This paper examines a geometric view of electron and neutrino fields in the electroweak sector of the SM. These fields are related by the transformations of the SU (2) Lie group, with generators customarily represented by the 2 × 2 complex Pauli matrices. In G 3 = Cl(3, 0), the GA of three-dimensional Euclidean space R 3 , the three unit basis vectors may be used to provide a more geometrically oriented representation of SU (2). In fact, G 3 is sometimes referred to as the Pauli algebra. However, a more general representation of the special unitary group SU (n) in GA is in terms of generators that are compound (non-blade) bivectors in G 2n , the GA of 2ndimensional Euclidean space. Therefore, a natural approach to electroweak theory mathematically is to work with SU (2) generators as compound bivectors in G 4 = Cl(4, 0). This approach leads one to consider electroweak fields as multivector fields in G 4 that are solutions of the Dirac equation in four spatial dimensions and one time dimension. This paper examines such multivector fields and offers a new point of view on chiral projection of G 3 fields. It is shown that SU (2) representation in G 4 leads naturally to the singlet/doublet structure of the chiral electroweak fields.

In [START_REF] Mcclellan | Using Raising and Lowering Operators from Geometric Algebra for Electroweak Theory in Particle Physics[END_REF] the use of raising and lowering operators from GA is considered for electroweak theory in particle physics. There are two objectives. The first is to explore the form and action of raising and lowering operators expressed in GA. The second is to show how increasing the number of dimensions of Euclidean space from three to four opens a new avenue for understanding the chiral asymmetry of electroweak interactions. These explorations are guided by isomorphisms among groups represented in complex Clifford algebra, matrix algebra, and real GA. With these isomorphisms, expressions for raising and lowering operators for electron and neutrino states in complex Clifford algebra are translated into real GA and elaborated to even include positrons and antineutrinos. This paper addresses such operators in the context of the electroweak sector of the standard model of particle physics (SM) utilizing (1) the GA G 3 = Cl(3, 0) for the Hestenes-Dirac equation in a Euclidean lab frame, (2) G 4 to introduce chiral asymmetry, and (3) G 4,1 = Cl(4, 1) to express the electroweak fermion states of the first generation of the SM and demonstrate their SU (2) relationships.

In [START_REF] Rodrigues | Equations of Motion and Energy-Momentum 1-Forms for the Coupled Gravitational, Maxwell and Dirac Fields[END_REF] equations of motion and energy-momentum 1-forms are considered for coupled gravitational, Maxwell and Dirac fields. A theory where the gravitational, Maxwell and Dirac fields (mathematically represented as particular sections of a convenient Clifford bundle) are treated as fields in Faraday's sense living in Minkowski space-time R 3,1 is presented. In this theory a genuine energy-momentum tensor is obtained for the gravitational field and a genuine energy-momentum conservation law for the system of the interacting gravitational, Maxwell and Dirac fields. Moreover, the energy-momentum tensors of the Maxwell and Dirac fields are symmetric, and it is shown that the equations of motion for the gravitational potentials are equivalent to the Einstein equation of general relativity. Precisely, the Einstein equation in which the second member is the sum of the energy-momentum tensors of the Maxwell, Dirac and the interaction Maxwell-Dirac fields all defined in an effective Lorentzian space-time whose use is eventually no more than a question of mathematical convenience.

In [START_REF] Burns | Maxwell's Equations are Universal for Locally Conserved Quantities[END_REF] Maxwell's equations are shown to be universal for locally conserved quantities. A fundamental result of classical electromagnetism is that Maxwell's equations imply that electric charge is locally conserved. Here the converse is shown: Local charge conservation implies the local existence of fields satisfying Maxwell's equations. This holds true for any conserved quantity satisfying a continuity equation. It is obtained by means of a strong form of the Poincare lemma presented here that states: Divergence-free multivector fields locally possess curl-free anti-derivatives on flat manifolds. The above converse is an application of this lemma in the case of divergence-free vector fields in space-time. Conditions under which the result generalizes to curved manifolds (relevant for general relativity) are also provided.

In [START_REF] Vold | Computational Electromagnetism by the Method of Least Action[END_REF] computational electromagnetism by the method of least action is introduced. A new general method of computational electromagnetism based on extremizing the electromagnetic action using the geometric algebra of space-time is described. Special cases include a boundary element method and a finite element method. These methods are derived and discussed, computational examples given, and compared with some well known methods of computational electromagnetism. Finally, in [START_REF] Zatloukal | Hamiltonian Constraint Formulation of Classical Field Theories[END_REF] a Hamiltonian constraint formulation of classical field theories is studied. Classical field theory is considered as a theory of unparametrized surfaces embedded in a configuration space, which accommodates, in a symmetric way, space-time positions and field values. Dynamics is defined via the (Hamiltonian) constraint between multivector-valued generalized momenta, and points in this configuration space. Starting from a variational principle, local equations of motion are derived, that is, differential equations that determine classical surfaces and momenta. A local Hamilton-Jacobi equation applicable in field theory then follows readily. In addition, the relation between symmetries and conservation laws is discussed, and a Hamiltonian version of the Noether theorem is derived, where the Noether currents are identified as the classical momentum contracted with the symmetry-generating vector fields. This general formalism is illustrated by means of two examples: (1) scalar field theory, and (2) string theory. The mathematical formalism of geometric algebra and geometric calculus are employed throughout, which allows to perform completely coordinate-free manipulations.

An interesting relationship between Clifford Fourier transforms (CFT) and quantum mechanics is shown in [START_REF] Eelbode | Operator Exponentials for the Clifford Fourier Transform on Multivector Fields in Detail[END_REF] using techniques coming from Clifford analysis (the multivariate function theory for the Dirac operator). In these CFTs on multivector signals, the complex unit i ∈ C is replaced by a multivector square root of -1, which may be a pseudoscalar in the simplest case. For these integral transforms an operator representation expressed as the Hamilton operator of a harmonic oscillator is derived.

Regarding special relativity expressed in space-time algebra, [START_REF] Hitzer | Special relativistic Fourier transformation and convolutions[END_REF] uses the steerable special relativistic (space-time) Fourier transform (SFT), and relates the classical convolution of the algebra for space-time Cl(3, 1)-valued signals (electromagnetic fields, relativistic spinors, etc.) over the space-time vector space R 3,1 , with the (equally steerable) Mustard convolution. The latter can be expressed in the spectral domain as the point wise product of the SFTs of the factor functions. In full generality is the classical convolution of space-time signals expressed in terms of finite linear combinations of Mustard convolutions, and vice versa the Mustard convolution of space-time signals in terms of finite linear combinations of classical convolutions. Heisenberg's and Hardy's uncertainty principles for the SFT are established in [START_REF] El Haoui | Heisenberg's and Hardy's uncertainty principles for special relativistic Space-Time Fourier transformation[END_REF].

Geometric Algebra Implementations

The contributions in [START_REF] Ab Lamowicz | Appendix 7.1 of Lectures on Clifford (Geometric) Algebras and Applications[END_REF] first showed the state-of-the art implementations before the 2000s. Some further implementations were created and are used thereafter. These implementations take the forms of libraries, library generators, optimized code generators like Gaalop and GMAC [START_REF] Eid | Optimized Automatic Code Generation for Geometric Algebra Based Algorithms with Ray Tracing Application[END_REF][START_REF] Eid | An Extended Implementation Framework for Geometric Algebra Operations on Systems of Coordinate Frames of Arbitrary Signature[END_REF], and specialized program packages included in larger systems like e.g. the Clifford algebra [START_REF] Prodanov | Sparse representations of Clifford and tensor algebras in maxima[END_REF] package for the computer algebra system Maxima. Some implementations are specifically dedicated to an architecture for special types of

a = • • • • • • • • • • • • • • •• • • • • • • • • •• • • • • • • grade 0 1 2 3 4 5 vector: • • • • • point: • • • • • plane: • • • • • sphere: • • • • • line: • • • • • • • • •• circle: • • • • • • • • •• flat point: • • • • • • • • •• point pair: • • • • • • • • •• Figure 2.
Multivector structure in Conformal Geometric Algebra. A circle in CGA is restricted to grade three (dark blue dots) and may have up ten non-zero elements. applications like the FPGA implementation for image processing developed by Soria-Garcia et al. in [START_REF] Soria-Garcia | FPGA implementation of a geometric voting scheme for the extraction of geometric entities from images[END_REF]. In contrast, there are also works that specifically focus on architectures that are optimally adapted to geometric algebra computations. For instance, the work of Franchini et. al. [START_REF] Franchini | Embedded Coprocessors for Native Execution of Geometric Algebra Operations[END_REF][START_REF] Hildenbrand | Gappco: An easy to configure geometric algebra coprocessor based on gapp programs[END_REF] presents a family of coprocessors that have hardware-oriented representations of geometric algebra elements.

Most of these implementations and software mainly differ in their representations of multivectors and their way to implement the main considered products (geometric, outer, inner, etc.). For instance, Sangwine and Hitzer created a MATLAB toolbox in [START_REF] Sangwine | Clifford Multivector Toolbox (for MATLAB)[END_REF]. It supports the use of multiple geometric algebras with signature (p, q, r). The geometric product is implemented using precomputed multiplication tables of size 2 d × 2 d . The tested vector space dimensions are up to 16, provided enough memory and disk space is available to store the tables.

Multivectors in geometric algebra have a particular structure. For a d dimensional vector space, the potential amount of information that could be stored to represent fundamental elements of linear algebra (vectors and matrices) strongly differs from the information represented for multivectors. In practical applications such as Conformal Geometric Algebra [START_REF] Hestenes | New Algebraic Tools for Classical Geometry[END_REF], libraries and code generators have to consider the fact that a multivector representing a geometric object may be restricted to a single grade as shown in the examples of Fig. 2.

The exponential computational cost of geometric algebra operators can be avoided thanks to the generation of optimized codes.

Gaalop Code Precompiler

In this context, the paper of Hildenbrand et al. presented Gaalop [START_REF] Hildenbrand | Geometric algebra computing for heterogeneous systems[END_REF], a precompiler that produces optimized code fragments from a description of an algorithm in a domain specific language. Using this precompiler, the user can decide to generate the code for different architectures including CPU, GPU, FPGA, and DSP or for geometric algebra dedicated architectures [START_REF] Hildenbrand | Gappco: An easy to configure geometric algebra coprocessor based on gapp programs[END_REF]. Note that once the code has been generated, it can also be integrated into a target program. The authors show some experiments by writing a raytracer in geometric algebra which they then converted into high performance code. In addition, in [START_REF] Hildenbrand | Analyzing the inner product of 2 circles with Gaalop[END_REF], Hildenbrand et al. demonstrate how it is to possible to use Gaalop for generating formulas and visualizations of Compass Ruler Algebra (CGA of the Euclidean plane, Cl(3, 1)) algorithms.

One drawback of this precompiler was the need of installing a specific software for the user. In order to address this issue, Hildenbrand et al. proposed GAALOPWeb [START_REF] Hildenbrand | GAALOPWeb for MATLAB: An easy to handle solution for industrial geometric algebra implementations[END_REF], a web based precompiler that allows the user to generate optimized code and to visualize the result without any installation requirements. Some proofs-of-concept of this latter implementation are shown in [START_REF] Alves | Efficient Development of Competitive Mathematica Solutions Based on Geometric Algebra with GAALOPWeb[END_REF][START_REF] Hildenbrand | An Online Calculator for Qubits Based on Geometric Algebra[END_REF][START_REF] Hildenbrand | GAALOPWeb for MATLAB: An easy to handle solution for industrial geometric algebra implementations[END_REF]. GAALOPWeb uses Ganja.js [START_REF] De Keninck | [END_REF] for the visualization of geometric algebra algorithms, which is a javascript-based package for the web developed by Steven de Keninck. It provides a two-and three-dimensional visualization tool of geometric algebra algorithms written in javascript language. In [START_REF] Papaefthymiou | A conformal geometric algebra code generator comparison for virtual character simulation in mixed reality[END_REF], Papaefthymiou et al. showed some performance comparison of Gaalop and Gaigen code generators for animation blending. Finally, the code optimizer Gaalop was successfully used in Gajit [START_REF] Hadfield | Gajit: symbolic optimization and JIT compilation of geometric algebra in Python with GAALOP and Numba[END_REF] developed by Hadfield et al. This Python implementation is specifically designed to bridge the gap between usually slow symbolic computation implementations and (ideally) fast application dedicated implementations.

Library Generators

Some other implementations focus on the generation of a library for a particular algebra. In this category, Fontijne implemented Gaigen [START_REF] Fontijne | Gaigen 2: a geometric algebra implementation generator[END_REF][START_REF] Fontijne | Gaigen 2.5 User Manual[END_REF] that stands for Geometric Algebra Implementation GENerator and that generates C,C++ and Java optimized source code for a wide range of geometric algebras with applications in geometry like conformal geometric algebra Cl(4, 1) but also the compass ruler geometric algebra Cl(3, 1). However, the optimizations limit Gaigen, when the vector space dimension is higher than ten. For these high dimensional vector spaces, an implementation may rather combine generation of on-the-fly computations with generation of optimized products.

To achieve this, the paper of Breuils et al. [START_REF] Breuils | A geometric algebra implementation using binary tree[END_REF] defined a recursive formalism to compute geometric algebra products. The data structure used is a binary tree and the products are performed via binary tree traversal. Computational results are shown in terms of increased time complexity in the worst cases, i.e. when each multivector has 2 d non-zero elements. In [START_REF] Breuils | Garamon: A geometric algebra library generator[END_REF], the binary tree structure is replaced with a prefix tree. This structure allows better performance in practical cases since the prefix tree has a per-grade structure. The authors produced a metaprogramming implementation, more precisely geometric algebra library generators, called Garamon, suitable for multiple platforms. Any generated library contains its own dedicated installation file, as well as dedicated sample code.

The generated libraries can handle geometric algebras of arbitrary signature, such that the user does not have to care about basis changes. The library combines on-the-fly recursive computations over a prefix tree for high dimensional vector spaces with the generation of optimized products for lower dimensions. The threshold between low and high dimensional vector spaces was chosen experimentally (at approximately d = 10). The user can change this threshold. This latter hybrid approach was also implemented in Gaalop, see [START_REF] Breuils | A hybrid approach for computing products of high-dimensional geometric algebras[END_REF]. However, the use of the generated libraries is a two-step process, namely first the installation of the library generator and second the generation of the geometric algebra library.

Template Metaprogramming

In contrast, template metaprogramming approaches allow the generation of optimized libraries or codes that are performed through a one step compilation process. Benger [START_REF] Benger | Massive Geometric Algebra: Visions for C++ implementations of geometric algebra to scale into the big data era[END_REF] presented the requirements for an implementation that should support very high dimensional data (big data) and presents some template metaprogramming concepts that should be used in template metaprogramming implementations. In particular, the paper highlights the fact that no code is generated when evaluating a multivector expression for elements that are not used with template expressions and template metaprogramming.

Among the template metaprogramming implementations of geometric algebra [START_REF] Colapinto | Spatial computing with conformal geometric algebra[END_REF], the paper written by Sousa and Fernandes [START_REF] Sousa | TbGAL: A Tensor-Based Library for Geometric Algebra[END_REF] presents Tb-GAL, a tensor-based template metaprogramming library for geometric algebra. This library uses C++ metaprogramming techniques like expression templates to define types representing expressions to be computed at compile time. It also permits multiplicative constructions and combinations of elements thanks to a representation of blades as outer products of vectors rather than a weighted sum of elements. This latter optimization allows computations in up to 256-dimensional vector spaces. Some experimental results have also been shown in [START_REF] Sousa | TbGAL: A Tensor-Based Library for Geometric Algebra[END_REF]. Potential applications and implementations for these high dimensional vector spaces include the work of Luo et. al. in [START_REF] Luo | A hierarchical representation and computation scheme of arbitrary-dimensional geometrical primitives based on CGA[END_REF], where the authors present a hierarchical representation, namely a tree, of geometric primitives based on conformal geometric algebra for applications in geographical information science (GIS).

Specialized Libraries

In contrast to the libraries explained so far, there exist some libraries that are specifically dedicated to one algebra. Among these, the C++ library Klein [START_REF] Ong | Klein -Geometric Algebra Library for C++[END_REF], implements three-dimensional projective GA. It performs the representation and the transformation of objects with very optimized and vectorized instructions (SSE) for applications that require fast computations and low memory like in animation and kinematics.

Discrete Mathematics and Topology with Application in GIS

Among all the applications of geometric algebra, there exist several in discrete mathematics and topology. These fields may benefit from the representation of geometric objects in CGA. In [START_REF] Romero | Constructing Voronoi Diagrams from Hollow Spheres Using Conformal Geometric Algebra[END_REF] for example, Romero et al. define an extension of the Delaunay triangulation. The approach uses hollow sphere objects instead of triangles. The operations are simplified with CGA since Voronoi diagrams are dual to the proposed hollow spheres in the algorithm. One of the other main advantages of the use of CGA raised by the authors is that distances are well preserved and it also leaves angles invariant after geometric transformations. Making geometric algebra an efficient tool to deal with point graphs.

In this context, some papers focus on K-discretizable molecular distance geometry with CGA. The molecular distance geometry consists in finding a three-dimensional structure of a molecule given an incomplete set of interatomic distances, as explained in [START_REF] Alves | Efficient Development of Competitive Mathematica Solutions Based on Geometric Algebra with GAALOPWeb[END_REF]. Its discrete version is handled by Alves et al. in [START_REF] Alves | Advances on the geometric algebra approach to the discretizable molecular distance geometry problem (dmdgp)[END_REF]. Solutions to this problem are useful but in practice the data treated are not exact and rather represent intervals, called interval distances as presented in [START_REF] Alves | Geometric algebra to model uncertainties in the discretizable molecular distance geometry problem[END_REF].

Zeon Algebras

Among the algebras that have applications in graph theory and for routing in communication networks are the zeon algebras. They were first defined by Staples in [START_REF] Staples | Zeons, orthozeons, and processes on colored graphs[END_REF]. Zeon algebras are particular commutative subalgebras of geometric algebras, namely the considered collection is ζ i , i ∈ [1, n] with the scalar ζ 0 and a commutative product such tat

ζ i ζ j = ζ j ζ i , i = j, and all ζ 2 i = 0.
In [START_REF] Davis | Zeon and Idem-Clifford Formulations of Boolean Satisfiability[END_REF], Davis and Staples discuss some applications of zeon algebras. The authors formulate the Boolean satisfiability problem (SAT) and make it a problem of computing products and sums of zeon algebra elements (zeons). Then an equivalent problem in graph theory is shown and discussed by means of zeons, namely the clique problem, where the method presented by the authors allows to find all the possible solutions of SAT. This is achieved with computationally low cost operations.

Geographical Information Science Data and Classification

The combinatorial properties of geometric algebra are also used to model network systems with multi-agent interactions like in [START_REF] Yu | Multisource multisink optimal evacuation routing with dynamic network changes: A geometric algebra approach[END_REF] by Z. Yu et al. It gives a method to tackle dynamically constrained optimal path searching in a network. The dynamic updating of the network topography, weights, and constraints during the route searching is direct and flexible. The network nodes are coded by geometric algebra basis vectors, and different network elements are represented by blades. A case study that simulates multiple evacuations in Changzhou city area demonstrates the method.

In [START_REF] Lu | GASDL: Geometric algebra-based spatial data description Language[END_REF], Lu et al. presented a new format and model for geographical information science (GIS) to describe geographical data. This model allows to efficiently extract geometry and topology of GIS data with geometric algebra. The topological relations were defined in CGA based on the work of Wang et al. [START_REF] Wang | A unified CGA-based formal expression of spatiotemporal topological relations for computation and analysis of geographic objects[END_REF], involving general intersections of CGA objects. Experiments and detection of topological errors with these topological relations in CGA have been discussed by Zhang et al. in [START_REF] Zhang | 3D Topological Error Detection for Cadastral Parcels Based on Conformal Geometric Algebra[END_REF].

Another aspect of GIS lies in the visualization of the geographical data. In this context, Benger et al. [START_REF] Benger | Optimizing Refined Geometric Primitive's Leaflet Visibility for Interactive 3D Visualization via Geometric Algebra[END_REF] presented an efficient algorithm to render big data sets. The approach consists in an adaptive hierarchical representation using data blocks. During rendering, the data blocks are sorted based on their visibility according to their maximal bounding spheres, which are calculated using CGA.

A last aspect in GIS concerns information preservation. This aspect is treated by Luo et al. in [START_REF] Luo | Geometric Algebra-Based Multilevel Declassification Method for Geographical Field Data[END_REF] where a multilevel declassification method is presented. Declassification aims at hiding confidential spatial information from geographical data. This is achieved by constructing multidimensional data expressions using geometric algebra.

GA Applied to Encryption

Geometric algebra can also be used for data representation and cryptography, a very lively field with many competitive developments.

In [START_REF] Wang | Octonion Algebra and Noise-Free Fully Homomorphic Encryption (FHE) Scheme[END_REF] Y. Wang designs fully homomorphic symmetric key encryption (FHE) schemes without bootstrapping (noise-free). The proposed FHE schemes are based on quaternions and octonions and on Jordan algebra over finite rings Z n and are regarded secure in the weak ciphertext-only security model assuming the hardness of solving multivariate quadratic equation systems and solving univariate high degree polynomial equation systems in Z n . The author claims that this is the first noise-free FHE scheme that has ever been designed with a security proof. It is argued that the weak ciphertextonly security model would be sufficient for various applications such as privacy preserving computation in a cloud. An example is the construction of obfuscated programs. See also the related work of Wang and Malluhi in [START_REF] Wang | Privacy Preserving Computation in Cloud Using Noise-Free Fully Homomorphic Encryption (FHE) Schemes[END_REF].

In [START_REF] Yagisawa | Fully homomorphic encryption without bootstrapping[END_REF] M. Yagisawa proposes an improved fully homomorphic encryption scheme on a non-associative octonion ring over a finite field without bootstrapping technique. It is based on the computational difficulty to solve multivariate algebraic equations of high degree while most previous multivariate cryptosystems relied on quadratic equations avoiding coefficient explosion. Because the proposed new scheme is based on multivariate algebraic equations with high degree or too many variables, it is claimed to be safe against Gröbner basis attacks, differential attacks, rank attacks, etc. Key size and complexity are small enough to be handled. Yet, Y. Wang tries to show in [START_REF] Wang | Notes on Two Fully Homomorphic Encryption Schemes Without Bootstrapping[END_REF] that M. Yagisawa's scheme in [START_REF] Yagisawa | Fully homomorphic encryption without bootstrapping[END_REF] is actually insecure. As a reaction Yagisawa proposes in [START_REF] Yagisawa | Fully Homomorphic Encryption on Octonion Ring[END_REF] the following two improvements to the scheme of [START_REF] Yagisawa | Fully homomorphic encryption without bootstrapping[END_REF]: an enciphering function difficult to express simply by using matrices, and composition of the plaintext p with two sub-plaintexts u and v, thus eliminating the p and -p attacks. He improves his scheme further in [START_REF] Yagisawa | Fully Homomorphic Encryption with Isotropic Elements[END_REF] by adopting fully homomorphic encryption with non-zero isotropic octonions.

Furthermore, in their remarks on Hecht and Kamlovsky's [START_REF] Hecht | Hk17: Algorithm specifications and supporting documentation[END_REF] quaternions/octonion based Diffie-Hellman key exchange protocol submitted to NIST PQC project [START_REF] Wang | Remarks on Quaternions/Octonion Based Diffie-Hellman Key Exchange Protocol Submitted to NIST PQC Project[END_REF], Wang and Malluhi show that it could be broken by solving a homogeneous quadratic equation system of eight equations in four unknowns. Thus no matter how big p is (p is the modulo used in Hecht and Kamlovsky's scheme), it could be trivially broken using Kipnis and Shamir's relinearization techniques.

In [START_REF] Dzwonkowski | A New Quaternion-Based Encryption Method for DICOM Images[END_REF] Dzwonkowski et al. propose a new quaternion-based lossless encryption technique for digital image and communication on medicine (DI-COM) images. They decompose a DICOM image into two 8-bit gray-tone images in order to perform encryption. The algorithm uses special properties of quaternions to perform rotations of data sequences in three-dimensional space for each of the cipher rounds. In [START_REF] Shao | Double color image encryption using iterative phase retrieval algorithm in quaternion gyrator domain[END_REF] Finally, in [START_REF] Da Silva | Homomorphic data concealment powered by Clifford geometric algebra[END_REF] David da Silva et al. introduce two methods for hiding data represented as multivectors consisting in operations that compute a concealed multivector with the support of secret key multivectors defined in the geometric algebra Cl(3, 0) of R 3 . The authors point out that these constructions can be used in a wide variety of privacy preserving applications, because data can be meaningfully computed while being concealed with geometric algebra. The authors made available a Ruby library that implements the constructions, provides numerical examples of each method, illustrates their use in simulations of real-world applications and allows one to test customized ideas.

Discrete Geometry

Geometric algebra is also applied in discrete geometry. Aveneau et al. [START_REF] Aveneau | Digital Geometry from a Geometric Algebra Perspective[END_REF] defined discrete rounds and flats based on the definition of spheres and planes in CGA. In contrast, discrete straight lines, discrete hyperplanes and discrete hyperspheres were all defined by discrete points that verify a set of inequalities in the framework of classical linear algebra. Furthermore, Breuils et al. [START_REF] Breuils | Reflexions et Rotations Digitales Bijectives avec l'Algebre Geometrique[END_REF] defined digital reflections and rotations thanks to geometric algebra. The framework allows to characterize all bijective digitized reflections and rotations in a plane. Geometric algebra allows to unify and generalize definitions that were introduced based on Gaussian integers in [START_REF] Roussillon | Characterization of bijective discretized rotations by Gaussian integers[END_REF] or based on the Lipschitz quaternions of [START_REF] Pluta | Bijectivity Certification of 3D Digitized Rotations[END_REF].

Curves and Surfaces with Geometric Algebra

Geometric algebra represents and transforms geometric objects in an elegant and intuitive way. CGA allows [START_REF] Dorst | Geometric Algebra for Computer Science: An Object-Oriented Approach to Geometry[END_REF][START_REF] Hestenes | New Algebraic Tools for Classical Geometry[END_REF][START_REF] Hitzer | Method for the General Evaluation and Control of Pose, Molecular Conformation, Tracking, and the Like[END_REF][START_REF] Hitzer | Introduction to Clifford's Geometric Algebra[END_REF] to both represent and transform round and flat objects with CGA. However geometric transformations and the representation of objects are not limited to rounds and flats. Curves and surfaces can be represented either implicitly or with explicit parameters. For example, an implicit way to define a sphere centered at the origin and whose radius is r is through the outer product of four points in CGA. This way, any conformal point x with Euclidean coordinates (x, y, z) on the sphere S satisfies x 2 + y 2 + z 2 = r 2 ⇐⇒ x ∧ S = 0.

(12.1)

This representation of curves and surfaces can be achieved based on outer products in geometric algebra. For a curve or a surface with N degrees of freedom, it is possible to represent it thanks to the outer product of N points in an N + 1-dimensional vector space. Additional dimensions are required to support geometric transformations of these surfaces. Extensions of CGA for the implicit representation of higher order curves with geometric algebra started with C. Perwass [START_REF] Perwass | Geometric algebra with applications in engineering[END_REF]. Any conic curve is defined there by the outer product of five points in an eight-dimensional vector space. Consistent versor transformations for conics were defined by Hrdina et al. [START_REF] Hrdina | Conic fitting in geometric algebra setting[END_REF] and simplified by Hitzer and Sangwine in [START_REF] Hitzer | Foundations of Conic Conformal Geometric Algebra and Compact Versors for Rotation, Translation and Scaling[END_REF]. Furthermore, [START_REF] Hrdina | Conic fitting in geometric algebra setting[END_REF] treats conic fitting of points, based on algebraic distance as well as normalization of the conic. Using the same vector space, Byrtus et al. [START_REF] Byrtus | Outline of Tube Elbow Detection Based on GAC[END_REF] proposed tube elbow detection taking advantage of the computational performance of Gaalop [START_REF] Alves | Efficient Development of Competitive Mathematica Solutions Based on Geometric Algebra with GAALOPWeb[END_REF].

Regarding the representation of quadric surfaces as far as the authors know, there exist three approaches to implicitly represent quadric surfaces, namely Double Conformal Geometric Algebra (DCGA) G 8,2 , in a ten-dimensional vector space, Double Projective Geometric Algebra (DPGA), in an eight-dimensional vector space and Quadric Conformal Geometric Algebra (QCGA), in a 15-dimensional vector space.

DCGA was presented by Easter and Hitzer [START_REF] Easter | Double Conformal Geometric Algebra[END_REF] and aims at having entities representing quadric surfaces but also some quartic surfaces like torus and cyclides (Dupin cyclides, ...). A point of DCGA, whose Euclidean coordinates are (x, y, z), is defined as the outer product of two CGA point copies in a pair of CGAs, each with the same coordinates. A general implicit quadric surface simply consists in defining and combining operators T that extract powers of components of the DCGA point. DCGA also supports the construction of the intersection of quadrics and conventional CGA objects as well as rigid transformations and isotropic scaling of quadric surfaces.

An extension relevant for relativistic physics from Euclidean geometry to the geometry of space-time DCSTA appeared in [START_REF] Easter | Double Conformal Space-Time Algebra[END_REF]. [START_REF] Easter | Conic and Cyclidic Sections in Double Conformal Geometric Algebra G8,2 with Computing and Visualization using Gaalop[END_REF] studies conic and cyclidic sections in DCGA with computing and visualization using Gaalop. [START_REF] Hitzer | Three-dimensional quadrics in hybrid conformal geometric algebra of higher dimensions[END_REF] shows how to work in a hybrid model combining the advantages of DCGA with that of QCGA (see below).

DPGA was originally defined by Parkin [START_REF] Parkin | A model for quadric surfaces using geometric algebra[END_REF] in 2012 and firstly introduced in 2015 by Goldman and Mann [START_REF] Goldman | R 4,4 as a Computational Framework for 3-Dimensional Computer Graphics[END_REF] and further developed by Du, Goldman and Mann [START_REF] Du | Modeling 3D Geometry in the Clifford Algebra R 4,4[END_REF]. A point whose Euclidean coordinates are (x, y, z) has two definitions, namely a primal and dual. These two definitions serve to construct quadrics by means of a sandwiching product. In a similar way as CGA, DPGA supports the computation of tangent plans as well as quadricline intersections.

The third approach is QCGA which was defined by Breuils et al. in [START_REF] Breuils | Quadric Conformal Geometric Algebra of R 9,6[END_REF]. It generalizes the conic construction of C. Perwass [START_REF] Perwass | Geometric algebra with applications in engineering[END_REF] to higher dimensions. It supports the construction of quadric surfaces from control points and also dually from implicit equations. In contrast to the two previous approaches, the intersection of two or more quadric surfaces is well defined with the usual formula C * = a * ∧ b * , known from CGA. Geometric transformations of quadric surfaces were consistently defined in the work of Hitzer [START_REF] Hitzer | Three-Dimensional Quadrics in Conformal Geometric Algebras and Their Versor Transformations[END_REF], based on subtle modifications of CGA and QCGA basis vectors. Finally, a computational comparison of these three approaches has been performed in [START_REF] Breuils | Transverse approach to geometric algebra models for manipulating quadratic surfaces[END_REF] by Breuils et al. For the extension of these approaches, Hitzer and Hildenbrand defined cubic curves and cubic surfaces from contact points with a major extension of QCGA in [START_REF] Hitzer | Cubic curves and cubic surfaces from contact points in conformal geometric algebra[END_REF]. Easter and Hitzer also defined cubic curves with an extension of DCGA in [START_REF] Easter | Triple conformal geometric algebra for cubic plane curves[END_REF] to triple CGA.

However, numerical issues arise while defining cubic curves from control points, partly due to the high embedding dimensions and high order of products. These issues were successfully addressed by De Keninck and Dorst in [START_REF] De Keninck | Hyperwedge[END_REF] through a numerically stable Levenberg-Marquardt algorithm defined for geometric algebra. This algorithm is compared to the usual way to wedge points in different geometric algebras including CGA. These results show better numerical stability as well as lower computational cost.

More complex surfaces can also be defined with rotors and it does not necessarily require high dimensional vector spaces. For example, Druoton et al. [START_REF] Druoton | The Non-Degenerate Dupin Cyclides in the Space of Spheres Using Geometric Algebra[END_REF] presented the representation of Dupin cyclides (fourth order surfaces or quartic surfaces) with CGA. In a six-dimensional vector space, Krasauskas [START_REF] Krasauskas | Unifying theory of Pythagorean-normal surfaces based on geometric algebra[END_REF] represented parametric rational surfaces and Pythagoreannormal surfaces. In [START_REF] Dorst | Conformal Villarceau Rotors[END_REF], Dorst handles Villarceau circles defined as orbits of point pairs in CGA. Also in CGA, Hadfield and Achawal et al. presented a ray-tracer algorithm [START_REF] Achawal | Ray-Tracing Objects and Novel Surface Representations in CGA[END_REF][START_REF] Hadfield | Exploring Novel Surface Representations via an Experimental Ray-Tracer in CGA[END_REF] that allows the representation of interpolated surfaces. In particular, the authors present a method to analytically compute the normal to these interpolated surfaces.

Conclusion

In this paper we have mainly surveyed applications of Clifford's geometric algebra that appeared in the last decade, since a similar survey was done about 10 years ago [START_REF] Hitzer | Applications of Clifford's Geometric Algebra[END_REF]. New ground is especially broken in the fields of software implementation, encryption, discrete geometry, geographic information systems, higher order curve and surface representations, and graphics. An undertaking like this is necessarily incomplete, but we hope to have given a somewhat representative overview of major developments.

  Shao et al. describe a novel algorithm to encrypt double color images into a single undistinguishable image in a quaternion gyrator domain. Phase masks used for encryption are obtained through iterative phase retrieval. The encrypted image is generated via cascaded quaternion gyrator transforms with different rotation angles. Parameters in quaternion gyrator transforms and phases serve as encryption keys. Numerical simulations have demonstrated validity and noise robustness. Furthermore, in [181] Shao et al construct a robust watermarking scheme for color images based on quaternion-type moment invariants and visual cryptography, dealing holistically with multichannel information. Experiments show validity, feasibility and attack robustness.

Even though this section appears relatively short, we remind the reader that a host of graphics relevant tools is described in other sections of this survey.

For a new comprehensive textbook on quaternion and Clifford Fourier transforms, see[START_REF] Hitzer | Quaternion and Clifford Fourier Transforms[END_REF]. For a framework of computer implementation of discrete quaternion and Clifford Fourier transforms, see[START_REF] Sangwine | Complex and hypercomplex discrete Fourier transforms based on matrix exponential form of Euler's formula[END_REF].

Acknowledgment

We thank David Da Silva for references on applications of quaternions, octonions and geometric algebra to cryptography. E.H. thanks God: Soli Deo Gloria.