Documentation

Mathlib.Algebra.Group.Action.Hom

Homomorphisms and group actions #

@[reducible, inline]
abbrev Function.Surjective.mulActionLeft {R : Type u_4} {S : Type u_5} {M : Type u_6} [Monoid R] [MulAction R M] [Monoid S] [SMul S M] (f : R →* S) (hf : Surjective f) (hsmul : ∀ (c : R) (x : M), f c x = c x) :

Push forward the action of R on M along a compatible surjective map f : R →* S.

See also Function.Surjective.distribMulActionLeft and Function.Surjective.moduleLeft.

Equations
    Instances For
      @[reducible, inline]
      abbrev Function.Surjective.addActionLeft {R : Type u_4} {S : Type u_5} {M : Type u_6} [AddMonoid R] [AddAction R M] [AddMonoid S] [VAdd S M] (f : R →+ S) (hf : Surjective f) (hsmul : ∀ (c : R) (x : M), f c +ᵥ x = c +ᵥ x) :

      Push forward the action of R on M along a compatible surjective map f : R →+ S.

      Equations
        Instances For
          @[reducible, inline]
          abbrev MulAction.compHom {M : Type u_1} {N : Type u_2} (α : Type u_3) [Monoid M] [MulAction M α] [Monoid N] (g : N →* M) :

          A multiplicative action of M on α and a monoid homomorphism N → M induce a multiplicative action of N on α.

          See note [reducible non-instances].

          Equations
            Instances For
              @[reducible, inline]
              abbrev AddAction.compHom {M : Type u_1} {N : Type u_2} (α : Type u_3) [AddMonoid M] [AddAction M α] [AddMonoid N] (g : N →+ M) :

              An additive action of M on α and an additive monoid homomorphism N → M induce an additive action of N on α.

              See note [reducible non-instances].

              Equations
                Instances For
                  theorem MulAction.compHom_smul_def {E : Type u_4} {F : Type u_5} {G : Type u_6} [Monoid E] [Monoid F] [MulAction F G] (f : E →* F) (a : E) (x : G) :
                  a x = f a x
                  theorem AddAction.compHom_vadd_def {E : Type u_4} {F : Type u_5} {G : Type u_6} [AddMonoid E] [AddMonoid F] [AddAction F G] (f : E →+ F) (a : E) (x : G) :
                  a +ᵥ x = f a +ᵥ x
                  theorem MulAction.isPretransitive_compHom {E : Type u_4} {F : Type u_5} {G : Type u_6} [Monoid E] [Monoid F] [MulAction F G] [IsPretransitive F G] {f : E →* F} (hf : Function.Surjective f) :

                  If an action is transitive, then composing this action with a surjective homomorphism gives again a transitive action.

                  theorem AddAction.isPretransitive_compHom {E : Type u_4} {F : Type u_5} {G : Type u_6} [AddMonoid E] [AddMonoid F] [AddAction F G] [IsPretransitive F G] {f : E →+ F} (hf : Function.Surjective f) :
                  theorem MulAction.IsPretransitive.of_compHom {M : Type u_4} {N : Type u_5} {α : Type u_6} [Monoid M] [Monoid N] [MulAction N α] (f : M →* N) [h : IsPretransitive M α] :
                  theorem AddAction.IsPretransitive.of_compHom {M : Type u_4} {N : Type u_5} {α : Type u_6} [AddMonoid M] [AddMonoid N] [AddAction N α] (f : M →+ N) [h : IsPretransitive M α] :
                  def MonoidHom.smulOneHom {M : Type u_4} {N : Type u_5} [Monoid M] [MulOneClass N] [MulAction M N] [IsScalarTower M N N] :
                  M →* N

                  If the multiplicative action of M on N is compatible with multiplication on N, then fun x ↦ x • 1 is a monoid homomorphism from M to N.

                  Equations
                    Instances For
                      def AddMonoidHom.vaddZeroHom {M : Type u_4} {N : Type u_5} [AddMonoid M] [AddZeroClass N] [AddAction M N] [VAddAssocClass M N N] :
                      M →+ N

                      If the additive action of M on N is compatible with addition on N, then fun x ↦ x +ᵥ 0 is an additive monoid homomorphism from M to N.

                      Equations
                        Instances For
                          @[simp]
                          theorem AddMonoidHom.vaddZeroHom_apply {M : Type u_4} {N : Type u_5} [AddMonoid M] [AddZeroClass N] [AddAction M N] [VAddAssocClass M N N] (x : M) :
                          @[simp]
                          theorem MonoidHom.smulOneHom_apply {M : Type u_4} {N : Type u_5} [Monoid M] [MulOneClass N] [MulAction M N] [IsScalarTower M N N] (x : M) :
                          def monoidHomEquivMulActionIsScalarTower (M : Type u_4) (N : Type u_5) [Monoid M] [Monoid N] :
                          (M →* N) { _inst : MulAction M N // IsScalarTower M N N }

                          A monoid homomorphism between two monoids M and N can be equivalently specified by a multiplicative action of M on N that is compatible with the multiplication on N.

                          Equations
                            Instances For

                              A monoid homomorphism between two additive monoids M and N can be equivalently specified by an additive action of M on N that is compatible with the addition on N.

                              Equations
                                Instances For