Documentation

Mathlib.CategoryTheory.ObjectProperty.Basic

Properties of objects in a category #

Given a category C, we introduce an abbreviation ObjectProperty C for predicates C → Prop.

TODO #

@[reducible, inline]

A property of objects in a category C is a predicate C → Prop.

Equations
Instances For
    theorem CategoryTheory.ObjectProperty.le_def {C : Type u} [CategoryStruct.{v, u} C] {P Q : ObjectProperty C} :
    P ≤ Q ↔ ∀ (X : C), P X → Q X

    The typeclass associated to P : ObjectProperty C.

    • prop : P X
    Instances
      inductive CategoryTheory.ObjectProperty.ofObj {C : Type u} [CategoryStruct.{v, u} C] {ι : Type u'} (X : ι → C) :

      The property of objects that is satisfied by the X i for a family of objects X : ι : C.

      Instances For
        @[simp]
        theorem CategoryTheory.ObjectProperty.ofObj_apply {C : Type u} [CategoryStruct.{v, u} C] {ι : Type u'} (X : ι → C) (i : ι) :
        ofObj X (X i)
        theorem CategoryTheory.ObjectProperty.ofObj_iff {C : Type u} [CategoryStruct.{v, u} C] {ι : Type u'} (X : ι → C) (Y : C) :
        ofObj X Y ↔ ∃ (i : ι), X i = Y
        theorem CategoryTheory.ObjectProperty.ofObj_le_iff {C : Type u} [CategoryStruct.{v, u} C] {ι : Type u'} (X : ι → C) (P : ObjectProperty C) :
        ofObj X ≤ P ↔ ∀ (i : ι), P (X i)
        @[reducible, inline]

        The property of objects in a category that is satisfied by a single object X : C.

        Equations
        Instances For

          The property of objects in a category that is satisfied by X : C and Y : C.

          Equations
          Instances For
            @[simp]
            theorem CategoryTheory.ObjectProperty.pair_iff {C : Type u} [CategoryStruct.{v, u} C] (X Y Z : C) :
            pair X Y Z ↔ X = Z ∨ Y = Z

            The inverse image of a property of objects by a functor.

            Equations
            Instances For
              @[simp]

              The essential image of a property of objects by a functor.

              Equations
              Instances For
                theorem CategoryTheory.ObjectProperty.prop_map_iff {C : Type u} {D : Type u'} [Category.{v, u} C] [Category.{v', u'} D] (P : ObjectProperty C) (F : Functor C D) (Y : D) :
                P.map F Y ↔ ∃ (X : C), P X ∧ Nonempty (F.obj X ≅ Y)
                theorem CategoryTheory.ObjectProperty.prop_map_obj {C : Type u} {D : Type u'} [Category.{v, u} C] [Category.{v', u'} D] (P : ObjectProperty C) (F : Functor C D) {X : C} (hX : P X) :
                P.map F (F.obj X)
                theorem CategoryTheory.ObjectProperty.map_monotone {C : Type u} {D : Type u'} [Category.{v, u} C] [Category.{v', u'} D] {P Q : ObjectProperty C} (h : P ≤ Q) (F : Functor C D) :
                P.map F ≤ Q.map F

                The strict image of a property of objects by a functor.

                Instances For
                  theorem CategoryTheory.ObjectProperty.strictMap_iff {C : Type u} {D : Type u'} [Category.{v, u} C] [Category.{v', u'} D] (P : ObjectProperty C) (F : Functor C D) (Y : D) :
                  P.strictMap F Y ↔ ∃ (X : C), P X ∧ F.obj X = Y
                  theorem CategoryTheory.ObjectProperty.strictMap_obj {C : Type u} {D : Type u'} [Category.{v, u} C] [Category.{v', u'} D] (P : ObjectProperty C) (F : Functor C D) {X : C} (hX : P X) :
                  P.strictMap F (F.obj X)
                  @[simp]
                  theorem CategoryTheory.ObjectProperty.strictMap_ofObj {C : Type u} {D : Type u'} [Category.{v, u} C] [Category.{v', u'} D] {ι : Type u'} (X : ι → C) (F : Functor C D) :