Group actions on embeddings #
This file provides a MulAction G (α ↪ β) instance that agrees with the MulAction G (α → β)
instances defined by Pi.mulAction.
Note that unlike the Pi instance, this requires G to be a group.
@[instance_reducible]
instance Function.Embedding.smul {G : Type u_1} {α : Type u_3} {β : Type u_4} [Group G] [MulAction G β] :
Equations
- Function.Embedding.smul = { smul := fun (g : G) (f : α ↪ β) => f.trans (Equiv.toEmbedding (MulAction.toPerm g)) }
@[instance_reducible]
instance Function.Embedding.vadd {G : Type u_1} {α : Type u_3} {β : Type u_4} [AddGroup G] [AddAction G β] :
Equations
- Function.Embedding.vadd = { vadd := fun (g : G) (f : α ↪ β) => f.trans (Equiv.toEmbedding (AddAction.toPerm g)) }
instance Function.Embedding.instIsScalarTower {G : Type u_1} {G' : Type u_2} {α : Type u_3} {β : Type u_4} [Group G] [Group G'] [SMul G G'] [MulAction G β] [MulAction G' β] [IsScalarTower G G' β] :
IsScalarTower G G' (α ↪ β)
instance Function.Embedding.instSMulCommClass {G : Type u_1} {G' : Type u_2} {α : Type u_3} {β : Type u_4} [Group G] [Group G'] [MulAction G β] [MulAction G' β] [SMulCommClass G G' β] :
SMulCommClass G G' (α ↪ β)
instance Function.Embedding.instVAddCommClass {G : Type u_1} {G' : Type u_2} {α : Type u_3} {β : Type u_4} [AddGroup G] [AddGroup G'] [AddAction G β] [AddAction G' β] [VAddCommClass G G' β] :
VAddCommClass G G' (α ↪ β)
instance Function.Embedding.instIsCentralScalar {G : Type u_1} {α : Type u_3} {β : Type u_4} [Group G] [MulAction G β] [MulAction Gᵐᵒᵖ β] [IsCentralScalar G β] :
IsCentralScalar G (α ↪ β)