ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- CategoryTheory.GrothendieckTopology.sheafifyMap_sheafifyLift
@[reassoc (attr := simp)]
theorem sheafifyMap_sheafifyLift {P Q R : Cᵒᵖ ⥤ D} (η : P ⟶ Q) (γ : Q ⟶ R)
    (hR : Presheaf.IsSheaf J R) :
    J.sheafifyMap η ≫ J.sheafifyLift γ hR = J.sheafifyLift (η ≫ γ) hR 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) {D : Type w} [CategoryTheory.Category.{max v u, w} D] [∀ (P : CategoryTheory.Functor Cᵒᵖ D) (X : C) (S : J.Cover X), CategoryTheory.Limits.HasMultiequalizer (S.index P)] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ D] {P Q R : CategoryTheory.Functor Cᵒᵖ D} (η : P ⟶ Q) (γ : Q ⟶ R) (hR : CategoryTheory.Presheaf.IsSheaf J R)
Goal: CategoryTheory.CategoryStruct.comp (J.sheafifyMap η) (J.sheafifyLift γ hR) =
  J.sheafifyLift (CategoryTheory.CategoryStruct.comp η γ) hR
-- CategoryTheory.GrothendieckTopology.sheafify_isSheaf
theorem GrothendieckTopology.sheafify_isSheaf (P : Cᵒᵖ ⥤ D) : Presheaf.IsSheaf J (J.sheafify P) 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) {D : Type w} [CategoryTheory.Category.{max v u, w} D] [CategoryTheory.ConcreteCategory D] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget D)] [∀ (P : CategoryTheory.Functor Cᵒᵖ D) (X : C) (S : J.Cover X), CategoryTheory.Limits.HasMultiequalizer (S.index P)] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ D] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget D)] [(CategoryTheory.forget D).ReflectsIsomorphisms] (P : CategoryTheory.Functor Cᵒᵖ D)
Goal: CategoryTheory.Presheaf.IsSheaf J (J.sheafify P)
-- CategoryTheory.plusPlusSheaf_map_val
@[simps]
noncomputable def plusPlusSheaf : (Cᵒᵖ ⥤ D) ⥤ Sheaf J D 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) (D : Type w) [CategoryTheory.Category.{max v u, w} D] [CategoryTheory.ConcreteCategory D] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget D)] [∀ (P : CategoryTheory.Functor Cᵒᵖ D) (X : C) (S : J.Cover X), CategoryTheory.Limits.HasMultiequalizer (S.index P)] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ D] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget D)] [(CategoryTheory.forget D).ReflectsIsomorphisms]
Goal: ∀ {X Y : CategoryTheory.Functor Cᵒᵖ D} (η : X ⟶ Y), ((CategoryTheory.plusPlusSheaf J D).map η).val = J.sheafifyMap η
-- CategoryTheory.plusPlusSheaf_obj_val
@[simps]
noncomputable def plusPlusSheaf : (Cᵒᵖ ⥤ D) ⥤ Sheaf J D 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) (D : Type w) [CategoryTheory.Category.{max v u, w} D] [CategoryTheory.ConcreteCategory D] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget D)] [∀ (P : CategoryTheory.Functor Cᵒᵖ D) (X : C) (S : J.Cover X), CategoryTheory.Limits.HasMultiequalizer (S.index P)] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ D] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget D)] [(CategoryTheory.forget D).ReflectsIsomorphisms] (P : CategoryTheory.Functor Cᵒᵖ D)
Goal: ((CategoryTheory.plusPlusSheaf J D).obj P).val = J.sheafify P
-- CategoryTheory.plusPlusAdjunction_unit_app
@[simps! unit_app counit_app_val]
noncomputable def plusPlusAdjunction : plusPlusSheaf J D ⊣ sheafToPresheaf J D 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) (D : Type w) [CategoryTheory.Category.{max v u, w} D] [CategoryTheory.ConcreteCategory D] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget D)] [∀ (P : CategoryTheory.Functor Cᵒᵖ D) (X : C) (S : J.Cover X), CategoryTheory.Limits.HasMultiequalizer (S.index P)] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ D] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget D)] [(CategoryTheory.forget D).ReflectsIsomorphisms] (X : CategoryTheory.Functor Cᵒᵖ D)
Goal: (CategoryTheory.plusPlusAdjunction J D).unit.app X = J.toSheafify X
-- CategoryTheory.plusPlusAdjunction_counit_app_val
@[simps! unit_app counit_app_val]
noncomputable def plusPlusAdjunction : plusPlusSheaf J D ⊣ sheafToPresheaf J D 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) (D : Type w) [CategoryTheory.Category.{max v u, w} D] [CategoryTheory.ConcreteCategory D] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget D)] [∀ (P : CategoryTheory.Functor Cᵒᵖ D) (X : C) (S : J.Cover X), CategoryTheory.Limits.HasMultiequalizer (S.index P)] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ D] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget D)] [(CategoryTheory.forget D).ReflectsIsomorphisms] (Y : CategoryTheory.Sheaf J D)
Goal: ((CategoryTheory.plusPlusAdjunction J D).counit.app Y).val = J.sheafifyLift (CategoryTheory.CategoryStruct.id Y.val) ⋯
-- CategoryTheory.Sheaf.Hom.mono_iff_presheaf_mono
theorem Sheaf.Hom.mono_iff_presheaf_mono {F G : Sheaf J D} (f : F ⟶ G) : Mono f ↔ Mono f.1 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) (D : Type w) [CategoryTheory.Category.{max v u, w} D] [CategoryTheory.ConcreteCategory D] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget D)] [∀ (P : CategoryTheory.Functor Cᵒᵖ D) (X : C) (S : J.Cover X), CategoryTheory.Limits.HasMultiequalizer (S.index P)] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ D] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget D)] [(CategoryTheory.forget D).ReflectsIsomorphisms] {F G : CategoryTheory.Sheaf J D} (f : F ⟶ G)
Goal: CategoryTheory.Mono f ↔ CategoryTheory.Mono f.val
-- CategoryTheory.GrothendieckTopology.sheafificationIsoPresheafToSheafCompSheafToPreasheaf_inv_app
@[simps! hom_app inv_app]
noncomputable
def GrothendieckTopology.sheafificationIsoPresheafToSheafCompSheafToPreasheaf :
    J.sheafification D ≅ plusPlusSheaf J D ⋙ sheafToPresheaf J D 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) (D : Type w) [CategoryTheory.Category.{max v u, w} D] [CategoryTheory.ConcreteCategory D] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget D)] [∀ (P : CategoryTheory.Functor Cᵒᵖ D) (X : C) (S : J.Cover X), CategoryTheory.Limits.HasMultiequalizer (S.index P)] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ D] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget D)] [(CategoryTheory.forget D).ReflectsIsomorphisms] (X : CategoryTheory.Functor Cᵒᵖ D)
