Documentation

TauCeti.Algebra.Category.ModuleCat.Smooth.Coinduction

Continuous coinduction and enough injectives for smooth modules #

Let f : R →+* A be a ring homomorphism and J : ι → Submodule A A a nonempty family of left ideals of A that is directed downwards. The coinduction of an R-module V is the smooth part (TauCeti.smoothPart) of Mathlib's coextension of scalars Hom_R(A, V), on which A acts by (b • g) a = g (a * b). It is right adjoint to the functor sending a smooth A-module to its underlying R-module, obtained by composing Mathlib's ModuleCat.restrictCoextendScalarsAdj with the smooth-part coreflection.

A left ideal I kills g : Hom_R(A, V) exactly when I ⊆ ker g. Hence, when the family J is also stable under right multiplication, g lies in the coinduction exactly when its kernel contains some J i. When the J i form a basis of neighborhoods of 0 in a topological ring, this says that g is continuous for the discrete topology on V, so that the coinduction is the module Hom_cont,R(A, V) of continuous R-linear maps.

The underlying-module functor is faithful and preserves monomorphisms, so the coinduction preserves injective objects; over a semisimple ring R, such as a field, every coinduced module is injective. The unit of the adjunction is the injective map m ↦ (a ↦ a • m), so coinduction along ℤ →+* A shows that the category of smooth A-modules has enough injectives. Consequently the smooth modules over A : Type u, with modules in universe max u w, have Ext groups in the universe max u w of their morphisms, so derived functors of smooth modules can be computed with injective resolutions.

Main definitions #

Main results #

References #

Smooth vectors of the coextension of scalars #

theorem TauCeti.forall_smul_coextendScalars_eq_zero_iff {R : Type u₁} {A : Type u} [Ring R] [Ring A] {f : R →+* A} {V : ModuleCat R} (I : Submodule A A) (g : ↑((ModuleCat.coextendScalars f).obj V)) :
(∀ a ∈ I, a • g = 0) ↔ ∀ a ∈ I, ((ModuleCat.CoextendScalars.equiv f V) g) a = 0

A left ideal I kills an R-linear map g : A → V of the coextension of scalars exactly when I lies in the kernel of g.

theorem TauCeti.mem_smoothPart_coextendScalars_iff {R : Type u₁} {A : Type u} [Ring R] [Ring A] {f : R →+* A} {ι : Type u_1} {J : ι → Submodule A A} {V : ModuleCat R} [Nonempty ι] (hJ : Directed (fun (x1 x2 : Submodule A A) => x1 ≥ x2) J) (hJb : ∀ (b : A) (i : ι), ∃ (j : ι), ∀ a ∈ J j, a * b ∈ J i) {g : ↑((ModuleCat.coextendScalars f).obj V)} :
g ∈ smoothPart J ↑((ModuleCat.coextendScalars f).obj V) ↔ ∃ (i : ι), ∀ a ∈ J i, ((ModuleCat.CoextendScalars.equiv f V) g) a = 0

If the directed family J is stable under right multiplication, an R-linear map g : A → V lies in the smooth part of the coextension of scalars exactly when some J i lies in its kernel.

theorem TauCeti.mem_smoothPart_coextendScalars_iff_continuous {R : Type u₁} {A : Type u} [Ring R] [Ring A] {f : R →+* A} {ι : Type u_1} {J : ι → Submodule A A} {V : ModuleCat R} [TopologicalSpace A] [SeparatelyContinuousAdd A] [SeparatelyContinuousMul A] (hJ : (nhds 0).HasBasis (fun (x : ι) => True) fun (i : ι) => ↑(J i)) {g : ↑((ModuleCat.coextendScalars f).obj V)} :

If the left ideals J i form a basis of neighborhoods of 0 in a topological ring, an R-linear map g : A → V lies in the smooth part of the coextension of scalars exactly when it is continuous for the discrete topology on V.

The coinduction functor and its adjunction #

noncomputable def TauCeti.coinduction {R : Type u₁} {A : Type u} [Ring R] [Ring A] (f : R →+* A) {ι : Type u_1} {J : ι → Submodule A A} [Nonempty ι] (hJ : Directed (fun (x1 x2 : Submodule A A) => x1 ≥ x2) J) :

The coinduction of R-modules to smooth A-modules along f : R →+* A: the smooth part of the coextension of scalars Hom_R(A, V), which is the module of continuous R-linear maps A → V when the J i form a basis of neighborhoods of 0 (TauCeti.mem_smoothPart_coextendScalars_iff_continuous).

