ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- CategoryTheory.MorphismProperty.LeftFraction.ofHom_s
@[simps]
def ofHom (f : X ⟶ Y) [W.ContainsIdentities] :
    W.LeftFraction X Y 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] (W : CategoryTheory.MorphismProperty C) {X Y : C} (f : X ⟶ Y) [W.ContainsIdentities]
Goal: (CategoryTheory.MorphismProperty.LeftFraction.ofHom W f).s = CategoryTheory.CategoryStruct.id Y
-- CategoryTheory.MorphismProperty.LeftFraction.ofHom_f
@[simps]
def ofHom (f : X ⟶ Y) [W.ContainsIdentities] :
    W.LeftFraction X Y 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] (W : CategoryTheory.MorphismProperty C) {X Y : C} (f : X ⟶ Y) [W.ContainsIdentities]
Goal: (CategoryTheory.MorphismProperty.LeftFraction.ofHom W f).f = f
-- CategoryTheory.MorphismProperty.LeftFraction.ofInv_Y'
@[simps]
def ofInv (s : Y ⟶ X) (hs : W s) :
    W.LeftFraction X Y 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} {X Y : C} (s : Y ⟶ X) (hs : W s)
Goal: (CategoryTheory.MorphismProperty.LeftFraction.ofInv s hs).Y' = X
-- CategoryTheory.MorphismProperty.LeftFraction.ofInv_s
@[simps]
def ofInv (s : Y ⟶ X) (hs : W s) :
    W.LeftFraction X Y 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} {X Y : C} (s : Y ⟶ X) (hs : W s)
Goal: (CategoryTheory.MorphismProperty.LeftFraction.ofInv s hs).s = s
-- CategoryTheory.MorphismProperty.LeftFraction.ofInv_f
@[simps]
def ofInv (s : Y ⟶ X) (hs : W s) :
    W.LeftFraction X Y 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} {X Y : C} (s : Y ⟶ X) (hs : W s)
Goal: (CategoryTheory.MorphismProperty.LeftFraction.ofInv s hs).f = CategoryTheory.CategoryStruct.id X
-- CategoryTheory.MorphismProperty.LeftFraction.map_comp_map_s
@[reassoc (attr := simp)]
lemma map_comp_map_s (φ : W.LeftFraction X Y) (L : C ⥤ D) (hL : W.IsInvertedBy L) :
    φ.map L hL ≫ L.map φ.s = L.map φ.f 
Arguments: {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] {W : CategoryTheory.MorphismProperty C} {X Y : C} (φ : W.LeftFraction X Y) (L : CategoryTheory.Functor C D) (hL : W.IsInvertedBy L)
Goal: CategoryTheory.CategoryStruct.comp (φ.map L hL) (L.map φ.s) = L.map φ.f
-- CategoryTheory.MorphismProperty.LeftFraction.map_ofHom
lemma map_ofHom (f : X ⟶ Y) (L : C ⥤ D) (hL : W.IsInvertedBy L) [W.ContainsIdentities] :
    (ofHom W f).map L hL = L.map f 
Arguments: {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] (W : CategoryTheory.MorphismProperty C) {X Y : C} (f : X ⟶ Y) (L : CategoryTheory.Functor C D) (hL : W.IsInvertedBy L) [W.ContainsIdentities]
Goal: (CategoryTheory.MorphismProperty.LeftFraction.ofHom W f).map L hL = L.map f
-- CategoryTheory.MorphismProperty.LeftFraction.map_ofInv_hom_id
@[reassoc (attr := simp)]
lemma map_ofInv_hom_id (s : Y ⟶ X) (hs : W s) (L : C ⥤ D) (hL : W.IsInvertedBy L) :
    (ofInv s hs).map L hL ≫ L.map s = 𝟙 _ 
Arguments: {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] (W : CategoryTheory.MorphismProperty C) {X Y : C} (s : Y ⟶ X) (hs : W s) (L : CategoryTheory.Functor C D) (hL : W.IsInvertedBy L)
Goal: CategoryTheory.CategoryStruct.comp ((CategoryTheory.MorphismProperty.LeftFraction.ofInv s hs).map L hL) (L.map s) =
  CategoryTheory.CategoryStruct.id (L.obj X)