Goal: (J.sheafificationIsoPresheafToSheafCompSheafToPreasheaf D).inv.app X = CategoryTheory.CategoryStruct.id (J.sheafify X)
-- CategoryTheory.GrothendieckTopology.sheafificationIsoPresheafToSheafCompSheafToPreasheaf_hom_app
@[simps! hom_app inv_app]
noncomputable
def GrothendieckTopology.sheafificationIsoPresheafToSheafCompSheafToPreasheaf :
    J.sheafification D ≅ plusPlusSheaf J D ⋙ sheafToPresheaf J D 
Arguments: {C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) (D : Type w) [CategoryTheory.Category.{max v u, w} D] [CategoryTheory.ConcreteCategory D] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget D)] [∀ (P : CategoryTheory.Functor Cᵒᵖ D) (X : C) (S : J.Cover X), CategoryTheory.Limits.HasMultiequalizer (S.index P)] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ D] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget D)] [(CategoryTheory.forget D).ReflectsIsomorphisms] (X : CategoryTheory.Functor Cᵒᵖ D)
Goal: (J.sheafificationIsoPresheafToSheafCompSheafToPreasheaf D).hom.app X = CategoryTheory.CategoryStruct.id (J.sheafify X)
-- CategoryTheory.Localization.essSurj_mapComposableArrows_of_hasRightCalculusOfFractions
lemma essSurj_mapComposableArrows_of_hasRightCalculusOfFractions
    [W.HasRightCalculusOfFractions] (n : ℕ) :
    (L.mapComposableArrows n).EssSurj 
Arguments: {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] (L : CategoryTheory.Functor C D) (W : CategoryTheory.MorphismProperty C) [L.IsLocalization W] [W.HasRightCalculusOfFractions] (n : ℕ)
Goal: (L.mapComposableArrows n).EssSurj
-- CategoryTheory.Localization.essSurj_mapComposableArrows
lemma essSurj_mapComposableArrows [W.HasLeftCalculusOfFractions] (n : ℕ) :
    (L.mapComposableArrows n).EssSurj 
