Drafts for Notes on Clifford Algebras [ca-001K]

Example. A rational motor checks every projective coordinate layer [fcap-002T]

Take \[c=\frac 35,\qquad s=\frac 45,\qquad t=(4,0).\] Then \[U=\frac {3-4e_{12}}5,\qquad R_U=\frac 1{25}\begin {pmatrix}-7&-24\\24&-7\end {pmatrix},\] and the ordered motor is \[M=T(4,0)U =\frac 35-\frac 45e_{12}-\frac 85e_{20}-\frac 65e_{01}.\] Its full named tuple and the ascending core tuple supplied by Proposition [fcap-002R][fcap-002R] are \[\begin {aligned} \operatorname {named}(M) &=\left (\frac 35,0,0,0,-\frac 45,-\frac 85,-\frac 65,0\right ),\\ \operatorname {core}(M) &=\left (\frac 35,0,0,-\frac 65,0,\frac 85,-\frac 45,0\right ). \end {aligned}\] Thus the calculation enters the algebra through all eight-coordinate conversion data, including the \(e_{20}=-e_{02}\) sign.

The point and line \[P_0=P(1,3,-1),\qquad L_0=L(3,-1,0)\] are incident. The motor action gives \[\begin {aligned} MP_0M^{-1}&=P\left (1,\frac {103}{25},\frac {79}{25}\right ),\\ ML_0M^{-1}&=L\left (\frac {47}{25},\frac 7{25},-\frac {24}{25}\right ). \end {aligned}\] The output incidence check is \[\frac {47}{25} +\frac 7{25}\frac {103}{25} -\frac {24}{25}\frac {79}{25}=0.\] The output point has tuples \[\begin {aligned} \operatorname {named}(MP_0M^{-1}) &=\left (0,0,0,0,1,\frac {103}{25},\frac {79}{25},0\right ),\\ \operatorname {core}(MP_0M^{-1}) &=\left (0,0,0,\frac {79}{25},0,-\frac {103}{25},1,0\right ). \end {aligned}\] This checks the geometric action and the signed coordinate adapter on the same exact example.

Reversal gives the algebra inverse, and sandwiching the two outputs by \(\widetilde M\) and \(M\) returns both original representatives. In the same ordered factorization, \[M^{-1}=M\left (\left (\frac {28}{25},\frac {96}{25}\right ),U^{-1}\right ).\] Composition order is visible: reversing the factors gives \[UT(4,0):P(1,3,-1)\longmapsto P(1,-1,7),\] which differs from the output above. These are exact rational identities, not floating-point or private-software evidence. FCAP does not yet expose the named executable product and conversion theorems needed to certify this calculation as a public implementation refinement.

Proposition. Translations and rotations form an exact plane-motor family [fcap-002S]

Retain the real degenerate frame and projective encodings of Convention [fcap-002Q][fcap-002Q]. Put \(E=e_{01}\). Since \(E^2=0\) and \(\widetilde E=-E\), the one-axis motor \[M_d=1-dE\] satisfies \[M_d^{-1}=\widetilde M_d=1+dE,\qquad M_sM_t=M_{s+t}.\] It belongs to the actual vector-generated Spin carrier because \[M_d=e_1(e_1+de_0),\qquad Q(e_1)=Q(e_1+de_0)=1\] CliffordAlgebra.ι_mul_ι_mem_spinGroup_of_norm_mul_norm_eq_one. Direct sandwich multiplication gives \[\begin {aligned} M_dP(w,x,y)M_d^{-1}&=P(w,x+2dw,y),\\ M_dL(d_0,a,b)M_d^{-1}&=L(d_0-2da,a,b). \end {aligned}\] Thus the radical shear of Example [fcap-002N][fcap-002N] is, in the fixed projective encoding, translation by \((2d,0)\). The packaged nondegenerate transvection theorem is not used.

For a general translation vector \(t=(t_x,t_y)\), define \[T(t)=1-\frac {t_x}{2}e_{01}+\frac {t_y}{2}e_{20}.\] Each increment squares to zero, and their products in either order vanish, so \[T(t)T(v)=T(t+v),\qquad T(t)^{-1}=T(-t).\] More precisely, \[T(t)= \left [e_1\left (e_1+\frac {t_x}{2}e_0\right )\right ] \left [e_2\left (e_2+\frac {t_y}{2}e_0\right )\right ].\] Every displayed vector has quadratic value \(1\); hence \(T(t)\) lies in the same actual Spin carrier. This is a direct factorization in the full degenerate Clifford algebra, not membership in a radical quotient.

