File: Mathlib/CategoryTheory/Localization/CalculusOfFractions/Fractions.lean

full_name: CategoryTheory.MorphismProperty.LeftFraction₂.f'
code: /-- This structure contains the data of two left fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure LeftFraction₂ (X Y : C) where
  /-- the auxiliary object of left fractions -/
  {Y' : C}
  /-- the numerator of the first left fraction -/
  f : X ⟶ Y'
  /-- the numerator of the second left fraction -/
  f' : X ⟶ Y'
  /-- the denominator of the left fractions -/
  s : Y ⟶ Y'
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
goal: X ⟶ self.Y'

full_name: CategoryTheory.MorphismProperty.LeftFraction₂.hs
code: /-- This structure contains the data of two left fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure LeftFraction₂ (X Y : C) where
  /-- the auxiliary object of left fractions -/
  {Y' : C}
  /-- the numerator of the first left fraction -/
  f : X ⟶ Y'
  /-- the numerator of the second left fraction -/
  f' : X ⟶ Y'
  /-- the denominator of the left fractions -/
  s : Y ⟶ Y'
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
goal: W self.s

full_name: CategoryTheory.MorphismProperty.LeftFraction₂.f
code: /-- This structure contains the data of two left fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure LeftFraction₂ (X Y : C) where
  /-- the auxiliary object of left fractions -/
  {Y' : C}
  /-- the numerator of the first left fraction -/
  f : X ⟶ Y'
  /-- the numerator of the second left fraction -/
  f' : X ⟶ Y'
  /-- the denominator of the left fractions -/
  s : Y ⟶ Y'
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
goal: X ⟶ self.Y'

full_name: CategoryTheory.MorphismProperty.LeftFraction₂
code: /-- This structure contains the data of two left fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure LeftFraction₂ (X Y : C) where
  /-- the auxiliary object of left fractions -/
  {Y' : C}
  /-- the numerator of the first left fraction -/
  f : X ⟶ Y'
  /-- the numerator of the second left fraction -/
  f' : X ⟶ Y'
  /-- the denominator of the left fractions -/
  s : Y ⟶ Y'
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
goal: Type (max u_1 u_3)

full_name: CategoryTheory.MorphismProperty.LeftFraction₂.s
code: /-- This structure contains the data of two left fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure LeftFraction₂ (X Y : C) where
  /-- the auxiliary object of left fractions -/
  {Y' : C}
  /-- the numerator of the first left fraction -/
  f : X ⟶ Y'
  /-- the numerator of the second left fraction -/
  f' : X ⟶ Y'
  /-- the denominator of the left fractions -/
  s : Y ⟶ Y'
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
goal: Y ⟶ self.Y'

full_name: CategoryTheory.MorphismProperty.LeftFraction₂.Y'
code: /-- This structure contains the data of two left fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure LeftFraction₂ (X Y : C) where
  /-- the auxiliary object of left fractions -/
  {Y' : C}
  /-- the numerator of the first left fraction -/
  f : X ⟶ Y'
  /-- the numerator of the second left fraction -/
  f' : X ⟶ Y'
  /-- the denominator of the left fractions -/
  s : Y ⟶ Y'
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
goal: C

full_name: CategoryTheory.MorphismProperty.LeftFraction₃
code: /-- This structure contains the data of three left fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure LeftFraction₃ (X Y : C) where
  /-- the auxiliary object of left fractions -/
  {Y' : C}
  /-- the numerator of the first left fraction -/
  f : X ⟶ Y'
  /-- the numerator of the second left fraction -/
  f' : X ⟶ Y'
  /-- the numerator of the third left fraction -/
  f'' : X ⟶ Y'
  /-- the denominator of the left fractions -/
  s : Y ⟶ Y'
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
goal: Type (max u_1 u_3)

full_name: CategoryTheory.MorphismProperty.LeftFraction₃.Y'
code: /-- This structure contains the data of three left fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure LeftFraction₃ (X Y : C) where
  /-- the auxiliary object of left fractions -/
  {Y' : C}
  /-- the numerator of the first left fraction -/
  f : X ⟶ Y'
  /-- the numerator of the second left fraction -/
  f' : X ⟶ Y'
  /-- the numerator of the third left fraction -/
  f'' : X ⟶ Y'
  /-- the denominator of the left fractions -/
  s : Y ⟶ Y'
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
goal: C

full_name: CategoryTheory.MorphismProperty.LeftFraction₃.f
code: /-- This structure contains the data of three left fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure LeftFraction₃ (X Y : C) where
  /-- the auxiliary object of left fractions -/
  {Y' : C}
  /-- the numerator of the first left fraction -/
  f : X ⟶ Y'
  /-- the numerator of the second left fraction -/
  f' : X ⟶ Y'
  /-- the numerator of the third left fraction -/
  f'' : X ⟶ Y'
  /-- the denominator of the left fractions -/
  s : Y ⟶ Y'
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
goal: X ⟶ self.Y'

full_name: CategoryTheory.MorphismProperty.LeftFraction₃.f'
code: /-- This structure contains the data of three left fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure LeftFraction₃ (X Y : C) where
  /-- the auxiliary object of left fractions -/
  {Y' : C}
  /-- the numerator of the first left fraction -/
  f : X ⟶ Y'
  /-- the numerator of the second left fraction -/
  f' : X ⟶ Y'
  /-- the numerator of the third left fraction -/
  f'' : X ⟶ Y'
  /-- the denominator of the left fractions -/
  s : Y ⟶ Y'
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
goal: X ⟶ self.Y'

full_name: CategoryTheory.MorphismProperty.LeftFraction₃.f''
code: /-- This structure contains the data of three left fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure LeftFraction₃ (X Y : C) where
  /-- the auxiliary object of left fractions -/
  {Y' : C}
  /-- the numerator of the first left fraction -/
  f : X ⟶ Y'
  /-- the numerator of the second left fraction -/
  f' : X ⟶ Y'
  /-- the numerator of the third left fraction -/
  f'' : X ⟶ Y'
  /-- the denominator of the left fractions -/
  s : Y ⟶ Y'
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
goal: X ⟶ self.Y'

full_name: CategoryTheory.MorphismProperty.LeftFraction₃.hs
code: /-- This structure contains the data of three left fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure LeftFraction₃ (X Y : C) where
  /-- the auxiliary object of left fractions -/
  {Y' : C}
  /-- the numerator of the first left fraction -/
  f : X ⟶ Y'
  /-- the numerator of the second left fraction -/
  f' : X ⟶ Y'
  /-- the numerator of the third left fraction -/
  f'' : X ⟶ Y'
  /-- the denominator of the left fractions -/
  s : Y ⟶ Y'
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
goal: W self.s

full_name: CategoryTheory.MorphismProperty.LeftFraction₃.s
code: /-- This structure contains the data of three left fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure LeftFraction₃ (X Y : C) where
  /-- the auxiliary object of left fractions -/
  {Y' : C}
  /-- the numerator of the first left fraction -/
  f : X ⟶ Y'
  /-- the numerator of the second left fraction -/
  f' : X ⟶ Y'
  /-- the numerator of the third left fraction -/
  f'' : X ⟶ Y'
  /-- the denominator of the left fractions -/
  s : Y ⟶ Y'
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
goal: Y ⟶ self.Y'

full_name: CategoryTheory.MorphismProperty.RightFraction₂.f
code: /-- This structure contains the data of two right fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure RightFraction₂ (X Y : C) where
  /-- the auxiliary object of right fractions -/
  {X' : C}
  /-- the denominator of the right fractions -/
  s : X' ⟶ X
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
  /-- the numerator of the first right fraction -/
  f : X' ⟶ Y
  /-- the numerator of the second right fraction -/
  f' : X' ⟶ Y
goal: self.X' ⟶ Y

full_name: CategoryTheory.MorphismProperty.RightFraction₂.f'
code: /-- This structure contains the data of two right fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure RightFraction₂ (X Y : C) where
  /-- the auxiliary object of right fractions -/
  {X' : C}
  /-- the denominator of the right fractions -/
  s : X' ⟶ X
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
  /-- the numerator of the first right fraction -/
  f : X' ⟶ Y
  /-- the numerator of the second right fraction -/
  f' : X' ⟶ Y
goal: self.X' ⟶ Y

full_name: CategoryTheory.MorphismProperty.RightFraction₂.X'
code: /-- This structure contains the data of two right fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure RightFraction₂ (X Y : C) where
  /-- the auxiliary object of right fractions -/
  {X' : C}
  /-- the denominator of the right fractions -/
  s : X' ⟶ X
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
  /-- the numerator of the first right fraction -/
  f : X' ⟶ Y
  /-- the numerator of the second right fraction -/
  f' : X' ⟶ Y
goal: C

full_name: CategoryTheory.MorphismProperty.RightFraction₂.s
code: /-- This structure contains the data of two right fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure RightFraction₂ (X Y : C) where
  /-- the auxiliary object of right fractions -/
  {X' : C}
  /-- the denominator of the right fractions -/
  s : X' ⟶ X
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
  /-- the numerator of the first right fraction -/
  f : X' ⟶ Y
  /-- the numerator of the second right fraction -/
  f' : X' ⟶ Y
goal: self.X' ⟶ X

full_name: CategoryTheory.MorphismProperty.RightFraction₂
code: /-- This structure contains the data of two right fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure RightFraction₂ (X Y : C) where
  /-- the auxiliary object of right fractions -/
  {X' : C}
  /-- the denominator of the right fractions -/
  s : X' ⟶ X
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
  /-- the numerator of the first right fraction -/
  f : X' ⟶ Y
  /-- the numerator of the second right fraction -/
  f' : X' ⟶ Y
goal: Type (max u_1 u_3)

full_name: CategoryTheory.MorphismProperty.RightFraction₂.hs
code: /-- This structure contains the data of two right fractions for
`W : MorphismProperty C` that have the same "denominator". -/
structure RightFraction₂ (X Y : C) where
  /-- the auxiliary object of right fractions -/
  {X' : C}
  /-- the denominator of the right fractions -/
  s : X' ⟶ X
  /-- the condition that the denominator belongs to the given morphism property -/
  hs : W s
  /-- the numerator of the first right fraction -/
  f : X' ⟶ Y
  /-- the numerator of the second right fraction -/
  f' : X' ⟶ Y
goal: W self.s

full_name: CategoryTheory.MorphismProperty.LeftFraction₂Rel
code: /-- The equivalence relation on tuples of left fractions with the same denominator
for a morphism property `W`. The fact it is an equivalence relation is not
formalized, but it would follow easily from `LeftFraction₂.map_eq_iff`. -/
def LeftFraction₂Rel {X Y : C} (z₁ z₂ : W.LeftFraction₂ X Y) : Prop 
goal: Prop

full_name: CategoryTheory.MorphismProperty.LeftFraction₂.fst
code: /-- The first left fraction. -/
abbrev fst : W.LeftFraction X Y 
goal: W.LeftFraction X Y

full_name: CategoryTheory.MorphismProperty.LeftFraction₂.snd
code: /-- The second left fraction. -/
abbrev snd : W.LeftFraction X Y 
goal: W.LeftFraction X Y

full_name: CategoryTheory.MorphismProperty.LeftFraction₂.symm
code: /-- The exchange of the two fractions. -/
abbrev symm : W.LeftFraction₂ X Y 
goal: W.LeftFraction₂ X Y

full_name: CategoryTheory.MorphismProperty.LeftFraction₃.fst
code: /-- The first left fraction. -/
abbrev fst : W.LeftFraction X Y 
goal: W.LeftFraction X Y

full_name: CategoryTheory.MorphismProperty.LeftFraction₃.snd
code: /-- The second left fraction. -/
abbrev snd : W.LeftFraction X Y 
goal: W.LeftFraction X Y

full_name: CategoryTheory.MorphismProperty.LeftFraction₃.thd
code: /-- The third left fraction. -/
abbrev thd : W.LeftFraction X Y 
goal: W.LeftFraction X Y

full_name: CategoryTheory.MorphismProperty.LeftFraction₃.forgetFst
code: /-- Forgets the first fraction. -/
abbrev forgetFst : W.LeftFraction₂ X Y 
goal: W.LeftFraction₂ X Y

full_name: CategoryTheory.MorphismProperty.LeftFraction₃.forgetSnd
code: /-- Forgets the second fraction. -/
abbrev forgetSnd : W.LeftFraction₂ X Y 
goal: W.LeftFraction₂ X Y

full_name: CategoryTheory.MorphismProperty.LeftFraction₃.forgetThd
code: /-- Forgets the third fraction. -/
abbrev forgetThd : W.LeftFraction₂ X Y 
goal: W.LeftFraction₂ X Y

full_name: CategoryTheory.MorphismProperty.LeftFraction₂Rel.fst
code: lemma fst (h : LeftFraction₂Rel z₁ z₂) : LeftFractionRel z₁.fst z₂.fst 
goal: CategoryTheory.MorphismProperty.LeftFractionRel z₁.fst z₂.fst

full_name: CategoryTheory.MorphismProperty.LeftFraction₂Rel.snd
code: lemma snd (h : LeftFraction₂Rel z₁ z₂) : LeftFractionRel z₁.snd z₂.snd 
goal: CategoryTheory.MorphismProperty.LeftFractionRel z₁.snd z₂.snd

full_name: CategoryTheory.MorphismProperty.LeftFraction₂.map_eq_iff
code: lemma map_eq_iff {X Y : C} (φ ψ : W.LeftFraction₂ X Y) :
    (φ.fst.map L (Localization.inverts _ _) = ψ.fst.map L (Localization.inverts _ _) ∧
    φ.snd.map L (Localization.inverts _ _) = ψ.snd.map L (Localization.inverts _ _)) ↔
      LeftFraction₂Rel φ ψ 
goal: φ.fst.map L ⋯ = ψ.fst.map L ⋯ ∧ φ.snd.map L ⋯ = ψ.snd.map L ⋯ ↔ CategoryTheory.MorphismProperty.LeftFraction₂Rel φ ψ

full_name: CategoryTheory.MorphismProperty.RightFraction₂.fst
code: /-- The first right fraction. -/
abbrev fst : W.RightFraction X Y 
goal: W.RightFraction X Y

full_name: CategoryTheory.MorphismProperty.RightFraction₂.snd
code: /-- The second right fraction. -/
abbrev snd : W.RightFraction X Y 
goal: W.RightFraction X Y

full_name: CategoryTheory.MorphismProperty.RightFraction₂.exists_leftFraction₂
code: lemma exists_leftFraction₂ [W.HasLeftCalculusOfFractions] :
    ∃ (ψ : W.LeftFraction₂ X Y), φ.f ≫ ψ.s = φ.s ≫ ψ.f ∧
      φ.f' ≫ ψ.s = φ.s ≫ ψ.f' 
goal: ∃ ψ,
  CategoryTheory.CategoryStruct.comp φ.f ψ.s = CategoryTheory.CategoryStruct.comp φ.s ψ.f ∧
    CategoryTheory.CategoryStruct.comp φ.f' ψ.s = CategoryTheory.CategoryStruct.comp φ.s ψ.f'

full_name: CategoryTheory.Localization.exists_leftFraction₂
code: lemma exists_leftFraction₂ {X Y : C} (f f' : L.obj X ⟶ L.obj Y) :
    ∃ (φ : W.LeftFraction₂ X Y), f = φ.fst.map L (inverts L W) ∧
      f' = φ.snd.map L (inverts L W) 
goal: ∃ φ, f = φ.fst.map L ⋯ ∧ f' = φ.snd.map L ⋯

full_name: CategoryTheory.Localization.exists_leftFraction₃
code: lemma exists_leftFraction₃ {X Y : C} (f f' f'' : L.obj X ⟶ L.obj Y) :
    ∃ (φ : W.LeftFraction₃ X Y), f = φ.fst.map L (inverts L W) ∧
      f' = φ.snd.map L (inverts L W) ∧
      f'' = φ.thd.map L (inverts L W) 
goal: ∃ φ, f = φ.fst.map L ⋯ ∧ f' = φ.snd.map L ⋯ ∧ f'' = φ.thd.map L ⋯