Arguments: {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] (L : CategoryTheory.Functor C D) (W : CategoryTheory.MorphismProperty C) [L.IsLocalization W] [W.HasLeftCalculusOfFractions] (n : ℕ)
Goal: (L.mapComposableArrows n).EssSurj
-- CategoryTheory.NoetherianObject.subobject_gt_wellFounded'
class NoetherianObject (X : C) : Prop where
  subobject_gt_wellFounded' : WellFounded ((· > ·) : Subobject X → Subobject X → Prop)
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {X : C} [self : CategoryTheory.NoetherianObject X]
Goal: WellFounded fun x x_1 => x > x_1
-- CategoryTheory.NoetherianObject.subobject_gt_wellFounded
lemma NoetherianObject.subobject_gt_wellFounded (X : C) [NoetherianObject X] :
    WellFounded ((· > ·) : Subobject X → Subobject X → Prop) 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] (X : C) [CategoryTheory.NoetherianObject X]
Goal: WellFounded fun x x_1 => x > x_1
-- CategoryTheory.ArtinianObject.subobject_lt_wellFounded'
class ArtinianObject (X : C) : Prop where
  subobject_lt_wellFounded' : WellFounded ((· < ·) : Subobject X → Subobject X → Prop)
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {X : C} [self : CategoryTheory.ArtinianObject X]
Goal: WellFounded fun x x_1 => x < x_1
-- CategoryTheory.ArtinianObject.subobject_lt_wellFounded
lemma ArtinianObject.subobject_lt_wellFounded (X : C) [ArtinianObject X] :
    WellFounded ((· < ·) : Subobject X → Subobject X → Prop) 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] (X : C) [CategoryTheory.ArtinianObject X]
Goal: WellFounded fun x x_1 => x < x_1
-- CategoryTheory.Noetherian.noetherianObject
class Noetherian extends EssentiallySmall C : Prop where
  noetherianObject : ∀ X : C, NoetherianObject X
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [self : CategoryTheory.Noetherian C] (X : C)
Goal: CategoryTheory.NoetherianObject X
-- CategoryTheory.Artinian.artinianObject
class Artinian extends EssentiallySmall C : Prop where
  artinianObject : ∀ X : C, ArtinianObject X
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [self : CategoryTheory.Artinian C] (X : C)
Goal: CategoryTheory.ArtinianObject X
-- CategoryTheory.exists_simple_subobject
theorem exists_simple_subobject {X : C} [ArtinianObject X] (h : ¬IsZero X) :
    ∃ Y : Subobject X, Simple (Y : C) 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] {X : C} [CategoryTheory.ArtinianObject X] (h : ¬CategoryTheory.Limits.IsZero X)
Goal: ∃ Y, CategoryTheory.Simple (CategoryTheory.Subobject.underlying.obj Y)
-- CategoryTheory.LocalizerMorphism.RightResolution.hw
structure RightResolution (X₂ : C₂) where
    {X₁ : C₁}
    w : X₂ ⟶ Φ.functor.obj X₁
  hw : W₂ w
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} (self : Φ.RightResolution X₂)
Goal: W₂ self.w
-- CategoryTheory.LocalizerMorphism.LeftResolution.hw
structure LeftResolution (X₂ : C₂) where
    {X₁ : C₁}
    w : Φ.functor.obj X₁ ⟶ X₂
  hw : W₂ w
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} (self : Φ.LeftResolution X₂)
Goal: W₂ self.w
-- CategoryTheory.LocalizerMorphism.RightResolution.mk_surjective
lemma RightResolution.mk_surjective (R : Φ.RightResolution X₂) :
    ∃ (X₁ : C₁) (w : X₂ ⟶ Φ.functor.obj X₁) (hw : W₂ w), R = RightResolution.mk w hw 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} (R : Φ.RightResolution X₂)
Goal: ∃ X₁ w, ∃ (hw : W₂ w), R = CategoryTheory.LocalizerMorphism.RightResolution.mk w hw
-- CategoryTheory.LocalizerMorphism.LeftResolution.mk_surjective
lemma LeftResolution.mk_surjective (L : Φ.LeftResolution X₂) :
    ∃ (X₁ : C₁) (w : Φ.functor.obj X₁ ⟶ X₂) (hw : W₂ w), L = LeftResolution.mk w hw 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} (L : Φ.LeftResolution X₂)