Let \(c^2+s^2=1\) and put \[U=c-se_{12}=e_1(ce_1-se_2),\qquad U^{-1}=\widetilde U=c+se_{12}.\] Again both vector factors have quadratic value \(1\). Its active spatial matrix is \[R_U= \begin {pmatrix} c^2-s^2&-2cs\\ 2cs&c^2-s^2 \end {pmatrix}.\] For the ordered factorization \(M(t,U)=T(t)U\), which applies the rotation before the translation, write \(p=(x,y)\) and \(n=(a,b)\). Then \[\begin {aligned} (w,p)&\longmapsto (w,R_Up+wt),\\ (d,n)&\longmapsto (d-t\mathbin {\cdot }R_Un,R_Un). \end {aligned}\] The second row is the line action. It preserves incidence because \[(d-t\mathbin {\cdot }R_Un)w +(R_Un)\mathbin {\cdot }(R_Up+wt)=dw+n\mathbin {\cdot }p.\] In particular, translations fix every ideal point \((0,p)\). The selected family is closed, with exact order and inverse \[\begin {aligned} M(t,U)M(v,V)&=M(t+R_Uv,UV),\\ M(t,U)^{-1}&=M(-R_U^{-1}t,U^{-1}). \end {aligned}\] These formulas prove the claims for this family; they do not assert that every motor is a single exponential.

Sokolov's negative-half-angle rotor and nilpotent translator fix the sign and half-factor in this convention [sokolov2013foundations, (51)--(52), p. 39]. Independently, [dereli2010degenerate, Lemma 2.2, p. 567] proves \(\exp (aF)=1+aF\) for a radical vector \(F\); taking \(F=e_0\) and \(a=(t_xe_1+t_ye_2)/2\) gives exactly the increment of \(T(t)\). That paper later defines a quotient carrier [dereli2010degenerate, Definition 2.4, p. 570]; no such quotient is imported here. The vector-pair factorizations above establish membership in the carrier actually used in these notes.

Notes on formalized Clifford algebra programme [fcap-0001]

These are the accompanying mathematical notes for the experimental research project FCAP. FCAP is read “F-cap,” and studies whether Lean can serve both as a formal language for the abstract and concrete mathematics of Clifford algebras and as an implementation language for efficient symbolic and numerical computation. It is also a coined acronym for “Formalized Clifford Algebra Programme.”

FCAP's formalization is still at an early spike-test stage. The main storyline follows its own coordinate representations and orthogonal-product transport. The appendix is a mathematical companion to Tau Ceti's Clifford and Spin work: it connects the filtered exterior model, reflection and Pin/Spin constructions, bivector lifts, real signatures, and spinor modules. Those results supply context and possible tools for FCAP's longer program; the appendix does not claim they are FCAP formalizations.

Coordinate representations [fcap-0002]

A basis of the generating module gives coordinates on the exterior algebra, and the exterior equivalence transports those coordinates to the Clifford algebra. The empty and singleton coordinates fix the scalar and generator conventions. Orthogonality then controls how certain ordered products pass between the two algebras.

Proposition. Finite blade coordinates refine Clifford multiplication [fcap-002P]

Retain the orthogonal \(R\)-basis \(b:I\to M\) and the inverse of \(2\) from the preceding theorem. Let \(\mathcal C\) be the \(R\)-module of finitely supported coefficient families \(c=(c_s)\) indexed by finite subsets of \(I\), and let \(\delta _s\) be its standard coordinate vectors. Define a bilinear product by the structure constants \[\delta _s\ast \delta _t =k(s,t)\delta _{s\mathbin {\triangle }t}.\] Equivalently, for every finite subset \(u\), \[(c\ast d)_u =\sum _{\substack {s\in \operatorname {supp}(c),\ t\in \operatorname {supp}(d)\\ s\mathbin {\triangle }t=u}} c_s d_t k(s,t).\] The sum and the resulting support are finite, even when \(I\) is infinite.

