Loogle!
Result
Found 107 declarations mentioning CategoryTheory.Subfunctor.toFunctor.
- CategoryTheory.Subfunctor.toFunctor 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} (G : CategoryTheory.Subfunctor F) : CategoryTheory.Functor C (Type w) - CategoryTheory.Subfunctor.instCoeHeadObjToFunctor 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} (G : CategoryTheory.Subfunctor F) {U : C} : CoeHead (G.toFunctor.obj U) (F.obj U) - CategoryTheory.Subfunctor.instMonoFunctorTypeι 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} (G : CategoryTheory.Subfunctor F) : CategoryTheory.Mono G.ι - CategoryTheory.Subfunctor.toFunctor_obj 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} (G : CategoryTheory.Subfunctor F) (U : C) : G.toFunctor.obj U = ↑(G.obj U) - CategoryTheory.Subfunctor.ι 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} (G : CategoryTheory.Subfunctor F) : G.toFunctor ⟶ F - CategoryTheory.Subfunctor.instMonoFunctorTypeHomOfLe 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} {G G' : CategoryTheory.Subfunctor F} (h : G ≤ G') : CategoryTheory.Mono (CategoryTheory.Subfunctor.homOfLe h) - CategoryTheory.Subfunctor.homOfLe 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} {G G' : CategoryTheory.Subfunctor F} (h : G ≤ G') : G.toFunctor ⟶ G'.toFunctor - CategoryTheory.Subfunctor.homOfLe_ι 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} {G G' : CategoryTheory.Subfunctor F} (h : G ≤ G') : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.homOfLe h) G'.ι = G.ι - CategoryTheory.Subfunctor.eq_top_iff_isIso 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} (G : CategoryTheory.Subfunctor F) : G = ⊤ ↔ CategoryTheory.IsIso G.ι - CategoryTheory.Subfunctor.ι_app 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} (G : CategoryTheory.Subfunctor F) (x✝ : C) : G.ι.app x✝ = TypeCat.ofHom fun x => ↑x - CategoryTheory.Subfunctor.homOfLe_ι_assoc 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} {G G' : CategoryTheory.Subfunctor F} (h : G ≤ G') {Z : CategoryTheory.Functor C (Type w)} (h✝ : F ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.homOfLe h) (CategoryTheory.CategoryStruct.comp G'.ι h✝) = CategoryTheory.CategoryStruct.comp G.ι h✝ - CategoryTheory.Subfunctor.instIsIsoFunctorTypeιTop 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} : CategoryTheory.IsIso ⊤.ι - CategoryTheory.Subfunctor.homOfLe_app 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} {G G' : CategoryTheory.Subfunctor F} (h : G ≤ G') (U : C) : (CategoryTheory.Subfunctor.homOfLe h).app U = TypeCat.ofHom fun x => ⟨↑x, ⋯⟩ - CategoryTheory.Subfunctor.toFunctor_map 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} (G : CategoryTheory.Subfunctor F) {X✝ Y✝ : C} (i : X✝ ⟶ Y✝) : G.toFunctor.map i = TypeCat.ofHom fun x => ⟨(CategoryTheory.ConcreteCategory.hom (F.map i)) ↑x, ⋯⟩ - CategoryTheory.Subfunctor.nat_trans_naturality 📋 Mathlib.CategoryTheory.Subfunctor.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (G : CategoryTheory.Subfunctor F) (f : F' ⟶ G.toFunctor) {U V : C} (i : U ⟶ V) (x : F'.obj U) : ↑((CategoryTheory.ConcreteCategory.hom (f.app V)) ((CategoryTheory.ConcreteCategory.hom (F'.map i)) x)) = (CategoryTheory.ConcreteCategory.hom (F.map i)) ↑((CategoryTheory.ConcreteCategory.hom (f.app U)) x) - CategoryTheory.Sieve.shrinkFunctorIsoFunctor 📋 Mathlib.CategoryTheory.Sites.Sieves.Shrink
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} (S : CategoryTheory.Sieve X) : (CategoryTheory.Sieve.shrinkFunctor.{v₁, v₁, u₁} S).toFunctor ≅ S.functor - CategoryTheory.Sieve.shrinkFunctorUliftFunctorIso 📋 Mathlib.CategoryTheory.Sites.Sieves.Shrink
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} (S : CategoryTheory.Sieve X) [CategoryTheory.LocallySmall.{w, v₁, u₁} C] [CategoryTheory.LocallySmall.{max w' w, v₁, u₁} C] : (CategoryTheory.Sieve.shrinkFunctor.{w, v₁, u₁} S).toFunctor.comp CategoryTheory.uliftFunctor.{w', w} ≅ (CategoryTheory.Sieve.shrinkFunctor.{max w' w, v₁, u₁} S).toFunctor - CategoryTheory.Sieve.shrinkFunctorUliftFunctorIso_inv_ι 📋 Mathlib.CategoryTheory.Sites.Sieves.Shrink
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} {S : CategoryTheory.Sieve X} [CategoryTheory.LocallySmall.{w, v₁, u₁} C] [CategoryTheory.LocallySmall.{max w' w, v₁, u₁} C] : CategoryTheory.CategoryStruct.comp S.shrinkFunctorUliftFunctorIso.inv (CategoryTheory.Functor.whiskerRight (CategoryTheory.Sieve.shrinkFunctor.{w, v₁, u₁} S).ι CategoryTheory.uliftFunctor.{w', w}) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Sieve.shrinkFunctor.{max w' w, v₁, u₁} S).ι (CategoryTheory.shrinkYonedaUliftFunctorIso.inv.app X) - CategoryTheory.Sieve.shrinkFunctorUliftFunctorIso_inv_ι_assoc 📋 Mathlib.CategoryTheory.Sites.Sieves.Shrink
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} {S : CategoryTheory.Sieve X} [CategoryTheory.LocallySmall.{w, v₁, u₁} C] [CategoryTheory.LocallySmall.{max w' w, v₁, u₁} C] {Z : CategoryTheory.Functor Cᵒᵖ (Type (max w w'))} (h : (CategoryTheory.shrinkYoneda.{w, v₁, u₁}.obj X).comp CategoryTheory.uliftFunctor.{w', w} ⟶ Z) : CategoryTheory.CategoryStruct.comp S.shrinkFunctorUliftFunctorIso.inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.whiskerRight (CategoryTheory.Sieve.shrinkFunctor.{w, v₁, u₁} S).ι CategoryTheory.uliftFunctor.{w', w}) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Sieve.shrinkFunctor.{max w' w, v₁, u₁} S).ι (CategoryTheory.CategoryStruct.comp (CategoryTheory.shrinkYonedaUliftFunctorIso.inv.app X) h) - CategoryTheory.Sieve.shrinkFunctorIsoFunctor_hom_app 📋 Mathlib.CategoryTheory.Sites.Sieves.Shrink
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} (S : CategoryTheory.Sieve X) (X✝ : Cᵒᵖ) : S.shrinkFunctorIsoFunctor.hom.app X✝ = (CategoryTheory.shrinkYonedaObjObjEquiv.subtypeEquiv ⋯).toIso.hom - CategoryTheory.Sieve.shrinkFunctorIsoFunctor_inv_app 📋 Mathlib.CategoryTheory.Sites.Sieves.Shrink
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} (S : CategoryTheory.Sieve X) (X✝ : Cᵒᵖ) : S.shrinkFunctorIsoFunctor.inv.app X✝ = (CategoryTheory.shrinkYonedaObjObjEquiv.subtypeEquiv ⋯).toIso.inv - CategoryTheory.Presieve.natTransEquivCompatibleFamily 📋 Mathlib.CategoryTheory.Sites.IsSheafFor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} {S : CategoryTheory.Sieve X} [CategoryTheory.LocallySmall.{w, v₁, u₁} C] {F : CategoryTheory.Functor Cᵒᵖ (Type w)} : ((CategoryTheory.Sieve.shrinkFunctor.{w, v₁, u₁} S).toFunctor ⟶ F) ≃ { x // x.Compatible } - CategoryTheory.Presieve.shrinkFunctorHomEquiv 📋 Mathlib.CategoryTheory.Sites.IsSheafFor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} {S : CategoryTheory.Sieve X} [CategoryTheory.LocallySmall.{w, v₁, u₁} C] {F : CategoryTheory.Functor Cᵒᵖ (Type w)} : ((CategoryTheory.Sieve.shrinkFunctor.{w, v₁, u₁} S).toFunctor ⟶ F) ≃ { x // x.Compatible } - CategoryTheory.Presieve.isSheafFor_iff_bijective_shrinkFunctor_ι_comp 📋 Mathlib.CategoryTheory.Sites.IsSheafFor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.LocallySmall.{w, v₁, u₁} C] {X : C} (S : CategoryTheory.Sieve X) (F : CategoryTheory.Functor Cᵒᵖ (Type w)) : CategoryTheory.Presieve.IsSheafFor F S.arrows ↔ Function.Bijective fun g => CategoryTheory.CategoryStruct.comp (CategoryTheory.Sieve.shrinkFunctor.{w, v₁, u₁} S).ι g - CategoryTheory.Presieve.extension_iff_amalgamation 📋 Mathlib.CategoryTheory.Sites.IsSheafFor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} {S : CategoryTheory.Sieve X} [CategoryTheory.LocallySmall.{w, v₁, u₁} C] (F : CategoryTheory.Functor Cᵒᵖ (Type w)) (f : (CategoryTheory.Sieve.shrinkFunctor.{w, v₁, u₁} S).toFunctor ⟶ F) (g : CategoryTheory.shrinkYoneda.{w, v₁, u₁}.obj X ⟶ F) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Sieve.shrinkFunctor.{w, v₁, u₁} S).ι g = f ↔ (↑(CategoryTheory.Presieve.shrinkFunctorHomEquiv f)).IsAmalgamation (CategoryTheory.shrinkYonedaEquiv g) - CategoryTheory.Presieve.shrinkFunctor_ι_comp_eq_iff_isAmalgamation 📋 Mathlib.CategoryTheory.Sites.IsSheafFor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} {S : CategoryTheory.Sieve X} [CategoryTheory.LocallySmall.{w, v₁, u₁} C] (F : CategoryTheory.Functor Cᵒᵖ (Type w)) (f : (CategoryTheory.Sieve.shrinkFunctor.{w, v₁, u₁} S).toFunctor ⟶ F) (g : CategoryTheory.shrinkYoneda.{w, v₁, u₁}.obj X ⟶ F) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Sieve.shrinkFunctor.{w, v₁, u₁} S).ι g = f ↔ (↑(CategoryTheory.Presieve.shrinkFunctorHomEquiv f)).IsAmalgamation (CategoryTheory.shrinkYonedaEquiv g) - CategoryTheory.Presieve.shrinkFunctorHomEquiv_symm_apply_app 📋 Mathlib.CategoryTheory.Sites.IsSheafFor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} {S : CategoryTheory.Sieve X} [CategoryTheory.LocallySmall.{w, v₁, u₁} C] {F : CategoryTheory.Functor Cᵒᵖ (Type w)} (t : { x // x.Compatible }) (X✝ : Cᵒᵖ) : (CategoryTheory.Presieve.shrinkFunctorHomEquiv.symm t).app X✝ = TypeCat.ofHom fun f => ↑t (CategoryTheory.shrinkYonedaObjObjEquiv ↑f) ⋯ - CategoryTheory.Presieve.shrinkFunctorHomEquiv_apply_coe 📋 Mathlib.CategoryTheory.Sites.IsSheafFor
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} {S : CategoryTheory.Sieve X} [CategoryTheory.LocallySmall.{w, v₁, u₁} C] {F : CategoryTheory.Functor Cᵒᵖ (Type w)} (t : (CategoryTheory.Sieve.shrinkFunctor.{w, v₁, u₁} S).toFunctor ⟶ F) (Y : C) (f : Y ⟶ X) (hf : S.arrows f) : ↑(CategoryTheory.Presieve.shrinkFunctorHomEquiv t) f hf = (CategoryTheory.ConcreteCategory.hom (t.app (Opposite.op Y))) ⟨CategoryTheory.shrinkYonedaObjObjEquiv.symm f, ⋯⟩ - CategoryTheory.Subfunctor.range_ι 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} (G : CategoryTheory.Subfunctor F) : CategoryTheory.Subfunctor.range G.ι = G - CategoryTheory.Subfunctor.instEpiFunctorTypeToRange 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (p : F' ⟶ F) : CategoryTheory.Epi (CategoryTheory.Subfunctor.toRange p) - CategoryTheory.Subfunctor.toRange 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (p : F' ⟶ F) : F' ⟶ (CategoryTheory.Subfunctor.range p).toFunctor - CategoryTheory.Subfunctor.instIsIsoFunctorTypeToRangeOfMono 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (p : F' ⟶ F) [CategoryTheory.Mono p] : CategoryTheory.IsIso (CategoryTheory.Subfunctor.toRange p) - CategoryTheory.Subfunctor.fromPreimage 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (G : CategoryTheory.Subfunctor F) (p : F' ⟶ F) : (G.preimage p).toFunctor ⟶ G.toFunctor - CategoryTheory.Subfunctor.lift 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (f : F' ⟶ F) {G : CategoryTheory.Subfunctor F} (hf : CategoryTheory.Subfunctor.range f ≤ G) : F' ⟶ G.toFunctor - CategoryTheory.Subfunctor.toRange_ι 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (p : F' ⟶ F) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.toRange p) (CategoryTheory.Subfunctor.range p).ι = p - CategoryTheory.Subfunctor.lift_ι 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (f : F' ⟶ F) {G : CategoryTheory.Subfunctor F} (hf : CategoryTheory.Subfunctor.range f ≤ G) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.lift f hf) G.ι = f - CategoryTheory.Subfunctor.fromPreimage_ι 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (G : CategoryTheory.Subfunctor F) (p : F' ⟶ F) : CategoryTheory.CategoryStruct.comp (G.fromPreimage p) G.ι = CategoryTheory.CategoryStruct.comp (G.preimage p).ι p - CategoryTheory.Subfunctor.toRange_ι_assoc 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (p : F' ⟶ F) {Z : CategoryTheory.Functor C (Type w)} (h : F ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.toRange p) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.range p).ι h) = CategoryTheory.CategoryStruct.comp p h - CategoryTheory.Subfunctor.lift_ι_assoc 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (f : F' ⟶ F) {G : CategoryTheory.Subfunctor F} (hf : CategoryTheory.Subfunctor.range f ≤ G) {Z : CategoryTheory.Functor C (Type w)} (h : F ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.lift f hf) (CategoryTheory.CategoryStruct.comp G.ι h) = CategoryTheory.CategoryStruct.comp f h - CategoryTheory.Subfunctor.fromPreimage_ι_assoc 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (G : CategoryTheory.Subfunctor F) (p : F' ⟶ F) {Z : CategoryTheory.Functor C (Type w)} (h : F ⟶ Z) : CategoryTheory.CategoryStruct.comp (G.fromPreimage p) (CategoryTheory.CategoryStruct.comp G.ι h) = CategoryTheory.CategoryStruct.comp (G.preimage p).ι (CategoryTheory.CategoryStruct.comp p h) - CategoryTheory.Subfunctor.lift_app 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (f : F' ⟶ F) {G : CategoryTheory.Subfunctor F} (hf : CategoryTheory.Subfunctor.range f ≤ G) (U : C) : (CategoryTheory.Subfunctor.lift f hf).app U = TypeCat.ofHom fun x => ⟨(CategoryTheory.ConcreteCategory.hom (f.app U)) x, ⋯⟩ - CategoryTheory.Subfunctor.range_toRange 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (p : F' ⟶ F) : CategoryTheory.Subfunctor.range (CategoryTheory.Subfunctor.toRange p) = ⊤ - CategoryTheory.Subfunctor.toRange_app_val 📋 Mathlib.CategoryTheory.Subfunctor.Image
{C : Type u} [CategoryTheory.Category.{v, u} C] {F F' : CategoryTheory.Functor C (Type w)} (p : F' ⟶ F) {i : C} (x : F'.obj i) : ↑((CategoryTheory.ConcreteCategory.hom ((CategoryTheory.Subfunctor.toRange p).app i)) x) = (CategoryTheory.ConcreteCategory.hom (p.app i)) x - CategoryTheory.Subfunctor.familyOfElementsOfSection 📋 Mathlib.CategoryTheory.Subfunctor.Sieves
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor Cᵒᵖ (Type w)} (G : CategoryTheory.Subfunctor F) {U : Cᵒᵖ} (s : F.obj U) : CategoryTheory.Presieve.FamilyOfElements G.toFunctor (G.sieveOfSection s).arrows - CategoryTheory.Subfunctor.family_of_elements_compatible 📋 Mathlib.CategoryTheory.Subfunctor.Sieves
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor Cᵒᵖ (Type w)} (G : CategoryTheory.Subfunctor F) {U : Cᵒᵖ} (s : F.obj U) : (G.familyOfElementsOfSection s).Compatible - CategoryTheory.Subfunctor.isSeparated 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor Cᵒᵖ (Type w)} (G : CategoryTheory.Subfunctor F) {J : CategoryTheory.GrothendieckTopology C} (h : CategoryTheory.Presieve.IsSeparated J F) : CategoryTheory.Presieve.IsSeparated J G.toFunctor - CategoryTheory.Subfunctor.sheafify_isSheaf 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : CategoryTheory.GrothendieckTopology C} {F : CategoryTheory.Functor Cᵒᵖ (Type w)} (G : CategoryTheory.Subfunctor F) (hF : CategoryTheory.Presieve.IsSheaf J F) : CategoryTheory.Presieve.IsSheaf J (CategoryTheory.Subfunctor.sheafify J G).toFunctor - CategoryTheory.Subfunctor.eq_sheafify 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : CategoryTheory.GrothendieckTopology C} {F : CategoryTheory.Functor Cᵒᵖ (Type w)} (G : CategoryTheory.Subfunctor F) (h : CategoryTheory.Presieve.IsSheaf J F) (hG : CategoryTheory.Presieve.IsSheaf J G.toFunctor) : G = CategoryTheory.Subfunctor.sheafify J G - CategoryTheory.Subfunctor.eq_sheafify_iff 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : CategoryTheory.GrothendieckTopology C} {F : CategoryTheory.Functor Cᵒᵖ (Type w)} (G : CategoryTheory.Subfunctor F) (h : CategoryTheory.Presieve.IsSheaf J F) : G = CategoryTheory.Subfunctor.sheafify J G ↔ CategoryTheory.Presieve.IsSheaf J G.toFunctor - CategoryTheory.Subfunctor.sheafify_le 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : CategoryTheory.GrothendieckTopology C} {F : CategoryTheory.Functor Cᵒᵖ (Type w)} (G G' : CategoryTheory.Subfunctor F) (h : G ≤ G') (hF : CategoryTheory.Presieve.IsSheaf J F) (hG' : CategoryTheory.Presieve.IsSheaf J G'.toFunctor) : CategoryTheory.Subfunctor.sheafify J G ≤ G' - CategoryTheory.Subfunctor.toRangeSheafify 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) {F F' : CategoryTheory.Functor Cᵒᵖ (Type w)} (f : F' ⟶ F) : F' ⟶ (CategoryTheory.Subfunctor.sheafify J (CategoryTheory.Subfunctor.range f)).toFunctor - CategoryTheory.Subfunctor.sheafifyLift 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : CategoryTheory.GrothendieckTopology C} {F F' : CategoryTheory.Functor Cᵒᵖ (Type w)} (G : CategoryTheory.Subfunctor F) (f : G.toFunctor ⟶ F') (h : CategoryTheory.Presieve.IsSheaf J F') : (CategoryTheory.Subfunctor.sheafify J G).toFunctor ⟶ F' - CategoryTheory.Subfunctor.isSheaf_iff 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : CategoryTheory.GrothendieckTopology C} {F : CategoryTheory.Functor Cᵒᵖ (Type w)} (G : CategoryTheory.Subfunctor F) (h : CategoryTheory.Presieve.IsSheaf J F) : CategoryTheory.Presieve.IsSheaf J G.toFunctor ↔ ∀ (U : Cᵒᵖ) (s : F.obj U), G.sieveOfSection s ∈ J (Opposite.unop U) → s ∈ G.obj U - CategoryTheory.Subfunctor.to_sheafifyLift 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : CategoryTheory.GrothendieckTopology C} {F F' : CategoryTheory.Functor Cᵒᵖ (Type w)} (G : CategoryTheory.Subfunctor F) (f : G.toFunctor ⟶ F') (h : CategoryTheory.Presieve.IsSheaf J F') : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.homOfLe ⋯) (G.sheafifyLift f h) = f - CategoryTheory.Sheaf.image_obj 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : CategoryTheory.GrothendieckTopology C} {F F' : CategoryTheory.Sheaf J (Type w)} (f : F ⟶ F') : (CategoryTheory.Sheaf.image f).obj = (CategoryTheory.Subfunctor.sheafify J (CategoryTheory.Subfunctor.range f.hom)).toFunctor - CategoryTheory.Subfunctor.to_sheafify_lift_unique 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : CategoryTheory.GrothendieckTopology C} {F F' : CategoryTheory.Functor Cᵒᵖ (Type w)} (G : CategoryTheory.Subfunctor F) (h : CategoryTheory.Presieve.IsSheaf J F') (l₁ l₂ : (CategoryTheory.Subfunctor.sheafify J G).toFunctor ⟶ F') (e : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.homOfLe ⋯) l₁ = CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.homOfLe ⋯) l₂) : l₁ = l₂ - CategoryTheory.Sheaf.toImage_hom 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : CategoryTheory.GrothendieckTopology C} {F F' : CategoryTheory.Sheaf J (Type w)} (f : F ⟶ F') : (CategoryTheory.Sheaf.toImage f).hom = CategoryTheory.Subfunctor.toRangeSheafify J f.hom - CategoryTheory.Sheaf.imageι_hom 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : CategoryTheory.GrothendieckTopology C} {F F' : CategoryTheory.Sheaf J (Type w)} (f : F ⟶ F') : (CategoryTheory.Sheaf.imageι f).hom = (CategoryTheory.Subfunctor.sheafify J (CategoryTheory.Subfunctor.range f.hom)).ι - CategoryTheory.Subfunctor.toRangeSheafify_app_hom_apply_coe 📋 Mathlib.CategoryTheory.Sites.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) {F F' : CategoryTheory.Functor Cᵒᵖ (Type w)} (f : F' ⟶ F) (X : Cᵒᵖ) (a✝ : F'.obj X) : ↑((CategoryTheory.ConcreteCategory.hom ((CategoryTheory.Subfunctor.toRangeSheafify J f).app X)) a✝) = ↑(((CategoryTheory.Subfunctor.toRange f).app X).hom' a✝) - CategoryTheory.Sieve.W_shrinkFunctor_ι_of_mem 📋 Mathlib.CategoryTheory.Sites.Localization
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] (J : CategoryTheory.GrothendieckTopology C) [CategoryTheory.LocallySmall.{w, v_1, u_1} C] {X : C} (S : CategoryTheory.Sieve X) (hS : S ∈ J X) : J.W (CategoryTheory.Sieve.shrinkFunctor.{w, v_1, u_1} S).ι - CategoryTheory.Presieve.IsSheaf.comp_of_W_map_of_adjunction 📋 Mathlib.CategoryTheory.Sites.Localization
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] (J : CategoryTheory.GrothendieckTopology C) {D : Type u_3} [CategoryTheory.Category.{v_3, u_3} D] {K : CategoryTheory.GrothendieckTopology D} [CategoryTheory.LocallySmall.{w, v_1, u_1} C] {F : CategoryTheory.Functor C D} {H : CategoryTheory.Functor (CategoryTheory.Functor Cᵒᵖ (Type w)) (CategoryTheory.Functor Dᵒᵖ (Type w))} (adj : H ⊣ (CategoryTheory.Functor.whiskeringLeft Cᵒᵖ Dᵒᵖ (Type w)).obj F.op) (h : ∀ ⦃X : C⦄ ⦃S : CategoryTheory.Sieve X⦄, S ∈ J X → K.W (H.map (CategoryTheory.Sieve.shrinkFunctor.{w, v_1, u_1} S).ι)) (G : CategoryTheory.Functor Dᵒᵖ (Type w)) (hG : CategoryTheory.Presieve.IsSheaf K G) : CategoryTheory.Presieve.IsSheaf J (F.op.comp G) - CategoryTheory.Presheaf.instIsLocallyInjectiveFunιOpposite 📋 Mathlib.CategoryTheory.Sites.LocallyInjective
{C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) (F : CategoryTheory.Functor Cᵒᵖ (Type w)) (G : CategoryTheory.Subfunctor F) : CategoryTheory.Presheaf.IsLocallyInjective J G.ι - CategoryTheory.Presheaf.instIsLocallySurjectiveFunToRangeSheafify 📋 Mathlib.CategoryTheory.Sites.LocallySurjective
{C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) {F₁ F₂ : CategoryTheory.Functor Cᵒᵖ (Type w)} (f : F₁ ⟶ F₂) : CategoryTheory.Presheaf.IsLocallySurjective J (CategoryTheory.Subfunctor.toRangeSheafify J f) - CategoryTheory.Presheaf.sheafificationIsoImagePresheaf 📋 Mathlib.CategoryTheory.Sites.LocallySurjective
{C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) (F : CategoryTheory.Functor Cᵒᵖ (Type (max u v))) : J.sheafify F ≅ (CategoryTheory.Subfunctor.sheafify J (CategoryTheory.Subfunctor.range (J.toSheafify F))).toFunctor - CategoryTheory.classifier_isSheaf 📋 Mathlib.CategoryTheory.Sites.Closed
{C : Type u} [CategoryTheory.Category.{v, u} C] (J₁ : CategoryTheory.GrothendieckTopology C) : CategoryTheory.Presieve.IsSheaf J₁ (CategoryTheory.Functor.closedSieves J₁).toFunctor - CategoryTheory.le_topology_of_closedSieves_isSheaf 📋 Mathlib.CategoryTheory.Sites.Closed
{C : Type u} [CategoryTheory.Category.{v, u} C] {J₁ J₂ : CategoryTheory.GrothendieckTopology C} (h : CategoryTheory.Presieve.IsSheaf J₁ (CategoryTheory.Functor.closedSieves J₂).toFunctor) : J₁ ≤ J₂ - CategoryTheory.GrothendieckTopology.mem_iff_isSheafFor_closedSieves 📋 Mathlib.CategoryTheory.Sites.Closed
{C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) {X : C} (S : CategoryTheory.Sieve X) : S ∈ J X ↔ CategoryTheory.Presieve.IsSheafFor (CategoryTheory.Functor.closedSieves J).toFunctor S.arrows - CategoryTheory.Functor.mem_inducedTopology_iff 📋 Mathlib.CategoryTheory.Sites.InducedTopology
{C : Type u₁} {D : Type u₂} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.Category.{v₂, u₂} D] {F : CategoryTheory.Functor C D} {K : CategoryTheory.GrothendieckTopology D} [CategoryTheory.LocallySmall.{max u₁ v₁ u₂ v₂, v₁, u₁} C] (X : C) (S : CategoryTheory.Sieve X) (G : CategoryTheory.Functor (CategoryTheory.Functor Cᵒᵖ (Type (max u₁ v₁ u₂ v₂))) (CategoryTheory.Functor Dᵒᵖ (Type (max u₁ v₁ u₂ v₂)))) (adj : G ⊣ (CategoryTheory.Functor.whiskeringLeft Cᵒᵖ Dᵒᵖ (Type (max u₁ v₁ u₂ v₂))).obj F.op) : S ∈ (F.inducedTopology K) X ↔ ∀ ⦃Y : C⦄ (f : Y ⟶ X), K.W (G.map (CategoryTheory.Sieve.shrinkFunctor.{max u₁ v₁ u₂ v₂, v₁, u₁} (CategoryTheory.Sieve.pullback f S)).ι) - SSet.Subcomplex.toImage_app_hom_apply_coe 📋 Mathlib.AlgebraicTopology.SimplicialSet.Subcomplex
{X Y : SSet} (A : X.Subcomplex) (f : X ⟶ Y) (U : SimplexCategoryᵒᵖ) (x : A.toSSet.obj U) : ↑((CategoryTheory.ConcreteCategory.hom ((A.toImage f).app U)) x) = (CategoryTheory.ConcreteCategory.hom (CategoryTheory.CategoryStruct.comp (TypeCat.ofHom fun x => ↑x) (f.app U))) x - SSet.Subcomplex.fromPreimage_app_hom_apply_coe 📋 Mathlib.AlgebraicTopology.SimplicialSet.Subcomplex
{X Y : SSet} (A : X.Subcomplex) (p : Y ⟶ X) (U : SimplexCategoryᵒᵖ) (x : (A.preimage p).toSSet.obj U) : ↑((CategoryTheory.ConcreteCategory.hom ((A.fromPreimage p).app U)) x) = (CategoryTheory.ConcreteCategory.hom (CategoryTheory.CategoryStruct.comp (TypeCat.ofHom fun x => ↑x) (p.app U))) x - CategoryTheory.Subfunctor.equalizer_self 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f : A.toFunctor ⟶ F₂) : CategoryTheory.Subfunctor.equalizer f f = A - CategoryTheory.Subfunctor.equalizer 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) : CategoryTheory.Subfunctor F₁ - CategoryTheory.Subfunctor.equalizer.fork 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) : CategoryTheory.Limits.Fork f g - CategoryTheory.Subfunctor.equalizer_le 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) : CategoryTheory.Subfunctor.equalizer f g ≤ A - CategoryTheory.Subfunctor.instMonoFunctorTypeι_1 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) : CategoryTheory.Mono (CategoryTheory.Subfunctor.equalizer.ι f g) - CategoryTheory.Subfunctor.equalizer.forkIsLimit 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) : CategoryTheory.Limits.IsLimit (CategoryTheory.Subfunctor.equalizer.fork f g) - CategoryTheory.Subfunctor.equalizer.ι 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) : (CategoryTheory.Subfunctor.equalizer f g).toFunctor ⟶ A.toFunctor - CategoryTheory.Subfunctor.equalizer_eq_iff 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) : CategoryTheory.Subfunctor.equalizer f g = A ↔ f = g - CategoryTheory.Subfunctor.equalizer.fork_pt 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) : (CategoryTheory.Subfunctor.equalizer.fork f g).pt = (CategoryTheory.Subfunctor.equalizer f g).toFunctor - CategoryTheory.Subfunctor.equalizer.ι_ι 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.equalizer.ι f g) A.ι = (CategoryTheory.Subfunctor.equalizer f g).ι - CategoryTheory.Subfunctor.equalizer.fork_ι 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) : (CategoryTheory.Subfunctor.equalizer.fork f g).ι = CategoryTheory.Subfunctor.equalizer.ι f g - CategoryTheory.Subfunctor.equalizer.condition 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.equalizer.ι f g) f = CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.equalizer.ι f g) g - CategoryTheory.Subfunctor.equalizer.lift 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) {G : CategoryTheory.Functor C (Type w)} (φ : G ⟶ A.toFunctor) (w : CategoryTheory.CategoryStruct.comp φ f = CategoryTheory.CategoryStruct.comp φ g) : G ⟶ (CategoryTheory.Subfunctor.equalizer f g).toFunctor - CategoryTheory.Subfunctor.range_le_equalizer_iff 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) {G : CategoryTheory.Functor C (Type w)} (φ : G ⟶ A.toFunctor) : CategoryTheory.Subfunctor.range (CategoryTheory.CategoryStruct.comp φ A.ι) ≤ CategoryTheory.Subfunctor.equalizer f g ↔ CategoryTheory.CategoryStruct.comp φ f = CategoryTheory.CategoryStruct.comp φ g - CategoryTheory.Subfunctor.equalizer.ι_ι_assoc 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) {Z : CategoryTheory.Functor C (Type w)} (h : F₁ ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.equalizer.ι f g) (CategoryTheory.CategoryStruct.comp A.ι h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.equalizer f g).ι h - CategoryTheory.Subfunctor.equalizer.lift_ι 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) {G : CategoryTheory.Functor C (Type w)} (φ : G ⟶ A.toFunctor) (w : CategoryTheory.CategoryStruct.comp φ f = CategoryTheory.CategoryStruct.comp φ g) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.equalizer.lift f g φ w) (CategoryTheory.Subfunctor.equalizer.ι f g) = φ - CategoryTheory.Subfunctor.equalizer.condition_assoc 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) {Z : CategoryTheory.Functor C (Type w)} (h : F₂ ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.equalizer.ι f g) (CategoryTheory.CategoryStruct.comp f h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.equalizer.ι f g) (CategoryTheory.CategoryStruct.comp g h) - CategoryTheory.Subfunctor.equalizer.lift_ι' 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) {G : CategoryTheory.Functor C (Type w)} (φ : G ⟶ A.toFunctor) (w : CategoryTheory.CategoryStruct.comp φ f = CategoryTheory.CategoryStruct.comp φ g) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.equalizer.lift f g φ w) (CategoryTheory.Subfunctor.equalizer f g).ι = CategoryTheory.CategoryStruct.comp φ A.ι - CategoryTheory.Subfunctor.equalizer.lift_ι_assoc 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) {G : CategoryTheory.Functor C (Type w)} (φ : G ⟶ A.toFunctor) (w : CategoryTheory.CategoryStruct.comp φ f = CategoryTheory.CategoryStruct.comp φ g) {Z : CategoryTheory.Functor C (Type w)} (h : A.toFunctor ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.equalizer.lift f g φ w) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.equalizer.ι f g) h) = CategoryTheory.CategoryStruct.comp φ h - CategoryTheory.Subfunctor.equalizer.lift_ι'_assoc 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) {G : CategoryTheory.Functor C (Type w)} (φ : G ⟶ A.toFunctor) (w : CategoryTheory.CategoryStruct.comp φ f = CategoryTheory.CategoryStruct.comp φ g) {Z : CategoryTheory.Functor C (Type w)} (h : F₁ ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.equalizer.lift f g φ w) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Subfunctor.equalizer f g).ι h) = CategoryTheory.CategoryStruct.comp φ (CategoryTheory.CategoryStruct.comp A.ι h) - CategoryTheory.Subfunctor.mem_equalizer_iff 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) {i : C} (x : A.toFunctor.obj i) : ↑x ∈ (CategoryTheory.Subfunctor.equalizer f g).obj i ↔ (CategoryTheory.ConcreteCategory.hom (f.app i)) x = (CategoryTheory.ConcreteCategory.hom (g.app i)) x - CategoryTheory.Subfunctor.equalizer_obj 📋 Mathlib.CategoryTheory.Subfunctor.Equalizer
{C : Type u} [CategoryTheory.Category.{v, u} C] {F₁ F₂ : CategoryTheory.Functor C (Type w)} {A : CategoryTheory.Subfunctor F₁} (f g : A.toFunctor ⟶ F₂) (U : C) : (CategoryTheory.Subfunctor.equalizer f g).obj U = {x | ∃ (hx : x ∈ A.obj U), (CategoryTheory.ConcreteCategory.hom (f.app U)) ⟨x, hx⟩ = (CategoryTheory.ConcreteCategory.hom (g.app U)) ⟨x, hx⟩} - CategoryTheory.FunctorToTypes.monoFactorisation_I 📋 Mathlib.CategoryTheory.Limits.FunctorCategory.Shapes.Images
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] {F G : CategoryTheory.Functor C (Type u)} (f : F ⟶ G) : (CategoryTheory.FunctorToTypes.monoFactorisation f).I = (CategoryTheory.Subfunctor.range f).toFunctor - CategoryTheory.FunctorToTypes.monoFactorisation_e 📋 Mathlib.CategoryTheory.Limits.FunctorCategory.Shapes.Images
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] {F G : CategoryTheory.Functor C (Type u)} (f : F ⟶ G) : (CategoryTheory.FunctorToTypes.monoFactorisation f).e = CategoryTheory.Subfunctor.toRange f - CategoryTheory.FunctorToTypes.monoFactorisation_m 📋 Mathlib.CategoryTheory.Limits.FunctorCategory.Shapes.Images
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] {F G : CategoryTheory.Functor C (Type u)} (f : F ⟶ G) : (CategoryTheory.FunctorToTypes.monoFactorisation f).m = (CategoryTheory.Subfunctor.range f).ι - CategoryTheory.Precoverage.isSheafFor_subsheafify 📋 Mathlib.CategoryTheory.Sites.Precoverage.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {K : CategoryTheory.Precoverage C} {F : CategoryTheory.Functor Cᵒᵖ (Type w)} (𝒮 : (Z : C) → Set (F.obj (Opposite.op Z))) {X : C} {R : CategoryTheory.Presieve X} (h : R ∈ K.coverings X) (h' : CategoryTheory.Presieve.IsSheafFor F R) : CategoryTheory.Presieve.IsSheafFor (K.subsheafify 𝒮).toFunctor R - CategoryTheory.Precoverage.small_subsheafify_of_small 📋 Mathlib.CategoryTheory.Sites.Precoverage.Subsheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {K : CategoryTheory.Precoverage C} {F : CategoryTheory.Functor Cᵒᵖ (Type w)} (hF : ∀ ⦃X : C⦄, ∀ R ∈ K.coverings X, CategoryTheory.Presieve.IsSheafFor F R) (𝒮 : (Z : C) → Set (F.obj (Opposite.op Z))) (h : ∀ (Z : C), Small.{max u v, w} ↑(𝒮 Z)) : CategoryTheory.FunctorToTypes.Small.{max u v, w, v, u} (K.subsheafify 𝒮).toFunctor - CategoryTheory.Subfunctor.range_subobjectMk_ι 📋 Mathlib.CategoryTheory.Subfunctor.Subobject
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} (A : CategoryTheory.Subfunctor F) : CategoryTheory.Subfunctor.range (CategoryTheory.Subobject.mk A.ι).arrow = A - CategoryTheory.Subfunctor.equivalenceMonoOver_functor_obj 📋 Mathlib.CategoryTheory.Subfunctor.Subobject
{C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor C (Type w)) (A : CategoryTheory.Subfunctor F) : (CategoryTheory.Subfunctor.equivalenceMonoOver F).functor.obj A = CategoryTheory.MonoOver.mk A.ι - CategoryTheory.Subfunctor.orderIsoSubobject_apply 📋 Mathlib.CategoryTheory.Subfunctor.Subobject
{C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor C (Type w)) (A : CategoryTheory.Subfunctor F) : (CategoryTheory.Subfunctor.orderIsoSubobject F) A = CategoryTheory.Subobject.mk A.ι - CategoryTheory.Subfunctor.subobjectMk_range_arrow 📋 Mathlib.CategoryTheory.Subfunctor.Subobject
{C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type w)} (X : CategoryTheory.Subobject F) : CategoryTheory.Subobject.mk (CategoryTheory.Subfunctor.range X.arrow).ι = X - CategoryTheory.Subfunctor.equivalenceMonoOver_functor_map 📋 Mathlib.CategoryTheory.Subfunctor.Subobject
{C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor C (Type w)) {A B : CategoryTheory.Subfunctor F} (f : A ⟶ B) : (CategoryTheory.Subfunctor.equivalenceMonoOver F).functor.map f = CategoryTheory.MonoOver.homMk (CategoryTheory.Subfunctor.homOfLe ⋯) ⋯ - CategoryTheory.Subfunctor.equivalenceMonoOver_unitIso 📋 Mathlib.CategoryTheory.Subfunctor.Subobject
{C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor C (Type w)) : (CategoryTheory.Subfunctor.equivalenceMonoOver F).unitIso = CategoryTheory.NatIso.ofComponents (fun A => CategoryTheory.eqToIso ⋯) ⋯ - CategoryTheory.Subfunctor.equivalenceMonoOver_counitIso 📋 Mathlib.CategoryTheory.Subfunctor.Subobject
{C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor C (Type w)) : (CategoryTheory.Subfunctor.equivalenceMonoOver F).counitIso = CategoryTheory.NatIso.ofComponents (fun X => CategoryTheory.MonoOver.isoMk (CategoryTheory.asIso (CategoryTheory.Subfunctor.toRange X.arrow)).symm ⋯) ⋯ - CategoryTheory.Sheaf.Ω_obj 📋 Mathlib.CategoryTheory.Topos.Sheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) : (CategoryTheory.Sheaf.Ω J).obj = (CategoryTheory.Functor.closedSieves J).toFunctor - CategoryTheory.Sheaf.truth_hom 📋 Mathlib.CategoryTheory.Topos.Sheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) : (CategoryTheory.Sheaf.truth J).hom = CategoryTheory.Subfunctor.lift (CategoryTheory.Presheaf.truth C) ⋯ - CategoryTheory.Sheaf.χ_hom 📋 Mathlib.CategoryTheory.Topos.Sheaf
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : CategoryTheory.GrothendieckTopology C} {F G : CategoryTheory.Sheaf J (Type (max u v))} (m : F ⟶ G) [CategoryTheory.Mono m] : (CategoryTheory.Sheaf.χ m).hom = CategoryTheory.Subfunctor.lift (CategoryTheory.Presheaf.χ m.hom) ⋯
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 ce5dd8c