Properties of morphisms #
We provide the basic framework for talking about properties of morphisms. The following meta-properties are defined
RespectsIso
:P
respects isomorphisms ifP f → P (e ≫ f)
andP f → P (f ≫ e)
, wheree
is an isomorphism.StableUnderComposition
:P
is stable under composition ifP f → P g → P (f ≫ g)
.StableUnderBaseChange
:P
is stable under base change if in all pullback squares, the left map satisfiesP
if the right map satisfies it.StableUnderCobaseChange
:P
is stable under cobase change if in all pushout squares, the right map satisfiesP
if the left map satisfies it.
A MorphismProperty C
is a class of morphisms between objects in C
.
Equations
- CategoryTheory.MorphismProperty C = (⦃X Y : C⦄ → (X ⟶ Y) → Prop)
Instances For
Equations
- CategoryTheory.instCompleteLatticeMorphismProperty C = id inferInstance
Equations
- CategoryTheory.instInhabitedMorphismProperty C = { default := ⊤ }
Equations
- CategoryTheory.MorphismProperty.instHasSubsetMorphismProperty = { Subset := fun (P₁ P₂ : CategoryTheory.MorphismProperty C) => ∀ ⦃X Y : C⦄ (f : X ⟶ Y), P₁ f → P₂ f }
Equations
- One or more equations did not get rendered due to their size.
Equations
- CategoryTheory.MorphismProperty.instInterMorphismProperty = { inter := fun (P₁ P₂ : CategoryTheory.MorphismProperty C) (x x_1 : C) (f : x ⟶ x_1) => P₁ f ∧ P₂ f }
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
The morphism property in Cᵒᵖ
associated to a morphism property in C
Equations
- CategoryTheory.MorphismProperty.op P f = P f.unop
Instances For
The morphism property in C
associated to a morphism property in Cᵒᵖ
Equations
- CategoryTheory.MorphismProperty.unop P f = P f.op
Instances For
The inverse image of a MorphismProperty D
by a functor C ⥤ D
Equations
- CategoryTheory.MorphismProperty.inverseImage P F f = P (F.toPrefunctor.map f)
Instances For
The image (up to isomorphisms) of a MorphismProperty C
by a functor C ⥤ D
Equations
- CategoryTheory.MorphismProperty.map P F f = ∃ (X' : C) (Y' : C) (f' : X' ⟶ Y') (_ : P f'), Nonempty (CategoryTheory.Arrow.mk (F.toPrefunctor.map f') ≅ CategoryTheory.Arrow.mk f)
Instances For
A morphism property RespectsIso
if it still holds when composed with an isomorphism
Equations
- One or more equations did not get rendered due to their size.
Instances For
The closure by isomorphisms of a MorphismProperty
Equations
- CategoryTheory.MorphismProperty.isoClosure P f = ∃ (Y₁ : C) (Y₂ : C) (f' : Y₁ ⟶ Y₂) (_ : P f'), Nonempty (CategoryTheory.Arrow.mk f' ≅ CategoryTheory.Arrow.mk f)
Instances For
A morphism property is StableUnderComposition
if the composition of two such morphisms
still falls in the class.
Equations
- CategoryTheory.MorphismProperty.StableUnderComposition P = ∀ ⦃X Y Z : C⦄ (f : X ⟶ Y) (g : Y ⟶ Z), P f → P g → P (CategoryTheory.CategoryStruct.comp f g)
Instances For
A morphism property is StableUnderInverse
if the inverse of a morphism satisfying
the property still falls in the class.
Equations
- CategoryTheory.MorphismProperty.StableUnderInverse P = ∀ ⦃X Y : C⦄ (e : X ≅ Y), P e.hom → P e.inv
Instances For
A morphism property is StableUnderBaseChange
if the base change of such a morphism
still falls in the class.
Equations
- CategoryTheory.MorphismProperty.StableUnderBaseChange P = ∀ ⦃X Y Y' S : C⦄ ⦃f : X ⟶ S⦄ ⦃g : Y ⟶ S⦄ ⦃f' : Y' ⟶ Y⦄ ⦃g' : Y' ⟶ X⦄, CategoryTheory.IsPullback f' g' g f → P g → P g'
Instances For
A morphism property is StableUnderCobaseChange
if the cobase change of such a morphism
still falls in the class.
Equations
- CategoryTheory.MorphismProperty.StableUnderCobaseChange P = ∀ ⦃A A' B B' : C⦄ ⦃f : A ⟶ A'⦄ ⦃g : A ⟶ B⦄ ⦃f' : B ⟶ B'⦄ ⦃g' : A' ⟶ B'⦄, CategoryTheory.IsPushout g f f' g' → P f → P f'
Instances For
If P : MorphismProperty C
and F : C ⥤ D
, then
P.IsInvertedBy F
means that all morphisms in P
are mapped by F
to isomorphisms in D
.
Equations
- CategoryTheory.MorphismProperty.IsInvertedBy P F = ∀ ⦃X Y : C⦄ (f : X ⟶ Y), P f → CategoryTheory.IsIso (F.toPrefunctor.map f)
Instances For
Given app : Π X, F₁.obj X ⟶ F₂.obj X
where F₁
and F₂
are two functors,
this is the morphism_property C
satisfied by the morphisms in C
with respect
to whom app
is natural.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The MorphismProperty C
satisfied by isomorphisms in C
.
Equations
Instances For
The MorphismProperty C
satisfied by monomorphisms in C
.
Equations
Instances For
The MorphismProperty C
satisfied by epimorphisms in C
.
Equations
Instances For
The full subcategory of C ⥤ D
consisting of functors inverting morphisms in W
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
A constructor for W.FunctorsInverting D
Equations
- CategoryTheory.MorphismProperty.FunctorsInverting.mk F hF = { obj := F, property := hF }
Instances For
For P : MorphismProperty C
, P.diagonal
is a morphism property that holds for f : X ⟶ Y
whenever P
holds for X ⟶ Y xₓ Y
.
Equations
Instances For
P.universally
holds for a morphism f : X ⟶ Y
iff P
holds for all X ×[Y] Y' ⟶ Y'
.
Equations
- CategoryTheory.MorphismProperty.universally P f = ∀ ⦃X' Y' : C⦄ (i₁ : X' ⟶ X) (i₂ : Y' ⟶ Y) (f' : X' ⟶ Y'), CategoryTheory.IsPullback f' i₁ i₂ f → P f'
Instances For
Injectiveness (in a concrete category) as a MorphismProperty
Equations
Instances For
Surjectiveness (in a concrete category) as a MorphismProperty
Equations
Instances For
Bijectiveness (in a concrete category) as a MorphismProperty
Equations
Instances For
Typeclass expressing that a morphism property contain identities.
- id_mem' : ∀ (X : C), W (CategoryTheory.CategoryStruct.id X)
for all
X : C
, the identity ofX
satisfies the morphism property
Instances
A morphism property is multiplicative if it contains identities and is stable by composition.
- id_mem' : ∀ (X : C), W (CategoryTheory.CategoryStruct.id X)
- stableUnderComposition : CategoryTheory.MorphismProperty.StableUnderComposition W
compatibility of
Instances
If W₁
and W₂
are morphism properties on two categories C₁
and C₂
,
this is the induced morphism property on C₁ × C₂
.
Equations
- CategoryTheory.MorphismProperty.prod W₁ W₂ f = (W₁ f.1 ∧ W₂ f.2)
Instances For
Equations
- One or more equations did not get rendered due to their size.
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
- CategoryTheory.MorphismProperty.pi W f = ∀ (j : J), W j (f j)
Instances For
The morphism property on J ⥤ C
which is defined objectwise
from W : MorphismProperty C
.
Equations
- CategoryTheory.MorphismProperty.functorCategory W J f = ∀ (j : J), W (f.app j)
Instances For
The property that a morphism property W
is stable under limits
indexed by a category J
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The property that a morphism property W
is stable under products indexed by a type J
.
Equations
Instances For
The condition that a property of morphisms is stable by finite products.
- isStableUnderProductsOfShape : ∀ (J : Type) [inst : Finite J], CategoryTheory.MorphismProperty.IsStableUnderProductsOfShape W J