Let \[\eta (c)=\sum _s c_sE_s,\qquad \operatorname {enc}=\eta ^{-1}.\] The transported-basis identification in the preceding theorem makes \(\eta \) a linear equivalence, and its multiplication refinement is \[\eta (c\ast d)=\eta (c)\eta (d),\qquad \operatorname {enc}(xy) =\operatorname {enc}(x)\ast \operatorname {enc}(y).\] To prove the first equality, expand the two finite sums, apply the blade product to each pair, and regroup by symmetric difference. The second follows by applying \(\eta ^{-1}\). Thus the displayed structure constants, rather than an implicit transport definition, determine the coordinate product.

For example, work over \(\mathbb Q\) with ordered indices \(0<1<2\) and diagonal values \((q_0,q_1,q_2)=(0,2,-3)\). The formula gives \[\begin {aligned} E_{\{0,2\}}E_{\{1,2\}}&=3E_{\{0,1\}},& E_{\{1,2\}}E_{\{0,2\}}&=-3E_{\{0,1\}},\\ E_{\{0,1\}}E_{\{0,2\}}&=0,& E_{\{1,2\}}^2&=6. \end {aligned}\] The first product has one strict cross inversion, the second has two, and the third retains the repeated radical factor \(q_0=0\). Also \[(\delta _{\{0,2\}}+2\delta _{\{0,1\}})\ast \delta _{\{1,2\}} =3\delta _{\{0,1\}}+4\delta _{\{0,2\}}.\] This matches \((E_{\{0,2\}}+2E_{\{0,1\}})E_{\{1,2\}}\). Nonzero basis blades remain basis vectors although their products can vanish.

Orthogonality is essential to the symmetric-difference rule. Over \(\mathbb Q\), take \(Q(xe_0+ye_1)=x^2+xy+y^2\). Then \(B_Q(e_0,e_1)=1\) and \[T_Q(\iota _Q(e_0)\iota _Q(e_1)) =e_0\wedge e_1+\frac 12.\] The correction is the half-polar value. The general construction in Definition [fcap-0003][fcap-0003][fcap-0003] already gives \(T_Q\) as a linear equivalence; this example shows directly that it is not an algebra equivalence. The contraction and change-of-form recurrences in [wieser2024formalizing, 8.4, (8.54)--(8.55), p. 106] give the same sign and normalization.

The ascending-basis theorem and change-of-form maps in [grinberg2016clifford, Theorem 2, p. 3, and Theorems 34--35, pp. 55--56] corroborate the ordered basis and orthogonal transport. The latter is the specialization with symmetric half-polar form \(B_Q/2\); an arbitrary nonsymmetric form with the same diagonal need not define this transport. Wieser's exterior equivalence likewise assumes an inverse of \(2\) [wieser2024formalizing, 9.3.5, p. 120].

The displayed finite formula is a mathematical coordinate refinement. The currently public FCAP basis transport is noncomputable and does not expose an executable coordinate type, multiplication kernel, or encode/decode product theorem. Those declarations, together with any fixed finite-slot or floating-point contract, remain a separate implementation step.

Lemma. Orthogonal pair transport [wieser2024formalizing, 8.4] [fcap-0004]

Let \(R\) be a commutative ring in which \(2\) is invertible, let \(M\) be an \(R\)-module, and let \(Q\) be a quadratic form on \(M\). Write \(T_Q\) for the linear equivalence from \(\mathcal {C}\kern -2pt\ell (Q)\) to the exterior algebra supplied by CliffordAlgebra.equivExterior. It is a module equivalence, not an algebra equivalence.

For vectors \(m,n \in M\), the change-of-form calculation for \(T_Q(\iota _Q(m)\iota _Q(n))\) has one extra scalar contribution, evaluated by the bilinear form associated to \(-Q\). If \(m\) and \(n\) are \(Q\)-orthogonal, that contribution vanishes. The resulting two-generator calculation is \[T_Q\bigl (\iota _Q(m)\iota _Q(n)\bigr )=\iota _0(m)\iota _0(n).\] This is the first point at which an orthogonality hypothesis changes the transport calculation. It does not turn \(T_Q\) into a multiplicative map.