-- CategoryTheory.MorphismProperty.LeftFraction.map_hom_ofInv_id
@[reassoc (attr := simp)]
lemma map_hom_ofInv_id (s : Y ⟶ X) (hs : W s) (L : C ⥤ D) (hL : W.IsInvertedBy L) :
    L.map s ≫ (ofInv s hs).map L hL = 𝟙 _ 
Arguments: {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] (W : CategoryTheory.MorphismProperty C) {X Y : C} (s : Y ⟶ X) (hs : W s) (L : CategoryTheory.Functor C D) (hL : W.IsInvertedBy L)
Goal: CategoryTheory.CategoryStruct.comp (L.map s) ((CategoryTheory.MorphismProperty.LeftFraction.ofInv s hs).map L hL) =
  CategoryTheory.CategoryStruct.id (L.obj Y)
-- CategoryTheory.MorphismProperty.LeftFraction.cases
lemma cases (α : W.LeftFraction X Y) :
    ∃ (Y' : C) (f : X ⟶ Y') (s : Y ⟶ Y') (hs : W s), α = LeftFraction.mk f s hs 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} {X Y : C} (α : W.LeftFraction X Y)
Goal: ∃ Y' f s, ∃ (hs : W s), α = CategoryTheory.MorphismProperty.LeftFraction.mk f s hs
-- CategoryTheory.MorphismProperty.RightFraction.hs
structure RightFraction (W : MorphismProperty C) (X Y : C) where
    {X' : C}
    s : X' ⟶ X
    hs : W s
    f : X' ⟶ Y
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} {X Y : C} (self : W.RightFraction X Y)
Goal: W self.s
-- CategoryTheory.MorphismProperty.RightFraction.ofHom_X'
@[simps]
def ofHom (f : X ⟶ Y) [W.ContainsIdentities] :
    W.RightFraction X Y 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] (W : CategoryTheory.MorphismProperty C) {X Y : C} (f : X ⟶ Y) [W.ContainsIdentities]
Goal: (CategoryTheory.MorphismProperty.RightFraction.ofHom W f).X' = X
-- CategoryTheory.MorphismProperty.RightFraction.ofHom_f
@[simps]
def ofHom (f : X ⟶ Y) [W.ContainsIdentities] :
    W.RightFraction X Y 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] (W : CategoryTheory.MorphismProperty C) {X Y : C} (f : X ⟶ Y) [W.ContainsIdentities]
Goal: (CategoryTheory.MorphismProperty.RightFraction.ofHom W f).f = f
-- CategoryTheory.MorphismProperty.RightFraction.ofHom_s
@[simps]
def ofHom (f : X ⟶ Y) [W.ContainsIdentities] :
    W.RightFraction X Y 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] (W : CategoryTheory.MorphismProperty C) {X Y : C} (f : X ⟶ Y) [W.ContainsIdentities]
Goal: (CategoryTheory.MorphismProperty.RightFraction.ofHom W f).s = CategoryTheory.CategoryStruct.id X
-- CategoryTheory.MorphismProperty.RightFraction.ofInv_s
@[simps]
def ofInv (s : Y ⟶ X) (hs : W s) :
    W.RightFraction X Y 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} {X Y : C} (s : Y ⟶ X) (hs : W s)
Goal: (CategoryTheory.MorphismProperty.RightFraction.ofInv s hs).s = s
-- CategoryTheory.MorphismProperty.RightFraction.ofInv_X'
@[simps]
def ofInv (s : Y ⟶ X) (hs : W s) :
    W.RightFraction X Y 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} {X Y : C} (s : Y ⟶ X) (hs : W s)
Goal: (CategoryTheory.MorphismProperty.RightFraction.ofInv s hs).X' = Y
-- CategoryTheory.MorphismProperty.RightFraction.ofInv_f
@[simps]
def ofInv (s : Y ⟶ X) (hs : W s) :
    W.RightFraction X Y 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} {X Y : C} (s : Y ⟶ X) (hs : W s)
