Smooth monoid #
A smooth monoid is a monoid that is also a smooth manifold, in which multiplication is a smooth map
of the product manifold G × G into G.
In this file we define the basic structures to talk about smooth monoids: has_smooth_mul and its
additive counterpart has_smooth_add. These structures are general enough to also talk about smooth
semigroups.
- to_smooth_manifold_with_corners : smooth_manifold_with_corners I G
- smooth_add : smooth (I.prod I) I (λ (p : G × G), p.fst + p.snd)
Basic hypothesis to talk about a smooth (Lie) additive monoid or a smooth additive
semigroup. A smooth additive monoid over α, for example, is obtained by requiring both the
instances add_monoid α and has_smooth_add α.
- to_smooth_manifold_with_corners : smooth_manifold_with_corners I G
- smooth_mul : smooth (I.prod I) I (λ (p : G × G), (p.fst) * p.snd)
Basic hypothesis to talk about a smooth (Lie) monoid or a smooth semigroup.
A smooth monoid over G, for example, is obtained by requiring both the instances monoid G
and has_smooth_mul I G.
If the addition is smooth, then it is continuous. This is not an instance for technical reasons, see note [Design choices about smooth algebraic structures].
If the multiplication is smooth, then it is continuous. This is not an instance for technical reasons, see note [Design choices about smooth algebraic structures].
Left multiplication by g. It is meant to mimic the usual notation in Lie groups.
Lemmas involving smooth_left_mul with the notation 𝑳 usually use L instead of 𝑳 in the
names.
Right multiplication by g. It is meant to mimic the usual notation in Lie groups.
Lemmas involving smooth_right_mul with the notation 𝑹 usually use R instead of 𝑹 in the
names.
- to_add_monoid_hom : G →+ G'
- smooth_to_fun : smooth I I' self.to_add_monoid_hom.to_fun
Morphism of additive smooth monoids.
- to_monoid_hom : G →* G'
- smooth_to_fun : smooth I I' self.to_monoid_hom.to_fun
Morphism of smooth monoids.
Equations
- smooth_add_monoid_morphism.has_zero = {zero := {to_add_monoid_hom := 0, smooth_to_fun := _}}
Equations
- smooth_monoid_morphism.has_one = {one := {to_monoid_hom := 1, smooth_to_fun := _}}
Equations
Equations
Equations
- smooth_add_monoid_morphism.has_coe_to_fun = {coe := λ (a : smooth_add_monoid_morphism I I' G G'), a.to_add_monoid_hom.to_fun}
Equations
- smooth_monoid_morphism.has_coe_to_fun = {coe := λ (a : smooth_monoid_morphism I I' G G'), a.to_monoid_hom.to_fun}