Loogle!
Result
Found 383 declarations mentioning SheafOfModules. Of these, only the first 200 are shown.
- SheafOfModules 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : Type (max (max (max u u₁) (v + 1)) v₁) - SheafOfModules.unit 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : SheafOfModules R - SheafOfModules.instCategory 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} : CategoryTheory.Category.{max u₁ v, max (max (max (v + 1) u) u₁) v₁} (SheafOfModules R) - SheafOfModules.sections 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} (M : SheafOfModules R) : Type (max u₁ v) - SheafOfModules.Hom 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} (X Y : SheafOfModules R) : Type (max u₁ v) - SheafOfModules.instPreadditive 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : CategoryTheory.Preadditive (SheafOfModules R) - SheafOfModules.sectionsFunctor 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : CategoryTheory.Functor (SheafOfModules R) (Type (max u₁ v)) - SheafOfModules.sectionsFunctor_obj 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) (M : SheafOfModules R) : (SheafOfModules.sectionsFunctor R).obj M = M.sections - SheafOfModules.val 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} (self : SheafOfModules R) : PresheafOfModules R.obj - SheafOfModules.instAddCommGroupHom 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) (M N : SheafOfModules R) : AddCommGroup (M ⟶ N) - SheafOfModules.toSheaf 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : CategoryTheory.Functor (SheafOfModules R) (CategoryTheory.Sheaf J AddCommGrpCat) - SheafOfModules.unitHomEquiv 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} (M : SheafOfModules R) : (SheafOfModules.unit R ⟶ M) ≃ M.sections - SheafOfModules.isSheaf 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} (self : SheafOfModules R) : CategoryTheory.Presheaf.IsSheaf J self.val.presheaf - SheafOfModules.instFaithfulSheafAddCommGrpCatToSheaf 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : (SheafOfModules.toSheaf R).Faithful - SheafOfModules.sectionsMap_id 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {M : SheafOfModules R} (s : M.sections) : SheafOfModules.sectionsMap (CategoryTheory.CategoryStruct.id M) s = s - SheafOfModules.sectionsMap 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {M N : SheafOfModules R} (f : M ⟶ N) (s : M.sections) : N.sections - SheafOfModules.forget 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : CategoryTheory.Functor (SheafOfModules R) (PresheafOfModules R.obj) - SheafOfModules.mk 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} (val : PresheafOfModules R.obj) (isSheaf : CategoryTheory.Presheaf.IsSheaf J val.presheaf) : SheafOfModules R - SheafOfModules.fullyFaithfulForget 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : (SheafOfModules.forget R).FullyFaithful - SheafOfModules.instFaithfulPresheafOfModulesObjFunctorOppositeRingCatIsSheafForget 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : (SheafOfModules.forget R).Faithful - SheafOfModules.instFullPresheafOfModulesObjFunctorOppositeRingCatIsSheafForget 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : (SheafOfModules.forget R).Full - SheafOfModules.instReflectsIsomorphismsPresheafOfModulesObjFunctorOppositeRingCatIsSheafForget 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : (SheafOfModules.forget R).ReflectsIsomorphisms - SheafOfModules.instAdditiveSheafAddCommGrpCatToSheaf 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : (SheafOfModules.toSheaf R).Additive - SheafOfModules.sectionsFunctor_map 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) {X✝ Y✝ : SheafOfModules R} (f : X✝ ⟶ Y✝) : (SheafOfModules.sectionsFunctor R).map f = TypeCat.ofHom (SheafOfModules.sectionsMap f) - SheafOfModules.instAdditivePresheafOfModulesObjFunctorOppositeRingCatIsSheafForget 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : (SheafOfModules.forget R).Additive - SheafOfModules.forget_obj 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) (F : SheafOfModules R) : (SheafOfModules.forget R).obj F = F.val - SheafOfModules.toSheaf_obj_obj 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) (M : SheafOfModules R) : ((SheafOfModules.toSheaf R).obj M).obj = M.val.presheaf - SheafOfModules.sectionsMap_comp 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {M N P : SheafOfModules R} (f : M ⟶ N) (g : N ⟶ P) (s : M.sections) : SheafOfModules.sectionsMap (CategoryTheory.CategoryStruct.comp f g) s = SheafOfModules.sectionsMap g (SheafOfModules.sectionsMap f s) - SheafOfModules.Hom.mk 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {X Y : SheafOfModules R} (val : X.val ⟶ Y.val) : X.Hom Y - SheafOfModules.Hom.val 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {X Y : SheafOfModules R} (self : X.Hom Y) : X.val ⟶ Y.val - SheafOfModules.evaluation 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) (X : Cᵒᵖ) : CategoryTheory.Functor (SheafOfModules R) (ModuleCat ↑(R.obj.obj X)) - SheafOfModules.Hom.ext 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} {inst✝ : CategoryTheory.Category.{v₁, u₁} C} {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {X Y : SheafOfModules R} {x y : X.Hom Y} (val : x.val = y.val) : x = y - SheafOfModules.Hom.ext_iff 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} {inst✝ : CategoryTheory.Category.{v₁, u₁} C} {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {X Y : SheafOfModules R} {x y : X.Hom Y} : x = y ↔ x.val = y.val - SheafOfModules.hom_ext 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {X Y : SheafOfModules R} {f g : X ⟶ Y} (h : f.val = g.val) : f = g - SheafOfModules.hom_ext_iff 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {X Y : SheafOfModules R} {f g : X ⟶ Y} : f = g ↔ f.val = g.val - SheafOfModules.toSheafCompSheafToPresheafIso 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : (SheafOfModules.toSheaf R).comp (CategoryTheory.sheafToPresheaf J AddCommGrpCat) ≅ (SheafOfModules.forget R).comp (PresheafOfModules.toPresheaf R.obj) - SheafOfModules.forget_map 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) {X✝ Y✝ : SheafOfModules R} (φ : X✝ ⟶ Y✝) : (SheafOfModules.forget R).map φ = φ.val - SheafOfModules.id_val 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} (X : SheafOfModules R) : (CategoryTheory.CategoryStruct.id X).val = CategoryTheory.CategoryStruct.id X.val - SheafOfModules.comp_val 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {X Y Z : SheafOfModules R} (f : X ⟶ Y) (g : Y ⟶ Z) : (CategoryTheory.CategoryStruct.comp f g).val = CategoryTheory.CategoryStruct.comp f.val g.val - SheafOfModules.unitHomEquiv_comp_apply 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {M N : SheafOfModules R} (f : SheafOfModules.unit R ⟶ M) (p : M ⟶ N) : N.unitHomEquiv (CategoryTheory.CategoryStruct.comp f p) = SheafOfModules.sectionsMap p (M.unitHomEquiv f) - SheafOfModules.unitHomEquiv_symm_comp 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {M N : SheafOfModules R} (s : M.sections) (p : M ⟶ N) : CategoryTheory.CategoryStruct.comp (M.unitHomEquiv.symm s) p = N.unitHomEquiv.symm (SheafOfModules.sectionsMap p s) - SheafOfModules.forgetToSheafModuleCat 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) (X : Cᵒᵖ) (hX : CategoryTheory.Limits.IsInitial X) : CategoryTheory.Functor (SheafOfModules R) (CategoryTheory.Sheaf J (ModuleCat ↑(R.obj.obj X))) - SheafOfModules.fullyFaithfulForget_preimage_val 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) {X✝ Y✝ : SheafOfModules R} (φ : (SheafOfModules.forget R).obj X✝ ⟶ (SheafOfModules.forget R).obj Y✝) : ((SheafOfModules.fullyFaithfulForget R).preimage φ).val = φ - SheafOfModules.comp_val_assoc 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {X Y Z : SheafOfModules R} (f : X ⟶ Y) (g : Y ⟶ Z) {Z✝ : PresheafOfModules R.obj} (h : Z.val ⟶ Z✝) : CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp f g).val h = CategoryTheory.CategoryStruct.comp f.val (CategoryTheory.CategoryStruct.comp g.val h) - SheafOfModules.toSheaf_map_hom 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) {X✝ Y✝ : SheafOfModules R} (f : X✝ ⟶ Y✝) : ((SheafOfModules.toSheaf R).map f).hom = ((SheafOfModules.forget R).comp (PresheafOfModules.toPresheaf R.obj)).map f - SheafOfModules.add_val 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) {M N : SheafOfModules R} (f g : M ⟶ N) : (f + g).val = f.val + g.val - SheafOfModules.forgetToSheafModuleCat_obj_obj 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) (X : Cᵒᵖ) (hX : CategoryTheory.Limits.IsInitial X) (M : SheafOfModules R) : ((SheafOfModules.forgetToSheafModuleCat R X hX).obj M).obj = (PresheafOfModules.forgetToPresheafModuleCat X hX).obj M.val - SheafOfModules.forgetToSheafModuleCat_map_hom 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) (X : Cᵒᵖ) (hX : CategoryTheory.Limits.IsInitial X) {X✝ Y✝ : SheafOfModules R} (f : X✝ ⟶ Y✝) : ((SheafOfModules.forgetToSheafModuleCat R X hX).map f).hom = (PresheafOfModules.forgetToPresheafModuleCat X hX).map f.val - SheafOfModules.unitHomEquiv_apply_coe 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} (M : SheafOfModules R) (f : SheafOfModules.unit R ⟶ M) (X : Cᵒᵖ) : ↑(M.unitHomEquiv f) X = (CategoryTheory.ConcreteCategory.hom (f.val.app X)) 1 - SheafOfModules.forgetToSheafModuleCatOfIso 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) (X Y : Cᵒᵖ) (hX : CategoryTheory.Limits.IsInitial X) (hY : CategoryTheory.Limits.IsInitial Y) (φ : X ≅ Y) : SheafOfModules.forgetToSheafModuleCat R X hX ≅ (SheafOfModules.forgetToSheafModuleCat R Y hY).comp (CategoryTheory.sheafCompose J (ModuleCat.restrictScalars (RingCat.Hom.hom (R.obj.map φ.hom)))) - SheafOfModules.restrictScalars 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.ChangeOfRings
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R R' : CategoryTheory.Sheaf J RingCat} (α : R ⟶ R') : CategoryTheory.Functor (SheafOfModules R') (SheafOfModules R) - SheafOfModules.instAdditiveRestrictScalars 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.ChangeOfRings
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R R' : CategoryTheory.Sheaf J RingCat} (α : R ⟶ R') : (SheafOfModules.restrictScalars α).Additive - SheafOfModules.restrictScalars_obj_val 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.ChangeOfRings
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R R' : CategoryTheory.Sheaf J RingCat} (α : R ⟶ R') (M' : SheafOfModules R') : ((SheafOfModules.restrictScalars α).obj M').val = (PresheafOfModules.restrictScalars α.hom).obj M'.val - SheafOfModules.restrictScalars_map_val 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.ChangeOfRings
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R R' : CategoryTheory.Sheaf J RingCat} (α : R ⟶ R') {X✝ Y✝ : SheafOfModules R'} (φ : X✝ ⟶ Y✝) : ((SheafOfModules.restrictScalars α).map φ).val = (PresheafOfModules.restrictScalars α.hom).map φ.val - PresheafOfModules.sheafify 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafify
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] {M₀ : PresheafOfModules R₀} {A : CategoryTheory.Sheaf J AddCommGrpCat} (φ : M₀.presheaf ⟶ A.obj) [CategoryTheory.Presheaf.IsLocallyInjective J φ] [CategoryTheory.Presheaf.IsLocallySurjective J φ] : SheafOfModules R - PresheafOfModules.sheafifyHomEquiv 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafify
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] {M₀ : PresheafOfModules R₀} {A : CategoryTheory.Sheaf J AddCommGrpCat} (φ : M₀.presheaf ⟶ A.obj) [CategoryTheory.Presheaf.IsLocallyInjective J φ] [CategoryTheory.Presheaf.IsLocallySurjective J φ] [J.WEqualsLocallyBijective AddCommGrpCat] {F : SheafOfModules R} : (PresheafOfModules.sheafify α φ ⟶ F) ≃ (M₀ ⟶ (PresheafOfModules.restrictScalars α).obj ((SheafOfModules.forget R).obj F)) - PresheafOfModules.sheafifyMap 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafify
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] {M₀ : PresheafOfModules R₀} {A : CategoryTheory.Sheaf J AddCommGrpCat} (φ : M₀.presheaf ⟶ A.obj) [CategoryTheory.Presheaf.IsLocallyInjective J φ] [CategoryTheory.Presheaf.IsLocallySurjective J φ] [J.WEqualsLocallyBijective AddCommGrpCat] {M₀' : PresheafOfModules R₀} {A' : CategoryTheory.Sheaf J AddCommGrpCat} (φ' : M₀'.presheaf ⟶ A'.obj) [CategoryTheory.Presheaf.IsLocallyInjective J φ'] [CategoryTheory.Presheaf.IsLocallySurjective J φ'] (τ₀ : M₀ ⟶ M₀') (τ : A ⟶ A') (fac : CategoryTheory.CategoryStruct.comp ((PresheafOfModules.toPresheaf R₀).map τ₀) φ' = CategoryTheory.CategoryStruct.comp φ τ.hom) : PresheafOfModules.sheafify α φ ⟶ PresheafOfModules.sheafify α φ' - SheafOfModules.hasLimitsOfSize 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : CategoryTheory.Limits.HasLimitsOfSize.{v₂, v, max u₁ v, max (max (max (v + 1) u) u₁) v₁} (SheafOfModules R) - SheafOfModules.Finite.hasFiniteLimits 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : CategoryTheory.Limits.HasFiniteLimits (SheafOfModules R) - SheafOfModules.hasLimitsOfShape 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (D : Type u₂) [CategoryTheory.Category.{v₂, u₂} D] (R : CategoryTheory.Sheaf J RingCat) [Small.{v, u₂} D] : CategoryTheory.Limits.HasLimitsOfShape D (SheafOfModules R) - SheafOfModules.instPreservesFiniteLimitsSheafAddCommGrpCatToSheaf 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : CategoryTheory.Limits.PreservesFiniteLimits (SheafOfModules.toSheaf R) - SheafOfModules.forgetPreservesLimitsOfSize 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : CategoryTheory.Limits.PreservesLimitsOfSize.{v₂, v, max u₁ v, max u₁ v, max (max (max u u₁) (v + 1)) v₁, max (max (max u u₁) (v + 1)) v₁} (SheafOfModules.forget R) - SheafOfModules.Finite.forgetPreservesFiniteLimits 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : CategoryTheory.Limits.PreservesFiniteLimits (SheafOfModules.forget R) - SheafOfModules.forgetPreservesLimitsOfShape 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (D : Type u₂) [CategoryTheory.Category.{v₂, u₂} D] (R : CategoryTheory.Sheaf J RingCat) [Small.{v, u₂} D] : CategoryTheory.Limits.PreservesLimitsOfShape D (SheafOfModules.forget R) - SheafOfModules.instPreservesFiniteLimitsFunctorOppositeAddCommGrpCatCompSheafToSheafSheafToPresheaf 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) : CategoryTheory.Limits.PreservesFiniteLimits ((SheafOfModules.toSheaf R).comp (CategoryTheory.sheafToPresheaf J AddCommGrpCat)) - SheafOfModules.evaluationPreservesLimitsOfSize 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) (X : Cᵒᵖ) : CategoryTheory.Limits.PreservesLimitsOfSize.{v₂, v, max u₁ v, v, max (max (max u u₁) (v + 1)) v₁, max u (v + 1)} (SheafOfModules.evaluation R X) - SheafOfModules.Finite.evaluationPreservesFiniteLimits 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) (X : Cᵒᵖ) : CategoryTheory.Limits.PreservesFiniteLimits (SheafOfModules.evaluation R X) - SheafOfModules.evaluationPreservesLimitsOfShape 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} (D : Type u₂) [CategoryTheory.Category.{v₂, u₂} D] (R : CategoryTheory.Sheaf J RingCat) [Small.{v, u₂} D] (X : Cᵒᵖ) : CategoryTheory.Limits.PreservesLimitsOfShape D (SheafOfModules.evaluation R X) - SheafOfModules.hasLimit 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {R : CategoryTheory.Sheaf J RingCat} (F : CategoryTheory.Functor D (SheafOfModules R)) [∀ (X : Cᵒᵖ), Small.{v, max u₂ v} ↑((F.comp (SheafOfModules.evaluation R X)).comp (CategoryTheory.forget (ModuleCat ↑(R.obj.obj X)))).sections] [CategoryTheory.Limits.HasLimitsOfShape D AddCommGrpCat] : CategoryTheory.Limits.HasLimit F - SheafOfModules.createsLimit 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {R : CategoryTheory.Sheaf J RingCat} (F : CategoryTheory.Functor D (SheafOfModules R)) [∀ (X : Cᵒᵖ), Small.{v, max u₂ v} ↑((F.comp (SheafOfModules.evaluation R X)).comp (CategoryTheory.forget (ModuleCat ↑(R.obj.obj X)))).sections] [CategoryTheory.Limits.HasLimitsOfShape D AddCommGrpCat] : CategoryTheory.CreatesLimit F (SheafOfModules.forget R) - SheafOfModules.evaluationPreservesLimit 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {R : CategoryTheory.Sheaf J RingCat} (F : CategoryTheory.Functor D (SheafOfModules R)) [∀ (X : Cᵒᵖ), Small.{v, max u₂ v} ↑((F.comp (SheafOfModules.evaluation R X)).comp (CategoryTheory.forget (ModuleCat ↑(R.obj.obj X)))).sections] [CategoryTheory.Limits.HasLimitsOfShape D AddCommGrpCat] (X : Cᵒᵖ) : CategoryTheory.Limits.PreservesLimit F (SheafOfModules.evaluation R X) - SheafOfModules.instSmallElemForallObjCompModuleCatCarrierOppositeRingCatObjFunctorIsSheafPresheafOfModulesForgetEvaluationForgetLinearMapIdCarrierSections 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {R : CategoryTheory.Sheaf J RingCat} (F : CategoryTheory.Functor D (SheafOfModules R)) [∀ (X : Cᵒᵖ), Small.{v, max u₂ v} ↑((F.comp (SheafOfModules.evaluation R X)).comp (CategoryTheory.forget (ModuleCat ↑(R.obj.obj X)))).sections] (X : Cᵒᵖ) : Small.{v, max u₂ v} ↑(((F.comp (SheafOfModules.forget R)).comp (PresheafOfModules.evaluation R.obj X)).comp (CategoryTheory.forget (ModuleCat ↑(R.obj.obj X)))).sections - PresheafOfModules.instReflectsFiniteLimitsSheafOfModulesSheafAddCommGrpCatToSheaf 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} : CategoryTheory.Limits.ReflectsFiniteLimits (SheafOfModules.toSheaf R) - PresheafOfModules.instReflectsIsomorphismsSheafOfModulesSheafAddCommGrpCatToSheaf 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} : (SheafOfModules.toSheaf R).ReflectsIsomorphisms - PresheafOfModules.instReflectsIsomorphismsSheafOfModulesSheafAddCommGrpCatToSheaf_1 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} : (SheafOfModules.toSheaf R).ReflectsIsomorphisms - PresheafOfModules.sheafification 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] : CategoryTheory.Functor (PresheafOfModules R₀) (SheafOfModules R) - PresheafOfModules.instIsLeftAdjointSheafOfModulesSheafification 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] : (PresheafOfModules.sheafification α).IsLeftAdjoint - PresheafOfModules.instPreservesFiniteLimitsSheafOfModulesSheafification 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasSheafify J AddCommGrpCat] : CategoryTheory.Limits.PreservesFiniteLimits (PresheafOfModules.sheafification α) - PresheafOfModules.instPreservesFiniteLimitsSheafAddCommGrpCatCompSheafOfModulesSheafificationToSheaf 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasSheafify J AddCommGrpCat] : CategoryTheory.Limits.PreservesFiniteLimits ((PresheafOfModules.sheafification α).comp (SheafOfModules.toSheaf R)) - PresheafOfModules.instFaithfulSheafOfModulesCompObjFunctorOppositeRingCatIsSheafForgetRestrictScalars 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] : ((SheafOfModules.forget R).comp (PresheafOfModules.restrictScalars α)).Faithful - PresheafOfModules.instFullSheafOfModulesCompObjFunctorOppositeRingCatIsSheafForgetRestrictScalars 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] : ((SheafOfModules.forget R).comp (PresheafOfModules.restrictScalars α)).Full - PresheafOfModules.sheafificationAdjunction 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] : PresheafOfModules.sheafification α ⊣ (SheafOfModules.forget R).comp (PresheafOfModules.restrictScalars α) - PresheafOfModules.sheafificationCompToSheaf 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] : (PresheafOfModules.sheafification α).comp (SheafOfModules.toSheaf R) ≅ (PresheafOfModules.toPresheaf R₀).comp (CategoryTheory.presheafToSheaf J AddCommGrpCat) - PresheafOfModules.sheafificationHomEquiv 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] {P : PresheafOfModules R₀} {F : SheafOfModules R} : ((PresheafOfModules.sheafification α).obj P ⟶ F) ≃ (P ⟶ (PresheafOfModules.restrictScalars α).obj ((SheafOfModules.forget R).obj F)) - PresheafOfModules.sheafificationCompForgetCompToPresheaf 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] : (PresheafOfModules.sheafification α).comp ((SheafOfModules.forget R).comp (PresheafOfModules.toPresheaf R.obj)) ≅ (PresheafOfModules.toPresheaf R₀).comp ((CategoryTheory.presheafToSheaf J AddCommGrpCat).comp (CategoryTheory.sheafToPresheaf J AddCommGrpCat)) - PresheafOfModules.instIsIsoFunctorSheafOfModulesCounitSheafificationAdjunction 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] : CategoryTheory.IsIso (PresheafOfModules.sheafificationAdjunction α).counit - PresheafOfModules.sheafification_map 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] {X✝ Y✝ : PresheafOfModules R₀} (f : X✝ ⟶ Y✝) : (PresheafOfModules.sheafification α).map f = PresheafOfModules.sheafifyMap α (CategoryTheory.toSheafify J X✝.presheaf) (CategoryTheory.toSheafify J Y✝.presheaf) f ((CategoryTheory.presheafToSheaf J AddCommGrpCat).map ((PresheafOfModules.toPresheaf R₀).map f)) ⋯ - PresheafOfModules.toPresheaf_map_sheafificationAdjunction_unit_app 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] (M₀ : PresheafOfModules R₀) : (PresheafOfModules.toPresheaf R₀).map ((PresheafOfModules.sheafificationAdjunction α).unit.app M₀) = CategoryTheory.toSheafify J M₀.presheaf - PresheafOfModules.toSheaf_map_sheafificationAdjunction_counit_app 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] (M : SheafOfModules R) : (SheafOfModules.toSheaf R).map ((PresheafOfModules.sheafificationAdjunction α).counit.app M) = (CategoryTheory.sheafificationAdjunction J AddCommGrpCat).counit.app ((SheafOfModules.toSheaf R).obj M) - PresheafOfModules.toPresheaf_map_sheafificationHomEquiv_def 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] {P : PresheafOfModules R₀} {F : SheafOfModules R} (f : (PresheafOfModules.sheafification α).obj P ⟶ F) : (PresheafOfModules.toPresheaf R₀).map ((PresheafOfModules.sheafificationHomEquiv α) f) = CategoryTheory.CategoryStruct.comp (CategoryTheory.toSheafify J P.presheaf) ((PresheafOfModules.toPresheaf R.obj).map f.val) - PresheafOfModules.sheafificationAdjunction_homEquiv_apply 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] {P : PresheafOfModules R₀} {F : SheafOfModules R} (f : (PresheafOfModules.sheafification α).obj P ⟶ F) : ((PresheafOfModules.sheafificationAdjunction α).homEquiv P F) f = (PresheafOfModules.sheafificationHomEquiv α) f - PresheafOfModules.toPresheaf_map_sheafificationHomEquiv 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] {P : PresheafOfModules R₀} {F : SheafOfModules R} (f : (PresheafOfModules.sheafification α).obj P ⟶ F) : (PresheafOfModules.toPresheaf R₀).map ((PresheafOfModules.sheafificationHomEquiv α) f) = ((CategoryTheory.sheafificationAdjunction J AddCommGrpCat).homEquiv P.presheaf ((SheafOfModules.toSheaf R).obj F)) ((SheafOfModules.toSheaf R).map f) - PresheafOfModules.toSheaf_map_sheafificationHomEquiv_symm 📋 Mathlib.Algebra.Category.ModuleCat.Presheaf.Sheafification
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R₀ : CategoryTheory.Functor Cᵒᵖ RingCat} {R : CategoryTheory.Sheaf J RingCat} (α : R₀ ⟶ R.obj) [CategoryTheory.Presheaf.IsLocallyInjective J α] [CategoryTheory.Presheaf.IsLocallySurjective J α] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.HasWeakSheafify J AddCommGrpCat] {P : PresheafOfModules R₀} {F : SheafOfModules R} (g : P ⟶ (PresheafOfModules.restrictScalars α).obj ((SheafOfModules.forget R).obj F)) : (SheafOfModules.toSheaf R).map ((PresheafOfModules.sheafificationHomEquiv α).symm g) = ((CategoryTheory.sheafificationAdjunction J AddCommGrpCat).homEquiv P.presheaf ((SheafOfModules.toSheaf R).obj F)).symm ((PresheafOfModules.toPresheaf R₀).map g) - SheafOfModules.instAbelian 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Abelian
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) [CategoryTheory.HasSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] : CategoryTheory.Abelian (SheafOfModules R) - SheafOfModules.instHasColimitsOfSizeOfPresheafOfModulesObjFunctorOppositeRingCatIsSheaf 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Colimits
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] [CategoryTheory.Limits.HasColimitsOfSize.{w', w, max u' v, max (max (max (v + 1) u) u') v'} (PresheafOfModules R.obj)] : CategoryTheory.Limits.HasColimitsOfSize.{w', w, max u' v, max (max (max (v + 1) u) u') v'} (SheafOfModules R) - SheafOfModules.instHasColimitsOfShapeOfPresheafOfModulesObjFunctorOppositeRingCatIsSheaf 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Colimits
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] (K : Type w) [CategoryTheory.Category.{w', w} K] [CategoryTheory.Limits.HasColimitsOfShape K (PresheafOfModules R.obj)] : CategoryTheory.Limits.HasColimitsOfShape K (SheafOfModules R) - SheafOfModules.free 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] (I : Type u) : SheafOfModules R - SheafOfModules.freeFunctor 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] : CategoryTheory.Functor (Type u) (SheafOfModules R) - SheafOfModules.freeCofan 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] (I : Type u) : CategoryTheory.Limits.Cofan fun x => SheafOfModules.unit R - SheafOfModules.instPreservesColimitsOfSizeFreeFunctor 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] : CategoryTheory.Limits.PreservesColimitsOfSize.{v₂, u₂, u, max u u₁, u + 1, max (max (u + 1) u₁) v₁} SheafOfModules.freeFunctor - SheafOfModules.freeFunctor_obj 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] (X : Type u) : SheafOfModules.freeFunctor.obj X = SheafOfModules.free X - SheafOfModules.ιFree 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {I : Type u} (i : I) : SheafOfModules.unit R ⟶ SheafOfModules.free I - SheafOfModules.isColimitFreeCofan 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] (I : Type u) : CategoryTheory.Limits.IsColimit (SheafOfModules.freeCofan I) - SheafOfModules.freeMap 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {I J✝ : Type u} (f : I → J✝) : SheafOfModules.free I ⟶ SheafOfModules.free J✝ - SheafOfModules.freeHomEquiv 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] (M : SheafOfModules R) {I : Type u} : (SheafOfModules.free I ⟶ M) ≃ (I → M.sections) - SheafOfModules.freeFunctor_map 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {X Y : Type u} (f : X ⟶ Y) : SheafOfModules.freeFunctor.map f = SheafOfModules.freeMap ⇑(CategoryTheory.ConcreteCategory.hom f) - SheafOfModules.freeCofan_inj 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {I : Type u} (i : I) : (SheafOfModules.freeCofan I).inj i = SheafOfModules.ιFree i - SheafOfModules.ιFree_freeMap 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {I J✝ : Type u} (f : I → J✝) (i : I) : CategoryTheory.CategoryStruct.comp (SheafOfModules.ιFree i) (SheafOfModules.freeMap f) = SheafOfModules.ιFree (f i) - SheafOfModules.freeSumIso 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] (I J✝ : Type u) : SheafOfModules.free I ⨿ SheafOfModules.free J✝ ≅ SheafOfModules.free (I ⊕ J✝) - SheafOfModules.ιFree_freeMap_assoc 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {I J✝ : Type u} (f : I → J✝) (i : I) {Z : SheafOfModules R} (h : SheafOfModules.free J✝ ⟶ Z) : CategoryTheory.CategoryStruct.comp (SheafOfModules.ιFree i) (CategoryTheory.CategoryStruct.comp (SheafOfModules.freeMap f) h) = CategoryTheory.CategoryStruct.comp (SheafOfModules.ιFree (f i)) h - SheafOfModules.mapFree 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {C' : Type u₂} [CategoryTheory.Category.{v₂, u₂} C'] {J' : CategoryTheory.GrothendieckTopology C'} {S : CategoryTheory.Sheaf J' RingCat} [CategoryTheory.HasSheafify J' AddCommGrpCat] [J'.WEqualsLocallyBijective AddCommGrpCat] (F : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules S)) (I : Type u) (η : SheafOfModules.unit S ⟶ F.obj (SheafOfModules.unit R)) : SheafOfModules.free I ⟶ F.obj (SheafOfModules.free I) - SheafOfModules.mapFreeIso 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {C' : Type u₂} [CategoryTheory.Category.{v₂, u₂} C'] {J' : CategoryTheory.GrothendieckTopology C'} {S : CategoryTheory.Sheaf J' RingCat} [CategoryTheory.HasSheafify J' AddCommGrpCat] [J'.WEqualsLocallyBijective AddCommGrpCat] (F : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules S)) (I : Type u) [CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete I) F] (η : SheafOfModules.unit S ≅ F.obj (SheafOfModules.unit R)) : SheafOfModules.free I ≅ F.obj (SheafOfModules.free I) - SheafOfModules.sectionsMap_freeHomEquiv_symm_freeSection 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {I : Type u} {M : SheafOfModules R} (f : I → M.sections) (i : I) : SheafOfModules.sectionsMap (M.freeHomEquiv.symm f) (SheafOfModules.freeSection i) = f i - SheafOfModules.freeHomEquiv_apply 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {M : SheafOfModules R} {I : Type u} (f : SheafOfModules.free I ⟶ M) (i : I) : M.freeHomEquiv f i = SheafOfModules.sectionsMap f (SheafOfModules.freeSection i) - SheafOfModules.freeHomEquiv_freeMap 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {I J✝ : Type u} (f : I → J✝) : (SheafOfModules.free J✝).freeHomEquiv (SheafOfModules.freeMap f) = SheafOfModules.freeSection ∘ f - SheafOfModules.mapFreeIso_hom 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {C' : Type u₂} [CategoryTheory.Category.{v₂, u₂} C'] {J' : CategoryTheory.GrothendieckTopology C'} {S : CategoryTheory.Sheaf J' RingCat} [CategoryTheory.HasSheafify J' AddCommGrpCat] [J'.WEqualsLocallyBijective AddCommGrpCat] (F : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules S)) (I : Type u) [CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete I) F] (η : SheafOfModules.unit S ≅ F.obj (SheafOfModules.unit R)) : (SheafOfModules.mapFreeIso F I η).hom = SheafOfModules.mapFree F I η.hom - SheafOfModules.ιFree_mapFree 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {C' : Type u₂} [CategoryTheory.Category.{v₂, u₂} C'] {J' : CategoryTheory.GrothendieckTopology C'} {S : CategoryTheory.Sheaf J' RingCat} [CategoryTheory.HasSheafify J' AddCommGrpCat] [J'.WEqualsLocallyBijective AddCommGrpCat] (F : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules S)) (I : Type u) (η : SheafOfModules.unit S ⟶ F.obj (SheafOfModules.unit R)) (i : I) : CategoryTheory.CategoryStruct.comp (SheafOfModules.ιFree i) (SheafOfModules.mapFree F I η) = CategoryTheory.CategoryStruct.comp η (F.map (SheafOfModules.ιFree i)) - SheafOfModules.inl_freeSumIso_hom 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] (I J✝ : Type u) : CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.coprod.inl (SheafOfModules.freeSumIso I J✝).hom = SheafOfModules.freeMap Sum.inl - SheafOfModules.inr_freeSumIso_hom 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] (I J✝ : Type u) : CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.coprod.inr (SheafOfModules.freeSumIso I J✝).hom = SheafOfModules.freeMap Sum.inr - SheafOfModules.ιFree_mapFree_assoc 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {C' : Type u₂} [CategoryTheory.Category.{v₂, u₂} C'] {J' : CategoryTheory.GrothendieckTopology C'} {S : CategoryTheory.Sheaf J' RingCat} [CategoryTheory.HasSheafify J' AddCommGrpCat] [J'.WEqualsLocallyBijective AddCommGrpCat] (F : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules S)) (I : Type u) (η : SheafOfModules.unit S ⟶ F.obj (SheafOfModules.unit R)) (i : I) {Z : SheafOfModules S} (h : F.obj (SheafOfModules.free I) ⟶ Z) : CategoryTheory.CategoryStruct.comp (SheafOfModules.ιFree i) (CategoryTheory.CategoryStruct.comp (SheafOfModules.mapFree F I η) h) = CategoryTheory.CategoryStruct.comp η (CategoryTheory.CategoryStruct.comp (F.map (SheafOfModules.ιFree i)) h) - SheafOfModules.unitHomEquiv_symm_freeHomEquiv_apply 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {I : Type u} {M : SheafOfModules R} (f : SheafOfModules.free I ⟶ M) (i : I) : M.unitHomEquiv.symm (M.freeHomEquiv f i) = CategoryTheory.CategoryStruct.comp (SheafOfModules.ιFree i) f - SheafOfModules.ιFree_mapFreeIso_hom 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {C' : Type u₂} [CategoryTheory.Category.{v₂, u₂} C'] {J' : CategoryTheory.GrothendieckTopology C'} {S : CategoryTheory.Sheaf J' RingCat} [CategoryTheory.HasSheafify J' AddCommGrpCat] [J'.WEqualsLocallyBijective AddCommGrpCat] (F : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules S)) (I : Type u) [CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete I) F] (η : SheafOfModules.unit S ≅ F.obj (SheafOfModules.unit R)) (i : I) : CategoryTheory.CategoryStruct.comp (SheafOfModules.ιFree i) (SheafOfModules.mapFreeIso F I η).hom = CategoryTheory.CategoryStruct.comp η.hom (F.map (SheafOfModules.ιFree i)) - SheafOfModules.ιFree_mapFree_inv 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {C' : Type u₂} [CategoryTheory.Category.{v₂, u₂} C'] {J' : CategoryTheory.GrothendieckTopology C'} {S : CategoryTheory.Sheaf J' RingCat} [CategoryTheory.HasSheafify J' AddCommGrpCat] [J'.WEqualsLocallyBijective AddCommGrpCat] (F : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules S)) (I : Type u) [CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete I) F] (η : SheafOfModules.unit S ≅ F.obj (SheafOfModules.unit R)) (i : I) : CategoryTheory.CategoryStruct.comp (SheafOfModules.ιFree i) (SheafOfModules.mapFreeIso F I η).hom = CategoryTheory.CategoryStruct.comp η.hom (F.map (SheafOfModules.ιFree i)) - SheafOfModules.map_ιFree_mapFreeIso_inv 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {C' : Type u₂} [CategoryTheory.Category.{v₂, u₂} C'] {J' : CategoryTheory.GrothendieckTopology C'} {S : CategoryTheory.Sheaf J' RingCat} [CategoryTheory.HasSheafify J' AddCommGrpCat] [J'.WEqualsLocallyBijective AddCommGrpCat] (F : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules S)) (I : Type u) [CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete I) F] (η : SheafOfModules.unit S ≅ F.obj (SheafOfModules.unit R)) (i : I) : CategoryTheory.CategoryStruct.comp (F.map (SheafOfModules.ιFree i)) (SheafOfModules.mapFreeIso F I η).inv = CategoryTheory.CategoryStruct.comp η.inv (SheafOfModules.ιFree i) - SheafOfModules.map_ιFree_mapFree_hom 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {C' : Type u₂} [CategoryTheory.Category.{v₂, u₂} C'] {J' : CategoryTheory.GrothendieckTopology C'} {S : CategoryTheory.Sheaf J' RingCat} [CategoryTheory.HasSheafify J' AddCommGrpCat] [J'.WEqualsLocallyBijective AddCommGrpCat] (F : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules S)) (I : Type u) [CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete I) F] (η : SheafOfModules.unit S ≅ F.obj (SheafOfModules.unit R)) (i : I) : CategoryTheory.CategoryStruct.comp (F.map (SheafOfModules.ιFree i)) (SheafOfModules.mapFreeIso F I η).inv = CategoryTheory.CategoryStruct.comp η.inv (SheafOfModules.ιFree i) - SheafOfModules.freeHomEquiv_comp_apply 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {M N : SheafOfModules R} {I : Type u} (f : SheafOfModules.free I ⟶ M) (p : M ⟶ N) (i : I) : N.freeHomEquiv (CategoryTheory.CategoryStruct.comp f p) i = SheafOfModules.sectionsMap p (M.freeHomEquiv f i) - SheafOfModules.freeHomEquiv_symm_comp 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {M N : SheafOfModules R} {I : Type u} (s : I → M.sections) (p : M ⟶ N) : CategoryTheory.CategoryStruct.comp (M.freeHomEquiv.symm s) p = N.freeHomEquiv.symm fun i => SheafOfModules.sectionsMap p (s i) - SheafOfModules.ιFree_mapFreeIso_hom_assoc 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {C' : Type u₂} [CategoryTheory.Category.{v₂, u₂} C'] {J' : CategoryTheory.GrothendieckTopology C'} {S : CategoryTheory.Sheaf J' RingCat} [CategoryTheory.HasSheafify J' AddCommGrpCat] [J'.WEqualsLocallyBijective AddCommGrpCat] (F : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules S)) (I : Type u) [CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete I) F] (η : SheafOfModules.unit S ≅ F.obj (SheafOfModules.unit R)) (i : I) {Z : SheafOfModules S} (h : F.obj (SheafOfModules.free I) ⟶ Z) : CategoryTheory.CategoryStruct.comp (SheafOfModules.ιFree i) (CategoryTheory.CategoryStruct.comp (SheafOfModules.mapFreeIso F I η).hom h) = CategoryTheory.CategoryStruct.comp η.hom (CategoryTheory.CategoryStruct.comp (F.map (SheafOfModules.ιFree i)) h) - SheafOfModules.map_ιFree_mapFreeIso_inv_assoc 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {C' : Type u₂} [CategoryTheory.Category.{v₂, u₂} C'] {J' : CategoryTheory.GrothendieckTopology C'} {S : CategoryTheory.Sheaf J' RingCat} [CategoryTheory.HasSheafify J' AddCommGrpCat] [J'.WEqualsLocallyBijective AddCommGrpCat] (F : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules S)) (I : Type u) [CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete I) F] (η : SheafOfModules.unit S ≅ F.obj (SheafOfModules.unit R)) (i : I) {Z : SheafOfModules S} (h : SheafOfModules.free I ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map (SheafOfModules.ιFree i)) (CategoryTheory.CategoryStruct.comp (SheafOfModules.mapFreeIso F I η).inv h) = CategoryTheory.CategoryStruct.comp η.inv (CategoryTheory.CategoryStruct.comp (SheafOfModules.ιFree i) h) - SheafOfModules.inl_freeSumIso_hom_assoc 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] (I J✝ : Type u) {Z : SheafOfModules R} (h : SheafOfModules.free (I ⊕ J✝) ⟶ Z) : CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.coprod.inl (CategoryTheory.CategoryStruct.comp (SheafOfModules.freeSumIso I J✝).hom h) = CategoryTheory.CategoryStruct.comp (SheafOfModules.freeMap Sum.inl) h - SheafOfModules.inr_freeSumIso_hom_assoc 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Free
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] (I J✝ : Type u) {Z : SheafOfModules R} (h : SheafOfModules.free (I ⊕ J✝) ⟶ Z) : CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.coprod.inr (CategoryTheory.CategoryStruct.comp (SheafOfModules.freeSumIso I J✝).hom h) = CategoryTheory.CategoryStruct.comp (SheafOfModules.freeMap Sum.inr) h - SheafOfModules.over 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {K : CategoryTheory.GrothendieckTopology D} {R : CategoryTheory.Sheaf K RingCat} (M : SheafOfModules R) (X : D) : SheafOfModules (R.over X) - SheafOfModules.overFunctor 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {K : CategoryTheory.GrothendieckTopology D} (R : CategoryTheory.Sheaf K RingCat) (X : D) : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules (R.over X)) - SheafOfModules.overMap 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {K : CategoryTheory.GrothendieckTopology D} (R : CategoryTheory.Sheaf K RingCat) {X Y : D} (f : X ⟶ Y) : CategoryTheory.Functor (SheafOfModules (R.over Y)) (SheafOfModules (R.over X)) - SheafOfModules.overPullback 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {K : CategoryTheory.GrothendieckTopology D} (R : CategoryTheory.Sheaf K RingCat) [CategoryTheory.Limits.HasPullbacks D] {X Y : D} (f : X ⟶ Y) : CategoryTheory.Functor (SheafOfModules (R.over X)) (SheafOfModules (R.over Y)) - SheafOfModules.pushforwardId 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {K : CategoryTheory.GrothendieckTopology D} (R : CategoryTheory.Sheaf K RingCat) : SheafOfModules.pushforward (CategoryTheory.CategoryStruct.id R) ≅ CategoryTheory.Functor.id (SheafOfModules R) - SheafOfModules.instIsLeftAdjointOverOverRingCatOverMapOfHasPullbacks 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.Limits.HasPullbacks C] {X Y : C} (f : X ⟶ Y) : (SheafOfModules.overMap R f).IsLeftAdjoint - SheafOfModules.overMapPushforwardAdj 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} (R : CategoryTheory.Sheaf J RingCat) [CategoryTheory.Limits.HasPullbacks C] {X Y : C} (f : X ⟶ Y) : SheafOfModules.overMap R f ⊣ SheafOfModules.overPullback R f - SheafOfModules.Hom.over 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {K : CategoryTheory.GrothendieckTopology D} {R : CategoryTheory.Sheaf K RingCat} {M N : SheafOfModules R} (f : M ⟶ N) (X : D) : M.over X ⟶ N.over X - SheafOfModules.pushforward 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules S) - SheafOfModules.instIsLeftAdjointOverOverRingCatPushforwardIdSheafOver 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u'} [CategoryTheory.Category.{v', u'} C] [CategoryTheory.Limits.HasBinaryProducts C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} (x : C) : (SheafOfModules.pushforward (CategoryTheory.CategoryStruct.id (R.over x))).IsLeftAdjoint - SheafOfModules.overMapUnitIso 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {K : CategoryTheory.GrothendieckTopology D} {R : CategoryTheory.Sheaf K RingCat} {X Y : D} (f : X ⟶ Y) : (SheafOfModules.overMap R f).obj (SheafOfModules.unit (R.over Y)) ≅ SheafOfModules.unit (R.over X) - SheafOfModules.overPushforwardOverAdj 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u'} [CategoryTheory.Category.{v', u'} C] [CategoryTheory.Limits.HasBinaryProducts C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} (x : C) : SheafOfModules.pushforward (CategoryTheory.CategoryStruct.id (R.over x)) ⊣ SheafOfModules.pushforward (SheafOfModules.pushforwardOver x) - SheafOfModules.overFunctorMap 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {K : CategoryTheory.GrothendieckTopology D} (R : CategoryTheory.Sheaf K RingCat) {X Y : D} (f : X ⟶ Y) : (SheafOfModules.overFunctor R Y).comp (SheafOfModules.overMap R f) ≅ SheafOfModules.overFunctor R X - SheafOfModules.isLeftAdjoint_pushforward_of_isIso 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) [F.IsCocontinuous J K] [CategoryTheory.IsIso φ] [F.IsLeftAdjoint] : (SheafOfModules.pushforward φ).IsLeftAdjoint - SheafOfModules.pushforwardCongr 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] {φ ψ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R} (e : φ = ψ) : SheafOfModules.pushforward φ ≅ SheafOfModules.pushforward ψ - SheafOfModules.pushforwardNatIso 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F G : CategoryTheory.Functor C D} {T : CategoryTheory.Sheaf J RingCat} {S : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] [G.IsContinuous J K] (φ : T ⟶ (G.sheafPushforwardContinuous RingCat J K).obj S) (α : F ≅ G) : SheafOfModules.pushforward φ ≅ SheafOfModules.pushforward (CategoryTheory.CategoryStruct.comp φ ((CategoryTheory.Functor.sheafPushforwardContinuousNatTrans α.hom RingCat J K).app S)) - SheafOfModules.pushforwardNatTrans 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F G : CategoryTheory.Functor C D} {T : CategoryTheory.Sheaf J RingCat} {S : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] [G.IsContinuous J K] (φ : T ⟶ (G.sheafPushforwardContinuous RingCat J K).obj S) (α : F ⟶ G) : SheafOfModules.pushforward φ ⟶ SheafOfModules.pushforward (CategoryTheory.CategoryStruct.comp φ ((CategoryTheory.Functor.sheafPushforwardContinuousNatTrans α RingCat J K).app S)) - SheafOfModules.pushforward_obj_val 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) (M : SheafOfModules R) : ((SheafOfModules.pushforward φ).obj M).val = (PresheafOfModules.pushforward φ.hom).obj M.val - SheafOfModules.pushforwardCongr_symm 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] {φ ψ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R} (e : φ = ψ) : (SheafOfModules.pushforwardCongr e).symm = SheafOfModules.pushforwardCongr ⋯ - SheafOfModules.pushforwardComp 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {D' : Type u₃} [CategoryTheory.Category.{v₃, u₃} D'] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) {K' : CategoryTheory.GrothendieckTopology D'} {G : CategoryTheory.Functor D D'} {R' : CategoryTheory.Sheaf K' RingCat} [G.IsContinuous K K'] (ψ : R ⟶ (G.sheafPushforwardContinuous RingCat K K').obj R') : (SheafOfModules.pushforward ψ).comp (SheafOfModules.pushforward φ) ≅ SheafOfModules.pushforward (CategoryTheory.CategoryStruct.comp φ ((F.sheafPushforwardContinuous RingCat J K).map ψ)) - SheafOfModules.pushforwardCongr₂ 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F G : CategoryTheory.Functor C D} {T : CategoryTheory.Sheaf J RingCat} {S : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] [G.IsContinuous J K] (φ : T ⟶ (G.sheafPushforwardContinuous RingCat J K).obj S) {ψ : T ⟶ (F.sheafPushforwardContinuous RingCat J K).obj S} (e : F ≅ G) (he : CategoryTheory.CategoryStruct.comp φ ((CategoryTheory.Functor.sheafPushforwardContinuousNatTrans e.hom RingCat J K).app S) = ψ) : SheafOfModules.pushforward φ ≅ SheafOfModules.pushforward ψ - SheafOfModules.pushforwardNatIso_hom 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F G : CategoryTheory.Functor C D} {T : CategoryTheory.Sheaf J RingCat} {S : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] [G.IsContinuous J K] (φ : T ⟶ (G.sheafPushforwardContinuous RingCat J K).obj S) (α : F ≅ G) : (SheafOfModules.pushforwardNatIso φ α).hom = SheafOfModules.pushforwardNatTrans φ α.hom - SheafOfModules.pushforward_id_comp 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) : SheafOfModules.pushforwardComp φ (CategoryTheory.CategoryStruct.id R) = CategoryTheory.Functor.isoWhiskerRight (SheafOfModules.pushforwardId R) (SheafOfModules.pushforward φ) ≪≫ (SheafOfModules.pushforward φ).leftUnitor - SheafOfModules.pushforward_comp_id 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) : SheafOfModules.pushforwardComp (CategoryTheory.CategoryStruct.id S) φ = (SheafOfModules.pushforward φ).isoWhiskerLeft (SheafOfModules.pushforwardId S) ≪≫ (SheafOfModules.pushforward φ).rightUnitor - SheafOfModules.pushforwardNatTrans_id 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {G : CategoryTheory.Functor C D} {T : CategoryTheory.Sheaf J RingCat} {S : CategoryTheory.Sheaf K RingCat} [G.IsContinuous J K] (φ : T ⟶ (G.sheafPushforwardContinuous RingCat J K).obj S) : SheafOfModules.pushforwardNatTrans φ (CategoryTheory.CategoryStruct.id G) = (SheafOfModules.pushforwardCongr ⋯).hom - SheafOfModules.pushforward_map_val 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) {X✝ Y✝ : SheafOfModules R} (f : X✝ ⟶ Y✝) : ((SheafOfModules.pushforward φ).map f).val = (PresheafOfModules.pushforward φ.hom).map f.val - SheafOfModules.pushforwardPushforwardAdj 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] [G.IsContinuous K J] (adj : F ⊣ G) (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) (ψ : R ⟶ (G.sheafPushforwardContinuous RingCat K J).obj S) (H₁ : CategoryTheory.Functor.whiskerRight (CategoryTheory.NatTrans.op adj.counit) R.obj = CategoryTheory.CategoryStruct.comp ψ.hom (G.op.whiskerLeft φ.hom)) (H₂ : CategoryTheory.CategoryStruct.comp φ.hom (CategoryTheory.CategoryStruct.comp (F.op.whiskerLeft ψ.hom) (CategoryTheory.Functor.whiskerRight (CategoryTheory.NatTrans.op adj.unit) S.obj)) = CategoryTheory.CategoryStruct.id S.obj) : SheafOfModules.pushforward φ ⊣ SheafOfModules.pushforward ψ - SheafOfModules.pushforwardPushforwardEquivalence 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} (eqv : C ≌ D) {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [eqv.functor.IsContinuous J K] [eqv.inverse.IsContinuous K J] (φ : S ⟶ (eqv.functor.sheafPushforwardContinuous RingCat J K).obj R) (ψ : R ⟶ (eqv.inverse.sheafPushforwardContinuous RingCat K J).obj S) (H₁ : CategoryTheory.Functor.whiskerRight (CategoryTheory.NatTrans.op eqv.counit) R.obj = CategoryTheory.CategoryStruct.comp ψ.hom (eqv.inverse.op.whiskerLeft φ.hom)) (H₂ : CategoryTheory.CategoryStruct.comp φ.hom (CategoryTheory.CategoryStruct.comp (eqv.functor.op.whiskerLeft ψ.hom) (CategoryTheory.Functor.whiskerRight (CategoryTheory.NatTrans.op eqv.unit) S.obj)) = CategoryTheory.CategoryStruct.id S.obj) : SheafOfModules R ≌ SheafOfModules S - SheafOfModules.pushforwardNatIso_inv 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F G : CategoryTheory.Functor C D} {T : CategoryTheory.Sheaf J RingCat} {S : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] [G.IsContinuous J K] (φ : T ⟶ (G.sheafPushforwardContinuous RingCat J K).obj S) (α : F ≅ G) : (SheafOfModules.pushforwardNatIso φ α).inv = CategoryTheory.CategoryStruct.comp (SheafOfModules.pushforwardNatTrans (CategoryTheory.CategoryStruct.comp φ ((CategoryTheory.Functor.sheafPushforwardContinuousNatTrans α.hom RingCat J K).app S)) α.inv) (SheafOfModules.pushforwardCongr ⋯).hom - SheafOfModules.pushforwardNatTrans_comp 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F G H : CategoryTheory.Functor C D} {T : CategoryTheory.Sheaf J RingCat} {S : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] [G.IsContinuous J K] [H.IsContinuous J K] (α : F ⟶ G) (β : G ⟶ H) (φ : T ⟶ (H.sheafPushforwardContinuous RingCat J K).obj S) : SheafOfModules.pushforwardNatTrans φ (CategoryTheory.CategoryStruct.comp α β) = CategoryTheory.CategoryStruct.comp (SheafOfModules.pushforwardNatTrans φ β) (CategoryTheory.CategoryStruct.comp (SheafOfModules.pushforwardNatTrans (CategoryTheory.CategoryStruct.comp φ ((CategoryTheory.Functor.sheafPushforwardContinuousNatTrans β RingCat J K).app S)) α) (SheafOfModules.pushforwardCongr ⋯).hom) - SheafOfModules.pushforwardCongr_hom_app_val_app 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] {φ ψ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R} (e : φ = ψ) (M : SheafOfModules R) (U : Cᵒᵖ) (x : ↑(((SheafOfModules.pushforward φ).obj M).val.obj U)) : (CategoryTheory.ConcreteCategory.hom (((SheafOfModules.pushforwardCongr e).hom.app M).val.app U)) x = x - SheafOfModules.pushforwardCongr_inv_app_val_app 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] {φ ψ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R} (e : φ = ψ) (M : SheafOfModules R) (U : Cᵒᵖ) (x : ↑(((SheafOfModules.pushforward ψ).obj M).val.obj U)) : (CategoryTheory.ConcreteCategory.hom (((SheafOfModules.pushforwardCongr e).inv.app M).val.app U)) x = x - SheafOfModules.pushforward_assoc 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {D' : Type u₃} [CategoryTheory.Category.{v₃, u₃} D'] {D'' : Type u₄} [CategoryTheory.Category.{v₄, u₄} D''] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) {K' : CategoryTheory.GrothendieckTopology D'} {K'' : CategoryTheory.GrothendieckTopology D''} {G : CategoryTheory.Functor D D'} {R' : CategoryTheory.Sheaf K' RingCat} [G.IsContinuous K K'] (ψ : R ⟶ (G.sheafPushforwardContinuous RingCat K K').obj R') {G' : CategoryTheory.Functor D' D''} {R'' : CategoryTheory.Sheaf K'' RingCat} [G'.IsContinuous K' K''] [(G.comp G').IsContinuous K K''] [(F.comp G).IsContinuous J K'] (ψ' : R' ⟶ (G'.sheafPushforwardContinuous RingCat K' K'').obj R'') : (SheafOfModules.pushforward ψ').isoWhiskerLeft (SheafOfModules.pushforwardComp φ ψ) ≪≫ SheafOfModules.pushforwardComp (CategoryTheory.CategoryStruct.comp φ ((F.sheafPushforwardContinuous RingCat J K).map ψ)) ψ' = ((SheafOfModules.pushforward ψ').associator (SheafOfModules.pushforward ψ) (SheafOfModules.pushforward φ)).symm ≪≫ CategoryTheory.Functor.isoWhiskerRight (SheafOfModules.pushforwardComp ψ ψ') (SheafOfModules.pushforward φ) ≪≫ SheafOfModules.pushforwardComp φ (CategoryTheory.CategoryStruct.comp ψ ((G.sheafPushforwardContinuous RingCat K K').map ψ')) - SheafOfModules.forget₂_map_pushforward_obj_val_map 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) {U V : Cᵒᵖ} (f : U ⟶ V) (M : SheafOfModules R) : (CategoryTheory.forget₂ (ModuleCat ↑(S.obj.obj U)) Ab).map (((SheafOfModules.pushforward φ).obj M).val.map f) = M.val.presheaf.map (F.map f.unop).op - SheafOfModules.pushforwardComp_hom_app_val_app 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {D' : Type u₃} [CategoryTheory.Category.{v₃, u₃} D'] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) {K' : CategoryTheory.GrothendieckTopology D'} {G : CategoryTheory.Functor D D'} {R' : CategoryTheory.Sheaf K' RingCat} [G.IsContinuous K K'] (ψ : R ⟶ (G.sheafPushforwardContinuous RingCat K K').obj R') (M : SheafOfModules R') (U : Cᵒᵖ) (x : ↑((((SheafOfModules.pushforward ψ).comp (SheafOfModules.pushforward φ)).obj M).val.obj U)) : (CategoryTheory.ConcreteCategory.hom (((SheafOfModules.pushforwardComp φ ψ).hom.app M).val.app U)) x = x - SheafOfModules.pushforwardComp_inv_app_val_app 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {D' : Type u₃} [CategoryTheory.Category.{v₃, u₃} D'] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) {K' : CategoryTheory.GrothendieckTopology D'} {G : CategoryTheory.Functor D D'} {R' : CategoryTheory.Sheaf K' RingCat} [G.IsContinuous K K'] (ψ : R ⟶ (G.sheafPushforwardContinuous RingCat K K').obj R') (M : SheafOfModules R') (U : Cᵒᵖ) (x : ↑(((SheafOfModules.pushforward (CategoryTheory.CategoryStruct.comp φ ((F.sheafPushforwardContinuous RingCat J K).map ψ))).obj M).val.obj U)) : (CategoryTheory.ConcreteCategory.hom (((SheafOfModules.pushforwardComp φ ψ).inv.app M).val.app U)) x = x - SheafOfModules.overMapUnitIso_hom_val_app_hom_apply 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {K : CategoryTheory.GrothendieckTopology D} {R : CategoryTheory.Sheaf K RingCat} {X Y : D} (f : X ⟶ Y) (x✝ : (CategoryTheory.Over X)ᵒᵖ) (x : ↑(((SheafOfModules.overMap R f).obj (SheafOfModules.unit (R.over Y))).val.obj x✝)) : (ModuleCat.Hom.hom ((SheafOfModules.overMapUnitIso f).hom.val.app x✝)) x = x - SheafOfModules.overMapUnitIso_inv_val_app_hom_apply 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {K : CategoryTheory.GrothendieckTopology D} {R : CategoryTheory.Sheaf K RingCat} {X Y : D} (f : X ⟶ Y) (x✝ : (CategoryTheory.Over X)ᵒᵖ) (x : ↑(((SheafOfModules.overMap R f).obj (SheafOfModules.unit (R.over Y))).val.obj x✝)) : (ModuleCat.Hom.hom ((SheafOfModules.overMapUnitIso f).inv.val.app x✝)) x = x - SheafOfModules.pushforwardNatTrans_app_val_app 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F G : CategoryTheory.Functor C D} {T : CategoryTheory.Sheaf J RingCat} {S : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] [G.IsContinuous J K] (φ : T ⟶ (G.sheafPushforwardContinuous RingCat J K).obj S) (α : F ⟶ G) (M : SheafOfModules S) (U : Cᵒᵖ) (x : ↑(((SheafOfModules.pushforward φ).obj M).val.obj U)) : (CategoryTheory.ConcreteCategory.hom (((SheafOfModules.pushforwardNatTrans φ α).app M).val.app U)) x = (CategoryTheory.ConcreteCategory.hom (M.val.map (α.app (Opposite.unop U)).op)) x - SheafOfModules.pushforwardNatTrans_app_val_app_apply 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F G : CategoryTheory.Functor C D} {T : CategoryTheory.Sheaf J RingCat} {S : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] [G.IsContinuous J K] (φ : T ⟶ (G.sheafPushforwardContinuous RingCat J K).obj S) (α : F ⟶ G) (X : SheafOfModules S) (U : Cᵒᵖ) (x : ↑(((SheafOfModules.pushforward φ).obj X).val.obj U)) : (CategoryTheory.ConcreteCategory.hom (((SheafOfModules.pushforwardNatTrans φ α).app X).val.app U)) x = (CategoryTheory.ConcreteCategory.hom (X.val.map (α.app (Opposite.unop U)).op)) x - SheafOfModules.pushforwardPushforwardAdj_unit_app_val_app 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] [G.IsContinuous K J] (adj : F ⊣ G) (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) (ψ : R ⟶ (G.sheafPushforwardContinuous RingCat K J).obj S) (H₁ : CategoryTheory.Functor.whiskerRight (CategoryTheory.NatTrans.op adj.counit) R.obj = CategoryTheory.CategoryStruct.comp ψ.hom (G.op.whiskerLeft φ.hom)) (H₂ : CategoryTheory.CategoryStruct.comp φ.hom (CategoryTheory.CategoryStruct.comp (F.op.whiskerLeft ψ.hom) (CategoryTheory.Functor.whiskerRight (CategoryTheory.NatTrans.op adj.unit) S.obj)) = CategoryTheory.CategoryStruct.id S.obj) (M : SheafOfModules R) (U : Dᵒᵖ) (x : ↑(((CategoryTheory.Functor.id (SheafOfModules R)).obj M).val.obj U)) : (CategoryTheory.ConcreteCategory.hom (((SheafOfModules.pushforwardPushforwardAdj adj φ ψ H₁ H₂).unit.app M).val.app U)) x = (CategoryTheory.ConcreteCategory.hom (M.val.map (adj.counit.app (Opposite.unop U)).op)) x - SheafOfModules.pushforwardPushforwardAdj_counit_app_val_app 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] [G.IsContinuous K J] (adj : F ⊣ G) (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) (ψ : R ⟶ (G.sheafPushforwardContinuous RingCat K J).obj S) (H₁ : CategoryTheory.Functor.whiskerRight (CategoryTheory.NatTrans.op adj.counit) R.obj = CategoryTheory.CategoryStruct.comp ψ.hom (G.op.whiskerLeft φ.hom)) (H₂ : CategoryTheory.CategoryStruct.comp φ.hom (CategoryTheory.CategoryStruct.comp (F.op.whiskerLeft ψ.hom) (CategoryTheory.Functor.whiskerRight (CategoryTheory.NatTrans.op adj.unit) S.obj)) = CategoryTheory.CategoryStruct.id S.obj) (M : SheafOfModules S) (U : Cᵒᵖ) (x : ↑((((SheafOfModules.pushforward ψ).comp (SheafOfModules.pushforward φ)).obj M).val.obj U)) : (CategoryTheory.ConcreteCategory.hom (((SheafOfModules.pushforwardPushforwardAdj adj φ ψ H₁ H₂).counit.app M).val.app U)) x = (CategoryTheory.ConcreteCategory.hom (M.val.map (adj.unit.app (Opposite.unop U)).op)) x - SheafOfModules.pushforwardPushforwardEquivalence_unit_app_val_app 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} (eqv : C ≌ D) {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [eqv.functor.IsContinuous J K] [eqv.inverse.IsContinuous K J] (φ : S ⟶ (eqv.functor.sheafPushforwardContinuous RingCat J K).obj R) (ψ : R ⟶ (eqv.inverse.sheafPushforwardContinuous RingCat K J).obj S) (H₁ : CategoryTheory.Functor.whiskerRight (CategoryTheory.NatTrans.op eqv.counit) R.obj = CategoryTheory.CategoryStruct.comp ψ.hom (eqv.inverse.op.whiskerLeft φ.hom)) (H₂ : CategoryTheory.CategoryStruct.comp φ.hom (CategoryTheory.CategoryStruct.comp (eqv.functor.op.whiskerLeft ψ.hom) (CategoryTheory.Functor.whiskerRight (CategoryTheory.NatTrans.op eqv.unit) S.obj)) = CategoryTheory.CategoryStruct.id S.obj) (M : SheafOfModules R) (U : Dᵒᵖ) (x : ↑(((CategoryTheory.Functor.id (SheafOfModules R)).obj M).val.obj U)) : (CategoryTheory.ConcreteCategory.hom (((SheafOfModules.pushforwardPushforwardEquivalence eqv φ ψ H₁ H₂).unit.app M).val.app U)) x = (CategoryTheory.ConcreteCategory.hom (M.val.map (eqv.counit.app (Opposite.unop U)).op)) x - SheafOfModules.pushforwardCongr₂_hom_app_val_app_hom_apply 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F G : CategoryTheory.Functor C D} {T : CategoryTheory.Sheaf J RingCat} {S : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] [G.IsContinuous J K] (φ : T ⟶ (G.sheafPushforwardContinuous RingCat J K).obj S) {ψ : T ⟶ (F.sheafPushforwardContinuous RingCat J K).obj S} (e : F ≅ G) (he : CategoryTheory.CategoryStruct.comp φ ((CategoryTheory.Functor.sheafPushforwardContinuousNatTrans e.hom RingCat J K).app S) = ψ) (X : SheafOfModules S) (x✝ : Cᵒᵖ) (x : ↑(((SheafOfModules.pushforward φ).obj X).val.obj x✝)) : (ModuleCat.Hom.hom (((SheafOfModules.pushforwardCongr₂ φ e he).hom.app X).val.app x✝)) x = (((SheafOfModules.pushforwardCongr he).hom.app X).val.app x✝).hom' ((((SheafOfModules.pushforwardNatTrans φ e.hom).app X).val.app x✝).hom' x) - SheafOfModules.pushforwardPushforwardEquivalence_counit_app_val_app 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} (eqv : C ≌ D) {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [eqv.functor.IsContinuous J K] [eqv.inverse.IsContinuous K J] (φ : S ⟶ (eqv.functor.sheafPushforwardContinuous RingCat J K).obj R) (ψ : R ⟶ (eqv.inverse.sheafPushforwardContinuous RingCat K J).obj S) (H₁ : CategoryTheory.Functor.whiskerRight (CategoryTheory.NatTrans.op eqv.counit) R.obj = CategoryTheory.CategoryStruct.comp ψ.hom (eqv.inverse.op.whiskerLeft φ.hom)) (H₂ : CategoryTheory.CategoryStruct.comp φ.hom (CategoryTheory.CategoryStruct.comp (eqv.functor.op.whiskerLeft ψ.hom) (CategoryTheory.Functor.whiskerRight (CategoryTheory.NatTrans.op eqv.unit) S.obj)) = CategoryTheory.CategoryStruct.id S.obj) (M : SheafOfModules S) (U : Cᵒᵖ) (x : ↑((((SheafOfModules.pushforwardPushforwardEquivalence eqv φ ψ H₁ H₂).inverse.comp (SheafOfModules.pushforwardPushforwardEquivalence eqv φ ψ H₁ H₂).functor).obj M).val.obj U)) : (CategoryTheory.ConcreteCategory.hom (((SheafOfModules.pushforwardPushforwardEquivalence eqv φ ψ H₁ H₂).counit.app M).val.app U)) x = (CategoryTheory.ConcreteCategory.hom (M.val.map (eqv.unit.app (Opposite.unop U)).op)) x - SheafOfModules.pushforwardCongr₂_inv_app_val_app_hom_apply 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F G : CategoryTheory.Functor C D} {T : CategoryTheory.Sheaf J RingCat} {S : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] [G.IsContinuous J K] (φ : T ⟶ (G.sheafPushforwardContinuous RingCat J K).obj S) {ψ : T ⟶ (F.sheafPushforwardContinuous RingCat J K).obj S} (e : F ≅ G) (he : CategoryTheory.CategoryStruct.comp φ ((CategoryTheory.Functor.sheafPushforwardContinuousNatTrans e.hom RingCat J K).app S) = ψ) (X : SheafOfModules S) (x✝ : Cᵒᵖ) (x : ↑(((SheafOfModules.pushforward ψ).obj X).val.obj x✝)) : (ModuleCat.Hom.hom (((SheafOfModules.pushforwardCongr₂ φ e he).inv.app X).val.app x✝)) x = (CategoryTheory.CategoryStruct.comp (((SheafOfModules.pushforwardNatTrans (CategoryTheory.CategoryStruct.comp φ ((CategoryTheory.Functor.sheafPushforwardContinuousNatTrans e.hom RingCat J K).app S)) e.inv).app X).val.app x✝) (((SheafOfModules.pushforwardCongr ⋯).hom.app X).val.app x✝)).hom' ((((SheafOfModules.pushforwardCongr he).inv.app X).val.app x✝).hom' x) - SheafOfModules.pushforwardCompForgetToSheafModuleCat 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.PushforwardContinuous
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : CategoryTheory.GrothendieckTopology C} {K : CategoryTheory.GrothendieckTopology D} {F : CategoryTheory.Functor C D} {S : CategoryTheory.Sheaf J RingCat} {R : CategoryTheory.Sheaf K RingCat} [F.IsContinuous J K] (φ : S ⟶ (F.sheafPushforwardContinuous RingCat J K).obj R) (X : Cᵒᵖ) (hX : CategoryTheory.Limits.IsInitial X) (hX' : CategoryTheory.Limits.IsInitial (F.op.obj X)) : (SheafOfModules.pushforward φ).comp (SheafOfModules.forgetToSheafModuleCat S X hX) ≅ (SheafOfModules.forgetToSheafModuleCat R (F.op.obj X) hX').comp ((CategoryTheory.sheafCompose K (ModuleCat.restrictScalars (RingCat.Hom.hom (φ.hom.app X)))).comp (F.sheafPushforwardContinuous (ModuleCat ↑(S.obj.obj X)) J K)) - SheafOfModules.instPreservesColimitsOfSize 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {C' : Type u₁} [CategoryTheory.Category.{v₁, u₁} C'] {J' : CategoryTheory.GrothendieckTopology C'} {S : CategoryTheory.Sheaf J' RingCat} (F : CategoryTheory.Functor (SheafOfModules R) (SheafOfModules S)) [CategoryTheory.Limits.PreservesColimitsOfSize.{u, u, max u u', max u u₁, max (max (u + 1) u') v', max (max (u + 1) u₁) v₁} F] : CategoryTheory.Limits.PreservesColimitsOfSize.{0, 0, max u u', max u u₁, max (max (u + 1) u') v', max (max (u + 1) u₁) v₁} F - SheafOfModules.GeneratingSections 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] (M : SheafOfModules R) : Type (max (u + 1) u') - SheafOfModules.GeneratingSections.I 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {M : SheafOfModules R} (self : M.GeneratingSections) : Type u - SheafOfModules.GeneratingSections.IsFiniteType 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {M : SheafOfModules R} (σ : M.GeneratingSections) : Prop - SheafOfModules.IsFiniteType 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [∀ (X : C), CategoryTheory.HasWeakSheafify (J.over X) AddCommGrpCat] [∀ (X : C), (J.over X).WEqualsLocallyBijective AddCommGrpCat] (M : SheafOfModules R) : Prop - SheafOfModules.LocalGeneratorsData 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} (M : SheafOfModules R) [∀ (X : C), CategoryTheory.HasWeakSheafify (J.over X) AddCommGrpCat] [∀ (X : C), (J.over X).WEqualsLocallyBijective AddCommGrpCat] : Type (max (max (max (u + 1) u') v') (w + 1)) - SheafOfModules.GeneratingSections.s 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {M : SheafOfModules R} (self : M.GeneratingSections) : self.I → M.sections - SheafOfModules.GeneratingSections.IsFiniteType.finite 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} {inst✝ : CategoryTheory.Category.{v', u'} C} {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {inst✝¹ : CategoryTheory.HasWeakSheafify J AddCommGrpCat} {inst✝² : J.WEqualsLocallyBijective AddCommGrpCat} {M : SheafOfModules R} {σ : M.GeneratingSections} [self : σ.IsFiniteType] : Finite σ.I - SheafOfModules.GeneratingSections.IsFiniteType.mk 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {M : SheafOfModules R} {σ : M.GeneratingSections} (finite : Finite σ.I := by infer_instance) : σ.IsFiniteType - SheafOfModules.LocalGeneratorsData.I 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {M : SheafOfModules R} [∀ (X : C), CategoryTheory.HasWeakSheafify (J.over X) AddCommGrpCat] [∀ (X : C), (J.over X).WEqualsLocallyBijective AddCommGrpCat] (self : M.LocalGeneratorsData) : Type w - SheafOfModules.LocalGeneratorsData.IsFiniteType 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {M : SheafOfModules R} [∀ (X : C), CategoryTheory.HasWeakSheafify (J.over X) AddCommGrpCat] [∀ (X : C), (J.over X).WEqualsLocallyBijective AddCommGrpCat] (p : M.LocalGeneratorsData) : Prop - SheafOfModules.GeneratingSections.equivOfIso 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {M N : SheafOfModules R} (e : M ≅ N) : M.GeneratingSections ≃ N.GeneratingSections - SheafOfModules.LocalGeneratorsData.shrink 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [∀ (X : C), CategoryTheory.HasWeakSheafify (J.over X) AddCommGrpCat] [∀ (X : C), (J.over X).WEqualsLocallyBijective AddCommGrpCat] {M : SheafOfModules R} (q : M.LocalGeneratorsData) : M.LocalGeneratorsData - SheafOfModules.LocalGeneratorsData.X 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {M : SheafOfModules R} [∀ (X : C), CategoryTheory.HasWeakSheafify (J.over X) AddCommGrpCat] [∀ (X : C), (J.over X).WEqualsLocallyBijective AddCommGrpCat] (self : M.LocalGeneratorsData) : self.I → C - SheafOfModules.GeneratingSections.π 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {M : SheafOfModules R} (σ : M.GeneratingSections) : SheafOfModules.free σ.I ⟶ M - SheafOfModules.LocalGeneratorsData.coversTop 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {M : SheafOfModules R} [∀ (X : C), CategoryTheory.HasWeakSheafify (J.over X) AddCommGrpCat] [∀ (X : C), (J.over X).WEqualsLocallyBijective AddCommGrpCat] (self : M.LocalGeneratorsData) : J.CoversTop self.X - SheafOfModules.IsFiniteType.exists_localGeneratorsData 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} {inst✝ : CategoryTheory.Category.{v', u'} C} {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {inst✝¹ : ∀ (X : C), CategoryTheory.HasWeakSheafify (J.over X) AddCommGrpCat} {inst✝² : ∀ (X : C), (J.over X).WEqualsLocallyBijective AddCommGrpCat} (M : SheafOfModules R) [self : M.IsFiniteType] : ∃ σ, σ.IsFiniteType - SheafOfModules.IsFiniteType.mk 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [∀ (X : C), CategoryTheory.HasWeakSheafify (J.over X) AddCommGrpCat] [∀ (X : C), (J.over X).WEqualsLocallyBijective AddCommGrpCat] {M : SheafOfModules R} (exists_localGeneratorsData : ∃ σ, σ.IsFiniteType) : M.IsFiniteType - SheafOfModules.GeneratingSections.opEpi_id 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {M : SheafOfModules R} (σ : M.GeneratingSections) : σ.ofEpi (CategoryTheory.CategoryStruct.id M) = σ - SheafOfModules.GeneratingSections.ofEpi 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {M N : SheafOfModules R} (σ : M.GeneratingSections) (p : M ⟶ N) [CategoryTheory.Epi p] : N.GeneratingSections - SheafOfModules.LocalGeneratorsData.mk 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} {M : SheafOfModules R} [∀ (X : C), CategoryTheory.HasWeakSheafify (J.over X) AddCommGrpCat] [∀ (X : C), (J.over X).WEqualsLocallyBijective AddCommGrpCat] (I : Type w) (X : I → C) (coversTop : J.CoversTop X) (generators : (i : I) → (M.over (X i)).GeneratingSections) : M.LocalGeneratorsData - SheafOfModules.GeneratingSections.instIsFiniteTypeOfEpi 📋 Mathlib.Algebra.Category.ModuleCat.Sheaf.Generators
{C : Type u'} [CategoryTheory.Category.{v', u'} C] {J : CategoryTheory.GrothendieckTopology C} {R : CategoryTheory.Sheaf J RingCat} [CategoryTheory.HasWeakSheafify J AddCommGrpCat] [J.WEqualsLocallyBijective AddCommGrpCat] {M N : SheafOfModules R} (σ : M.GeneratingSections) (p : M ⟶ N) [CategoryTheory.Epi p] [σ.IsFiniteType] : (σ.ofEpi p).IsFiniteType
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using the Loogle command from the command palette. You can also try the
#loogle command from LeanSearchClient,
the CLI version, the Loogle
VS Code extension, the lean.nvim
integration or the Zulip bot.
Usage
Loogle finds definitions and lemmas in various ways:
By constant:
🔍Real.sin
finds all lemmas whose statement somehow mentions the sine function.By lemma name substring:
🔍"differ"
finds all lemmas that have"differ"somewhere in their lemma name.By subexpression:
🔍_ * (_ ^ _)
finds all lemmas whose statements somewhere include a product where the second argument is raised to some power.The pattern can also be non-linear, as in
🔍Real.sqrt ?a * Real.sqrt ?aIf the pattern has parameters, they are matched in any order. Both of these will find
List.map:
🔍(?a -> ?b) -> List ?a -> List ?b
🔍List ?a -> (?a -> ?b) -> List ?bBy main conclusion:
🔍|- tsum _ = _ * tsum _
finds all lemmas where the conclusion (the subexpression to the right of all→and∀) has the given shape.As before, if the pattern has parameters, they are matched against the hypotheses of the lemma in any order; for example,
🔍|- _ < _ → tsum _ < tsum _
will findtsum_lt_tsumeven though the hypothesisf i < g iis not the last.You can filter for definitions vs theorems: Using
⊢ (_ : Type _)finds all definitions which provide data while⊢ (_ : Prop)finds all theorems (and definitions of proofs).
If you pass more than one such search filter, separated by commas
Loogle will return lemmas which match all of them. The
search
🔍 Real.sin, "two", tsum, _ * _, _ ^ _, |- _ < _ → _
would find all lemmas which mention the constants Real.sin
and tsum, have "two" as a substring of the
lemma name, include a product and a power somewhere in the type,
and have a hypothesis of the form _ < _ (if
there were any such lemmas). Metavariables (?a) are
assigned independently in each filter.
The #lucky button will directly send you to the
documentation of the first hit.
Source code
You can find the source code for this service at https://github.com/nomeata/loogle. The https://loogle.lean-lang.org/ service is provided by the Lean FRO. Please review the Lean FRO Terms of Use and Privacy Policy.
This is Loogle revision 9f11169 serving mathlib revision 69fae59