Goal: (CategoryTheory.MorphismProperty.RightFraction.ofInv s hs).f = CategoryTheory.CategoryStruct.id Y
-- CategoryTheory.MorphismProperty.RightFraction.map_s_comp_map
@[reassoc (attr := simp)]
lemma map_s_comp_map (φ : W.RightFraction X Y) (L : C ⥤ D) (hL : W.IsInvertedBy L) :
    L.map φ.s ≫ φ.map L hL = L.map φ.f 
Arguments: {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] {W : CategoryTheory.MorphismProperty C} {X Y : C} (φ : W.RightFraction X Y) (L : CategoryTheory.Functor C D) (hL : W.IsInvertedBy L)
Goal: CategoryTheory.CategoryStruct.comp (L.map φ.s) (φ.map L hL) = L.map φ.f
-- CategoryTheory.MorphismProperty.RightFraction.map_ofHom
@[simp]
lemma map_ofHom (f : X ⟶ Y) (L : C ⥤ D) (hL : W.IsInvertedBy L) [W.ContainsIdentities] :
    (ofHom W f).map L hL = L.map f 
Arguments: {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] (W : CategoryTheory.MorphismProperty C) {X Y : C} (f : X ⟶ Y) (L : CategoryTheory.Functor C D) (hL : W.IsInvertedBy L) [W.ContainsIdentities]
Goal: (CategoryTheory.MorphismProperty.RightFraction.ofHom W f).map L hL = L.map f
-- CategoryTheory.MorphismProperty.RightFraction.map_ofInv_hom_id
@[reassoc (attr := simp)]
lemma map_ofInv_hom_id (s : Y ⟶ X) (hs : W s) (L : C ⥤ D) (hL : W.IsInvertedBy L) :
    (ofInv s hs).map L hL ≫ L.map s = 𝟙 _ 
Arguments: {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] (W : CategoryTheory.MorphismProperty C) {X Y : C} (s : Y ⟶ X) (hs : W s) (L : CategoryTheory.Functor C D) (hL : W.IsInvertedBy L)
Goal: CategoryTheory.CategoryStruct.comp ((CategoryTheory.MorphismProperty.RightFraction.ofInv s hs).map L hL) (L.map s) =
  CategoryTheory.CategoryStruct.id (L.obj X)
-- CategoryTheory.MorphismProperty.RightFraction.map_hom_ofInv_id
@[reassoc (attr := simp)]
lemma map_hom_ofInv_id (s : Y ⟶ X) (hs : W s) (L : C ⥤ D) (hL : W.IsInvertedBy L) :
    L.map s ≫ (ofInv s hs).map L hL = 𝟙 _ 
Arguments: {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] (W : CategoryTheory.MorphismProperty C) {X Y : C} (s : Y ⟶ X) (hs : W s) (L : CategoryTheory.Functor C D) (hL : W.IsInvertedBy L)
Goal: CategoryTheory.CategoryStruct.comp (L.map s) ((CategoryTheory.MorphismProperty.RightFraction.ofInv s hs).map L hL) =
  CategoryTheory.CategoryStruct.id (L.obj Y)
-- CategoryTheory.MorphismProperty.RightFraction.cases
lemma cases (α : W.RightFraction X Y) :
    ∃ (X' : C) (s : X' ⟶ X) (hs : W s) (f : X' ⟶ Y) , α = RightFraction.mk s hs f 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} {X Y : C} (α : W.RightFraction X Y)
Goal: ∃ X' s, ∃ (hs : W s), ∃ f, α = CategoryTheory.MorphismProperty.RightFraction.mk s hs f
-- CategoryTheory.MorphismProperty.HasLeftCalculusOfFractions.ext
class HasLeftCalculusOfFractions extends W.IsMultiplicative : Prop where
  exists_leftFraction ⦃X Y : C⦄ (φ : W.RightFraction X Y) :
    ∃ (ψ : W.LeftFraction X Y), φ.f ≫ ψ.s = φ.s ≫ ψ.f
  ext : ∀ ⦃X' X Y : C⦄ (f₁ f₂ : X ⟶ Y) (s : X' ⟶ X) (_ : W s)
    (_ : s ≫ f₁ = s ≫ f₂), ∃ (Y' : C) (t : Y ⟶ Y') (_ : W t), f₁ ≫ t = f₂ ≫ t
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [self : W.HasLeftCalculusOfFractions] ⦃X' X Y : C⦄ (f₁ f₂ : X ⟶ Y) (s : X' ⟶ X)
Goal: W s →
  CategoryTheory.CategoryStruct.comp s f₁ = CategoryTheory.CategoryStruct.comp s f₂ →
    ∃ Y' t, ∃ (_ : W t), CategoryTheory.CategoryStruct.comp f₁ t = CategoryTheory.CategoryStruct.comp f₂ t