Goal: ∃ X₁ w, ∃ (hw : W₂ w), L = CategoryTheory.LocalizerMorphism.LeftResolution.mk w hw
-- CategoryTheory.LocalizerMorphism.RightResolution.Hom.comm
@[ext]
structure Hom (R R' : Φ.RightResolution X₂) where
    f : R.X₁ ⟶ R'.X₁
  hf : W₁ f
  comm : R.w ≫ Φ.functor.map f = R'.w := by aesop_cat
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} {R R' : Φ.RightResolution X₂} (self : R.Hom R')
Goal: CategoryTheory.CategoryStruct.comp R.w (Φ.functor.map self.f) = R'.w
-- CategoryTheory.LocalizerMorphism.RightResolution.Hom.hf
@[ext]
structure Hom (R R' : Φ.RightResolution X₂) where
    f : R.X₁ ⟶ R'.X₁
  hf : W₁ f
  comm : R.w ≫ Φ.functor.map f = R'.w := by aesop_cat
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} {R R' : Φ.RightResolution X₂} (self : R.Hom R')
Goal: W₁ self.f
-- CategoryTheory.LocalizerMorphism.RightResolution.Hom.id_f
@[simps]
def Hom.id [W₁.ContainsIdentities] (R : Φ.RightResolution X₂) : Hom R R 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} [W₁.ContainsIdentities] (R : Φ.RightResolution X₂)
Goal: (CategoryTheory.LocalizerMorphism.RightResolution.Hom.id R).f = CategoryTheory.CategoryStruct.id R.X₁
-- CategoryTheory.LocalizerMorphism.RightResolution.Hom.comp_f
@[simps]
def Hom.comp {R R' R'' : Φ.RightResolution X₂}
    (φ : Hom R R') (ψ : Hom R' R'') :
    Hom R R'' 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} [W₁.IsMultiplicative] {R R' R'' : Φ.RightResolution X₂} (φ : R.Hom R') (ψ : R'.Hom R'')
Goal: (φ.comp ψ).f = CategoryTheory.CategoryStruct.comp φ.f ψ.f
-- CategoryTheory.LocalizerMorphism.RightResolution.id_f
@[simp]
lemma id_f (R : Φ.RightResolution X₂) : Hom.f (𝟙 R) = 𝟙 R.X₁ 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} [W₁.IsMultiplicative] (R : Φ.RightResolution X₂)
Goal: (CategoryTheory.CategoryStruct.id R).f = CategoryTheory.CategoryStruct.id R.X₁
-- CategoryTheory.LocalizerMorphism.RightResolution.comp_f
@[simp, reassoc]
lemma comp_f {R R' R'' : Φ.RightResolution X₂} (φ : R ⟶ R') (ψ : R' ⟶ R'') :
    (φ ≫ ψ).f = φ.f ≫ ψ.f 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} [W₁.IsMultiplicative] {R R' R'' : Φ.RightResolution X₂} (φ : R ⟶ R') (ψ : R' ⟶ R'')
Goal: (CategoryTheory.CategoryStruct.comp φ ψ).f = CategoryTheory.CategoryStruct.comp φ.f ψ.f
-- CategoryTheory.LocalizerMorphism.RightResolution.hom_ext
@[ext]
lemma hom_ext {R R' : Φ.RightResolution X₂} {φ₁ φ₂ : R ⟶ R'} (h : φ₁.f = φ₂.f) :
    φ₁ = φ₂ 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} [W₁.IsMultiplicative] {R R' : Φ.RightResolution X₂} {φ₁ φ₂ : R ⟶ R'} (h : φ₁.f = φ₂.f)
