Documentation

Mathlib.Algebra.SkewMonoidAlgebra.Lift

Lemmas about different kinds of "lifts" to SkewMonoidAlgebra. #

def SkewMonoidAlgebra.liftNCAlgHom {k : Type u_1} {G : Type u_2} [CommSemiring k] [Monoid G] {A : Type u_4} {B : Type u_5} [Semiring A] [Algebra k A] [Semiring B] [Algebra k B] [MulSemiringAction G A] [SMulCommClass G k A] (f : A →ₐ[k] B) (g : G →* B) (h_comm : ∀ {x : A} {y : G}, f (y x) * g y = g y * f x) :

liftNCRingHom as an AlgHom, for when f is an AlgHom

Equations
Instances For
    def SkewMonoidAlgebra.lift (k : Type u_1) (G : Type u_2) [CommSemiring k] [Monoid G] (A : Type u_4) [Semiring A] [Algebra k A] [MulSemiringAction G k] [SMulCommClass G k k] :

    Any monoid homomorphism G →* A can be lifted to an algebra homomorphism SkewMonoidAlgebra k G →ₐ[k] A.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      theorem SkewMonoidAlgebra.lift_apply' {k : Type u_1} {G : Type u_2} [CommSemiring k] [Monoid G] {A : Type u_4} [Semiring A] [Algebra k A] [MulSemiringAction G k] [SMulCommClass G k k] (F : G →* A) (f : SkewMonoidAlgebra k G) :
      ((lift k G A) F) f = f.sum fun (a : G) (b : k) => (algebraMap k A) b * F a
      theorem SkewMonoidAlgebra.lift_apply {k : Type u_1} {G : Type u_2} [CommSemiring k] [Monoid G] {A : Type u_4} [Semiring A] [Algebra k A] [MulSemiringAction G k] [SMulCommClass G k k] (F : G →* A) (f : SkewMonoidAlgebra k G) :
      ((lift k G A) F) f = f.sum fun (a : G) (b : k) => b F a
      theorem SkewMonoidAlgebra.lift_def {k : Type u_1} {G : Type u_2} [CommSemiring k] [Monoid G] {A : Type u_4} [Semiring A] [Algebra k A] [MulSemiringAction G k] [SMulCommClass G k k] (F : G →* A) :
      ((lift k G A) F) = (liftNC (algebraMap k A) F)
      @[simp]
      theorem SkewMonoidAlgebra.lift_symm_apply {k : Type u_1} {G : Type u_2} [CommSemiring k] [Monoid G] {A : Type u_4} [Semiring A] [Algebra k A] [MulSemiringAction G k] [SMulCommClass G k k] (F : SkewMonoidAlgebra k G →ₐ[k] A) (x : G) :
      ((lift k G A).symm F) x = F (single x 1)
      theorem SkewMonoidAlgebra.lift_of {k : Type u_1} {G : Type u_2} [CommSemiring k] [Monoid G] {A : Type u_4} [Semiring A] [Algebra k A] [MulSemiringAction G k] [SMulCommClass G k k] (F : G →* A) (x : G) :
      ((lift k G A) F) ((of k G) x) = F x
      @[simp]
      theorem SkewMonoidAlgebra.lift_single {k : Type u_1} {G : Type u_2} [CommSemiring k] [Monoid G] {A : Type u_4} [Semiring A] [Algebra k A] [MulSemiringAction G k] [SMulCommClass G k k] (F : G →* A) (a : G) (b : k) :
      ((lift k G A) F) (single a b) = b F a
      theorem SkewMonoidAlgebra.lift_unique' {k : Type u_1} {G : Type u_2} [CommSemiring k] [Monoid G] {A : Type u_4} [Semiring A] [Algebra k A] [MulSemiringAction G k] [SMulCommClass G k k] (F : SkewMonoidAlgebra k G →ₐ[k] A) :
      F = (lift k G A) ((↑F).comp (of k G))
      theorem SkewMonoidAlgebra.lift_unique {k : Type u_1} {G : Type u_2} [CommSemiring k] [Monoid G] {A : Type u_4} [Semiring A] [Algebra k A] [MulSemiringAction G k] [SMulCommClass G k k] (F : SkewMonoidAlgebra k G →ₐ[k] A) (f : SkewMonoidAlgebra k G) :
      F f = f.sum fun (a : G) (b : k) => b F (single a 1)

      Decomposition of a k-algebra homomorphism from SkewMonoidAlgebra k G by its values on F (single a 1).

      def SkewMonoidAlgebra.mapDomainAlgHom {G : Type u_2} [Monoid G] (k : Type u_6) (A : Type u_7) [CommSemiring k] [Semiring A] [Algebra k A] {H : Type u_8} {F : Type u_9} [Monoid H] [FunLike F G H] [MonoidHomClass F G H] [MulSemiringAction G A] [MulSemiringAction H A] [SMulCommClass G k A] [SMulCommClass H k A] {f : F} (hf : ∀ (a : G) (x : A), a x = f a x) :

      If f : G → H is a multiplicative homomorphism between two monoids, then mapDomain f is an algebra homomorphism between their monoid algebras.

      Equations
      Instances For
        @[simp]
        theorem SkewMonoidAlgebra.mapDomainAlgHom_apply {G : Type u_2} [Monoid G] (k : Type u_6) (A : Type u_7) [CommSemiring k] [Semiring A] [Algebra k A] {H : Type u_8} {F : Type u_9} [Monoid H] [FunLike F G H] [MonoidHomClass F G H] [MulSemiringAction G A] [MulSemiringAction H A] [SMulCommClass G k A] [SMulCommClass H k A] {f : F} (hf : ∀ (a : G) (x : A), a x = f a x) (a✝ : SkewMonoidAlgebra A G) :
        (mapDomainAlgHom k A hf) a✝ = a✝.sum fun (a : G) => single (f a)
        def SkewMonoidAlgebra.equivMapDomain {k : Type u_1} {G : Type u_2} {H : Type u_3} [AddCommMonoid k] (f : G H) (l : SkewMonoidAlgebra k G) :

        Given f : G ≃ H, we can map l : SkewMonoidAlgebra k G to equivMapDomain f l : SkewMonoidAlgebra k H (computably) by mapping the support forwards and the function backwards.

        Equations
        Instances For
          @[simp]
          theorem SkewMonoidAlgebra.coeff_equivMapDomain {k : Type u_1} {G : Type u_2} {H : Type u_3} [AddCommMonoid k] (f : G H) (l : SkewMonoidAlgebra k G) (b : H) :
          (equivMapDomain f l).coeff b = l.coeff (f.symm b)
          theorem SkewMonoidAlgebra.equivMapDomain_eq_mapDomain {k : Type u_1} {G : Type u_2} {H : Type u_3} [AddCommMonoid k] (f : G H) (l : SkewMonoidAlgebra k G) :
          theorem SkewMonoidAlgebra.equivMapDomain_trans {k : Type u_1} {G : Type u_2} [AddCommMonoid k] {G' : Type u_4} {G'' : Type u_5} (f : G G') (g : G' G'') (l : SkewMonoidAlgebra k G) :
          @[simp]
          theorem SkewMonoidAlgebra.equivMapDomain_single {k : Type u_1} {G : Type u_2} {H : Type u_3} [AddCommMonoid k] (f : G H) (a : G) (b : k) :
          equivMapDomain f (single a b) = single (f a) b
          def SkewMonoidAlgebra.domCongr {G : Type u_2} {H : Type u_3} {A : Type u_4} [AddCommMonoid A] (e : G H) :

          Given AddCommMonoid A and e : G ≃ H, domCongr e is the corresponding Equiv between SkewMonoidAlgebra A G and SkewMonoidAlgebra A H.

          Equations
          Instances For
            @[simp]
            theorem SkewMonoidAlgebra.domCongr_apply {G : Type u_2} {H : Type u_3} {A : Type u_4} [AddCommMonoid A] (e : G H) (l : SkewMonoidAlgebra A G) :
            def SkewMonoidAlgebra.domLCongr {k : Type u_1} {G : Type u_2} {H : Type u_3} {A : Type u_4} [Semiring k] [AddCommMonoid A] [Module k A] (e : G H) :

            An equivalence of domains induces a linear equivalence of finitely supported functions.

            This is domCongr as a LinearEquiv.

            Equations
            Instances For
              def SkewMonoidAlgebra.domCongrAlg (k : Type u_1) {G : Type u_2} {H : Type u_3} (A : Type u_4) [Monoid G] [Monoid H] [Semiring A] [CommSemiring k] [Algebra k A] [MulSemiringAction G A] [MulSemiringAction H A] [SMulCommClass G k A] [SMulCommClass H k A] {e : G ≃* H} (he : ∀ (a : G) (x : A), a x = e a x) :

              If e : G ≃* H is a multiplicative equivalence between two monoids and ∀ (a : G) (x : A), a • x = (e a) • x, then SkewMonoidAlgebra.domCongr e is an algebra equivalence between their skew monoid algebras.

              Equations
              Instances For
                theorem SkewMonoidAlgebra.domCongrAlg_toAlgHom (k : Type u_1) {G : Type u_2} {H : Type u_3} (A : Type u_4) [Monoid G] [Monoid H] [Semiring A] [CommSemiring k] [Algebra k A] [MulSemiringAction G A] [MulSemiringAction H A] [SMulCommClass G k A] [SMulCommClass H k A] {e : G ≃* H} (he : ∀ (a : G) (x : A), a x = e a x) :
                (domCongrAlg k A he) = mapDomainAlgHom k A he
                @[simp]
                theorem SkewMonoidAlgebra.domCongrAlg_apply (k : Type u_1) {G : Type u_2} {H : Type u_3} (A : Type u_4) [Monoid G] [Monoid H] [Semiring A] [CommSemiring k] [Algebra k A] [MulSemiringAction G A] [MulSemiringAction H A] [SMulCommClass G k A] [SMulCommClass H k A] {e : G ≃* H} (he : ∀ (a : G) (x : A), a x = e a x) (f : SkewMonoidAlgebra A G) (h : H) :
                ((domCongrAlg k A he) f).coeff h = f.coeff (e.symm h)
                @[simp]
                theorem SkewMonoidAlgebra.domCongr_support (k : Type u_1) {G : Type u_2} {H : Type u_3} (A : Type u_4) [Monoid G] [Monoid H] [Semiring A] [CommSemiring k] [Algebra k A] [MulSemiringAction G A] [MulSemiringAction H A] [SMulCommClass G k A] [SMulCommClass H k A] {e : G ≃* H} (he : ∀ (a : G) (x : A), a x = e a x) (f : SkewMonoidAlgebra A G) :
                @[simp]
                theorem SkewMonoidAlgebra.domCongr_single (k : Type u_1) {G : Type u_2} {H : Type u_3} (A : Type u_4) [Monoid G] [Monoid H] [Semiring A] [CommSemiring k] [Algebra k A] [MulSemiringAction G A] [MulSemiringAction H A] [SMulCommClass G k A] [SMulCommClass H k A] {e : G ≃* H} (he : ∀ (a : G) (x : A), a x = e a x) (g : G) (a : A) :
                (domCongrAlg k A he) (single g a) = single (e g) a
                @[simp]
                theorem SkewMonoidAlgebra.domCongr_symm (k : Type u_1) {G : Type u_2} {H : Type u_3} (A : Type u_4) [Monoid G] [Monoid H] [Semiring A] [CommSemiring k] [Algebra k A] [MulSemiringAction G A] [MulSemiringAction H A] [SMulCommClass G k A] [SMulCommClass H k A] {e : G ≃* H} (he : ∀ (a : G) (x : A), a x = e a x) :
                (domCongrAlg k A he).symm = domCongrAlg k A
                def SkewMonoidAlgebra.submoduleOfSmulMem {k : Type u_1} {G : Type u_2} [Semiring k] [Monoid G] [MulSemiringAction G k] {V : Type u_4} [AddCommMonoid V] [Module k V] [Module (SkewMonoidAlgebra k G) V] [IsScalarTower k (SkewMonoidAlgebra k G) V] (W : Submodule k V) (h : ∀ (g : G), vW, (of k G) g v W) :

                A submodule over k which is stable under scalar multiplication by elements of G is a submodule over SkewMonoidAlgebra k G

                Equations
                Instances For