-- CategoryTheory.MorphismProperty.HasLeftCalculusOfFractions.exists_leftFraction
class HasLeftCalculusOfFractions extends W.IsMultiplicative : Prop where
  exists_leftFraction ⦃X Y : C⦄ (φ : W.RightFraction X Y) :
    ∃ (ψ : W.LeftFraction X Y), φ.f ≫ ψ.s = φ.s ≫ ψ.f
  ext : ∀ ⦃X' X Y : C⦄ (f₁ f₂ : X ⟶ Y) (s : X' ⟶ X) (_ : W s)
    (_ : s ≫ f₁ = s ≫ f₂), ∃ (Y' : C) (t : Y ⟶ Y') (_ : W t), f₁ ≫ t = f₂ ≫ t
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [self : W.HasLeftCalculusOfFractions] ⦃X Y : C⦄ (φ : W.RightFraction X Y)
Goal: ∃ ψ, CategoryTheory.CategoryStruct.comp φ.f ψ.s = CategoryTheory.CategoryStruct.comp φ.s ψ.f
-- CategoryTheory.MorphismProperty.HasRightCalculusOfFractions.ext
class HasRightCalculusOfFractions extends W.IsMultiplicative : Prop where
  exists_rightFraction ⦃X Y : C⦄ (φ : W.LeftFraction X Y) :
    ∃ (ψ : W.RightFraction X Y), ψ.s ≫ φ.f = ψ.f ≫ φ.s
  ext : ∀ ⦃X Y Y' : C⦄ (f₁ f₂ : X ⟶ Y) (s : Y ⟶ Y') (_ : W s)
    (_ : f₁ ≫ s = f₂ ≫ s), ∃ (X' : C) (t : X' ⟶ X) (_ : W t), t ≫ f₁ = t ≫ f₂
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [self : W.HasRightCalculusOfFractions] ⦃X Y Y' : C⦄ (f₁ f₂ : X ⟶ Y) (s : Y ⟶ Y')
Goal: W s →
  CategoryTheory.CategoryStruct.comp f₁ s = CategoryTheory.CategoryStruct.comp f₂ s →
    ∃ X' t, ∃ (_ : W t), CategoryTheory.CategoryStruct.comp t f₁ = CategoryTheory.CategoryStruct.comp t f₂
-- CategoryTheory.MorphismProperty.HasRightCalculusOfFractions.exists_rightFraction
class HasRightCalculusOfFractions extends W.IsMultiplicative : Prop where
  exists_rightFraction ⦃X Y : C⦄ (φ : W.LeftFraction X Y) :
    ∃ (ψ : W.RightFraction X Y), ψ.s ≫ φ.f = ψ.f ≫ φ.s
  ext : ∀ ⦃X Y Y' : C⦄ (f₁ f₂ : X ⟶ Y) (s : Y ⟶ Y') (_ : W s)
    (_ : f₁ ≫ s = f₂ ≫ s), ∃ (X' : C) (t : X' ⟶ X) (_ : W t), t ≫ f₁ = t ≫ f₂
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [self : W.HasRightCalculusOfFractions] ⦃X Y : C⦄ (φ : W.LeftFraction X Y)
Goal: ∃ ψ, CategoryTheory.CategoryStruct.comp ψ.s φ.f = CategoryTheory.CategoryStruct.comp ψ.f φ.s
-- CategoryTheory.MorphismProperty.RightFraction.exists_leftFraction
lemma RightFraction.exists_leftFraction [W.HasLeftCalculusOfFractions] {X Y : C}
    (φ : W.RightFraction X Y) : ∃ (ψ : W.LeftFraction X Y), φ.f ≫ ψ.s = φ.s ≫ ψ.f 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y : C} (φ : W.RightFraction X Y)