Goal: φ₁ = φ₂
-- CategoryTheory.LocalizerMorphism.LeftResolution.Hom.comm
@[ext]
structure Hom (L L' : Φ.LeftResolution X₂) where
    f : L.X₁ ⟶ L'.X₁
  hf : W₁ f
  comm : Φ.functor.map f ≫ L'.w = L.w := by aesop_cat
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} {L L' : Φ.LeftResolution X₂} (self : L.Hom L')
Goal: CategoryTheory.CategoryStruct.comp (Φ.functor.map self.f) L'.w = L.w
-- CategoryTheory.LocalizerMorphism.LeftResolution.Hom.hf
@[ext]
structure Hom (L L' : Φ.LeftResolution X₂) where
    f : L.X₁ ⟶ L'.X₁
  hf : W₁ f
  comm : Φ.functor.map f ≫ L'.w = L.w := by aesop_cat
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} {L L' : Φ.LeftResolution X₂} (self : L.Hom L')
Goal: W₁ self.f
-- CategoryTheory.LocalizerMorphism.LeftResolution.Hom.id_f
@[simps]
def Hom.id [W₁.ContainsIdentities] (L : Φ.LeftResolution X₂) : Hom L L 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} [W₁.ContainsIdentities] (L : Φ.LeftResolution X₂)
Goal: (CategoryTheory.LocalizerMorphism.LeftResolution.Hom.id L).f = CategoryTheory.CategoryStruct.id L.X₁
-- CategoryTheory.LocalizerMorphism.LeftResolution.Hom.comp_f
@[simps]
def Hom.comp {L L' L'' : Φ.LeftResolution X₂}
    (φ : Hom L L') (ψ : Hom L' L'') :
    Hom L L'' 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} [W₁.IsMultiplicative] {L L' L'' : Φ.LeftResolution X₂} (φ : L.Hom L') (ψ : L'.Hom L'')
Goal: (φ.comp ψ).f = CategoryTheory.CategoryStruct.comp φ.f ψ.f
-- CategoryTheory.LocalizerMorphism.LeftResolution.id_f
@[simp]
lemma id_f (L : Φ.LeftResolution X₂) : Hom.f (𝟙 L) = 𝟙 L.X₁ 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} [W₁.IsMultiplicative] (L : Φ.LeftResolution X₂)
Goal: (CategoryTheory.CategoryStruct.id L).f = CategoryTheory.CategoryStruct.id L.X₁
-- CategoryTheory.LocalizerMorphism.LeftResolution.comp_f
@[simp, reassoc]
lemma comp_f {L L' L'' : Φ.LeftResolution X₂} (φ : L ⟶ L') (ψ : L' ⟶ L'') :
    (φ ≫ ψ).f = φ.f ≫ ψ.f 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} [W₁.IsMultiplicative] {L L' L'' : Φ.LeftResolution X₂} (φ : L ⟶ L') (ψ : L' ⟶ L'')
Goal: (CategoryTheory.CategoryStruct.comp φ ψ).f = CategoryTheory.CategoryStruct.comp φ.f ψ.f
-- CategoryTheory.LocalizerMorphism.LeftResolution.hom_ext
@[ext]
lemma hom_ext {L L' : Φ.LeftResolution X₂} {φ₁ φ₂ : L ⟶ L'} (h : φ₁.f = φ₂.f) :
    φ₁ = φ₂ 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} [W₁.IsMultiplicative] {L L' : Φ.LeftResolution X₂} {φ₁ φ₂ : L ⟶ L'} (h : φ₁.f = φ₂.f)
Goal: φ₁ = φ₂
-- CategoryTheory.LocalizerMorphism.LeftResolution.op_w
@[simps]
def LeftResolution.op {X₂ : C₂} (L : Φ.LeftResolution X₂) :
    Φ.op.RightResolution (Opposite.op X₂) 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} (L : Φ.LeftResolution X₂)
Goal: L.op.w = L.w.op
-- CategoryTheory.LocalizerMorphism.LeftResolution.op_X₁
@[simps]
def LeftResolution.op {X₂ : C₂} (L : Φ.LeftResolution X₂) :
    Φ.op.RightResolution (Opposite.op X₂) 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} (L : Φ.LeftResolution X₂)
Goal: L.op.X₁ = Opposite.op L.X₁
-- CategoryTheory.LocalizerMorphism.LeftResolution.unop_X₁
@[simps]
def LeftResolution.unop {X₂ : C₂ᵒᵖ} (L : Φ.op.LeftResolution X₂) :
    Φ.RightResolution X₂.unop 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂ᵒᵖ} (L : Φ.op.LeftResolution X₂)
Goal: L.unop.X₁ = Opposite.unop L.X₁
-- CategoryTheory.LocalizerMorphism.LeftResolution.unop_w
@[simps]
def LeftResolution.unop {X₂ : C₂ᵒᵖ} (L : Φ.op.LeftResolution X₂) :
    Φ.RightResolution X₂.unop 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂ᵒᵖ} (L : Φ.op.LeftResolution X₂)
Goal: L.unop.w = L.w.unop
-- CategoryTheory.LocalizerMorphism.RightResolution.op_w
@[simps]
def RightResolution.op {X₂ : C₂} (L : Φ.RightResolution X₂) :
    Φ.op.LeftResolution (Opposite.op X₂) 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} (L : Φ.RightResolution X₂)
Goal: L.op.w = L.w.op
-- CategoryTheory.LocalizerMorphism.RightResolution.op_X₁
@[simps]
def RightResolution.op {X₂ : C₂} (L : Φ.RightResolution X₂) :
    Φ.op.LeftResolution (Opposite.op X₂) 
Arguments: {C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{u_5, u_1} C₁] [CategoryTheory.Category.{u_6, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} {Φ : CategoryTheory.LocalizerMorphism W₁ W₂} {X₂ : C₂} (L : Φ.RightResolution X₂)
Goal: L.op.X₁ = Opposite.op L.X₁