Documentation

Mathlib.CategoryTheory.MorphismProperty.Local

Locality conditions on morphism properties #

In this file we define locality conditions on morphism properties in a category. Let K be a precoverage in a category C and P be a morphism property on C that respects isomorphisms.

We say that

Implementation details #

The covers appearing in the definitions have index type in the morphism universe of C.

TODOs #

A property of morphisms P in C is local at the target with respect to the precoverage K if it respects isomorphisms, and: P holds for f : X ⟶ Y if and only if it holds for the restrictions of f to Uᵢ for a 0-hypercover {Uᵢ} of Y in the precoverage K.

For a version of of_zeroHypercover that takes a v-small 0-hypercover in an arbitrary universe, use CategoryTheory.MorphismProperty.of_zeroHypercover_target.

Instances
    theorem CategoryTheory.MorphismProperty.IsLocalAtTarget.mk_of_iff {C : Type u} [Category.{v, u} C] {P : MorphismProperty C} {K : Precoverage C} [K.HasPullbacks] [P.RespectsIso] (H : ∀ {X Y : C} (f : X Y) (𝒰 : K.ZeroHypercover Y), P f ∀ (i : 𝒰.I₀), P (Limits.pullback.snd f (𝒰.f i))) :
    theorem CategoryTheory.MorphismProperty.IsLocalAtTarget.of_isPullback {C : Type u} [Category.{v, u} C] {P : MorphismProperty C} {K : Precoverage C} [K.HasPullbacks] [P.IsLocalAtTarget K] {X Y : C} {f : X Y} (𝒰 : K.ZeroHypercover Y) {X' : C} (i : 𝒰.I₀) {fst : X' X} {snd : X' 𝒰.X i} (h : IsPullback fst snd f (𝒰.f i)) (hf : P f) :
    P snd
    theorem CategoryTheory.MorphismProperty.of_zeroHypercover_target {C : Type u} [Category.{v, u} C] {P : MorphismProperty C} {K : Precoverage C} [K.HasPullbacks] [P.IsLocalAtTarget K] {X Y : C} {f : X Y} (𝒰 : K.ZeroHypercover Y) [𝒰.Small] (h : ∀ (i : 𝒰.I₀), P (Limits.pullback.snd f (𝒰.f i))) :
    P f

    A property of morphisms P in C is local at the source with respect to the precoverage K if it respects isomorphisms, and: P holds for f : X ⟶ Y if and only if it holds for the restrictions of f to Uᵢ for a 0-hypercover {Uᵢ} of X in the precoverage K.

    For a version of of_zeroHypercover that takes a v-small 0-hypercover in an arbitrary universe, use CategoryTheory.MorphismProperty.of_zeroHypercover_source.

    Instances
      theorem CategoryTheory.MorphismProperty.IsLocalAtSource.mk_of_iff {C : Type u} [Category.{v, u} C] {P : MorphismProperty C} {K : Precoverage C} [P.RespectsIso] (H : ∀ {X Y : C} (f : X Y) (𝒰 : K.ZeroHypercover X), P f ∀ (i : 𝒰.I₀), P (CategoryStruct.comp (𝒰.f i) f)) :
      theorem CategoryTheory.MorphismProperty.of_zeroHypercover_source {C : Type u} [Category.{v, u} C] {P : MorphismProperty C} {K : Precoverage C} [P.IsLocalAtSource K] {X Y : C} {f : X Y} (𝒰 : K.ZeroHypercover X) [𝒰.Small] (h : ∀ (i : 𝒰.I₀), P (CategoryStruct.comp (𝒰.f i) f)) :
      P f
      theorem CategoryTheory.eq_of_zeroHypercover_target {C : Type u} [Category.{v, u} C] [Limits.HasEqualizers C] [Limits.HasPullbacks C] {X Y S : C} {f g : X Y} {s : X S} {t : Y S} (hf : CategoryStruct.comp f t = s) (hg : CategoryStruct.comp g t = s) {J : Precoverage C} (𝒰 : J.ZeroHypercover S) [J.IsStableUnderBaseChange] [(MorphismProperty.isomorphisms C).IsLocalAtTarget J] (H : ∀ (i : 𝒰.I₀), Limits.pullback.map s (𝒰.f i) t (𝒰.f i) f (CategoryStruct.id (𝒰.X i)) (CategoryStruct.id S) = Limits.pullback.map s (𝒰.f i) t (𝒰.f i) g (CategoryStruct.id (𝒰.X i)) (CategoryStruct.id S) ) :
      f = g

      Let J be a precoverage for which isomorphisms are local at the target. Let f, g : X ⟶ Y be two morphisms over S and 𝒰 a J-cover of S. If for all i, the maps X ×[S] Uᵢ ⟶ Y ×[S] Uᵢ are equal, then f and g are equal.