Preliminaries [ca-000N]
Preliminaries [ca-000N]
This section introduces the algebraic environment of Clifford Algebra, covering vector spaces, groups, algebras, representations, modules, multilinear algebras, quadratic forms, filtrations and graded algebras.
The material in this section should be familiar to the readers, but it is worth reading through it to become familiar with the notation and terminology that is used, as well as their counterparts in Lean, which usually require some additional treatment, both mathematically and technically (probably applicable to other formal proof verification systems).
Details can be found in the references in corresponding section, or you may use the L∃∀N button to check the corresponding \(\textsf {Mathlib}\) document and Lean 4 source code.
In this section, we follow [jadczyk2019notes], with supplements from [garling2011clifford][chen2016infinitely], and extensive modifications to match the counterparts in Lean's \(\textsf {Mathlib}\).
1. basics: from groups to modules [ca-000P]
1. basics: from groups to modules [ca-000P]
1.1. [ca-000O]
\card{convention}{definition style}{
1.1. [ca-000O]
In this document, we unify the informal mathematical language for a definition to:
\optional{Let \placeholder{\(X\)} be a \placeholder{\vocab{concept \(X\)}}. }
A \newvocab{\placeholder{concept \(Z\)}} is a set/pair/triple/tuple \((Z, \mathtt {op}, ...)\), satisfying:
- \placeholder{\(Z\)} is a \placeholder{\vocab{concept \(Y\)}} \optional{ over \placeholder{\(X\)} under \placeholder{op} }.
- \placeholder{formula} for all \placeholder{elements in \(Z\)} \optional{(\vocab{ \placeholder{property} })}.
- \optional{for each \placeholder{element} in \placeholder{\vocab{concept \(X\)}}, } there exists \placeholder{element} such that \placeholder{formula} for all \placeholder{elements in concept \(Z\)}.
- \optional{\placeholder{op} is called \placeholder{\vocab{op name}}, }for all \placeholder{elements in \(Z\)}, we have
- \placeholder{formula}
- \placeholder{formula}
By default, \placeholder{\(X\)} is a set, \placeholder{op} is a binary operation on \placeholder{\(X\)}.
}
definition 1.2. group [garling2011clifford, 1.1] [ca-000Q]
definition 1.2. group [garling2011clifford, 1.1] [ca-000Q]
A group is a pair \((G, *)\), satisfying:
- \((a * b) * c = a * (b * c)\) for all \(a, b, c \in G\) (associativity).
- there exists \(1 \in G\) such that \[1 * a = a * 1 = a\] for all \(a \in G\).
- for each \(a \in G\), there exists \(a^{-1} \in G\) such that \[a * a^{-1} = a^{-1} * a = 1\].
remark 1.3. [ca-000R]
remark 1.3. [ca-000R]
It then follows that \(1\), the identity element, is unique, and that for each \(g \in G\) the inverse \(g^{-1}\) is unique. A group G is abelian, or commutative, if \(g * h = h * g\) for all \(g, h \in G\).
notation 1.4. product [ca-000S]
notation 1.4. product [ca-000S]
In literatures, the binary operation of a group is usually called a product. It's denoted by juxtaposition \(g h\), and is understood to be a mapping \((g, h) \mapsto g * h\) from \(G \times G\) to \(G\).
Here we use an explicit symbol for the operation. It can be denoted multiplicatively as \(*\) in Group or additively as \(+\) in AddGroup, where the identity element will be denoted by \(1\) or \(0\), respectively.
Sometimes we use notations with subscripts (e.g. \(*_G\), \(1_G\)) to indicate where they are.
\(\textsf {Mathlib}\) encodes the mapping \(G \times G \to G\) as \(G \to G \to G\), it is understood to be \(G \to (G \to G)\), that sends \(g \in G\) to a mapping that sends \(h \in G\) to \(g * h \in G\).
Furthermore, a mathematical construct, e.g. a group, is represented by a "type", as Lean has a dependent type theory foundation, see [carneiro2019type] and [ullrich2023extensible, sec. 3.2].
definition 1.5. monoid [ca-000T]
definition 1.5. monoid [ca-000T]
A monoid is a pair \((R, *)\), satisfying:
- \((a * b) * c = a * (b * c)\) for all \(a, b, c \in R\) (associativity).
- there exists an element \(1 \in R\) such that \(1 * a = a * 1 = a\) for all \(a \in R\) i.e. \(1\) is the multiplicative identity (neutral element).
definition 1.6. ring [jadczyk2019notes, 1.1] [ca-000U]
definition 1.6. ring [jadczyk2019notes, 1.1] [ca-000U]
A ring is a triple \((R, +, *)\), satisfying:
- \(R\) is a commutative group under \(+\).
- \(R\) is a monoid under \(*\).
- for all \(a, b, c \in R\), we have
- \(a * (b + c) = a * b + a * c\)
- \((a + b) * c = a * c + b * c\)
remark 1.7. [ca-000V]
remark 1.7. [ca-000V]
In applications to Clifford algebras \(R\) will be always assumed to be commutative.
definition 1.8. division ring [ca-000W]
L∃∀N
definition 1.8. division ring [ca-000W]
L∃∀N
A division ring is a ring \((R, +, *)\), satisfying:
- \(R\) contains at least 2 elements.
- for all \(a \neq 0\) in \(R\), there exists a multiplicative inverse \(a^{-1} \in R\) such that \[ a * a^{-1} = a^{-1} * a = 1 \]
definition 1.9. module [jadczyk2019notes, 1.3] [ca-000X]
L∃∀N
definition 1.9. module [jadczyk2019notes, 1.3] [ca-000X]
L∃∀N
Let \(R\) be a commutative ring. A module over \(R\), called an \(R\)-module, is a pair \((M, \bullet )\), satisfying:
- M is a group under \(+\).
- \(\bullet : R \to M \to M\) is called scalar multiplication, for every \(a, b \in R\), \(x, y \in M\), we have
- \(a \bullet (x + y) = a \bullet x + b \bullet y\)
- \((a + b) \bullet x = a \bullet x + b \bullet x\)
- \(a * (b \bullet x)=(a * b) \bullet x\)
- \(1_R \bullet x = x\)
definition 1.11. vector space [jadczyk2019notes, 1.5] [ca-000Z]
L∃∀N
definition 1.11. vector space [jadczyk2019notes, 1.5] [ca-000Z]
L∃∀N
If \(R\) is a division ring, then a module \(M\) over \(R\) is called a vector space.
remark 1.12. [ca-0010]
remark 1.12. [ca-0010]
For generality, \(\textsf {Mathlib}\) uses Module throughout for vector spaces, particularly, for a vector space \(V\), it's usually declared as
/--
Let $K$ be a division ring, a module $V$ over $K$ is a vector space
where being a module requires $V$ to be a commutative group over $+$.
-/
variable [DivisionRing K] [AddCommGroup V] [Module K V]
For definitions/theorems about it, and most of them can be found under Mathlib.LinearAlgebra
e.g. LinearIndependent.
definition 1.13. submodule [ca-0011]
definition 1.13. submodule [ca-0011]
A submodule \(N\) of \(M\) is a module \(N\) such that every element of \(N\) is also an element of \(M\). If \(M\) is a vector space then \(N\) is called a subspace.
definition 1.14. dual module [ca-0012]
L∃∀N
definition 1.14. dual module [ca-0012]
L∃∀N
The dual module \(M^* : M \to _{l[R]} R\) is the \(R\)-module of all linear maps from \(M\) to \(R\).
2. algebras [ca-0013]
2. algebras [ca-0013]
definition 2.1. ring homomorphism [chen2016infinitely, 4.5.1] [ca-0014]
definition 2.1. 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
- \(\mathit {1}(x +_{\alpha } y) = \mathit {1}(x) +_{\beta } \mathit {1}(y)\) for each \(x,y \in \alpha \).
- \(\mathit {1}(x *_{\alpha } y) = \mathit {1}(x) *_{\beta } \mathit {1}(y)\) for each \(x,y \in \alpha \).
- \(\mathit {1}(1_{\alpha }) = 1_{\beta }\).
definition 2.2. isomorphism, endomorphism, automorphism [ca-0015]
definition 2.2. isomorphism, endomorphism, automorphism [ca-0015]
Isomorphism \(A \cong B\) is a bijective homomorphism \(\phi : A \to B\) (it follows that \(\phi ^{-1} : B \to A\) is also a homomorphism).
Endomorphism is a homomorphism from an object to itself, denoted \(\operatorname {End}(A)\).
Automorphism is an endomorphism which is also an isomorphism, denoted \(\operatorname {Aut}(A)\).
definition 2.3. algebra [ca-0016]
L∃∀N
definition 2.3. algebra [ca-0016]
L∃∀N
Let \(R\) be a commutative ring. An algebra \(A\) over \(R\) is a pair \((A, \bullet )\), satisfying:
- \(A\) is a ring under \(*\).
- there exists a ring homomorphism from \(R\) to \(A\), denoted \(\mathit {1} : R \to _{+*} A\).
- \(\bullet : R \to M \to M\) is a scalar multiplication
- for every \(r \in R\), \(x \in A\), we have
- \(r * x = x * r\) (commutativity between \(R\) and \(A\))
- \(r \bullet x = r * x\) (definition of scalar multiplication)
notation 2.4. [ca-0017]
notation 2.4. [ca-0017]
Following literatures, for \(r \in R\),
usually we write \(\mathit {1}_A(r) : R \to _{+*} A\) as a product \(r \mathit {1}_A\) if not omitted,
while they are written as a call to
algebraMap _ _ r
in \(\textsf {Mathlib}\),
which is defined to be Algebra.toRingHom r
.
remark 2.5. [ca-0018]
remark 2.5. [ca-0018]
The definition above (adopted in \(\textsf {Mathlib}\)) is more general than the definition in literature (e.g. [jadczyk2019notes, 1.6]):
Let \(R\) be a commutative ring. An algebra \(A\) over \(R\) is a pair \((M, *)\), satisfying:
- \(A\) is a module \(M\) over \(R\) under \(+\) and \(\bullet \).
- \(A\) is a ring under \(*\).
- For \(x, y \in A, a \in R\), we have \[ a \bullet (x * y) = (a \bullet x) * y = x * (a \bullet y) \]
See Implementation notes in Algebra for details.
remark 2.6. [ca-0019]
remark 2.6. [ca-0019]
What's simply called algebra is actually associative algebra with identity, a.k.a. associative unital algebra. See the red herring principle for more about such phenomenon for naming, particularly the example of (possibly) nonassociative algebra.
definition 2.7. algebra homomorphism [ca-001A]
L∃∀N
definition 2.7. algebra homomorphism [ca-001A]
L∃∀N
Let \(A\) and \(B\) be \(R\)-algebras. \(\mathit {1}_A\) and \(\mathit {1}_B\) are ring homomorphisms from \(R\) to \(A\) and \(B\), respectively. A algebra homomorphism from \(A\) to \(B\) is a map \(f : \alpha \to _{a} \beta \) such that
- \(f\) is a ring homomorphism
- \(f(\mathit {1}_{A}(r)) = \mathit {1}_{B}(r)\) for each \(r \in R\)
definition 2.8. ring quotient [ca-001B]
L∃∀N
definition 2.8. ring quotient [ca-001B]
L∃∀N
Let \(R\) be a non-commutative ring, \(r\) an arbitrary equivalence relation on \(R\). The ring quotient of \(R\) by \(r\) is the quotient of \(R\) by the strengthen equivalence relation of \(r\) such that for all \(a, b, c\) in \(R\):
- \(a + c \sim b + c\) if \(a \sim b\)
- \(a * c \sim b * c\) if \(a \sim b\)
- \(a * b \sim a * c\) if \(b \sim c\)
remark 2.9. [ca-001C]
remark 2.9. [ca-001C]
As ideals haven't been formalized for the non-commutative case, \(\textsf {Mathlib}\) uses RingQuot in places where the quotient of non-commutative rings by ideal is needed. The universal properties of the quotient are proven, and should be used instead of the definition that is subject to change.
definition 2.10. free algebra [ca-001D]
definition 2.10. free algebra [ca-001D]
Let \(X\) be an arbitrary set. An free \(R\)-algebra on \(X\) (or "generated by \(X\)"), named \(A\), is the ring quotient of the following inductively constructed set \(A_{\mathtt {pre}}\)
- for all \(x\) in \(X\), there exists a map \(X \to A_{\mathtt {pre}}\).
- for all \(r\) in \(R\), there exists a map \(R \to A_{\mathtt {pre}}\).
- for all \(a, b\) in \(A_{\mathtt {pre}}\), \(a + b\) is in \(A_{\mathtt {pre}}\).
- for all \(a, b\) in \(A_{\mathtt {pre}}\), \(a * b\) is in \(A_{\mathtt {pre}}\).
- there exists a ring homomorphism from \(R\) to \(A_{\mathtt {pre}}\), denoted \(R \to _{+*} A_{\mathtt {pre}}\).
- \(A\) is a commutative group under \(+\).
- \(A\) is a monoid under \(*\).
- left and right distributivity under \(*\) over \(+\).
- \(0 * a \sim a * 0 \sim 0\).
- for all \(a, b, c\) in \(A\), if \(a \sim b\), we have
- \(a + c \sim b + c\)
- \(c + a \sim c + b\)
- \(a * c \sim b * c\)
- \(c * a \sim c * b\)
definition 2.12. linear map [ca-001F]
L∃∀N
definition 2.12. linear map [ca-001F]
L∃∀N
Let \(R, S\) be rings, \(M\) an \(R\)-module, \(N\) an \(S\)-module. A linear map from \(M\) to \(N\) is a function \(f : M \to _{l} N\) over a ring homomorphism \(\sigma : R \to _{+*} S\), satisfying:
- \(f(x + y) = f(x) + f(y)\) for all \(x, y \in M\).
- \(f(r \bullet x) = \sigma (r) \bullet f(x)\) for all \(r \in R\), \(x \in M\).
remark 2.13. Lin [ca-001G]
remark 2.13. Lin [ca-001G]
The set of all linear maps from \(M\) to \(M'\) is denoted \(\operatorname {Lin}(M, M')\), and \(\operatorname {Lin}(M)\) for mapping from \(M\) to itself. \(\operatorname {Lin}(M)\) is an endomorphism.
definition 2.14. tensor algebra [ca-001H]
L∃∀N
definition 2.14. tensor algebra [ca-001H]
L∃∀N
Let \(A\) be a free \(R\)-algebra generated by module \(M\), let \(\iota : M \to A\) denote the map from \(M\) to \(A\). An tensor algebra over \(M\) (or "of \(M\)") \(T\) is the ring quotient of the free \(R\)-algebra generated by \(M\), by the equivalence relation satisfying:
- for all \(a, b\) in \(M\), \(\iota (a + b) \sim \iota (a) + \iota (b)\).
- for all \(r\) in \(R\), \(a\) in \(M\), \(\iota (r \bullet a) \sim r * \iota (a)\).
remark 2.15. [ca-001I]
remark 2.15. [ca-001I]
The definition above is equivalent to the following definition in literature (e.g. [jadczyk2019notes, 1.7]):
Let \(M\) be a module over \(R\). An algebra \(T\) is called a tensor algebra over \(M\) (or "of \(M\)") if it satisfies the following universal properties:
- \(T\) is an algebra containing \(M\) as a submodule, and it is generated by \(M\),
- Every linear mapping \(\lambda \) of \(M\) into an algebra \(A\) over \(R\), can be extended to a homomorphism \(\theta \) of \(T\) into \(A\).
3. Forms [ca-000L]
3. Forms [ca-000L]
definition 3.1. Bilinear form [ca-0003]
L∃∀N
definition 3.1. Bilinear form [ca-0003]
L∃∀N
Let \(R\) be a ring, \(M\) an \(R\)-module.
An bilinear form \(B\) over \(M\) is a map \(B : M \to M \to R\), satisfying:
- \( B(x + y, z) = B(x, z) +B(y, z) \)
- \( B(x, y + z) = B(x, y) +B(x, z) \)
- \( B(a \bullet x, y) = a * B(x, y)\)
- \( B(x, a \bullet y) = a * B(x, y)\)
definition 3.2. quadratic form [jadczyk2019notes, 1.9] [ca-0004]
definition 3.2. quadratic form [jadczyk2019notes, 1.9] [ca-0004]
Let \(R\) be a commutative ring, \(M\) a \(R\)-module.
An quadratic form \(Q\) over \(M\) is a map \(Q : M \to R\), satisfying:
- \( Q(a \bullet x) = a * a * Q(x)\) for all \(a \in R, x \in M\).
- there exists a companion bilinear form \(B : M \to M \to R\), such that \(Q(x + y) = Q(x) + Q(y) + B(x, y)\)
In [jadczyk2019notes], the bilinear form is denoted \(\Phi \), and called the polar form associated with the quadratic form \(Q\), or simply the polar form of \(Q\).
remark 3.3. [ca-0005]
remark 3.3. [ca-0005]
This notion generalizes to commutative semirings using the approach in [izhakian2016supertropical].