Documentation

TauCeti.Algebra.Category.GradedModuleCat.Basic

The category of graded modules #

Let ๐’œ : โ„ค โ†’ Submodule k A be a family of k-submodules of a k-algebra A, typically the pieces of a GradedAlgebra. A graded ๐’œ-module is an A-module M with an internal โ„ค-grading M = โจโ‚š Mโ‚š by k-submodules, in the sense of TauCeti.InternalGrading, on which ๐’œ acts compatibly: ๐’œแตข โ€ข Mโ‚š โІ M_{i+p}. A morphism of graded modules is an A-linear map of degree zero, sending Mโ‚š into Nโ‚š for every p.

This file makes graded ๐’œ-modules into a k-linear category TauCeti.GradedModuleCat ๐’œ, with a faithful additive forgetful functor to ModuleCat A, and constructs its grading shift TauCeti.GradedModuleCat.shift ๐’œ, the k-linear autoequivalence M โ†ฆ M{1} of the category with (M{1})โ‚š = M_{p-1}. This is the convention under which the class of M{1} in a graded Grothendieck group is q times the class of M, and it agrees with the shift of TauCeti.GradedVectorSpace. Graded Grothendieck groups, graded Ext and graded Cartan maps of graded algebras are formed in this category with this shift.

Main definitions #

Main results #

structure TauCeti.GradedModuleCat {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] (๐’œ : โ„ค โ†’ Submodule k A) :
Type (max (max uA uk) (v + 1))

The category of graded ๐’œ-modules: A-modules with an internal โ„ค-grading by k-submodules on which ๐’œแตข raises degrees by i.

