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

@[simp]

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

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

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

Equations
Instances For

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)
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
  • =
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)