Goal: ∃ ψ, CategoryTheory.CategoryStruct.comp φ.f ψ.s = CategoryTheory.CategoryStruct.comp φ.s ψ.f
-- CategoryTheory.MorphismProperty.RightFraction.leftFraction_fac
@[reassoc]
lemma RightFraction.leftFraction_fac [W.HasLeftCalculusOfFractions] {X Y : C}
    (φ : W.RightFraction X Y) : φ.f ≫ φ.leftFraction.s = φ.s ≫ φ.leftFraction.f 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y : C} (φ : W.RightFraction X Y)
Goal: CategoryTheory.CategoryStruct.comp φ.f φ.leftFraction.s = CategoryTheory.CategoryStruct.comp φ.s φ.leftFraction.f
-- CategoryTheory.MorphismProperty.LeftFraction.exists_rightFraction
lemma LeftFraction.exists_rightFraction [W.HasRightCalculusOfFractions] {X Y : C}
    (φ : W.LeftFraction X Y) : ∃ (ψ : W.RightFraction X Y), ψ.s ≫ φ.f = ψ.f ≫ φ.s 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasRightCalculusOfFractions] {X Y : C} (φ : W.LeftFraction X Y)
Goal: ∃ ψ, CategoryTheory.CategoryStruct.comp ψ.s φ.f = CategoryTheory.CategoryStruct.comp ψ.f φ.s
-- CategoryTheory.MorphismProperty.LeftFraction.rightFraction_fac
@[reassoc]
lemma LeftFraction.rightFraction_fac [W.HasRightCalculusOfFractions] {X Y : C}
    (φ : W.LeftFraction X Y) : φ.rightFraction.s ≫ φ.f = φ.rightFraction.f ≫ φ.s 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasRightCalculusOfFractions] {X Y : C} (φ : W.LeftFraction X Y)
Goal: CategoryTheory.CategoryStruct.comp φ.rightFraction.s φ.f = CategoryTheory.CategoryStruct.comp φ.rightFraction.f φ.s
-- CategoryTheory.MorphismProperty.LeftFractionRel.refl
lemma refl {X Y : C} (z : W.LeftFraction X Y) : LeftFractionRel z z 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} {X Y : C} (z : W.LeftFraction X Y)
Goal: CategoryTheory.MorphismProperty.LeftFractionRel z z
-- CategoryTheory.MorphismProperty.LeftFractionRel.symm
lemma symm {X Y : C} {z₁ z₂ : W.LeftFraction X Y} (h : LeftFractionRel z₁ z₂) :
    LeftFractionRel z₂ z₁ 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} {X Y : C} {z₁ z₂ : W.LeftFraction X Y} (h : CategoryTheory.MorphismProperty.LeftFractionRel z₁ z₂)
Goal: CategoryTheory.MorphismProperty.LeftFractionRel z₂ z₁
-- CategoryTheory.MorphismProperty.LeftFractionRel.trans
lemma trans {X Y : C} {z₁ z₂ z₃ : W.LeftFraction X Y}
    [HasLeftCalculusOfFractions W]
    (h₁₂ : LeftFractionRel z₁ z₂) (h₂₃ : LeftFractionRel z₂ z₃) :
    LeftFractionRel z₁ z₃ 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} {X Y : C} {z₁ z₂ z₃ : W.LeftFraction X Y} [W.HasLeftCalculusOfFractions] (h₁₂ : CategoryTheory.MorphismProperty.LeftFractionRel z₁ z₂) (h₂₃ : CategoryTheory.MorphismProperty.LeftFractionRel z₂ z₃)
Goal: CategoryTheory.MorphismProperty.LeftFractionRel z₁ z₃
-- CategoryTheory.MorphismProperty.equivalenceLeftFractionRel
lemma equivalenceLeftFractionRel (X Y : C) :
    @_root_.Equivalence (W.LeftFraction X Y) LeftFractionRel 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] (W : CategoryTheory.MorphismProperty C) [W.HasLeftCalculusOfFractions] (X Y : C)
