Documentation

Mathlib.CategoryTheory.MorphismProperty.Basic

Properties of morphisms #

We provide the basic framework for talking about properties of morphisms. The following meta-property is defined

A MorphismProperty C is a class of morphisms between objects in C.

Equations
@[simp]

The morphism property in Cᵒᵖ associated to a morphism property in C

Equations
  • P.op f = P f.unop

The morphism property in C associated to a morphism property in Cᵒᵖ

Equations
  • P.unop f = P f.op
@[simp]

The image (up to isomorphisms) of a MorphismProperty C by a functor C ⥤ D

Equations

A morphism property P satisfies P.RespectsRight Q if it is stable under post-composition with morphisms satisfying Q, i.e. whenever P holds for f and Q holds for i then P holds for f ≫ i.

Instances
    theorem CategoryTheory.MorphismProperty.RespectsRight.postcomp {C : Type u} :
    ∀ {inst : CategoryTheory.Category.{v, u} C} {P Q : CategoryTheory.MorphismProperty C} [self : P.RespectsRight Q] {X Y Z : C} (i : Y Z), Q i∀ (f : X Y), P fP (CategoryTheory.CategoryStruct.comp f i)

    A morphism property P satisfies P.RespectsLeft Q if it is stable under pre-composition with morphisms satisfying Q, i.e. whenever P holds for f and Q holds for i then P holds for i ≫ f.

    Instances
      theorem CategoryTheory.MorphismProperty.RespectsLeft.precomp {C : Type u} :
      ∀ {inst : CategoryTheory.Category.{v, u} C} {P Q : CategoryTheory.MorphismProperty C} [self : P.RespectsLeft Q] {X Y Z : C} (i : X Y), Q i∀ (f : Y Z), P fP (CategoryTheory.CategoryStruct.comp i f)

      A morphism property P satisfies P.Respects Q if it is stable under composition on the left and right by morphisms satisfying Q.

        Instances
          instance CategoryTheory.MorphismProperty.RespectsLeft.inf {C : Type u} [CategoryTheory.Category.{v, u} C] (P₁ : CategoryTheory.MorphismProperty C) (P₂ : CategoryTheory.MorphismProperty C) (Q : CategoryTheory.MorphismProperty C) [P₁.RespectsLeft Q] [P₂.RespectsLeft Q] :
          (P₁ P₂).RespectsLeft Q
          Equations
          • =
          instance CategoryTheory.MorphismProperty.RespectsRight.inf {C : Type u} [CategoryTheory.Category.{v, u} C] (P₁ : CategoryTheory.MorphismProperty C) (P₂ : CategoryTheory.MorphismProperty C) (Q : CategoryTheory.MorphismProperty C) [P₁.RespectsRight Q] [P₂.RespectsRight Q] :
          (P₁ P₂).RespectsRight Q
          Equations
          • =
          @[reducible, inline]

          P respects isomorphisms, if it respects the morphism property isomorphisms C, i.e. it is stable under pre- and postcomposition with isomorphisms.

          Equations
          theorem CategoryTheory.MorphismProperty.RespectsIso.mk {C : Type u} [CategoryTheory.Category.{v, u} C] (P : CategoryTheory.MorphismProperty C) (hprecomp : ∀ {X Y Z : C} (e : X Y) (f : Y Z), P fP (CategoryTheory.CategoryStruct.comp e.hom f)) (hpostcomp : ∀ {X Y Z : C} (e : Y Z) (f : X Y), P fP (CategoryTheory.CategoryStruct.comp f e.hom)) :
          P.RespectsIso
          Equations
          • =
          Equations
          • =

          The closure by isomorphisms of a MorphismProperty

          Equations
          theorem CategoryTheory.MorphismProperty.monotone_isoClosure {C : Type u} [CategoryTheory.Category.{v, u} C] :
          Monotone CategoryTheory.MorphismProperty.isoClosure
          theorem CategoryTheory.MorphismProperty.arrow_mk_iso_iff {C : Type u} [CategoryTheory.Category.{v, u} C] (P : CategoryTheory.MorphismProperty C) [P.RespectsIso] {W : C} {X : C} {Y : C} {Z : C} {f : W X} {g : Y Z} (e : CategoryTheory.Arrow.mk f CategoryTheory.Arrow.mk g) :
          P f P g
          @[deprecated CategoryTheory.MorphismProperty.cancel_left_of_respectsIso]

          Alias of CategoryTheory.MorphismProperty.cancel_left_of_respectsIso.

          @[deprecated CategoryTheory.MorphismProperty.cancel_right_of_respectsIso]

          Alias of CategoryTheory.MorphismProperty.cancel_right_of_respectsIso.

          @[deprecated CategoryTheory.MorphismProperty.arrow_iso_iff]

          Alias of CategoryTheory.MorphismProperty.arrow_iso_iff.

          @[deprecated CategoryTheory.MorphismProperty.arrow_mk_iso_iff]
          theorem CategoryTheory.MorphismProperty.RespectsIso.arrow_mk_iso_iff {C : Type u} [CategoryTheory.Category.{v, u} C] (P : CategoryTheory.MorphismProperty C) [P.RespectsIso] {W : C} {X : C} {Y : C} {Z : C} {f : W X} {g : Y Z} (e : CategoryTheory.Arrow.mk f CategoryTheory.Arrow.mk g) :
          P f P g

          Alias of CategoryTheory.MorphismProperty.arrow_mk_iso_iff.

          @[deprecated CategoryTheory.MorphismProperty.isoClosure_eq_self]

          Alias of CategoryTheory.MorphismProperty.isoClosure_eq_self.

          If W₁ and W₂ are morphism properties on two categories C₁ and C₂, this is the induced morphism property on C₁ × C₂.

          Equations
          • W₁.prod W₂ f = (W₁ f.1 W₂ f.2)
          def CategoryTheory.MorphismProperty.pi {J : Type w} {C : JType u} [(j : J) → CategoryTheory.Category.{v, u} (C j)] (W : (j : J) → CategoryTheory.MorphismProperty (C j)) :

          If W j are morphism properties on categories C j for all j, this is the induced morphism property on the category ∀ j, C j.

          Equations

          The morphism property on J ⥤ C which is defined objectwise from W : MorphismProperty C.

          Equations
          • W.functorCategory J f = ∀ (j : J), W (f.app j)

          Given W : MorphismProperty C, this is the morphism property on Arrow C of morphisms whose left and right parts are in W.

          Equations
          • W.arrow f = (W f.left W f.right)