Instances For
    @[simp]
    theorem TauCeti.coinduction_obj_obj {R : Type u₁} {A : Type u} [Ring R] [Ring A] (f : R →+* A) {ι : Type u_1} {J : ι → Submodule A A} [Nonempty ι] (hJ : Directed (fun (x1 x2 : Submodule A A) => x1 ≥ x2) J) (V : ModuleCat R) :
    ((coinduction f hJ).obj V).obj = ↧↥(smoothPart J ↑((ModuleCat.coextendScalars f).obj V))

    The coinduction of V is the smooth part of the coextension of scalars of V.

    theorem TauCeti.coinduction_map_hom_apply {R : Type u₁} {A : Type u} [Ring R] [Ring A] (f : R →+* A) {ι : Type u_1} {J : ι → Submodule A A} [Nonempty ι] (hJ : Directed (fun (x1 x2 : Submodule A A) => x1 ≥ x2) J) {V W : ModuleCat R} (φ : V ⟶ W) (g : ↥(smoothPart J ↑((ModuleCat.coextendScalars f).obj V))) (a : A) :

    The coinduction of a linear map φ is postcomposition with φ.

    noncomputable def TauCeti.coinductionAdjunction {R : Type u₁} {A : Type u} [Ring R] [Ring A] (f : R →+* A) {ι : Type u_1} {J : ι → Submodule A A} [Nonempty ι] (hJ : Directed (fun (x1 x2 : Submodule A A) => x1 ≥ x2) J) :

    The underlying R-module functor of smooth A-modules is left adjoint to the coinduction: R-linear maps from a smooth A-module M to V are the A-linear maps from M to the smooth part of the coextension of scalars Hom_R(A, V), which is the module of continuous R-linear maps A → V when the J i form a basis of neighborhoods of 0.

    Instances For
      theorem TauCeti.coinductionAdjunction_unit_app_apply {R : Type u₁} {A : Type u} [Ring R] [Ring A] (f : R →+* A) {ι : Type u_1} {J : ι → Submodule A A} [Nonempty ι] (hJ : Directed (fun (x1 x2 : Submodule A A) => x1 ≥ x2) J) (M : (smoothModules J).FullSubcategory) (m : ↑M.obj) (a : A) :

      The unit of the coinduction adjunction sends m to the orbit map a ↦ a • m.

      theorem TauCeti.coinductionAdjunction_counit_app_apply {R : Type u₁} {A : Type u} [Ring R] [Ring A] (f : R →+* A) {ι : Type u_1} {J : ι → Submodule A A} [Nonempty ι] (hJ : Directed (fun (x1 x2 : Submodule A A) => x1 ≥ x2) J) (V : ModuleCat R) (g : ↥(smoothPart J ↑((ModuleCat.coextendScalars f).obj V))) :

      The counit of the coinduction adjunction is evaluation at 1.

      theorem TauCeti.coinductionAdjunction_homEquiv_apply_apply {R : Type u₁} {A : Type u} [Ring R] [Ring A] (f : R →+* A) {ι : Type u_1} {J : ι → Submodule A A} [Nonempty ι] (hJ : Directed (fun (x1 x2 : Submodule A A) => x1 ≥ x2) J) {M : (smoothModules J).FullSubcategory} {V : ModuleCat R} (φ : ((smoothModules J).ι.comp (ModuleCat.restrictScalars f)).obj M ⟶ V) (m : ↑M.obj) (a : A) :

      The A-linear map to the coinduction corresponding to an R-linear map φ : M → V sends m to a ↦ φ (a • m).

      theorem TauCeti.coinductionAdjunction_homEquiv_symm_apply {R : Type u₁} {A : Type u} [Ring R] [Ring A] (f : R →+* A) {ι : Type u_1} {J : ι → Submodule A A} [Nonempty ι] (hJ : Directed (fun (x1 x2 : Submodule A A) => x1 ≥ x2) J) {M : (smoothModules J).FullSubcategory} {V : ModuleCat R} (ψ : M ⟶ (coinduction f hJ).obj V) (m : ↑M.obj) :

      The R-linear map corresponding to an A-linear map ψ to the coinduction is evaluation of ψ at 1.

      theorem TauCeti.coinductionAdjunction_unit_app_injective {R : Type u₁} {A : Type u} [Ring R] [Ring A] (f : R →+* A) {ι : Type u_1} {J : ι → Submodule A A} [Nonempty ι] (hJ : Directed (fun (x1 x2 : Submodule A A) => x1 ≥ x2) J) (M : (smoothModules J).FullSubcategory) :

      The unit m ↦ (a ↦ a • m) of the coinduction adjunction is injective, by evaluation at 1.

      theorem TauCeti.injective_coinduction_obj {R : Type u₁} {A : Type u} [Ring R] [Ring A] (f : R →+* A) {ι : Type u_1} {J : ι → Submodule A A} [Nonempty ι] (hJ : Directed (fun (x1 x2 : Submodule A A) => x1 ≥ x2) J) (V : ModuleCat R) (hV : CategoryTheory.Injective V) :

      Coinduction sends injective R-modules to injective smooth A-modules, since its left adjoint, the underlying R-module functor, preserves monomorphisms.

      theorem TauCeti.injective_coinduction_obj_of_isSemisimpleRing {R : Type u₁} {A : Type u} [Ring R] [Ring A] (f : R →+* A) {ι : Type u_1} {J : ι → Submodule A A} [Nonempty ι] [IsSemisimpleRing R] (hJ : Directed (fun (x1 x2 : Submodule A A) => x1 ≥ x2) J) (V : ModuleCat R) :

      Over a semisimple ring R, for instance a field, every R-module is injective, so the coinduction of every R-module is an injective smooth A-module.

      Enough injectives and Ext #

      theorem TauCeti.enoughInjectives_smoothModules {A : Type u} [Ring A] {ι : Type u_1} {J : ι → Submodule A A} [Nonempty ι] (hJ : Directed (fun (x1 x2 : Submodule A A) => x1 ≥ x2) J) :

      For a directed family J of left ideals of A : Type u, the smooth A-modules in universe max u w have enough injectives: every smooth module embeds, through the unit of the coinduction adjunction along ℤ →+* A, into the coinduction of an injective abelian group.

      For a directed family J of left ideals of A : Type u, the abelian category of smooth A-modules in universe max u w has Ext groups in the universe max u w of its morphisms. This holds for any abelian structure on the smooth modules, for instance the one inherited from ModuleCat A through TauCeti.isClosedUnderFiniteLimits_smoothModules.

      Discrete modules over a topological ring with separately continuous addition have native Ext groups in the universe of their morphisms. They are the smooth modules for all open left ideals, a nonempty family directed by intersection.