Documentation

Mathlib.CategoryTheory.Sites.Hypercover.Zero

0-hypercovers #

Given a coverage J on a category C, we define the type of 0-hypercovers of an object S : C. They consists of a covering family of morphisms X i ⟶ S indexed by a type I₀ such that the induced presieve is in J.

We define this with respect to a coverage and not to a Grothendieck topology, because this yields more control over the components of the cover.

structure CategoryTheory.PreZeroHypercover {C : Type u} [Category.{v, u} C] (S : C) :
Type (max (max u v) (w + 1))

The categorical data that is involved in a 0-hypercover of an object S. This consists of a family of morphisms f i : X i ⟶ S for i : I₀.

  • I₀ : Type w

    the index type of the covering of S

  • X (i : self.I₀) : C

    the objects in the covering of S

  • f (i : self.I₀) : self.X i S

    the morphisms in the covering of S

Instances For
    theorem CategoryTheory.PreZeroHypercover.ext {C : Type u} {inst✝ : Category.{v, u} C} {S : C} {x y : PreZeroHypercover S} (I₀ : x.I₀ = y.I₀) (X : x.X y.X) (f : x.f y.f) :
    x = y
    theorem CategoryTheory.PreZeroHypercover.ext_iff {C : Type u} {inst✝ : Category.{v, u} C} {S : C} {x y : PreZeroHypercover S} :
    x = y x.I₀ = y.I₀ x.X y.X x.f y.f
    @[reducible, inline]

    The assumption that the pullback of X i₁ and X i₂ over S exists for any i₁ and i₂.

    Equations
    Instances For
      @[reducible, inline]

      The presieve of S that is generated by the morphisms f i : X i ⟶ S.

      Equations
      Instances For
        @[reducible, inline]

        The sieve of S that is generated by the morphisms f i : X i ⟶ S.

        Equations
        Instances For

          The pre-0-hypercover defined by a single morphism.

          Equations
          Instances For
            @[simp]
            theorem CategoryTheory.PreZeroHypercover.singleton_X {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (x✝ : PUnit.{w + 1}) :
            (singleton f).X x✝ = S
            @[simp]
            theorem CategoryTheory.PreZeroHypercover.singleton_f {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (x✝ : PUnit.{w + 1}) :
            (singleton f).f x✝ = f
            noncomputable def CategoryTheory.PreZeroHypercover.pullback₁ {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (E : PreZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback f (E.f i)] :

            Pullback of a pre-0-hypercover along a morphism. The components are pullback f (E.f i).

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              @[simp]
              theorem CategoryTheory.PreZeroHypercover.pullback₁_I₀ {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (E : PreZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback f (E.f i)] :
              @[simp]
              theorem CategoryTheory.PreZeroHypercover.pullback₁_X {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (E : PreZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback f (E.f i)] (i : E.I₀) :
              (pullback₁ f E).X i = Limits.pullback f (E.f i)
              @[simp]
              theorem CategoryTheory.PreZeroHypercover.pullback₁_f {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (E : PreZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback f (E.f i)] (x✝ : E.I₀) :
              (pullback₁ f E).f x✝ = Limits.pullback.fst f (E.f x✝)
              noncomputable def CategoryTheory.PreZeroHypercover.pullback₂ {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (E : PreZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback (E.f i) f] :

              Pullback of a pre-0-hypercover along a morphism. The components are pullback (E.f i) f.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                @[simp]
                theorem CategoryTheory.PreZeroHypercover.pullback₂_f {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (E : PreZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback (E.f i) f] (x✝ : E.I₀) :
                (pullback₂ f E).f x✝ = Limits.pullback.snd (E.f x✝) f
                @[simp]
                theorem CategoryTheory.PreZeroHypercover.pullback₂_I₀ {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (E : PreZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback (E.f i) f] :
                @[simp]
                theorem CategoryTheory.PreZeroHypercover.pullback₂_X {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (E : PreZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback (E.f i) f] (i : E.I₀) :
                (pullback₂ f E).X i = Limits.pullback (E.f i) f

                Refining each component of a pre-0-hypercover yields a refined pre-0-hypercover of the base.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  @[simp]
                  theorem CategoryTheory.PreZeroHypercover.bind_f {C : Type u} [Category.{v, u} C] {T : C} (E : PreZeroHypercover T) (F : (i : E.I₀) → PreZeroHypercover (E.X i)) (ij : (i : E.I₀) × (F i).I₀) :
                  (E.bind F).f ij = CategoryStruct.comp ((F ij.fst).f ij.snd) (E.f ij.fst)
                  @[simp]
                  theorem CategoryTheory.PreZeroHypercover.bind_X {C : Type u} [Category.{v, u} C] {T : C} (E : PreZeroHypercover T) (F : (i : E.I₀) → PreZeroHypercover (E.X i)) (ij : (i : E.I₀) × (F i).I₀) :
                  (E.bind F).X ij = (F ij.fst).X ij.snd
                  @[simp]
                  theorem CategoryTheory.PreZeroHypercover.bind_I₀ {C : Type u} [Category.{v, u} C] {T : C} (E : PreZeroHypercover T) (F : (i : E.I₀) → PreZeroHypercover (E.X i)) :
                  (E.bind F).I₀ = ((i : E.I₀) × (F i).I₀)

                  Restrict the indexing type to ι by precomposing with a function ι → E.I₀.

                  Equations
                  Instances For
                    @[simp]
                    theorem CategoryTheory.PreZeroHypercover.restrictIndex_X {C : Type u} [Category.{v, u} C] {T : C} (E : PreZeroHypercover T) {ι : Type w'} (f : ιE.I₀) (a✝ : ι) :
                    (E.restrictIndex f).X a✝ = (E.X f) a✝
                    @[simp]
                    theorem CategoryTheory.PreZeroHypercover.restrictIndex_I₀ {C : Type u} [Category.{v, u} C] {T : C} (E : PreZeroHypercover T) {ι : Type w'} (f : ιE.I₀) :
                    @[simp]
                    theorem CategoryTheory.PreZeroHypercover.restrictIndex_f {C : Type u} [Category.{v, u} C] {T : C} (E : PreZeroHypercover T) {ι : Type w'} (f : ιE.I₀) (i : ι) :
                    (E.restrictIndex f).f i = E.f (f i)

                    Replace the indexing type of a pre-0-hypercover.

                    Equations
                    Instances For
                      @[simp]
                      theorem CategoryTheory.PreZeroHypercover.reindex_I₀ {C : Type u} [Category.{v, u} C] {T : C} (E : PreZeroHypercover T) {ι : Type w'} (e : ι E.I₀) :
                      (E.reindex e).I₀ = ι
                      @[simp]
                      theorem CategoryTheory.PreZeroHypercover.reindex_f {C : Type u} [Category.{v, u} C] {T : C} (E : PreZeroHypercover T) {ι : Type w'} (e : ι E.I₀) (i : ι) :
                      (E.reindex e).f i = E.f (e i)
                      @[simp]
                      theorem CategoryTheory.PreZeroHypercover.reindex_X {C : Type u} [Category.{v, u} C] {T : C} (E : PreZeroHypercover T) {ι : Type w'} (e : ι E.I₀) (a✝ : ι) :
                      (E.reindex e).X a✝ = E.X (e a✝)
                      noncomputable def CategoryTheory.PreZeroHypercover.inter {C : Type u} [Category.{v, u} C] {T : C} (E : PreZeroHypercover T) (F : PreZeroHypercover T) [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] :

                      Pairwise intersection of two pre-0-hypercovers.

                      Equations
                      Instances For
                        @[simp]
                        theorem CategoryTheory.PreZeroHypercover.inter_X {C : Type u} [Category.{v, u} C] {T : C} (E : PreZeroHypercover T) (F : PreZeroHypercover T) [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] (a✝ : E.I₀ × F.1) :
                        (E.inter F).X a✝ = Limits.pullback (E.f a✝.1) (F.f a✝.2)
                        @[simp]
                        theorem CategoryTheory.PreZeroHypercover.inter_f {C : Type u} [Category.{v, u} C] {T : C} (E : PreZeroHypercover T) (F : PreZeroHypercover T) [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] (i : E.I₀ × F.1) :
                        (E.inter F).f i = CategoryStruct.comp (Limits.pullback.fst (E.f i.1) (F.f i.2)) (E.f i.1)
                        @[simp]
                        theorem CategoryTheory.PreZeroHypercover.inter_I₀ {C : Type u} [Category.{v, u} C] {T : C} (E : PreZeroHypercover T) (F : PreZeroHypercover T) [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] :
                        (E.inter F).I₀ = (E.I₀ × F.1)
                        theorem CategoryTheory.PreZeroHypercover.inter_def {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) (F : PreZeroHypercover S) [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] :
                        E.inter F = (E.bind fun (i : E.I₀) => pullback₁ (E.f i) F).reindex (Equiv.sigmaEquivProd E.I₀ F.1).symm

                        Disjoint union of two pre-0-hypercovers.

                        Equations
                        Instances For
                          theorem CategoryTheory.PreZeroHypercover.sum_f {C : Type u} [Category.{v, u} C] {X : C} (E : PreZeroHypercover X) (F : PreZeroHypercover X) (x✝ : E.I₀ F.I₀) :
                          (E.sum F).f x✝ = match x✝ with | Sum.inl i => E.f i | Sum.inr i => F.f i
                          theorem CategoryTheory.PreZeroHypercover.sum_X {C : Type u} [Category.{v, u} C] {X : C} (E : PreZeroHypercover X) (F : PreZeroHypercover X) (a✝ : E.I₀ F.I₀) :
                          (E.sum F).X a✝ = Sum.elim E.X F.X a✝
                          @[simp]
                          theorem CategoryTheory.PreZeroHypercover.sum_X_inl {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) (F : PreZeroHypercover S) (i : E.I₀) :
                          (E.sum F).X (Sum.inl i) = E.X i
                          @[simp]
                          theorem CategoryTheory.PreZeroHypercover.sum_X_inr {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) (F : PreZeroHypercover S) (i : F.I₀) :
                          (E.sum F).X (Sum.inr i) = F.X i
                          @[simp]
                          theorem CategoryTheory.PreZeroHypercover.sum_f_inl {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) (F : PreZeroHypercover S) (i : E.I₀) :
                          (E.sum F).f (Sum.inl i) = E.f i
                          @[simp]
                          theorem CategoryTheory.PreZeroHypercover.sum_f_inr {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) (F : PreZeroHypercover S) (i : F.I₀) :
                          (E.sum F).f (Sum.inr i) = F.f i

                          Add a morphism to a pre-0-hypercover.

                          Equations
                          Instances For
                            @[simp]
                            theorem CategoryTheory.PreZeroHypercover.add_I₀ {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) {T : C} (f : T S) :
                            (E.add f).I₀ = Option E.I₀
                            @[simp]
                            theorem CategoryTheory.PreZeroHypercover.add_X_some {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) {T : C} (f : T S) (i : E.I₀) :
                            (E.add f).X (some i) = E.X i
                            @[simp]
                            theorem CategoryTheory.PreZeroHypercover.add_X_none {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) {T : C} (f : T S) :
                            (E.add f).X none = T
                            @[simp]
                            theorem CategoryTheory.PreZeroHypercover.add_f_some {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) {T : C} (f : T S) (i : E.I₀) :
                            (E.add f).f (some i) = E.f i
                            @[simp]
                            theorem CategoryTheory.PreZeroHypercover.add_f_nome {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) {T : C} (f : T S) :
                            (E.add f).f none = f
                            structure CategoryTheory.PreZeroHypercover.Hom {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) (F : PreZeroHypercover S) :
                            Type (max (max v w) w')

                            A morphism of pre-0-hypercovers of S is a family of refinement morphisms commuting with the structure morphisms of E and F.

                            Instances For
                              theorem CategoryTheory.PreZeroHypercover.Hom.ext_iff {C : Type u} {inst✝ : Category.{v, u} C} {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} {x y : E.Hom F} :
                              x = y x.s₀ = y.s₀ x.h₀ y.h₀
                              theorem CategoryTheory.PreZeroHypercover.Hom.ext {C : Type u} {inst✝ : Category.{v, u} C} {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} {x y : E.Hom F} (s₀ : x.s₀ = y.s₀) (h₀ : x.h₀ y.h₀) :
                              x = y
                              @[simp]
                              theorem CategoryTheory.PreZeroHypercover.Hom.w₀_assoc {C : Type u} [Category.{v, u} C] {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} (self : E.Hom F) (i : E.I₀) {Z : C} (h : S Z) :

                              The identity refinement of a pre-0-hypercover.

                              Equations
                              Instances For
                                @[simp]
                                theorem CategoryTheory.PreZeroHypercover.Hom.id_h₀ {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) (x✝ : E.I₀) :
                                (id E).h₀ x✝ = CategoryStruct.id (E.X x✝)
                                def CategoryTheory.PreZeroHypercover.Hom.comp {C : Type u} [Category.{v, u} C] {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} {G : PreZeroHypercover S} (f : E.Hom F) (g : F.Hom G) :
                                E.Hom G

                                Composition of refinement morphisms of pre-0-hypercovers.

                                Equations
                                Instances For
                                  @[simp]
                                  theorem CategoryTheory.PreZeroHypercover.Hom.comp_h₀ {C : Type u} [Category.{v, u} C] {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} {G : PreZeroHypercover S} (f : E.Hom F) (g : F.Hom G) (i : E.I₀) :
                                  (f.comp g).h₀ i = CategoryStruct.comp (f.h₀ i) (g.h₀ (f.s₀ i))
                                  @[simp]
                                  theorem CategoryTheory.PreZeroHypercover.Hom.comp_s₀ {C : Type u} [Category.{v, u} C] {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} {G : PreZeroHypercover S} (f : E.Hom F) (g : F.Hom G) (a✝ : E.I₀) :
                                  (f.comp g).s₀ a✝ = (g.s₀ f.s₀) a✝
                                  Equations
                                  • One or more equations did not get rendered due to their size.
                                  @[simp]
                                  theorem CategoryTheory.PreZeroHypercover.comp_s₀ {C : Type u} [Category.{v, u} C] {S : C} {X✝ Y✝ Z✝ : PreZeroHypercover S} (f : X✝.Hom Y✝) (g : Y✝.Hom Z✝) (a✝ : X✝.I₀) :
                                  (CategoryStruct.comp f g).s₀ a✝ = g.s₀ (f.s₀ a✝)
                                  @[simp]
                                  theorem CategoryTheory.PreZeroHypercover.comp_h₀ {C : Type u} [Category.{v, u} C] {S : C} {X✝ Y✝ Z✝ : PreZeroHypercover S} (f : X✝.Hom Y✝) (g : Y✝.Hom Z✝) (i : X✝.I₀) :
                                  theorem CategoryTheory.PreZeroHypercover.Hom.ext' {C : Type u} [Category.{v, u} C] {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} {f g : E.Hom F} (hs : f.s₀ = g.s₀) (hh : ∀ (i : E.I₀), f.h₀ i = CategoryStruct.comp (g.h₀ i) (eqToHom )) :
                                  f = g
                                  theorem CategoryTheory.PreZeroHypercover.Hom.ext'_iff {C : Type u} [Category.{v, u} C] {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} {f g : E.Hom F} :
                                  f = g ∃ (hs : f.s₀ = g.s₀), ∀ (i : E.I₀), f.h₀ i = CategoryStruct.comp (g.h₀ i) (eqToHom )
                                  def CategoryTheory.PreZeroHypercover.isoMk {C : Type u} [Category.{v, u} C] {S : C} {E F : PreZeroHypercover S} (s₀ : E.I₀ F.I₀) (h₀ : (i : E.I₀) → E.X i F.X (s₀ i)) (w₀ : ∀ (i : E.I₀), CategoryStruct.comp (h₀ i).hom (F.f (s₀ i)) = E.f i := by cat_disch) :
                                  E F

                                  Constructor for isomorphisms of pre-0-hypercovers.

                                  Equations
                                  • One or more equations did not get rendered due to their size.
                                  Instances For
                                    @[simp]
                                    theorem CategoryTheory.PreZeroHypercover.isoMk_hom_h₀ {C : Type u} [Category.{v, u} C] {S : C} {E F : PreZeroHypercover S} (s₀ : E.I₀ F.I₀) (h₀ : (i : E.I₀) → E.X i F.X (s₀ i)) (w₀ : ∀ (i : E.I₀), CategoryStruct.comp (h₀ i).hom (F.f (s₀ i)) = E.f i := by cat_disch) (i : E.I₀) :
                                    (isoMk s₀ h₀ w₀).hom.h₀ i = (h₀ i).hom
                                    @[simp]
                                    theorem CategoryTheory.PreZeroHypercover.isoMk_hom_s₀ {C : Type u} [Category.{v, u} C] {S : C} {E F : PreZeroHypercover S} (s₀ : E.I₀ F.I₀) (h₀ : (i : E.I₀) → E.X i F.X (s₀ i)) (w₀ : ∀ (i : E.I₀), CategoryStruct.comp (h₀ i).hom (F.f (s₀ i)) = E.f i := by cat_disch) (a : E.I₀) :
                                    (isoMk s₀ h₀ w₀).hom.s₀ a = s₀ a
                                    @[simp]
                                    theorem CategoryTheory.PreZeroHypercover.isoMk_inv_s₀ {C : Type u} [Category.{v, u} C] {S : C} {E F : PreZeroHypercover S} (s₀ : E.I₀ F.I₀) (h₀ : (i : E.I₀) → E.X i F.X (s₀ i)) (w₀ : ∀ (i : E.I₀), CategoryStruct.comp (h₀ i).hom (F.f (s₀ i)) = E.f i := by cat_disch) (a : F.I₀) :
                                    (isoMk s₀ h₀ w₀).inv.s₀ a = s₀.symm a
                                    @[simp]
                                    theorem CategoryTheory.PreZeroHypercover.isoMk_inv_h₀ {C : Type u} [Category.{v, u} C] {S : C} {E F : PreZeroHypercover S} (s₀ : E.I₀ F.I₀) (h₀ : (i : E.I₀) → E.X i F.X (s₀ i)) (w₀ : ∀ (i : E.I₀), CategoryStruct.comp (h₀ i).hom (F.f (s₀ i)) = E.f i := by cat_disch) (i : F.I₀) :
                                    (isoMk s₀ h₀ w₀).inv.h₀ i = CategoryStruct.comp (eqToHom ) (h₀ (s₀.symm i)).inv
                                    @[simp]
                                    theorem CategoryTheory.PreZeroHypercover.hom_inv_s₀_apply {C : Type u} [Category.{v, u} C] {S : C} {E F : PreZeroHypercover S} (e : E F) (i : E.I₀) :
                                    e.inv.s₀ (e.hom.s₀ i) = i
                                    @[simp]
                                    theorem CategoryTheory.PreZeroHypercover.inv_hom_s₀_apply {C : Type u} [Category.{v, u} C] {S : C} {E F : PreZeroHypercover S} (e : E F) (i : F.I₀) :
                                    e.hom.s₀ (e.inv.s₀ i) = i
                                    @[simp]
                                    theorem CategoryTheory.PreZeroHypercover.hom_inv_h₀ {C : Type u} [Category.{v, u} C] {S : C} {E F : PreZeroHypercover S} (e : E F) (i : E.I₀) :
                                    @[simp]
                                    theorem CategoryTheory.PreZeroHypercover.hom_inv_h₀_assoc {C : Type u} [Category.{v, u} C] {S : C} {E F : PreZeroHypercover S} (e : E F) (i : E.I₀) {Z : C} (h : E.X (e.inv.s₀ (e.hom.s₀ i)) Z) :
                                    @[simp]
                                    theorem CategoryTheory.PreZeroHypercover.inv_hom_h₀ {C : Type u} [Category.{v, u} C] {S : C} {E F : PreZeroHypercover S} (e : E F) (i : F.I₀) :
                                    @[simp]
                                    theorem CategoryTheory.PreZeroHypercover.inv_hom_h₀_assoc {C : Type u} [Category.{v, u} C] {S : C} {E F : PreZeroHypercover S} (e : E F) (i : F.I₀) {Z : C} (h : F.X (e.hom.s₀ (e.inv.s₀ i)) Z) :

                                    The image of a pre-0-hypercover under a functor.

                                    Equations
                                    Instances For
                                      @[simp]
                                      @[simp]
                                      theorem CategoryTheory.PreZeroHypercover.map_f {C : Type u} [Category.{v, u} C] {S : C} {D : Type u_1} [Category.{u_2, u_1} D] (F : Functor C D) (E : PreZeroHypercover S) (i : E.I₀) :
                                      (map F E).f i = F.map (E.f i)
                                      @[simp]
                                      theorem CategoryTheory.PreZeroHypercover.map_X {C : Type u} [Category.{v, u} C] {S : C} {D : Type u_1} [Category.{u_2, u_1} D] (F : Functor C D) (E : PreZeroHypercover S) (i : E.I₀) :
                                      (map F E).X i = F.obj (E.X i)
                                      noncomputable def CategoryTheory.PreZeroHypercover.pullbackIso {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (E : PreZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback f (E.f i)] [∀ (i : E.I₀), Limits.HasPullback (E.f i) f] :

                                      Pullback symmetry isomorphism.

                                      Equations
                                      • One or more equations did not get rendered due to their size.
                                      Instances For
                                        @[simp]
                                        theorem CategoryTheory.PreZeroHypercover.pullbackIso_hom_s₀ {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (E : PreZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback f (E.f i)] [∀ (i : E.I₀), Limits.HasPullback (E.f i) f] (a : (pullback₁ f E).I₀) :
                                        (pullbackIso f E).hom.s₀ a = id a
                                        @[simp]
                                        theorem CategoryTheory.PreZeroHypercover.pullbackIso_inv_s₀ {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (E : PreZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback f (E.f i)] [∀ (i : E.I₀), Limits.HasPullback (E.f i) f] (a : (pullback₂ f E).I₀) :
                                        (pullbackIso f E).inv.s₀ a = id a
                                        @[simp]
                                        theorem CategoryTheory.PreZeroHypercover.pullbackIso_hom_h₀ {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (E : PreZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback f (E.f i)] [∀ (i : E.I₀), Limits.HasPullback (E.f i) f] (i : (pullback₁ f E).I₀) :
                                        @[simp]
                                        theorem CategoryTheory.PreZeroHypercover.pullbackIso_inv_h₀ {C : Type u} [Category.{v, u} C] {S T : C} (f : S T) (E : PreZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback f (E.f i)] [∀ (i : E.I₀), Limits.HasPullback (E.f i) f] (i : (pullback₂ f E).I₀) :

                                        The left inclusion into the disjoint union.

                                        Equations
                                        Instances For
                                          @[simp]
                                          @[simp]

                                          The right inclusion into the disjoint union.

                                          Equations
                                          Instances For
                                            @[simp]
                                            @[simp]
                                            def CategoryTheory.PreZeroHypercover.sumLift {C : Type u} [Category.{v, u} C] {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} {G : PreZeroHypercover S} (f : E.Hom G) (g : F.Hom G) :
                                            (E.sum F).Hom G

                                            To give a refinement of the disjoint union, it suffices to give refinements of both components.

                                            Equations
                                            • One or more equations did not get rendered due to their size.
                                            Instances For
                                              @[simp]
                                              theorem CategoryTheory.PreZeroHypercover.sumLift_h₀ {C : Type u} [Category.{v, u} C] {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} {G : PreZeroHypercover S} (f : E.Hom G) (g : F.Hom G) (x✝ : (E.sum F).I₀) :
                                              (sumLift f g).h₀ x✝ = match x✝ with | Sum.inl i => f.h₀ i | Sum.inr i => g.h₀ i
                                              @[simp]
                                              theorem CategoryTheory.PreZeroHypercover.sumLift_s₀ {C : Type u} [Category.{v, u} C] {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} {G : PreZeroHypercover S} (f : E.Hom G) (g : F.Hom G) (a✝ : E.I₀ F.I₀) :
                                              (sumLift f g).s₀ a✝ = Sum.elim f.s₀ g.s₀ a✝
                                              noncomputable def CategoryTheory.PreZeroHypercover.interFst {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) (F : PreZeroHypercover S) [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] :
                                              (E.inter F).Hom E

                                              First projection from the intersection of two pre-0-hypercovers.

                                              Equations
                                              • One or more equations did not get rendered due to their size.
                                              Instances For
                                                @[simp]
                                                theorem CategoryTheory.PreZeroHypercover.interFst_h₀ {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) (F : PreZeroHypercover S) [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] (x✝ : (E.inter F).I₀) :
                                                @[simp]
                                                theorem CategoryTheory.PreZeroHypercover.interFst_s₀ {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) (F : PreZeroHypercover S) [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] (i : (E.inter F).I₀) :
                                                (E.interFst F).s₀ i = i.1
                                                noncomputable def CategoryTheory.PreZeroHypercover.interSnd {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) (F : PreZeroHypercover S) [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] :
                                                (E.inter F).Hom F

                                                Second projection from the intersection of two pre-0-hypercovers.

                                                Equations
                                                • One or more equations did not get rendered due to their size.
                                                Instances For
                                                  @[simp]
                                                  theorem CategoryTheory.PreZeroHypercover.interSnd_s₀ {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) (F : PreZeroHypercover S) [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] (i : (E.inter F).I₀) :
                                                  (E.interSnd F).s₀ i = i.2
                                                  @[simp]
                                                  theorem CategoryTheory.PreZeroHypercover.interSnd_h₀ {C : Type u} [Category.{v, u} C] {S : C} (E : PreZeroHypercover S) (F : PreZeroHypercover S) [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] (x✝ : (E.inter F).I₀) :
                                                  noncomputable def CategoryTheory.PreZeroHypercover.interLift {C : Type u} [Category.{v, u} C] {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} {G : PreZeroHypercover S} [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] (f : G.Hom E) (g : G.Hom F) :
                                                  G.Hom (E.inter F)

                                                  Universal property of the intersection of two pre-0-hypercovers.

                                                  Equations
                                                  Instances For
                                                    @[simp]
                                                    theorem CategoryTheory.PreZeroHypercover.interLift_s₀ {C : Type u} [Category.{v, u} C] {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} {G : PreZeroHypercover S} [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] (f : G.Hom E) (g : G.Hom F) (i : G.I₀) :
                                                    (interLift f g).s₀ i = (f.s₀ i, g.s₀ i)
                                                    @[simp]
                                                    theorem CategoryTheory.PreZeroHypercover.interLift_h₀ {C : Type u} [Category.{v, u} C] {S : C} {E : PreZeroHypercover S} {F : PreZeroHypercover S} {G : PreZeroHypercover S} [∀ (i : E.I₀) (j : F.I₀), Limits.HasPullback (E.f i) (F.f j)] (f : G.Hom E) (g : G.Hom F) (i : G.I₀) :
                                                    (interLift f g).h₀ i = Limits.pullback.lift (f.h₀ i) (g.h₀ i)

                                                    The pre-0-hypercover associated to a presieve R. It is indexed by the morphisms in R.

                                                    Equations
                                                    Instances For

                                                      The deduplication of a pre-0-hypercover E in universe w to a pre-0-hypercover in universe max u v. This is indexed by the morphisms of E.

                                                      Equations
                                                      Instances For

                                                        E refines its deduplication.

                                                        Equations
                                                        Instances For

                                                          The deduplication of E refines E.

                                                          Equations
                                                          Instances For
                                                            structure CategoryTheory.Precoverage.ZeroHypercover {C : Type u} [Category.{v, u} C] (J : Precoverage C) (S : C) extends CategoryTheory.PreZeroHypercover S :
                                                            Type (max (max u v) (w + 1))

                                                            The type of 0-hypercovers of an object S : C in a category equipped with a coverage J. This can be constructed from a covering of S.

                                                            Instances For

                                                              The 0-hypercover defined by a single covering morphism.

                                                              Equations
                                                              Instances For
                                                                noncomputable def CategoryTheory.Precoverage.ZeroHypercover.pullback₁ {C : Type u} [Category.{v, u} C] {J : Precoverage C} {S T : C} [J.IsStableUnderBaseChange] (f : S T) (E : J.ZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback f (E.f i)] :

                                                                Pullback of a 0-hypercover along a morphism. The components are pullback f (E.f i).

                                                                Equations
                                                                Instances For
                                                                  noncomputable def CategoryTheory.Precoverage.ZeroHypercover.pullback₂ {C : Type u} [Category.{v, u} C] {J : Precoverage C} {S T : C} [J.IsStableUnderBaseChange] (f : S T) (E : J.ZeroHypercover T) [∀ (i : E.I₀), Limits.HasPullback (E.f i) f] :

                                                                  Pullback of a 0-hypercover along a morphism. The components are pullback (E.f i) f.

                                                                  Equations
                                                                  Instances For

                                                                    Refining each component of a 0-hypercover yields a refined 0-hypercover of the base.

                                                                    Equations
                                                                    Instances For

                                                                      Pairwise intersection of two 0-hypercovers.

                                                                      Equations
                                                                      Instances For

                                                                        Replace the indexing type of a 0-hypercover.

                                                                        Equations
                                                                        Instances For

                                                                          Disjoint union of two 0-hypercovers.

                                                                          Equations
                                                                          Instances For

                                                                            Add a single morphism to a 0-hypercover.

                                                                            Equations
                                                                            • E.add f hf = { toPreZeroHypercover := E.add f, mem₀ := }
                                                                            Instances For

                                                                              If L is a finer precoverage than K, any 0-hypercover wrt. K is in particular a 0-hypercover wrt. to L.

                                                                              Equations
                                                                              Instances For
                                                                                @[reducible, inline]
                                                                                abbrev CategoryTheory.Precoverage.ZeroHypercover.Hom {C : Type u} [Category.{v, u} C] (J : Precoverage C) {S : C} (E : J.ZeroHypercover S) (F : J.ZeroHypercover S) :
                                                                                Type (max (max v w) w')

                                                                                A morphism of 0-hypercovers is a morphism of the underlying pre-0-hypercovers.

                                                                                Equations
                                                                                Instances For
                                                                                  Equations
                                                                                  • One or more equations did not get rendered due to their size.
                                                                                  @[simp]
                                                                                  theorem CategoryTheory.Precoverage.ZeroHypercover.id_s₀ {C : Type u} [Category.{v, u} C] {J : Precoverage C} {S : C} (x✝ : J.ZeroHypercover S) (a : x✝.I₀) :
                                                                                  @[simp]
                                                                                  theorem CategoryTheory.Precoverage.ZeroHypercover.id_h₀ {C : Type u} [Category.{v, u} C] {J : Precoverage C} {S : C} (x✝ : J.ZeroHypercover S) (x✝¹ : x✝.I₀) :
                                                                                  (CategoryStruct.id x✝).h₀ x✝¹ = CategoryStruct.id (x✝.X x✝¹)
                                                                                  @[simp]
                                                                                  theorem CategoryTheory.Precoverage.ZeroHypercover.comp_h₀ {C : Type u} [Category.{v, u} C] {J : Precoverage C} {S : C} {X✝ Y✝ Z✝ : J.ZeroHypercover S} (f : X✝.Hom Y✝.toPreZeroHypercover) (g : Y✝.Hom Z✝.toPreZeroHypercover) (i : X✝.I₀) :
                                                                                  @[simp]
                                                                                  theorem CategoryTheory.Precoverage.ZeroHypercover.comp_s₀ {C : Type u} [Category.{v, u} C] {J : Precoverage C} {S : C} {X✝ Y✝ Z✝ : J.ZeroHypercover S} (f : X✝.Hom Y✝.toPreZeroHypercover) (g : Y✝.Hom Z✝.toPreZeroHypercover) (a✝ : X✝.I₀) :
                                                                                  (CategoryStruct.comp f g).s₀ a✝ = g.s₀ (f.s₀ a✝)

                                                                                  An isomorphism in 0-hypercovers is an isomorphism of the underlying pre-0-hypercovers.

                                                                                  Equations
                                                                                  Instances For
                                                                                    def CategoryTheory.Precoverage.ZeroHypercover.map {C : Type u} [Category.{v, u} C] {J : Precoverage C} {S : C} {D : Type u_1} [Category.{u_2, u_1} D] {K : Precoverage D} (F : Functor C D) (E : J.ZeroHypercover S) (h : J comap F K) :

                                                                                    The image of a 0-hypercover under a functor.

                                                                                    Equations
                                                                                    Instances For

                                                                                      A w-0-hypercover E is w'-small if there exists an indexing type ι in Type w' and a restriction map ι → E.I₀ such that the restriction of E to ι is still covering.

                                                                                      Note: This is weaker than E.I₀ being w'-small. For example, every Zariski cover of X : Scheme.{u} is u-small, because X itself suffices as indexing type.

                                                                                      Instances

                                                                                        The w'-index type of a w'-small 0-hypercover.

                                                                                        Equations
                                                                                        Instances For

                                                                                          The index restriction function of a small 0-hypercover.

                                                                                          Equations
                                                                                          Instances For

                                                                                            Restrict a w'-small 0-hypercover to a w'-0-hypercover.

                                                                                            Equations
                                                                                            Instances For
                                                                                              theorem CategoryTheory.Precoverage.le_of_zeroHypercover {C : Type u} [Category.{v, u} C] {J K : Precoverage C} (h : ∀ ⦃X : C⦄ ⦃E : J.ZeroHypercover X⦄, E.presieve₀ K.coverings X) :
                                                                                              J K

                                                                                              A precoverage is w-small, if every 0-hypercover is w-small.

                                                                                              Instances