Instances For
    @[instance_reducible]
    instance TauCeti.GradedModuleCat.instCoeSortType {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} :
    Equations
    @[reducible, inline]
    noncomputable abbrev TauCeti.GradedModuleCat.regular {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} [DirectSum.Decomposition ๐’œ] [SetLike.GradedMul ๐’œ] :
    GradedModuleCat ๐’œ

    The regular graded module of a graded algebra, with its given homogeneous pieces.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      structure TauCeti.GradedModuleCat.Hom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} (M N : GradedModuleCat ๐’œ) :

      A morphism of graded ๐’œ-modules: an A-linear map of degree zero.

      Instances For
        @[instance_reducible]
        Equations
        • One or more equations did not get rendered due to their size.
        @[reducible, inline]
        abbrev TauCeti.GradedModuleCat.ofHom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (f : M.carrier โ†’โ‚—[A] N.carrier) (hf : LinearMap.IsHomogeneous f M.grading.piece N.grading.piece 0) :

        The morphism of graded modules given by an A-linear map of degree zero.

        Equations
        Instances For
          @[simp]
          theorem TauCeti.GradedModuleCat.hom_ofHom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (f : M.carrier โ†’โ‚—[A] N.carrier) (hf : LinearMap.IsHomogeneous f M.grading.piece N.grading.piece 0) :
          (ofHom f hf).hom = f
          @[simp]
          theorem TauCeti.GradedModuleCat.hom_id {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M : GradedModuleCat ๐’œ} :
          @[simp]
          theorem TauCeti.GradedModuleCat.hom_comp {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N P : GradedModuleCat ๐’œ} (f : M โŸถ N) (g : N โŸถ P) :
          theorem TauCeti.GradedModuleCat.hom_ext {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} {f g : M โŸถ N} (h : f.hom = g.hom) :
          f = g

          Two morphisms of graded modules are equal when their underlying linear maps are.

          theorem TauCeti.GradedModuleCat.hom_ext_iff {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} {f g : M โŸถ N} :
          f = g โ†” f.hom = g.hom
          theorem TauCeti.GradedModuleCat.hom_injective {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} :
          Function.Injective fun (f : M โŸถ N) => f.hom
          theorem TauCeti.GradedModuleCat.map_mem {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (f : M โŸถ N) {p : โ„ค} {x : M.carrier} (hx : x โˆˆ M.grading.piece p) :

          A morphism of graded modules sends elements of degree p to elements of degree p.

          @[instance_reducible]
          instance TauCeti.GradedModuleCat.instZeroHom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} :
          Equations
          @[instance_reducible]
          instance TauCeti.GradedModuleCat.instAddHom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} :
          Equations
          @[instance_reducible]
          instance TauCeti.GradedModuleCat.instNegHom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} :
          Equations
          @[instance_reducible]
          instance TauCeti.GradedModuleCat.instSubHom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} :
          Equations
          @[instance_reducible]
          instance TauCeti.GradedModuleCat.instSMulNatHom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} :
          Equations
          @[instance_reducible]
          instance TauCeti.GradedModuleCat.instSMulIntHom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} :
          Equations
          @[instance_reducible]
          instance TauCeti.GradedModuleCat.instSMulHom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} :
          SMul k (M โŸถ N)
          Equations
          @[simp]
          theorem TauCeti.GradedModuleCat.hom_zero {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} :
          @[simp]
          theorem TauCeti.GradedModuleCat.hom_add {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (f g : M โŸถ N) :
          (f + g).hom = f.hom + g.hom
          @[simp]
          theorem TauCeti.GradedModuleCat.hom_neg {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (f : M โŸถ N) :
          (-f).hom = -f.hom
          @[simp]
          theorem TauCeti.GradedModuleCat.hom_sub {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (f g : M โŸถ N) :
          (f - g).hom = f.hom - g.hom
          @[simp]
          theorem TauCeti.GradedModuleCat.hom_nsmul {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (n : โ„•) (f : M โŸถ N) :
          @[simp]
          theorem TauCeti.GradedModuleCat.hom_zsmul {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (n : โ„ค) (f : M โŸถ N) :
          @[simp]
          theorem TauCeti.GradedModuleCat.hom_smul {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (c : k) (f : M โŸถ N) :
          @[instance_reducible]
          instance TauCeti.GradedModuleCat.instAddCommGroupHom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} :
          Equations
          @[instance_reducible]
          instance TauCeti.GradedModuleCat.instModuleHom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} :
          Equations
          @[instance_reducible]
          instance TauCeti.GradedModuleCat.instPreadditive {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} :
          Equations
          @[instance_reducible]
          instance TauCeti.GradedModuleCat.instLinear {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} :
          Equations
          def TauCeti.GradedModuleCat.isoMk {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (e : M.carrier โ‰ƒโ‚—[A] N.carrier) (he : โˆ€ (p : โ„ค) (x : M.carrier), x โˆˆ M.grading.piece p โ†” e x โˆˆ N.grading.piece p) :

          The isomorphism of graded modules given by an A-linear equivalence which preserves and reflects degrees.

          Equations
          Instances For
            @[simp]
            theorem TauCeti.GradedModuleCat.isoMk_hom_hom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (e : M.carrier โ‰ƒโ‚—[A] N.carrier) (he : โˆ€ (p : โ„ค) (x : M.carrier), x โˆˆ M.grading.piece p โ†” e x โˆˆ N.grading.piece p) :
            (isoMk e he).hom.hom = โ†‘e
            @[simp]
            theorem TauCeti.GradedModuleCat.isoMk_inv_hom {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (e : M.carrier โ‰ƒโ‚—[A] N.carrier) (he : โˆ€ (p : โ„ค) (x : M.carrier), x โˆˆ M.grading.piece p โ†” e x โˆˆ N.grading.piece p) :
            (isoMk e he).inv.hom = โ†‘e.symm
            def TauCeti.GradedModuleCat.toModuleCat {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} :

            The forgetful functor from graded ๐’œ-modules to A-modules.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              @[simp]
              theorem TauCeti.GradedModuleCat.toModuleCat_obj_carrier {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} (M : GradedModuleCat ๐’œ) :
              โ†‘(toModuleCat.obj M) = M.carrier
              @[simp]
              theorem TauCeti.GradedModuleCat.toModuleCat_map {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {Xโœ Yโœ : GradedModuleCat ๐’œ} (f : Xโœ โŸถ Yโœ) :
              @[reducible, inline]
              abbrev TauCeti.GradedModuleCat.shiftObj {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} (M : GradedModuleCat ๐’œ) (n : โ„ค) :
              GradedModuleCat ๐’œ

              The graded module M{n}: the module M with (M{n})โ‚š = M_{p-n}.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                instance TauCeti.GradedModuleCat.instFiniteCarrierShiftObj {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} (M : GradedModuleCat ๐’œ) [Module.Finite k M.carrier] (n : โ„ค) :

                A shift of a graded module has the same underlying k-module, so it is finite whenever the module is.

                theorem TauCeti.GradedModuleCat.mem_shiftObj_piece_iff {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} (M : GradedModuleCat ๐’œ) (n p : โ„ค) (x : M.carrier) :
                def TauCeti.GradedModuleCat.shiftFunctor {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} (n : โ„ค) :

                The shift M โ†ฆ M{n} of graded modules, the identity on underlying linear maps.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  @[simp]
                  theorem TauCeti.GradedModuleCat.shiftFunctor_obj {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} (M : GradedModuleCat ๐’œ) (n : โ„ค) :
                  @[simp]
                  theorem TauCeti.GradedModuleCat.hom_shiftFunctor_map {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (n : โ„ค) (f : M โŸถ N) :
                  def TauCeti.GradedModuleCat.shift {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] (๐’œ : โ„ค โ†’ Submodule k A) :

                  The grading shift M โ†ฆ M{1} of graded ๐’œ-modules, with (M{1})โ‚š = M_{p-1}, as an autoequivalence; its inverse is M โ†ฆ M{-1}.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    @[simp]
                    theorem TauCeti.GradedModuleCat.mem_shift_functor_obj_piece_iff {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} (M : GradedModuleCat ๐’œ) (p : โ„ค) (x : M.carrier) :
                    @[simp]
                    theorem TauCeti.GradedModuleCat.mem_shift_inverse_obj_piece_iff {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} (M : GradedModuleCat ๐’œ) (p : โ„ค) (x : M.carrier) :
                    @[simp]
                    theorem TauCeti.GradedModuleCat.hom_shift_functor_map {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (f : M โŸถ N) :
                    ((shift ๐’œ).functor.map f).hom = f.hom
                    @[simp]
                    theorem TauCeti.GradedModuleCat.hom_shift_inverse_map {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} {M N : GradedModuleCat ๐’œ} (f : M โŸถ N) :
                    ((shift ๐’œ).inverse.map f).hom = f.hom

                    Forgetting the internal grading identifies every grading shift with the identity functor on underlying modules.

                    Equations
                    Instances For
                      instance TauCeti.GradedModuleCat.instAdditiveShiftFunctor {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} (n : โ„ค) :
                      instance TauCeti.GradedModuleCat.instAdditiveFunctorShift {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} :
                      (shift ๐’œ).functor.Additive
                      instance TauCeti.GradedModuleCat.instLinearFunctorShift {k : Type uk} {A : Type uA} [CommRing k] [Ring A] [Algebra k A] {๐’œ : โ„ค โ†’ Submodule k A} :