Goal: Equivalence CategoryTheory.MorphismProperty.LeftFractionRel
-- CategoryTheory.MorphismProperty.LeftFraction.comp₀_rel
lemma comp₀_rel {X Y Z : C} (z₁ : W.LeftFraction X Y) (z₂ : W.LeftFraction Y Z)
    (z₃ z₃' : W.LeftFraction z₁.Y' z₂.Y') (h₃ : z₂.f ≫ z₃.s = z₁.s ≫ z₃.f)
    (h₃' : z₂.f ≫ z₃'.s = z₁.s ≫ z₃'.f) :
    LeftFractionRel (z₁.comp₀ z₂ z₃) (z₁.comp₀ z₂ z₃') 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y Z : C} (z₁ : W.LeftFraction X Y) (z₂ : W.LeftFraction Y Z) (z₃ z₃' : W.LeftFraction z₁.Y' z₂.Y') (h₃ : CategoryTheory.CategoryStruct.comp z₂.f z₃.s = CategoryTheory.CategoryStruct.comp z₁.s z₃.f) (h₃' : CategoryTheory.CategoryStruct.comp z₂.f z₃'.s = CategoryTheory.CategoryStruct.comp z₁.s z₃'.f)
Goal: CategoryTheory.MorphismProperty.LeftFractionRel (z₁.comp₀ z₂ z₃) (z₁.comp₀ z₂ z₃')
-- CategoryTheory.MorphismProperty.LeftFraction.Localization.Hom.mk_surjective
lemma Localization.Hom.mk_surjective {X Y : C} (f : Localization.Hom W X Y) :
    ∃ (z : W.LeftFraction X Y), f = mk z 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} {X Y : C} (f : CategoryTheory.MorphismProperty.LeftFraction.Localization.Hom W X Y)
Goal: ∃ z, f = CategoryTheory.MorphismProperty.LeftFraction.Localization.Hom.mk z
-- CategoryTheory.MorphismProperty.LeftFraction.comp_eq
lemma comp_eq {X Y Z : C} (z₁ : W.LeftFraction X Y) (z₂ : W.LeftFraction Y Z)
    (z₃ : W.LeftFraction z₁.Y' z₂.Y') (h₃ : z₂.f ≫ z₃.s = z₁.s ≫ z₃.f) :
    z₁.comp z₂ = Localization.Hom.mk (z₁.comp₀ z₂ z₃) 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y Z : C} (z₁ : W.LeftFraction X Y) (z₂ : W.LeftFraction Y Z) (z₃ : W.LeftFraction z₁.Y' z₂.Y') (h₃ : CategoryTheory.CategoryStruct.comp z₂.f z₃.s = CategoryTheory.CategoryStruct.comp z₁.s z₃.f)
Goal: z₁.comp z₂ = CategoryTheory.MorphismProperty.LeftFraction.Localization.Hom.mk (z₁.comp₀ z₂ z₃)
-- CategoryTheory.MorphismProperty.LeftFraction.Localization.Hom.comp_eq
lemma Hom.comp_eq {X Y Z : C} (z₁ : W.LeftFraction X Y) (z₂ : W.LeftFraction Y Z) :
    Hom.comp (mk z₁) (mk z₂) = z₁.comp z₂ 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y Z : C} (z₁ : W.LeftFraction X Y) (z₂ : W.LeftFraction Y Z)
Goal: (CategoryTheory.MorphismProperty.LeftFraction.Localization.Hom.mk z₁).comp
    (CategoryTheory.MorphismProperty.LeftFraction.Localization.Hom.mk z₂) =
  z₁.comp z₂
-- CategoryTheory.MorphismProperty.LeftFraction.Localization.Q_obj
@[simps obj]
def Q : C ⥤ Localization W 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] (W : CategoryTheory.MorphismProperty C) [W.HasLeftCalculusOfFractions] (X : C)
Goal: (CategoryTheory.MorphismProperty.LeftFraction.Localization.Q W).obj X = X
-- CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk_eq_hom_mk
lemma homMk_eq_hom_mk {X Y : C} (f : W.LeftFraction X Y) : homMk f = Hom.mk f 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y : C} (f : W.LeftFraction X Y)
Goal: CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk f =
  CategoryTheory.MorphismProperty.LeftFraction.Localization.Hom.mk f