The change-of-form construction is the relevant mathematical background in [wieser2024formalizing, 8.4], and the Lean construction of \(\operatorname {equivExterior}\) is described in [wieser2024formalizing, 9.3.5]. The concrete geometric-product discussion in [wieser2024formalizing, 2.1.2] motivates the role of orthogonality, but does not provide this note's formal interface.

Thus orthogonality removes precisely the scalar correction in the two-generator change-of-form identity. No basis or reordering convention is needed.

Theorem. Pairwise orthogonal list transport [wieser2024formalizing, 8.4, (8.55)] [fcap-0006]

Let \(R\) be a commutative ring in which \(2\) is invertible, let \(M\) be an \(R\)-module, and let \(Q\) be a quadratic form on \(M\). For a list \(l\) of vectors, write \[P_Q([])=1, \qquad P_Q(m::l)=\iota _Q(m)P_Q(l),\] and write \(T_Q\) for the linear equivalence CliffordAlgebra.equivExterior from \(\mathcal {C}\kern -2pt\ell (Q)\) to \(\bigwedge _R M\). In the corresponding zero-form product notation, suppose every earlier vector in \(l\) is \(Q\)-orthogonal to every later vector. Then \[T_Q(P_Q(l))=P_0(l).\] The order of the list is unchanged. The equality concerns this product under the stated orthogonality condition; it does not say that \(T_Q\) preserves arbitrary products.

The calculation proceeds from the head of the list. The one-generator change-of-form recurrence separates \(T_Q(P_Q(m::l))\) into the zero-form generator \(\iota _0(m)\) times the transported tail and a left-contraction correction. Pairwise orthogonality makes the associated dual vector vanish on every member of the tail. The criterion in Lemma [fcap-0005][fcap-0005] therefore kills the correction, and the induction hypothesis transports the tail.

The contraction recurrence in [wieser2024formalizing, 8.4, (8.54)], the change-of-form recurrence in [wieser2024formalizing, 8.4, (8.55)], and the exterior equivalence in [wieser2024formalizing, 9.3.5] supply the local identities. Their induction over a pairwise-orthogonal list gives the displayed theorem; the source locations do not state that finite-list consequence separately.

The order of the list is fixed throughout. Reordering would require an additional permutation-sign calculation and is not a consequence of this theorem.

Spin-representation roadmap [fcap-0019]

This appendix follows the mathematical dependencies organized by the spin-representation roadmap and the orthogonal Spin-groups roadmap of Tau Ceti. The first organizes the filtered Clifford algebra, bivectors, spinor modules, and real classification. The second organizes reflections, the Pin and Spin covers, Clifford norms, and the orthogonal action. These roadmaps guide the scope and dependencies below; formalization links refer to specific landed declarations.

The filtered Clifford algebra first exposes its exterior shadow. Reflections then lead to the global Pin and Spin extensions, while bivectors provide the algebraic infinitesimal orthogonal action. A polar-dual basis turns that action into a coordinate lift, and the Killing pairing gives the adjoint case. The Lie functor records the separate differential bridge from smooth group homomorphisms. A polarization joins the algebraic group and Lie constructions in the exterior spinor model. The real-signature recurrence and classification form a parallel algebraic branch and do not depend on the spinor-module or double-cover join.

Theorem. Strict-inversion multiplication of orthogonal blades [fcap-002O]

