Documentation

Mathlib.CategoryTheory.Subobject.Lattice

The lattice of subobjects #

We provide the SemilatticeInf with OrderTop (Subobject X) instance when [HasPullback C], and the SemilatticeSup (Subobject X) instance when [HasImages C] [HasBinaryCoproducts C].

Equations

    The morphism to the top object in MonoOver X.

    Equations
      Instances For
        def CategoryTheory.MonoOver.mapTop {C : Type u₁} [Category.{v₁, u₁} C] {X Y : C} (f : X Y) [Mono f] :
        (map f).obj mk' f

        map f sends ⊤ : MonoOver X to ⟨X, f⟩ : MonoOver Y.

        Equations
          Instances For

            The pullback of the top object in MonoOver Y is (isomorphic to) the top object in MonoOver X.

            Equations
              Instances For

                There is a morphism from ⊤ : MonoOver A to the pullback of a monomorphism along itself; as the category is thin this is an isomorphism.

                Equations
                  Instances For

                    The pullback of a monomorphism along itself is isomorphic to the top object.

                    Equations
                      Instances For

                        The (unique) morphism from ⊥ : MonoOver X to any other f : MonoOver X.

                        Equations
                          Instances For

                            map f sends ⊥ : MonoOver X to ⊥ : MonoOver Y.

                            Equations
                              Instances For

                                The object underlying ⊥ : Subobject B is (up to isomorphism) the zero object.

                                Equations
                                  Instances For

                                    When [HasPullbacks C], MonoOver A has "intersections", functorial in both arguments.

                                    As MonoOver A is only a preorder, this doesn't satisfy the axioms of SemilatticeInf, but we reuse all the names from SemilatticeInf because they will be used to construct SemilatticeInf (subobject A) shortly.

                                    Equations
                                      Instances For
                                        @[simp]

                                        A morphism from the "infimum" of two objects in MonoOver A to the first object.

                                        Equations
                                          Instances For

                                            A morphism from the "infimum" of two objects in MonoOver A to the second object.

                                            Equations
                                              Instances For
                                                def CategoryTheory.MonoOver.leInf {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {A : C} (f g h : MonoOver A) :
                                                (h f) → (h g) → (h (inf.obj f).obj g)

                                                A morphism version of the le_inf axiom.

                                                Equations
                                                  Instances For

                                                    When [HasImages C] [HasBinaryCoproducts C], MonoOver A has a sup construction, which is functorial in both arguments, and which on Subobject A will induce a SemilatticeSup.

                                                    Equations
                                                      Instances For

                                                        A morphism version of le_sup_left.

                                                        Equations
                                                          Instances For

                                                            A morphism version of le_sup_right.

                                                            Equations
                                                              Instances For
                                                                def CategoryTheory.MonoOver.supLe {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasImages C] [Limits.HasBinaryCoproducts C] {A : C} (f g h : MonoOver A) :
                                                                (f h) → (g h) → ((sup.obj f).obj g h)

                                                                A morphism version of sup_le.

                                                                Equations
                                                                  Instances For
                                                                    @[simp]
                                                                    theorem CategoryTheory.Subobject.map_top {C : Type u₁} [Category.{v₁, u₁} C] {X Y : C} (f : X Y) [Mono f] :
                                                                    (map f).obj = mk f

                                                                    The object underlying ⊥ : Subobject B is (up to isomorphism) the initial object.

                                                                    Equations
                                                                      Instances For

                                                                        The object underlying ⊥ : Subobject B is (up to isomorphism) the zero object.

                                                                        Equations
                                                                          Instances For

                                                                            Sending X : C to Subobject X is a contravariant functor Cᵒᵖ ⥤ Type.

                                                                            Equations
                                                                              Instances For
                                                                                @[simp]
                                                                                theorem CategoryTheory.Subobject.functor_map (C : Type u₁) [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {X✝ Y✝ : Cᵒᵖ} (f : X✝ Y✝) (a✝ : Subobject (Opposite.unop X✝)) :
                                                                                (functor C).map f a✝ = (pullback f.unop).obj a✝

                                                                                The functorial infimum on MonoOver A descends to an infimum on Subobject A.

                                                                                Equations
                                                                                  Instances For
                                                                                    theorem CategoryTheory.Subobject.le_inf {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {A : C} (h f g : Subobject A) :
                                                                                    h fh gh (inf.obj f).obj g
                                                                                    theorem CategoryTheory.Subobject.factors_left_of_inf_factors {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {A B : C} {X Y : Subobject B} {f : A B} (h : (XY).Factors f) :
                                                                                    theorem CategoryTheory.Subobject.factors_right_of_inf_factors {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {A B : C} {X Y : Subobject B} {f : A B} (h : (XY).Factors f) :
                                                                                    @[simp]
                                                                                    theorem CategoryTheory.Subobject.inf_factors {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {A B : C} {X Y : Subobject B} (f : A B) :
                                                                                    (XY).Factors f X.Factors f Y.Factors f
                                                                                    @[simp]
                                                                                    theorem CategoryTheory.Subobject.finset_inf_factors {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {I : Type u_1} {A B : C} {s : Finset I} {P : ISubobject B} (f : A B) :
                                                                                    (s.inf P).Factors f is, (P i).Factors f
                                                                                    theorem CategoryTheory.Subobject.finset_inf_arrow_factors {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {I : Type u_1} {B : C} (s : Finset I) (P : ISubobject B) (i : I) (m : i s) :
                                                                                    (P i).Factors (s.inf P).arrow
                                                                                    theorem CategoryTheory.Subobject.inf_eq_map_pullback' {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {A : C} (f₁ : MonoOver A) (f₂ : Subobject A) :
                                                                                    (inf.obj (Quotient.mk'' f₁)).obj f₂ = (map f₁.arrow).obj ((pullback f₁.arrow).obj f₂)
                                                                                    theorem CategoryTheory.Subobject.inf_eq_map_pullback {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {A : C} (f₁ : MonoOver A) (f₂ : Subobject A) :
                                                                                    Quotient.mk'' f₁f₂ = (map f₁.arrow).obj ((pullback f₁.arrow).obj f₂)
                                                                                    theorem CategoryTheory.Subobject.prod_eq_inf {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {A : C} {f₁ f₂ : Subobject A} [Limits.HasBinaryProduct f₁ f₂] :
                                                                                    (f₁ f₂) = f₁f₂
                                                                                    theorem CategoryTheory.Subobject.inf_def {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {B : C} (m m' : Subobject B) :
                                                                                    mm' = (inf.obj m).obj m'
                                                                                    theorem CategoryTheory.Subobject.inf_pullback {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {X Y : C} (g : X Y) (f₁ f₂ : Subobject Y) :
                                                                                    (pullback g).obj (f₁f₂) = (pullback g).obj f₁(pullback g).obj f₂

                                                                                    commutes with pullback.

                                                                                    theorem CategoryTheory.Subobject.inf_map {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasPullbacks C] {X Y : C} (g : Y X) [Mono g] (f₁ f₂ : Subobject Y) :
                                                                                    (map g).obj (f₁f₂) = (map g).obj f₁(map g).obj f₂

                                                                                    commutes with map.

                                                                                    The functorial supremum on MonoOver A descends to a supremum on Subobject A.

                                                                                    Equations
                                                                                      Instances For
                                                                                        theorem CategoryTheory.Subobject.finset_sup_factors {C : Type u₁} [Category.{v₁, u₁} C] [Limits.HasImages C] [Limits.HasBinaryCoproducts C] [Limits.HasInitial C] [Limits.InitialMonoClass C] {I : Type u_1} {A B : C} {s : Finset I} {P : ISubobject B} {f : A B} (h : is, (P i).Factors f) :
                                                                                        (s.sup P).Factors f

                                                                                        The "wide cospan" diagram, with a small indexing type, constructed from a set of subobjects. (This is just the diagram of all the subobjects pasted together, but using WellPowered C to make the diagram small.)

                                                                                        Equations
                                                                                          Instances For

                                                                                            Auxiliary construction of a cone for le_inf.

                                                                                            Equations
                                                                                              Instances For

                                                                                                The limit of wideCospan s. (This will be the supremum of the set of subobjects.)

                                                                                                Equations
                                                                                                  Instances For

                                                                                                    When [WellPowered C] and [HasWidePullbacks C], Subobject A has arbitrary infimums.

                                                                                                    Equations
                                                                                                      Instances For

                                                                                                        The universal morphism out of the coproduct of a set of subobjects, after using [WellPowered C] to reindex by a small type.

                                                                                                        Equations
                                                                                                          Instances For

                                                                                                            When [WellPowered C] [HasImages C] [HasCoproducts C], Subobject A has arbitrary supremums.

                                                                                                            Equations
                                                                                                              Instances For
                                                                                                                theorem CategoryTheory.Subobject.symm_apply_mem_iff_mem_image {α : Type u_1} {β : Type u_2} (e : α β) (s : Set α) (x : β) :
                                                                                                                e.symm x s x e '' s

                                                                                                                A nonzero object has nontrivial subobject lattice.

                                                                                                                The subobject lattice of a subobject Y is order isomorphic to the interval Set.Iic Y.

                                                                                                                Equations
                                                                                                                  Instances For