-- CategoryTheory.MorphismProperty.LeftFraction.Localization.Q_map
lemma Q_map {X Y : C} (f : X ⟶ Y) : (Q W).map f = homMk (ofHom W f) 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] (W : CategoryTheory.MorphismProperty C) [W.HasLeftCalculusOfFractions] {X Y : C} (f : X ⟶ Y)
Goal: (CategoryTheory.MorphismProperty.LeftFraction.Localization.Q W).map f =
  CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk
    (CategoryTheory.MorphismProperty.LeftFraction.ofHom W f)
-- CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk_comp_homMk
lemma homMk_comp_homMk {X Y Z : C} (z₁ : W.LeftFraction X Y) (z₂ : W.LeftFraction Y Z)
    (z₃ : W.LeftFraction z₁.Y' z₂.Y') (h₃ : z₂.f ≫ z₃.s = z₁.s ≫ z₃.f) :
    homMk z₁ ≫ homMk z₂ = homMk (z₁.comp₀ z₂ z₃) 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y Z : C} (z₁ : W.LeftFraction X Y) (z₂ : W.LeftFraction Y Z) (z₃ : W.LeftFraction z₁.Y' z₂.Y') (h₃ : CategoryTheory.CategoryStruct.comp z₂.f z₃.s = CategoryTheory.CategoryStruct.comp z₁.s z₃.f)
Goal: CategoryTheory.CategoryStruct.comp (CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk z₁)
    (CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk z₂) =
  CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk (z₁.comp₀ z₂ z₃)
-- CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk_eq_of_leftFractionRel
lemma homMk_eq_of_leftFractionRel {X Y : C} (z₁ z₂ : W.LeftFraction X Y)
    (h : LeftFractionRel z₁ z₂) :
    homMk z₁ = homMk z₂ 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y : C} (z₁ z₂ : W.LeftFraction X Y) (h : CategoryTheory.MorphismProperty.LeftFractionRel z₁ z₂)
Goal: CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk z₁ =
  CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk z₂
-- CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk_eq_iff_leftFractionRel
lemma homMk_eq_iff_leftFractionRel {X Y : C} (z₁ z₂ : W.LeftFraction X Y) :
    homMk z₁ = homMk z₂ ↔ LeftFractionRel z₁ z₂ 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y : C} (z₁ z₂ : W.LeftFraction X Y)
Goal: CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk z₁ =
    CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk z₂ ↔
  CategoryTheory.MorphismProperty.LeftFractionRel z₁ z₂
-- CategoryTheory.MorphismProperty.LeftFraction.Localization.Q_map_comp_Qinv
lemma Q_map_comp_Qinv {X Y Y' : C} (f : X ⟶ Y') (s : Y ⟶ Y') (hs : W s) :
    (Q W).map f ≫ Qinv s hs = homMk (mk f s hs) 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y Y' : C} (f : X ⟶ Y') (s : Y ⟶ Y') (hs : W s)
Goal: CategoryTheory.CategoryStruct.comp ((CategoryTheory.MorphismProperty.LeftFraction.Localization.Q W).map f)
    (CategoryTheory.MorphismProperty.LeftFraction.Localization.Qinv s hs) =
  CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk
    (CategoryTheory.MorphismProperty.LeftFraction.mk f s hs)
-- CategoryTheory.MorphismProperty.LeftFraction.Localization.Qiso_hom
@[simps]
def Qiso {X Y : C} (s : X ⟶ Y) (hs : W s) : (Q W).obj X ≅ (Q W).obj Y 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y : C} (s : X ⟶ Y) (hs : W s)
Goal: (CategoryTheory.MorphismProperty.LeftFraction.Localization.Qiso s hs).hom =
  (CategoryTheory.MorphismProperty.LeftFraction.Localization.Q W).map s
-- CategoryTheory.MorphismProperty.LeftFraction.Localization.Qiso_inv
@[simps]
def Qiso {X Y : C} (s : X ⟶ Y) (hs : W s) : (Q W).obj X ≅ (Q W).obj Y 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] {W : CategoryTheory.MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y : C} (s : X ⟶ Y) (hs : W s)
Goal: (CategoryTheory.MorphismProperty.LeftFraction.Localization.Qiso s hs).inv =
  CategoryTheory.MorphismProperty.LeftFraction.Localization.Qinv s hs