Let \(R\) be a commutative ring, \(M\) an \(R\)-module, \(Q\) a quadratic form on \(M\), and \(I\) a linearly ordered type. Suppose \(b_i\in M\) is a family satisfying \(B_Q(b_i,b_j)=0\) whenever \(i\ne j\). For a finite subset \(s\subset I\), let \(E_s\) be the product of the generators \(\iota _Q(b_i)\) in strictly increasing order, with \(E_\varnothing =1\). Put \[q_i=Q(b_i),\qquad N(s,t)=\#\{(i,j)\in s\times t:i>j\}.\] \[k(s,t)=(-1)^{N(s,t)}\prod _{i\in s\cap t}q_i.\] If \(\operatorname {sc}:R\to \mathcal {C}\kern -2pt\ell (Q)\) is the central scalar map, then \[E_sE_t=\operatorname {sc}(k(s,t))E_{s\mathbin {\triangle }t}.\] This identity needs no basis, field, nondegeneracy, inverse of \(2\), or invertibility of the \(q_i\). In particular, zero and zero-divisor metric factors remain in the formula.

Indeed, stably sort the concatenation of the increasing words for \(s\) and \(t\). Each strict cross inversion \(i>j\) exchanges two distinct orthogonal generators and contributes one minus sign. Equal indices are not inversions. After sorting, the two copies of every \(i\in s\cap t\) are adjacent and collapse by \(\iota _Q(b_i)^2=\operatorname {sc}(q_i)\). The unpaired increasing indices are exactly \(s\mathbin {\triangle }t\). No step divides or cancels a scalar CliffordAlgebra.prod_map_ι_mul_ι_of_forall_isOrtho CliffordAlgebra.prod_map_ι_sq_scalar.

Now additionally suppose that \(b\) is an \(R\)-basis and that \(2\) is invertible in \(R\). The increasing list attached to \(s\) is pairwise orthogonal, so Theorem [fcap-0006][fcap-0006] identifies its Clifford product with the corresponding exterior monomial under \(T_Q\). Consequently \[E_s=B_{Q,b}(s),\] where \(B_{Q,b}\) is the particular transported exterior basis of Definition [fcap-0003][fcap-0003][fcap-0003]. This uses a supplied orthogonal basis; it does not assert that every quadratic form over every ring admits one.

Chevalley's ordered-monomial argument starts from \(x^2=Q(x)\) and \(xy+yx=B_Q(x,y)\) [chevalley1954algebraic, II.1.1--2, pp. 39--40]. [grinberg2016clifford, Theorem 2 and Definition 4, p. 3] gives the ascending finite-subset basis for finite free modules over a commutative ring, while [wieser2024formalizing, 2.1.2, (2.4) and Table 2.1, p. 7] checks adjacent swaps and repeated squares in Euclidean three-space. Wieser's dot product is \(B_Q/2\), and his cyclic slot \(e_ze_x\) is the negative of our increasing slot \(e_xe_z\). The strict inversion count and arbitrary diagonal factors above synthesize these calculations without importing that cyclic convention.

Proposition. The signed projective adapter preserves products and incidence [fcap-002R]

For the two orders in the preceding Convention, define \[\begin {aligned} \operatorname {toCore} &(s,c_0,c_1,c_2,c_{12},c_{20},c_{01},c_{012})\\ &=(s,c_0,c_1,c_{01},c_2,-c_{20},c_{12},c_{012}),\\ \operatorname {toNamed} &(r,r_0,r_1,r_{01},r_2,r_{02},r_{12},r_{012})\\ &=(r,r_0,r_1,r_2,r_{12},-r_{02},r_{01},r_{012}). \end {aligned}\] They are inverse linear maps on every eight-tuple. The minus sign is exactly \(e_{20}=-e_{02}\); substituting either displayed tuple into the other proves both round trips coordinate by coordinate.

This signed permutation also preserves the Clifford product, rather than merely being declared to do so. Encode the ascending blades by masks \(0,\ldots ,7\), with bit \(i\) representing \(e_i\), and put \[\sigma =(0,1,2,4,6,5,3,7),\qquad \epsilon =(1,1,1,1,1,-1,1,1).\] Then the \(i\)-th named blade is \(S_i=\epsilon _iC_{\sigma _i}\). For masks identified with subsets of \(\{0,1,2\}\), set \[g(m,n)=(-1)^{\#\{(i,j)\in m\times n:i>j\}} \prod _{i\in m\cap n}q_i, \qquad (q_0,q_1,q_2)=(0,1,1).\] The strict-inversion formula of Theorem [fcap-002O][fcap-002O] gives \(C_mC_n=g(m,n)C_{m\mathbin {\triangle }n}\). If \(\sigma _k=\sigma _i\mathbin {\triangle }\sigma _j\), it follows that \[S_iS_j=\epsilon _i\epsilon _j\epsilon _k g(\sigma _i,\sigma _j)S_k.\] This checks every one of the \(64\) basis pairs, including the zero products caused by a repeated \(e_0\); bilinearity proves multiplication compatibility for arbitrary tuples. Addition, scalar multiplication, and the unit are preserved immediately.

The permutation \(\sigma \) preserves grade. Reversal multiplies a grade-\(k\) blade by \((-1)^{k(k-1)/2}\), so it commutes with the adapter. For exterior multiplication, the same crossing sign applies to disjoint masks and both sides vanish when masks overlap. Hence the adapter also preserves reversal and exterior multiplication. It therefore preserves inverses wherever they exist and, in particular, \[\operatorname {toCore}(MX\widetilde M) =\operatorname {toCore}(M)\operatorname {toCore}(X) \widetilde {\operatorname {toCore}(M)}.\] Under the ordered basis of Proposition [fcap-002P][fcap-002P], these equations give the corresponding abstract-coordinate commuting square. They do not supply a named executable coordinate type or software-storage theorem.

For the projective representatives of the preceding Convention, direct exterior multiplication gives \[L(d,a,b)\wedge P(w,x,y)=(dw+ax+by)I.\] Since \(I\) is a nonzero basis blade, the point lies on the line precisely when \(dw+ax+by=0\); no inverse pseudoscalar is used. This agrees with Sokolov's incidence equation [sokolov2013foundations, (37), p. 25]. The four coordinate rows are \[\begin {aligned} [L(d,a,b)]_S&=(0,d,a,b,0,0,0,0),\\ [L(d,a,b)]_C&=(0,d,a,0,b,0,0,0),\\ [P(w,x,y)]_S&=(0,0,0,0,w,x,y,0),\\ [P(w,x,y)]_C&=(0,0,0,y,0,-x,w,0). \end {aligned}\] Thus the abstract incidence calculation and both coordinate presentations agree through the full adapter.

The ideal-direction sign is fixed by the same convention. Namely, \[e_0\wedge (ue_1+ve_2) =ue_{01}+ve_{02}=ue_{01}-ve_{20}=P(0,-v,u).\] The input pair \((u,v)\) is a line normal, while the resulting homogeneous point has direction \((-v,u)\). Direction \((u,v)\) itself is represented by \(P(0,u,v)\). This distinction keeps the algebraic encoding separate from a drawn arrow-orientation convention.

The result synthesizes Sokolov's projective encoding with the explicit blade kernel of Theorem [fcap-002O][fcap-002O] and the finite coordinate refinement of Proposition [fcap-002P][fcap-002P]. FCAP's current exterior-basis transport is noncomputable and does not yet expose these named conversion functions, an executable multiplication kernel, or compatibility theorems. Those implementation and external storage-order claims remain separate work.

Definition. Transported exterior-basis coordinates [wieser2024formalizing, 9.3.5] [fcap-0003]

Let \(R\) be a commutative ring in which \(2\) is invertible, let \(M\) be an \(R\)-module, and choose a basis \(b\) indexed by a linearly ordered type. Write \(E_b(s)\) for the exterior-basis vector indexed by a finite subset \(s\). For a quadratic form \(Q\), the Mathlib linear equivalence CliffordAlgebra.equivExterior from \(\mathcal {C}\kern -2pt\ell (Q)\) to \(\bigwedge _R M\) gives a coordinate basis \[B_{Q,b}(s) = \operatorname {equivExterior}(Q)^{-1}(E_b(s)).\] This basis is transported through a linear equivalence. It does not say that the equivalence preserves multiplication or that Clifford multiplication becomes exterior multiplication. The basis-free construction is developed in [wieser2022formalizing].

The exterior equivalence is treated in [wieser2024formalizing, 9.3.5].

Two calculations anchor the choice. The empty subset maps to the scalar unit, \[B_{Q,b}(\varnothing ) = 1,\] and a singleton maps to the corresponding Clifford generator, \[B_{Q,b}(\{i\}) = \iota _Q(b(i)).\] These are module-level identities: they determine the first two coordinate types but do not determine multiplication of arbitrary coordinates.

For subsets with several elements, a coordinate formula additionally needs an ordering convention and its attendant signs. No such convention is implicit in the transported basis.

Convention. Two coordinate orders for the degenerate projective plane [fcap-002Q]

Work over \(\mathbb R\) with an orthogonal frame \(e_0,e_1,e_2\) and \[Q(ae_0+be_1+ce_2)=b^2+c^2.\] Thus \(e_0^2=0\), \(e_1^2=e_2^2=1\), and distinct generators anticommute. Suppress the canonical generator map in products and write \(e_{ij}=e_ie_j\) and \(I=e_{012}\). This is the full degenerate Clifford algebra: no radical quotient is taken, \(I^2=0\), and \(I\) will never be inverted. The Euclidean row of Sokolov's metric table fixes this convention [sokolov2013foundations, Section 2.4, p. 20].

We will compare two mathematical basis orders. Sokolov's displayed order is \[S=(1,e_0,e_1,e_2,e_{12},e_{20},e_{01},e_{012}),\] whereas the ascending-mask order used by the preceding coordinate cards is \[C=(1,e_0,e_1,e_{01},e_2,e_{02},e_{12},e_{012}).\] The only change of blade orientation is \(e_{20}=-e_{02}\). These are declared mathematical orders; neither is an assertion about any software library's physical storage or iteration order. Sokolov's basis table appears with his duality calculation in [sokolov2013foundations, Section 2.6, p. 25].

Use nonzero homogeneous representatives \[L(d,a,b)=de_0+ae_1+be_2,\qquad P(w,x,y)=we_{12}+xe_{20}+ye_{01}\] for a projective line and point. A finite point has \(w\ne 0\) and may be normalized to \(w=1\); \(e_0\) is the ideal line, and every nonzero \(P(0,x,y)\) is an ideal point. These encodings and their ideal elements are the source conventions in [sokolov2013foundations, Section 2.9, pp. 32--33].

Lemma. Vanishing list contraction [wieser2024formalizing, 8.4, (8.54)] [fcap-0005]

Let \(R\) be a commutative ring, \(M\) an \(R\)-module, \(Q\) a quadratic form on \(M\), and \(d : M \to R\) a linear functional. For a list \(l\) of generators, define an ordered product by \[P_Q([])=1, \qquad P_Q(m::l)=\iota _Q(m)P_Q(l),\] and write \(C_{Q,d}\) for left contraction by \(d\). The condition \(\forall m\in l,\ d(m)=0\) forces \(C_{Q,d}(P_Q(l))=0\).

There is one induction calculation. The empty product contracts to zero. At a head \(m\), the generator recurrence \[C_{Q,d}(P_Q(m::l))=d(m)P_Q(l)-\iota _Q(m)C_{Q,d}(P_Q(l))\] is the local rule in [wieser2024formalizing, 8.4, (8.54)]. The hypothesis deletes the first summand, and the induction hypothesis deletes the second. This turns the recurrence into a finite-list vanishing criterion rather than a calculation for one fixed product.

Only the ordered recurrence and pointwise vanishing of \(d\) matter; no basis or reordering convention is used.

Definition. dual module [ca-0012]

The dual module \(M^* : M \to _{l[R]} R\) is the \(R\)-module of all linear maps from \(M\) to \(R\).

Definition. even subalgebra of Clifford algebra [wieser2022computing] [ca-001J]

The even subalgebra of the Clifford algebra is defined as the submodule of the Clifford algebra \[ \mathcal {C}\kern -2pt\ell ^{+}(Q) \equiv \left \{ x_1 \cdots x_k \in \mathcal {C}\kern -2pt\ell \mid x \in V, k \text { is even} \right \} \] which also forms a subalgebra. Its elements are called even elements, as they can be expressed as the geometric product of an even number of 1-vectors.

Definition. ring homomorphism [chen2016infinitely, 4.5.1] [ca-0014]

Let \((\alpha , +_\alpha , *_\alpha )\) and \((\beta , +_\beta , *_\beta )\) be rings. A ring homomorphism from \(\alpha \) to \(\beta \) is a map \(\mathit {1} : \alpha \to _{+*} \beta \) such that

  1. \(\mathit {1}(x +_{\alpha } y) = \mathit {1}(x) +_{\beta } \mathit {1}(y)\) for each \(x,y \in \alpha \).
  2. \(\mathit {1}(x *_{\alpha } y) = \mathit {1}(x) *_{\beta } \mathit {1}(y)\) for each \(x,y \in \alpha \).
  3. \(\mathit {1}(1_{\alpha }) = 1_{\beta }\).