Loogle!
Result
Found 16566 declarations mentioning CategoryTheory.CategoryStruct.comp. Of these, only the first 200 are shown.
- CategoryTheory.CategoryStruct.comp π Mathlib.CategoryTheory.Category.Basic
{obj : Type u} [self : CategoryTheory.CategoryStruct.{v, u} obj] {X Y Z : obj} : (X βΆ Y) β (Y βΆ Z) β (X βΆ Z) - CategoryTheory.Category.comp_id π Mathlib.CategoryTheory.Category.Basic
{obj : Type u} [self : CategoryTheory.Category.{v, u} obj] {X Y : obj} (f : X βΆ Y) : CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.id Y) = f - CategoryTheory.Category.id_comp π Mathlib.CategoryTheory.Category.Basic
{obj : Type u} [self : CategoryTheory.Category.{v, u} obj] {X Y : obj} (f : X βΆ Y) : CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.id X) f = f - CategoryTheory.epi_of_epi π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (f : X βΆ Y) (g : Y βΆ Z) [CategoryTheory.Epi (CategoryTheory.CategoryStruct.comp f g)] : CategoryTheory.Epi g - CategoryTheory.mono_of_mono π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (g : Z βΆ Y) (f : Y βΆ X) [CategoryTheory.Mono (CategoryTheory.CategoryStruct.comp g f)] : CategoryTheory.Mono g - CategoryTheory.epi_comp π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (f : X βΆ Y) [CategoryTheory.Epi f] (g : Y βΆ Z) [CategoryTheory.Epi g] : CategoryTheory.Epi (CategoryTheory.CategoryStruct.comp f g) - CategoryTheory.epi_comp' π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} {f : X βΆ Y} {g : Y βΆ Z} (hf : CategoryTheory.Epi f) (hg : CategoryTheory.Epi g) : CategoryTheory.Epi (CategoryTheory.CategoryStruct.comp f g) - CategoryTheory.mono_comp π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (g : Z βΆ Y) [CategoryTheory.Mono g] (f : Y βΆ X) [CategoryTheory.Mono f] : CategoryTheory.Mono (CategoryTheory.CategoryStruct.comp g f) - CategoryTheory.mono_comp' π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} {f : Y βΆ X} {g : Z βΆ Y} (hg : CategoryTheory.Mono g) (hf : CategoryTheory.Mono f) : CategoryTheory.Mono (CategoryTheory.CategoryStruct.comp g f) - CategoryTheory.epi_iff_forall_injective π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (f : X βΆ Y) : CategoryTheory.Epi f β β (Z : C), Function.Injective fun g => CategoryTheory.CategoryStruct.comp f g - CategoryTheory.mono_iff_forall_injective π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (f : Y βΆ X) : CategoryTheory.Mono f β β (Z : C), Function.Injective fun g => CategoryTheory.CategoryStruct.comp g f - CategoryTheory.id_of_comp_left_id π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X : C} (f : X βΆ X) (w : β {Y : C} (g : X βΆ Y), CategoryTheory.CategoryStruct.comp f g = g) : f = CategoryTheory.CategoryStruct.id X - CategoryTheory.id_of_comp_right_id π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X : C} (f : X βΆ X) (w : β {Y : C} (g : Y βΆ X), CategoryTheory.CategoryStruct.comp g f = g) : f = CategoryTheory.CategoryStruct.id X - CategoryTheory.epi_of_epi_fac π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} {f : X βΆ Y} {g : Y βΆ Z} {h : X βΆ Z} [CategoryTheory.Epi h] (w : CategoryTheory.CategoryStruct.comp f g = h) : CategoryTheory.Epi g - CategoryTheory.mono_of_mono_fac π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} {f : Y βΆ X} {g : Z βΆ Y} {h : Z βΆ X} [CategoryTheory.Mono h] (w : CategoryTheory.CategoryStruct.comp g f = h) : CategoryTheory.Mono g - CategoryTheory.cancel_epi_id π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (f : X βΆ Y) [CategoryTheory.Epi f] {h : Y βΆ Y} : CategoryTheory.CategoryStruct.comp f h = f β h = CategoryTheory.CategoryStruct.id Y - CategoryTheory.cancel_mono_id π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (f : Y βΆ X) [CategoryTheory.Mono f] {h : Y βΆ Y} : CategoryTheory.CategoryStruct.comp h f = f β h = CategoryTheory.CategoryStruct.id Y - CategoryTheory.eq_of_comp_left_eq π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} {f g : X βΆ Y} (w : β {Z : C} (h : Y βΆ Z), CategoryTheory.CategoryStruct.comp f h = CategoryTheory.CategoryStruct.comp g h) : f = g - CategoryTheory.eq_of_comp_right_eq π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} {f g : Y βΆ X} (w : β {Z : C} (h : Z βΆ Y), CategoryTheory.CategoryStruct.comp h f = CategoryTheory.CategoryStruct.comp h g) : f = g - CategoryTheory.eq_whisker π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} {f g : X βΆ Y} (w : f = g) (h : Y βΆ Z) : CategoryTheory.CategoryStruct.comp f h = CategoryTheory.CategoryStruct.comp g h - CategoryTheory.whisker_eq π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} {f g : Y βΆ X} (h : Z βΆ Y) (w : f = g) : CategoryTheory.CategoryStruct.comp h f = CategoryTheory.CategoryStruct.comp h g - CategoryTheory.Epi.left_cancellation π Mathlib.CategoryTheory.Category.Basic
{C : Type u} {instβ : CategoryTheory.Category.{v, u} C} {X Y : C} {f : X βΆ Y} [self : CategoryTheory.Epi f] {Z : C} (g h : Y βΆ Z) : CategoryTheory.CategoryStruct.comp f g = CategoryTheory.CategoryStruct.comp f h β g = h - CategoryTheory.Epi.mk π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} {f : X βΆ Y} (left_cancellation : β {Z : C} (g h : Y βΆ Z), CategoryTheory.CategoryStruct.comp f g = CategoryTheory.CategoryStruct.comp f h β g = h) : CategoryTheory.Epi f - CategoryTheory.Mono.mk π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} {f : X βΆ Y} (right_cancellation : β {Z : C} (g h : Z βΆ X), CategoryTheory.CategoryStruct.comp g f = CategoryTheory.CategoryStruct.comp h f β g = h) : CategoryTheory.Mono f - CategoryTheory.Mono.right_cancellation π Mathlib.CategoryTheory.Category.Basic
{C : Type u} {instβ : CategoryTheory.Category.{v, u} C} {X Y : C} {f : X βΆ Y} [self : CategoryTheory.Mono f] {Z : C} (g h : Z βΆ X) : CategoryTheory.CategoryStruct.comp g f = CategoryTheory.CategoryStruct.comp h f β g = h - CategoryTheory.cancel_epi π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (f : X βΆ Y) [CategoryTheory.Epi f] {g h : Y βΆ Z} : CategoryTheory.CategoryStruct.comp f g = CategoryTheory.CategoryStruct.comp f h β g = h - CategoryTheory.cancel_mono π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (f : Y βΆ X) [CategoryTheory.Mono f] {g h : Z βΆ Y} : CategoryTheory.CategoryStruct.comp g f = CategoryTheory.CategoryStruct.comp h f β g = h - CategoryTheory.Category.assoc π Mathlib.CategoryTheory.Category.Basic
{obj : Type u} [self : CategoryTheory.Category.{v, u} obj] {W X Y Z : obj} (f : W βΆ X) (g : X βΆ Y) (h : Y βΆ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp f g) h = CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp g h) - CategoryTheory.Category.assoc' π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {W X Y Z : C} (f : X βΆ W) (g : Y βΆ X) (h : Z βΆ Y) : CategoryTheory.CategoryStruct.comp h (CategoryTheory.CategoryStruct.comp g f) = CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp h g) f - CategoryTheory.eq_of_comp_left_eq' π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (f g : X βΆ Y) (w : (fun {Z} h => CategoryTheory.CategoryStruct.comp f h) = fun {Z} h => CategoryTheory.CategoryStruct.comp g h) : f = g - CategoryTheory.eq_of_comp_right_eq' π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (f g : Y βΆ X) (w : (fun {Z} h => CategoryTheory.CategoryStruct.comp h f) = fun {Z} h => CategoryTheory.CategoryStruct.comp h g) : f = g - CategoryTheory.comp_ite π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {P : Prop} [Decidable P] {X Y Z : C} (f : X βΆ Y) (g g' : Y βΆ Z) : CategoryTheory.CategoryStruct.comp f (if P then g else g') = if P then CategoryTheory.CategoryStruct.comp f g else CategoryTheory.CategoryStruct.comp f g' - CategoryTheory.ite_comp π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {P : Prop} [Decidable P] {X Y Z : C} (g g' : Z βΆ Y) (f : Y βΆ X) : CategoryTheory.CategoryStruct.comp (if P then g else g') f = if P then CategoryTheory.CategoryStruct.comp g f else CategoryTheory.CategoryStruct.comp g' f - CategoryTheory.comp_dite π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {P : Prop} [Decidable P] {X Y Z : C} (f : X βΆ Y) (g : P β (Y βΆ Z)) (g' : Β¬P β (Y βΆ Z)) : CategoryTheory.CategoryStruct.comp f (if h : P then g h else g' h) = if h : P then CategoryTheory.CategoryStruct.comp f (g h) else CategoryTheory.CategoryStruct.comp f (g' h) - CategoryTheory.dite_comp π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {P : Prop} [Decidable P] {X Y Z : C} (g : P β (Z βΆ Y)) (g' : Β¬P β (Z βΆ Y)) (f : Y βΆ X) : CategoryTheory.CategoryStruct.comp (if h : P then g h else g' h) f = if h : P then CategoryTheory.CategoryStruct.comp (g h) f else CategoryTheory.CategoryStruct.comp (g' h) f - CategoryTheory.Category.mk' π Mathlib.CategoryTheory.Category.Basic
{obj : Type u} [CategoryTheory.CategoryStruct.{v, u} obj] (id_comp : β {X Y : obj} (f : Y βΆ X), CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.id X) = f) (comp_id : β {X Y : obj} (f : Y βΆ X), CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.id Y) f = f) (assoc : β {W X Y Z : obj} (f : X βΆ W) (g : Y βΆ X) (h : Z βΆ Y), CategoryTheory.CategoryStruct.comp h (CategoryTheory.CategoryStruct.comp g f) = CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp h g) f) : CategoryTheory.Category.{v, u} obj - CategoryTheory.Category.mk π Mathlib.CategoryTheory.Category.Basic
{obj : Type u} [toCategoryStruct : CategoryTheory.CategoryStruct.{v, u} obj] (id_comp : β {X Y : obj} (f : X βΆ Y), CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.id X) f = f := by cat_disch) (comp_id : β {X Y : obj} (f : X βΆ Y), CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.id Y) = f := by cat_disch) (assoc : β {W X Y Z : obj} (f : W βΆ X) (g : X βΆ Y) (h : Y βΆ Z), CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp f g) h = CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp g h) := by cat_disch) : CategoryTheory.Category.{v, u} obj - CategoryTheory.cancel_epi_assoc_iff π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (f : X βΆ Y) [CategoryTheory.Epi f] {g h : Y βΆ Z} {W : C} {k l : Z βΆ W} : CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp f g) k = CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp f h) l β CategoryTheory.CategoryStruct.comp g k = CategoryTheory.CategoryStruct.comp h l - CategoryTheory.cancel_mono_assoc_iff π Mathlib.CategoryTheory.Category.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (f : Y βΆ X) [CategoryTheory.Mono f] {g h : Z βΆ Y} {W : C} {k l : W βΆ Z} : CategoryTheory.CategoryStruct.comp k (CategoryTheory.CategoryStruct.comp g f) = CategoryTheory.CategoryStruct.comp l (CategoryTheory.CategoryStruct.comp h f) β CategoryTheory.CategoryStruct.comp k g = CategoryTheory.CategoryStruct.comp l h - CategoryTheory.Functor.map_comp π Mathlib.CategoryTheory.Functor.Basic
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (self : CategoryTheory.Functor C D) {X Y Z : C} (f : X βΆ Y) (g : Y βΆ Z) : self.map (CategoryTheory.CategoryStruct.comp f g) = CategoryTheory.CategoryStruct.comp (self.map f) (self.map g) - CategoryTheory.Functor.mk π Mathlib.CategoryTheory.Functor.Basic
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (obj : C β D) (map : {X Y : C} β (X βΆ Y) β (obj X βΆ obj Y)) (map_id : β (X : C), map (CategoryTheory.CategoryStruct.id X) = CategoryTheory.CategoryStruct.id (obj X) := by cat_disch) (map_comp : β {X Y Z : C} (f : X βΆ Y) (g : Y βΆ Z), map (CategoryTheory.CategoryStruct.comp f g) = CategoryTheory.CategoryStruct.comp (map f) (map g) := by cat_disch) : CategoryTheory.Functor C D - CategoryTheory.Functor.map_comp_assoc π Mathlib.CategoryTheory.Functor.Basic
{C : Type uβ} [CategoryTheory.Category.{v_1, uβ} C] {D : Type uβ} [CategoryTheory.Category.{v_2, uβ} D] (F : CategoryTheory.Functor C D) {X Y Z : C} (f : X βΆ Y) (g : Y βΆ Z) {W : D} (h : F.obj Z βΆ W) : CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.CategoryStruct.comp f g)) h = CategoryTheory.CategoryStruct.comp (F.map f) (CategoryTheory.CategoryStruct.comp (F.map g) h) - Mathlib.Tactic.Reassoc.eq_whisker' π Mathlib.Tactic.CategoryTheory.Reassoc
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] {X Y : C} {f g : X βΆ Y} (w : f = g) {Z : C} (h : Y βΆ Z) : CategoryTheory.CategoryStruct.comp f h = CategoryTheory.CategoryStruct.comp g h - CategoryTheory.NatTrans.vcomp_app π Mathlib.CategoryTheory.NatTrans
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G H : CategoryTheory.Functor C D} (Ξ± : CategoryTheory.NatTrans F G) (Ξ² : CategoryTheory.NatTrans G H) (X : C) : (Ξ±.vcomp Ξ²).app X = CategoryTheory.CategoryStruct.comp (Ξ±.app X) (Ξ².app X) - CategoryTheory.NatTrans.naturality π Mathlib.CategoryTheory.NatTrans
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (self : CategoryTheory.NatTrans F G) β¦X Y : Cβ¦ (f : X βΆ Y) : CategoryTheory.CategoryStruct.comp (F.map f) (self.app Y) = CategoryTheory.CategoryStruct.comp (self.app X) (G.map f) - CategoryTheory.NatTrans.naturality' π Mathlib.CategoryTheory.NatTrans
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (self : CategoryTheory.NatTrans G F) β¦X Y : Cβ¦ (f : Y βΆ X) : CategoryTheory.CategoryStruct.comp (self.app Y) (F.map f) = CategoryTheory.CategoryStruct.comp (G.map f) (self.app X) - CategoryTheory.NatTrans.mk' π Mathlib.CategoryTheory.NatTrans
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (app : (X : C) β G.obj X βΆ F.obj X) (naturality : β β¦X Y : Cβ¦ (f : Y βΆ X), CategoryTheory.CategoryStruct.comp (app Y) (F.map f) = CategoryTheory.CategoryStruct.comp (G.map f) (app X)) : CategoryTheory.NatTrans G F - CategoryTheory.NatTrans.mk π Mathlib.CategoryTheory.NatTrans
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (app : (X : C) β F.obj X βΆ G.obj X) (naturality : β β¦X Y : Cβ¦ (f : X βΆ Y), CategoryTheory.CategoryStruct.comp (F.map f) (app Y) = CategoryTheory.CategoryStruct.comp (app X) (G.map f) := by cat_disch) : CategoryTheory.NatTrans F G - CategoryTheory.NatTrans.naturality_assoc π Mathlib.CategoryTheory.NatTrans
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (self : CategoryTheory.NatTrans F G) β¦X Y : Cβ¦ (f : X βΆ Y) {Z : D} (h : G.obj Y βΆ Z) : CategoryTheory.CategoryStruct.comp (F.map f) (CategoryTheory.CategoryStruct.comp (self.app Y) h) = CategoryTheory.CategoryStruct.comp (self.app X) (CategoryTheory.CategoryStruct.comp (G.map f) h) - CategoryTheory.Iso.hom_inv_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (self : X β Y) : CategoryTheory.CategoryStruct.comp self.hom self.inv = CategoryTheory.CategoryStruct.id X - CategoryTheory.Iso.inv_hom_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (self : X β Y) : CategoryTheory.CategoryStruct.comp self.inv self.hom = CategoryTheory.CategoryStruct.id Y - CategoryTheory.IsIso.comp_isIso π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} {f : X βΆ Y} {h : Y βΆ Z} [CategoryTheory.IsIso f] [CategoryTheory.IsIso h] : CategoryTheory.IsIso (CategoryTheory.CategoryStruct.comp f h) - CategoryTheory.IsIso.comp_isIso' π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} {f : X βΆ Y} {h : Y βΆ Z} : CategoryTheory.IsIso f β CategoryTheory.IsIso h β CategoryTheory.IsIso (CategoryTheory.CategoryStruct.comp f h) - CategoryTheory.IsIso.of_isIso_comp_left π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (f : X βΆ Y) (g : Y βΆ Z) [CategoryTheory.IsIso f] [CategoryTheory.IsIso (CategoryTheory.CategoryStruct.comp f g)] : CategoryTheory.IsIso g - CategoryTheory.IsIso.of_isIso_comp_right π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (g : Z βΆ Y) (f : Y βΆ X) [CategoryTheory.IsIso f] [CategoryTheory.IsIso (CategoryTheory.CategoryStruct.comp g f)] : CategoryTheory.IsIso g - CategoryTheory.isIso_comp_left_iff π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (f : X βΆ Y) (g : Y βΆ Z) [CategoryTheory.IsIso f] : CategoryTheory.IsIso (CategoryTheory.CategoryStruct.comp f g) β CategoryTheory.IsIso g - CategoryTheory.isIso_comp_right_iff π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (g : Z βΆ Y) (f : Y βΆ X) [CategoryTheory.IsIso f] : CategoryTheory.IsIso (CategoryTheory.CategoryStruct.comp g f) β CategoryTheory.IsIso g - CategoryTheory.IsIso.hom_inv_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (f : X βΆ Y) [I : CategoryTheory.IsIso f] : CategoryTheory.CategoryStruct.comp f (CategoryTheory.inv f) = CategoryTheory.CategoryStruct.id X - CategoryTheory.IsIso.inv_hom_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (f : X βΆ Y) [I : CategoryTheory.IsIso f] : CategoryTheory.CategoryStruct.comp (CategoryTheory.inv f) f = CategoryTheory.CategoryStruct.id Y - CategoryTheory.Iso.trans_hom π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (Ξ± : X β Y) (Ξ² : Y β Z) : (Ξ± βͺβ« Ξ²).hom = CategoryTheory.CategoryStruct.comp Ξ±.hom Ξ².hom - CategoryTheory.Iso.trans_inv π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (Ξ± : X β Y) (Ξ² : Y β Z) : (Ξ± βͺβ« Ξ²).inv = CategoryTheory.CategoryStruct.comp Ξ².inv Ξ±.inv - CategoryTheory.Iso.hom_inv_id_assoc π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (self : X β Y) {Z : C} (h : X βΆ Z) : CategoryTheory.CategoryStruct.comp self.hom (CategoryTheory.CategoryStruct.comp self.inv h) = h - CategoryTheory.Iso.inv_hom_id_assoc π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (self : X β Y) {Z : C} (h : Y βΆ Z) : CategoryTheory.CategoryStruct.comp self.inv (CategoryTheory.CategoryStruct.comp self.hom h) = h - CategoryTheory.isIso_of_comp_hom_eq_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (g : Y βΆ X) [CategoryTheory.IsIso g] {f : X βΆ Y} (h : CategoryTheory.CategoryStruct.comp f g = CategoryTheory.CategoryStruct.id X) : CategoryTheory.IsIso f - CategoryTheory.isIso_of_hom_comp_eq_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (g : X βΆ Y) [CategoryTheory.IsIso g] {f : Y βΆ X} (h : CategoryTheory.CategoryStruct.comp g f = CategoryTheory.CategoryStruct.id X) : CategoryTheory.IsIso f - CategoryTheory.IsIso.hom_inv_id_assoc π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (f : X βΆ Y) [I : CategoryTheory.IsIso f] {Z : C} (h : X βΆ Z) : CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp (CategoryTheory.inv f) h) = h - CategoryTheory.IsIso.inv_hom_id_assoc π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (f : X βΆ Y) [I : CategoryTheory.IsIso f] {Z : C} (h : Y βΆ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.inv f) (CategoryTheory.CategoryStruct.comp f h) = h - CategoryTheory.Iso.inv_ext π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} {f : X β Y} {g : Y βΆ X} (hom_inv_id : CategoryTheory.CategoryStruct.comp f.hom g = CategoryTheory.CategoryStruct.id X) : f.inv = g - CategoryTheory.Iso.inv_ext' π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} {f : X β Y} {g : Y βΆ X} (hom_inv_id : CategoryTheory.CategoryStruct.comp f.hom g = CategoryTheory.CategoryStruct.id X) : g = f.inv - CategoryTheory.Iso.comp_hom_eq_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (Ξ± : X β Y) {f : Y βΆ X} : CategoryTheory.CategoryStruct.comp f Ξ±.hom = CategoryTheory.CategoryStruct.id Y β f = Ξ±.inv - CategoryTheory.Iso.comp_inv_eq_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (Ξ± : X β Y) {f : X βΆ Y} : CategoryTheory.CategoryStruct.comp f Ξ±.inv = CategoryTheory.CategoryStruct.id X β f = Ξ±.hom - CategoryTheory.Iso.hom_comp_eq_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (Ξ± : X β Y) {f : Y βΆ X} : CategoryTheory.CategoryStruct.comp Ξ±.hom f = CategoryTheory.CategoryStruct.id X β f = Ξ±.inv - CategoryTheory.Iso.inv_comp_eq_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (Ξ± : X β Y) {f : X βΆ Y} : CategoryTheory.CategoryStruct.comp Ξ±.inv f = CategoryTheory.CategoryStruct.id Y β f = Ξ±.hom - CategoryTheory.IsIso.of_isIso_fac_left π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} {f : X βΆ Y} {g : Y βΆ Z} {h : X βΆ Z} [CategoryTheory.IsIso f] [hh : CategoryTheory.IsIso h] (w : CategoryTheory.CategoryStruct.comp f g = h) : CategoryTheory.IsIso g - CategoryTheory.IsIso.of_isIso_fac_right π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} {f : Y βΆ X} {g : Z βΆ Y} {h : Z βΆ X} [CategoryTheory.IsIso f] [hh : CategoryTheory.IsIso h] (w : CategoryTheory.CategoryStruct.comp g f = h) : CategoryTheory.IsIso g - CategoryTheory.IsIso.eq_inv_of_hom_inv_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} {f : X βΆ Y} [CategoryTheory.IsIso f] {g : Y βΆ X} (hom_inv_id : CategoryTheory.CategoryStruct.comp f g = CategoryTheory.CategoryStruct.id X) : g = CategoryTheory.inv f - CategoryTheory.IsIso.eq_inv_of_inv_hom_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} {f : Y βΆ X} [CategoryTheory.IsIso f] {g : X βΆ Y} (hom_inv_id : CategoryTheory.CategoryStruct.comp g f = CategoryTheory.CategoryStruct.id X) : g = CategoryTheory.inv f - CategoryTheory.IsIso.inv_eq_of_hom_inv_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} {f : X βΆ Y} [CategoryTheory.IsIso f] {g : Y βΆ X} (hom_inv_id : CategoryTheory.CategoryStruct.comp f g = CategoryTheory.CategoryStruct.id X) : CategoryTheory.inv f = g - CategoryTheory.IsIso.inv_eq_of_inv_hom_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} {f : Y βΆ X} [CategoryTheory.IsIso f] {g : X βΆ Y} (hom_inv_id : CategoryTheory.CategoryStruct.comp g f = CategoryTheory.CategoryStruct.id X) : CategoryTheory.inv f = g - CategoryTheory.comp_hom_eq_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (g : Y βΆ X) [CategoryTheory.IsIso g] {f : X βΆ Y} : CategoryTheory.CategoryStruct.comp f g = CategoryTheory.CategoryStruct.id X β f = CategoryTheory.inv g - CategoryTheory.comp_inv_eq_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (g : Y βΆ X) [CategoryTheory.IsIso g] {f : Y βΆ X} : CategoryTheory.CategoryStruct.comp f (CategoryTheory.inv g) = CategoryTheory.CategoryStruct.id Y β f = g - CategoryTheory.hom_comp_eq_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (g : X βΆ Y) [CategoryTheory.IsIso g] {f : Y βΆ X} : CategoryTheory.CategoryStruct.comp g f = CategoryTheory.CategoryStruct.id X β f = CategoryTheory.inv g - CategoryTheory.inv_comp_eq_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (g : X βΆ Y) [CategoryTheory.IsIso g] {f : X βΆ Y} : CategoryTheory.CategoryStruct.comp (CategoryTheory.inv g) f = CategoryTheory.CategoryStruct.id Y β f = g - CategoryTheory.Iso.cancel_iso_hom_left π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (f : X β Y) (g g' : Y βΆ Z) : CategoryTheory.CategoryStruct.comp f.hom g = CategoryTheory.CategoryStruct.comp f.hom g' β g = g' - CategoryTheory.Iso.cancel_iso_hom_right π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (f f' : X βΆ Y) (g : Y β Z) : CategoryTheory.CategoryStruct.comp f g.hom = CategoryTheory.CategoryStruct.comp f' g.hom β f = f' - CategoryTheory.Iso.cancel_iso_inv_left π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (g : Y β Z) (f f' : Y βΆ X) : CategoryTheory.CategoryStruct.comp g.inv f = CategoryTheory.CategoryStruct.comp g.inv f' β f = f' - CategoryTheory.Iso.cancel_iso_inv_right π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (g g' : Z βΆ Y) (f : X β Y) : CategoryTheory.CategoryStruct.comp g f.inv = CategoryTheory.CategoryStruct.comp g' f.inv β g = g' - CategoryTheory.Iso.comp_inv_eq π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (Ξ± : X β Y) {f : Z βΆ Y} {g : Z βΆ X} : CategoryTheory.CategoryStruct.comp f Ξ±.inv = g β f = CategoryTheory.CategoryStruct.comp g Ξ±.hom - CategoryTheory.Iso.eq_comp_inv π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (Ξ± : X β Y) {f : Z βΆ Y} {g : Z βΆ X} : g = CategoryTheory.CategoryStruct.comp f Ξ±.inv β CategoryTheory.CategoryStruct.comp g Ξ±.hom = f - CategoryTheory.Iso.eq_inv_comp π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (Ξ± : X β Y) {f : X βΆ Z} {g : Y βΆ Z} : g = CategoryTheory.CategoryStruct.comp Ξ±.inv f β CategoryTheory.CategoryStruct.comp Ξ±.hom g = f - CategoryTheory.Iso.inv_comp_eq π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (Ξ± : X β Y) {f : X βΆ Z} {g : Y βΆ Z} : CategoryTheory.CategoryStruct.comp Ξ±.inv f = g β f = CategoryTheory.CategoryStruct.comp Ξ±.hom g - CategoryTheory.Iso.mk π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (hom : X βΆ Y) (inv : Y βΆ X) (hom_inv_id : CategoryTheory.CategoryStruct.comp hom inv = CategoryTheory.CategoryStruct.id X := by cat_disch) (inv_hom_id : CategoryTheory.CategoryStruct.comp inv hom = CategoryTheory.CategoryStruct.id Y := by cat_disch) : X β Y - CategoryTheory.IsIso.comp_inv_eq π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (Ξ± : Y βΆ X) [CategoryTheory.IsIso Ξ±] {f : Z βΆ X} {g : Z βΆ Y} : CategoryTheory.CategoryStruct.comp f (CategoryTheory.inv Ξ±) = g β f = CategoryTheory.CategoryStruct.comp g Ξ± - CategoryTheory.IsIso.eq_comp_inv π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (Ξ± : Y βΆ X) [CategoryTheory.IsIso Ξ±] {f : Z βΆ X} {g : Z βΆ Y} : g = CategoryTheory.CategoryStruct.comp f (CategoryTheory.inv Ξ±) β CategoryTheory.CategoryStruct.comp g Ξ± = f - CategoryTheory.IsIso.eq_inv_comp π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (Ξ± : X βΆ Y) [CategoryTheory.IsIso Ξ±] {f : X βΆ Z} {g : Y βΆ Z} : g = CategoryTheory.CategoryStruct.comp (CategoryTheory.inv Ξ±) f β CategoryTheory.CategoryStruct.comp Ξ± g = f - CategoryTheory.IsIso.inv_comp_eq π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (Ξ± : X βΆ Y) [CategoryTheory.IsIso Ξ±] {f : X βΆ Z} {g : Y βΆ Z} : CategoryTheory.CategoryStruct.comp (CategoryTheory.inv Ξ±) f = g β f = CategoryTheory.CategoryStruct.comp Ξ± g - CategoryTheory.IsIso.mk π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} {f : X βΆ Y} (out : β inv, CategoryTheory.CategoryStruct.comp f inv = CategoryTheory.CategoryStruct.id X β§ CategoryTheory.CategoryStruct.comp inv f = CategoryTheory.CategoryStruct.id Y) : CategoryTheory.IsIso f - CategoryTheory.IsIso.mk' π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} {f : Y βΆ X} (out : β inv, CategoryTheory.CategoryStruct.comp inv f = CategoryTheory.CategoryStruct.id X β§ CategoryTheory.CategoryStruct.comp f inv = CategoryTheory.CategoryStruct.id Y) : CategoryTheory.IsIso f - CategoryTheory.IsIso.out π Mathlib.CategoryTheory.Iso
{C : Type u} {instβ : CategoryTheory.Category.{v, u} C} {X Y : C} {f : X βΆ Y} [self : CategoryTheory.IsIso f] : β inv, CategoryTheory.CategoryStruct.comp f inv = CategoryTheory.CategoryStruct.id X β§ CategoryTheory.CategoryStruct.comp inv f = CategoryTheory.CategoryStruct.id Y - CategoryTheory.IsIso.inv_comp π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} {f : X βΆ Y} {h : Y βΆ Z} [CategoryTheory.IsIso f] [CategoryTheory.IsIso h] : CategoryTheory.inv (CategoryTheory.CategoryStruct.comp f h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.inv h) (CategoryTheory.inv f) - CategoryTheory.Iso.symm_mk π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (hom : X βΆ Y) (inv : Y βΆ X) (hom_inv_id : CategoryTheory.CategoryStruct.comp hom inv = CategoryTheory.CategoryStruct.id X) (inv_hom_id : CategoryTheory.CategoryStruct.comp inv hom = CategoryTheory.CategoryStruct.id Y) : { hom := hom, inv := inv, hom_inv_id := hom_inv_id, inv_hom_id := inv_hom_id }.symm = { hom := inv, inv := hom, hom_inv_id := inv_hom_id, inv_hom_id := hom_inv_id } - CategoryTheory.Functor.map_hom_inv' π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor C D) {X Y : C} (f : X β Y) : CategoryTheory.CategoryStruct.comp (F.map f.hom) (F.map f.inv) = CategoryTheory.CategoryStruct.id (F.obj X) - CategoryTheory.Functor.map_inv_hom' π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor C D) {X Y : C} (f : X β Y) : CategoryTheory.CategoryStruct.comp (F.map f.inv) (F.map f.hom) = CategoryTheory.CategoryStruct.id (F.obj Y) - CategoryTheory.Iso.map_hom_inv_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u_1} [CategoryTheory.Category.{v_1, u_1} D] {X Y : C} (e : X β Y) (F : CategoryTheory.Functor C D) : CategoryTheory.CategoryStruct.comp (F.map e.hom) (F.map e.inv) = CategoryTheory.CategoryStruct.id (F.obj X) - CategoryTheory.Iso.map_inv_hom_id π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u_1} [CategoryTheory.Category.{v_1, u_1} D] {X Y : C} (e : X β Y) (F : CategoryTheory.Functor C D) : CategoryTheory.CategoryStruct.comp (F.map e.inv) (F.map e.hom) = CategoryTheory.CategoryStruct.id (F.obj Y) - CategoryTheory.Functor.map_hom_inv π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor C D) {X Y : C} (f : X βΆ Y) [CategoryTheory.IsIso f] : CategoryTheory.CategoryStruct.comp (F.map f) (F.map (CategoryTheory.inv f)) = CategoryTheory.CategoryStruct.id (F.obj X) - CategoryTheory.Functor.map_inv_hom π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor C D) {X Y : C} (f : Y βΆ X) [CategoryTheory.IsIso f] : CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.inv f)) (F.map f) = CategoryTheory.CategoryStruct.id (F.obj X) - CategoryTheory.Functor.map_hom_inv'_assoc π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor C D) {X Y : C} (f : X β Y) {Z : D} (h : F.obj X βΆ Z) : CategoryTheory.CategoryStruct.comp (F.map f.hom) (CategoryTheory.CategoryStruct.comp (F.map f.inv) h) = h - CategoryTheory.Functor.map_inv_hom'_assoc π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor C D) {X Y : C} (f : X β Y) {Z : D} (h : F.obj Y βΆ Z) : CategoryTheory.CategoryStruct.comp (F.map f.inv) (CategoryTheory.CategoryStruct.comp (F.map f.hom) h) = h - CategoryTheory.Iso.map_hom_inv_id_assoc π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u_1} [CategoryTheory.Category.{v_1, u_1} D] {X Y : C} (e : X β Y) (F : CategoryTheory.Functor C D) {Z : D} (h : F.obj X βΆ Z) : CategoryTheory.CategoryStruct.comp (F.map e.hom) (CategoryTheory.CategoryStruct.comp (F.map e.inv) h) = h - CategoryTheory.Iso.map_inv_hom_id_assoc π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u_1} [CategoryTheory.Category.{v_1, u_1} D] {X Y : C} (e : X β Y) (F : CategoryTheory.Functor C D) {Z : D} (h : F.obj Y βΆ Z) : CategoryTheory.CategoryStruct.comp (F.map e.inv) (CategoryTheory.CategoryStruct.comp (F.map e.hom) h) = h - CategoryTheory.IsIso.inv_comp_assoc π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} {f : X βΆ Y} {h : Y βΆ Z} [CategoryTheory.IsIso f] [CategoryTheory.IsIso h] {Zβ : C} (hβ : X βΆ Zβ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.inv (CategoryTheory.CategoryStruct.comp f h)) hβ = CategoryTheory.CategoryStruct.comp (CategoryTheory.inv h) (CategoryTheory.CategoryStruct.comp (CategoryTheory.inv f) hβ) - CategoryTheory.Functor.map_hom_inv_assoc π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor C D) {X Y : C} (f : X βΆ Y) [CategoryTheory.IsIso f] {Z : D} (h : F.obj X βΆ Z) : CategoryTheory.CategoryStruct.comp (F.map f) (CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.inv f)) h) = h - CategoryTheory.Functor.map_inv_hom_assoc π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor C D) {X Y : C} (f : Y βΆ X) [CategoryTheory.IsIso f] {Z : D} (h : F.obj X βΆ Z) : CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.inv f)) (CategoryTheory.CategoryStruct.comp (F.map f) h) = h - CategoryTheory.Iso.cancel_iso_hom_right_assoc π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {W X X' Y Z : C} (f : W βΆ X) (g : X βΆ Y) (f' : W βΆ X') (g' : X' βΆ Y) (h : Y β Z) : CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp g h.hom) = CategoryTheory.CategoryStruct.comp f' (CategoryTheory.CategoryStruct.comp g' h.hom) β CategoryTheory.CategoryStruct.comp f g = CategoryTheory.CategoryStruct.comp f' g' - CategoryTheory.Iso.cancel_iso_inv_right_assoc π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {W X X' Y Z : C} (f : W βΆ X) (g : X βΆ Y) (f' : W βΆ X') (g' : X' βΆ Y) (h : Z β Y) : CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp g h.inv) = CategoryTheory.CategoryStruct.comp f' (CategoryTheory.CategoryStruct.comp g' h.inv) β CategoryTheory.CategoryStruct.comp f g = CategoryTheory.CategoryStruct.comp f' g' - CategoryTheory.Iso.homFromEquiv_apply π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (Ξ± : X β Y) {Z : C} (f : X βΆ Z) : Ξ±.homFromEquiv f = CategoryTheory.CategoryStruct.comp Ξ±.inv f - CategoryTheory.Iso.homToEquiv_apply π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (Ξ± : X β Y) {Z : C} (f : Z βΆ X) : Ξ±.homToEquiv f = CategoryTheory.CategoryStruct.comp f Ξ±.hom - CategoryTheory.Iso.homFromEquiv_symm_apply π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (Ξ± : X β Y) {Z : C} (g : Y βΆ Z) : Ξ±.homFromEquiv.symm g = CategoryTheory.CategoryStruct.comp Ξ±.hom g - CategoryTheory.Iso.homToEquiv_symm_apply π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (Ξ± : X β Y) {Z : C} (g : Z βΆ Y) : Ξ±.homToEquiv.symm g = CategoryTheory.CategoryStruct.comp g Ξ±.inv - CategoryTheory.Iso.trans_mk π Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (hom : X βΆ Y) (inv : Y βΆ X) (hom_inv_id : CategoryTheory.CategoryStruct.comp hom inv = CategoryTheory.CategoryStruct.id X) (inv_hom_id : CategoryTheory.CategoryStruct.comp inv hom = CategoryTheory.CategoryStruct.id Y) (hom' : Y βΆ Z) (inv' : Z βΆ Y) (hom_inv_id' : CategoryTheory.CategoryStruct.comp hom' inv' = CategoryTheory.CategoryStruct.id Y) (inv_hom_id' : CategoryTheory.CategoryStruct.comp inv' hom' = CategoryTheory.CategoryStruct.id Z) (hom_inv_id'' : CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp hom hom') (CategoryTheory.CategoryStruct.comp inv' inv) = CategoryTheory.CategoryStruct.id X) (inv_hom_id'' : CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp inv' inv) (CategoryTheory.CategoryStruct.comp hom hom') = CategoryTheory.CategoryStruct.id Z) : { hom := hom, inv := inv, hom_inv_id := hom_inv_id, inv_hom_id := inv_hom_id } βͺβ« { hom := hom', inv := inv', hom_inv_id := hom_inv_id', inv_hom_id := inv_hom_id' } = { hom := CategoryTheory.CategoryStruct.comp hom hom', inv := CategoryTheory.CategoryStruct.comp inv' inv, hom_inv_id := hom_inv_id'', inv_hom_id := inv_hom_id'' } - CategoryTheory.NatTrans.vcomp_eq_comp π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G H : CategoryTheory.Functor C D} (Ξ± : F βΆ G) (Ξ² : G βΆ H) : CategoryTheory.NatTrans.vcomp Ξ± Ξ² = CategoryTheory.CategoryStruct.comp Ξ± Ξ² - CategoryTheory.NatTrans.id_comm π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (Ξ± Ξ² : CategoryTheory.Functor.id C βΆ CategoryTheory.Functor.id C) : CategoryTheory.CategoryStruct.comp Ξ± Ξ² = CategoryTheory.CategoryStruct.comp Ξ² Ξ± - CategoryTheory.NatTrans.comp_app π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G H : CategoryTheory.Functor C D} (Ξ± : F βΆ G) (Ξ² : G βΆ H) (X : C) : (CategoryTheory.CategoryStruct.comp Ξ± Ξ²).app X = CategoryTheory.CategoryStruct.comp (Ξ±.app X) (Ξ².app X) - CategoryTheory.NatTrans.vcomp_app' π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G H : CategoryTheory.Functor C D} (Ξ± : F βΆ G) (Ξ² : G βΆ H) (X : C) : (CategoryTheory.CategoryStruct.comp Ξ± Ξ²).app X = CategoryTheory.CategoryStruct.comp (Ξ±.app X) (Ξ².app X) - CategoryTheory.NatTrans.comp_app_assoc π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G H : CategoryTheory.Functor C D} (Ξ± : F βΆ G) (Ξ² : G βΆ H) (X : C) {Z : D} (h : H.obj X βΆ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.CategoryStruct.comp Ξ± Ξ²).app X) h = CategoryTheory.CategoryStruct.comp (Ξ±.app X) (CategoryTheory.CategoryStruct.comp (Ξ².app X) h) - CategoryTheory.NatTrans.hcomp_app π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G : CategoryTheory.Functor C D} {H I : CategoryTheory.Functor D E} (Ξ± : F βΆ G) (Ξ² : H βΆ I) (X : C) : (Ξ± β« Ξ²).app X = CategoryTheory.CategoryStruct.comp (Ξ².app (F.obj X)) (I.map (Ξ±.app X)) - CategoryTheory.NatTrans.hcomp_app' π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G : CategoryTheory.Functor C D} {H I : CategoryTheory.Functor D E} (Ξ± : F βΆ G) (Ξ² : H βΆ I) (X : C) : (Ξ± β« Ξ²).app X = CategoryTheory.CategoryStruct.comp (H.map (Ξ±.app X)) (Ξ².app (G.obj X)) - CategoryTheory.NatTrans.naturality_inv π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F βΆ G) {X Y : C} (f : X βΆ Y) [CategoryTheory.IsIso (Ξ±.app X)] [CategoryTheory.IsIso (Ξ±.app Y)] : CategoryTheory.CategoryStruct.comp (CategoryTheory.inv (Ξ±.app X)) (F.map f) = CategoryTheory.CategoryStruct.comp (G.map f) (CategoryTheory.inv (Ξ±.app Y)) - CategoryTheory.Iso.map_hom_inv_id_app π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {X Y : C} (e : X β Y) (F : CategoryTheory.Functor C (CategoryTheory.Functor D E)) (Z : D) : CategoryTheory.CategoryStruct.comp ((F.map e.hom).app Z) ((F.map e.inv).app Z) = CategoryTheory.CategoryStruct.id ((F.obj X).obj Z) - CategoryTheory.Iso.map_inv_hom_id_app π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {X Y : C} (e : X β Y) (F : CategoryTheory.Functor C (CategoryTheory.Functor D E)) (Z : D) : CategoryTheory.CategoryStruct.comp ((F.map e.inv).app Z) ((F.map e.hom).app Z) = CategoryTheory.CategoryStruct.id ((F.obj Y).obj Z) - CategoryTheory.NatTrans.naturality_inv_assoc π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F βΆ G) {X Y : C} (f : X βΆ Y) [CategoryTheory.IsIso (Ξ±.app X)] [CategoryTheory.IsIso (Ξ±.app Y)] {Z : D} (h : F.obj Y βΆ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.inv (Ξ±.app X)) (CategoryTheory.CategoryStruct.comp (F.map f) h) = CategoryTheory.CategoryStruct.comp (G.map f) (CategoryTheory.CategoryStruct.comp (CategoryTheory.inv (Ξ±.app Y)) h) - CategoryTheory.Iso.map_hom_inv_id_app_assoc π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {X Y : C} (e : X β Y) (F : CategoryTheory.Functor C (CategoryTheory.Functor D E)) (Z : D) {Zβ : E} (h : (F.obj X).obj Z βΆ Zβ) : CategoryTheory.CategoryStruct.comp ((F.map e.hom).app Z) (CategoryTheory.CategoryStruct.comp ((F.map e.inv).app Z) h) = h - CategoryTheory.Iso.map_inv_hom_id_app_assoc π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {X Y : C} (e : X β Y) (F : CategoryTheory.Functor C (CategoryTheory.Functor D E)) (Z : D) {Zβ : E} (h : (F.obj Y).obj Z βΆ Zβ) : CategoryTheory.CategoryStruct.comp ((F.map e.inv).app Z) (CategoryTheory.CategoryStruct.comp ((F.map e.hom).app Z) h) = h - CategoryTheory.NatTrans.exchange π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G H : CategoryTheory.Functor C D} {I J K : CategoryTheory.Functor D E} (Ξ± : F βΆ G) (Ξ² : G βΆ H) (Ξ³ : I βΆ J) (Ξ΄ : J βΆ K) : CategoryTheory.CategoryStruct.comp Ξ± Ξ² β« CategoryTheory.CategoryStruct.comp Ξ³ Ξ΄ = CategoryTheory.CategoryStruct.comp (Ξ± β« Ξ³) (Ξ² β« Ξ΄) - CategoryTheory.NatTrans.app_naturality π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D E)} (T : F βΆ G) (X : C) {Y Z : D} (f : Y βΆ Z) : CategoryTheory.CategoryStruct.comp ((F.obj X).map f) ((T.app X).app Z) = CategoryTheory.CategoryStruct.comp ((T.app X).app Y) ((G.obj X).map f) - CategoryTheory.NatTrans.naturality_app π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D E)} (T : F βΆ G) (Z : D) {X Y : C} (f : X βΆ Y) : CategoryTheory.CategoryStruct.comp ((F.map f).app Z) ((T.app Y).app Z) = CategoryTheory.CategoryStruct.comp ((T.app X).app Z) ((G.map f).app Z) - CategoryTheory.NatTrans.app_naturality_assoc π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D E)} (T : F βΆ G) (X : C) {Y Z : D} (f : Y βΆ Z) {Zβ : E} (h : (G.obj X).obj Z βΆ Zβ) : CategoryTheory.CategoryStruct.comp ((F.obj X).map f) (CategoryTheory.CategoryStruct.comp ((T.app X).app Z) h) = CategoryTheory.CategoryStruct.comp ((T.app X).app Y) (CategoryTheory.CategoryStruct.comp ((G.obj X).map f) h) - CategoryTheory.NatTrans.naturality_app_assoc π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D E)} (T : F βΆ G) (Z : D) {X Y : C} (f : X βΆ Y) {Zβ : E} (h : (G.obj Y).obj Z βΆ Zβ) : CategoryTheory.CategoryStruct.comp ((F.map f).app Z) (CategoryTheory.CategoryStruct.comp ((T.app Y).app Z) h) = CategoryTheory.CategoryStruct.comp ((T.app X).app Z) (CategoryTheory.CategoryStruct.comp ((G.map f).app Z) h) - CategoryTheory.NatTrans.naturality_app_app π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {E' : Type uβ} [CategoryTheory.Category.{vβ, uβ} E'] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D (CategoryTheory.Functor E E'))} (Ξ± : F βΆ G) {Xβ Yβ : C} (f : Xβ βΆ Yβ) (Xβ : D) (Xβ : E) : CategoryTheory.CategoryStruct.comp (((F.map f).app Xβ).app Xβ) (((Ξ±.app Yβ).app Xβ).app Xβ) = CategoryTheory.CategoryStruct.comp (((Ξ±.app Xβ).app Xβ).app Xβ) (((G.map f).app Xβ).app Xβ) - CategoryTheory.NatTrans.naturality_app_app_assoc π Mathlib.CategoryTheory.Functor.Category
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {E' : Type uβ} [CategoryTheory.Category.{vβ, uβ} E'] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D (CategoryTheory.Functor E E'))} (Ξ± : F βΆ G) {Xβ Yβ : C} (f : Xβ βΆ Yβ) (Xβ : D) (Xβ : E) {Z : E'} (h : ((G.obj Yβ).obj Xβ).obj Xβ βΆ Z) : CategoryTheory.CategoryStruct.comp (((F.map f).app Xβ).app Xβ) (CategoryTheory.CategoryStruct.comp (((Ξ±.app Yβ).app Xβ).app Xβ) h) = CategoryTheory.CategoryStruct.comp (((Ξ±.app Xβ).app Xβ).app Xβ) (CategoryTheory.CategoryStruct.comp (((G.map f).app Xβ).app Xβ) h) - CategoryTheory.Iso.hom_inv_id_app π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F β G) (X : C) : CategoryTheory.CategoryStruct.comp (Ξ±.hom.app X) (Ξ±.inv.app X) = CategoryTheory.CategoryStruct.id (F.obj X) - CategoryTheory.Iso.inv_hom_id_app π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F β G) (X : C) : CategoryTheory.CategoryStruct.comp (Ξ±.inv.app X) (Ξ±.hom.app X) = CategoryTheory.CategoryStruct.id (G.obj X) - CategoryTheory.Iso.hom_inv_id_app_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F β G) (X : C) {Z : D} (h : F.obj X βΆ Z) : CategoryTheory.CategoryStruct.comp (Ξ±.hom.app X) (CategoryTheory.CategoryStruct.comp (Ξ±.inv.app X) h) = h - CategoryTheory.Iso.inv_hom_id_app_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F β G) (X : C) {Z : D} (h : G.obj X βΆ Z) : CategoryTheory.CategoryStruct.comp (Ξ±.inv.app X) (CategoryTheory.CategoryStruct.comp (Ξ±.hom.app X) h) = h - CategoryTheory.NatTrans.naturality_1 π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F βΆ G) {X Y : C} (e : X β Y) : CategoryTheory.CategoryStruct.comp (F.map e.inv) (CategoryTheory.CategoryStruct.comp (Ξ±.app X) (G.map e.hom)) = Ξ±.app Y - CategoryTheory.NatTrans.naturality_2 π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F βΆ G) {X Y : C} (e : X β Y) : CategoryTheory.CategoryStruct.comp (F.map e.hom) (CategoryTheory.CategoryStruct.comp (Ξ±.app Y) (G.map e.inv)) = Ξ±.app X - CategoryTheory.NatIso.naturality_1 π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} {X Y : C} (Ξ± : F β G) (f : X βΆ Y) : CategoryTheory.CategoryStruct.comp (Ξ±.inv.app X) (CategoryTheory.CategoryStruct.comp (F.map f) (Ξ±.hom.app Y)) = G.map f - CategoryTheory.NatIso.naturality_2 π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} {X Y : C} (Ξ± : F β G) (f : X βΆ Y) : CategoryTheory.CategoryStruct.comp (Ξ±.hom.app X) (CategoryTheory.CategoryStruct.comp (G.map f) (Ξ±.inv.app Y)) = F.map f - CategoryTheory.NatIso.cancel_natIso_hom_left π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F β G) {X : C} {Y : D} (g g' : G.obj X βΆ Y) : CategoryTheory.CategoryStruct.comp (Ξ±.hom.app X) g = CategoryTheory.CategoryStruct.comp (Ξ±.hom.app X) g' β g = g' - CategoryTheory.NatIso.cancel_natIso_hom_right π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F β G) {X : C} {Y : D} (g g' : Y βΆ F.obj X) : CategoryTheory.CategoryStruct.comp g (Ξ±.hom.app X) = CategoryTheory.CategoryStruct.comp g' (Ξ±.hom.app X) β g = g' - CategoryTheory.NatIso.cancel_natIso_inv_left π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F β G) {X : C} {Y : D} (g g' : F.obj X βΆ Y) : CategoryTheory.CategoryStruct.comp (Ξ±.inv.app X) g = CategoryTheory.CategoryStruct.comp (Ξ±.inv.app X) g' β g = g' - CategoryTheory.NatIso.cancel_natIso_inv_right π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F β G) {X : C} {Y : D} (g g' : Y βΆ G.obj X) : CategoryTheory.CategoryStruct.comp g (Ξ±.inv.app X) = CategoryTheory.CategoryStruct.comp g' (Ξ±.inv.app X) β g = g' - CategoryTheory.NatIso.ofComponents π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (app : (X : C) β F.obj X β G.obj X) (naturality : β {X Y : C} (f : X βΆ Y), CategoryTheory.CategoryStruct.comp (F.map f) (app Y).hom = CategoryTheory.CategoryStruct.comp (app X).hom (G.map f) := by cat_disch) : F β G - CategoryTheory.NatIso.ofComponents' π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (app : (X : C) β F.obj X β G.obj X) (naturality : β {X Y : C} (f : Y βΆ X), CategoryTheory.CategoryStruct.comp (app Y).inv (F.map f) = CategoryTheory.CategoryStruct.comp (G.map f) (app X).inv := by cat_disch) : F β G - CategoryTheory.NatIso.naturality_1' π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} {X Y : C} (Ξ± : F βΆ G) (f : X βΆ Y) {xβ : CategoryTheory.IsIso (Ξ±.app X)} : CategoryTheory.CategoryStruct.comp (CategoryTheory.inv (Ξ±.app X)) (CategoryTheory.CategoryStruct.comp (F.map f) (Ξ±.app Y)) = G.map f - CategoryTheory.NatIso.naturality_2' π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} {X Y : C} (Ξ± : F βΆ G) (f : X βΆ Y) {xβ : CategoryTheory.IsIso (Ξ±.app Y)} : CategoryTheory.CategoryStruct.comp (Ξ±.app X) (CategoryTheory.CategoryStruct.comp (G.map f) (CategoryTheory.inv (Ξ±.app Y))) = F.map f - CategoryTheory.NatTrans.naturality_1_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F βΆ G) {X Y : C} (e : X β Y) {Z : D} (h : G.obj Y βΆ Z) : CategoryTheory.CategoryStruct.comp (F.map e.inv) (CategoryTheory.CategoryStruct.comp (Ξ±.app X) (CategoryTheory.CategoryStruct.comp (G.map e.hom) h)) = CategoryTheory.CategoryStruct.comp (Ξ±.app Y) h - CategoryTheory.NatTrans.naturality_2_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F βΆ G) {X Y : C} (e : X β Y) {Z : D} (h : G.obj X βΆ Z) : CategoryTheory.CategoryStruct.comp (F.map e.hom) (CategoryTheory.CategoryStruct.comp (Ξ±.app Y) (CategoryTheory.CategoryStruct.comp (G.map e.inv) h)) = CategoryTheory.CategoryStruct.comp (Ξ±.app X) h - CategoryTheory.NatIso.ofComponents.app π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (app' : (X : C) β F.obj X β G.obj X) (naturality : β {X Y : C} (f : X βΆ Y), CategoryTheory.CategoryStruct.comp (F.map f) (app' Y).hom = CategoryTheory.CategoryStruct.comp (app' X).hom (G.map f)) (X : C) : (CategoryTheory.NatIso.ofComponents app' naturality).app X = app' X - CategoryTheory.NatIso.ofComponents'.app π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (app' : (X : C) β F.obj X β G.obj X) (naturality : β {X Y : C} (f : Y βΆ X), CategoryTheory.CategoryStruct.comp (app' Y).inv (F.map f) = CategoryTheory.CategoryStruct.comp (G.map f) (app' X).inv) (X : C) : (CategoryTheory.NatIso.ofComponents' app' naturality).app X = app' X - CategoryTheory.NatIso.naturality_1_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} {X Y : C} (Ξ± : F β G) (f : X βΆ Y) {Z : D} (h : G.obj Y βΆ Z) : CategoryTheory.CategoryStruct.comp (Ξ±.inv.app X) (CategoryTheory.CategoryStruct.comp (F.map f) (CategoryTheory.CategoryStruct.comp (Ξ±.hom.app Y) h)) = CategoryTheory.CategoryStruct.comp (G.map f) h - CategoryTheory.NatIso.naturality_2_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} {X Y : C} (Ξ± : F β G) (f : X βΆ Y) {Z : D} (h : F.obj Y βΆ Z) : CategoryTheory.CategoryStruct.comp (Ξ±.hom.app X) (CategoryTheory.CategoryStruct.comp (G.map f) (CategoryTheory.CategoryStruct.comp (Ξ±.inv.app Y) h)) = CategoryTheory.CategoryStruct.comp (F.map f) h - CategoryTheory.NatIso.naturality_1'_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} {X Y : C} (Ξ± : F βΆ G) (f : X βΆ Y) {xβ : CategoryTheory.IsIso (Ξ±.app X)} {Z : D} (h : G.obj Y βΆ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.inv (Ξ±.app X)) (CategoryTheory.CategoryStruct.comp (F.map f) (CategoryTheory.CategoryStruct.comp (Ξ±.app Y) h)) = CategoryTheory.CategoryStruct.comp (G.map f) h - CategoryTheory.NatIso.naturality_2'_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} {X Y : C} (Ξ± : F βΆ G) (f : X βΆ Y) {xβ : CategoryTheory.IsIso (Ξ±.app Y)} {Z : D} (h : F.obj Y βΆ Z) : CategoryTheory.CategoryStruct.comp (Ξ±.app X) (CategoryTheory.CategoryStruct.comp (G.map f) (CategoryTheory.CategoryStruct.comp (CategoryTheory.inv (Ξ±.app Y)) h)) = CategoryTheory.CategoryStruct.comp (F.map f) h - CategoryTheory.NatIso.ofComponents'_hom_app π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (app : (X : C) β F.obj X β G.obj X) (naturality : β {X Y : C} (f : Y βΆ X), CategoryTheory.CategoryStruct.comp (app Y).inv (F.map f) = CategoryTheory.CategoryStruct.comp (G.map f) (app X).inv := by cat_disch) (X : C) : (CategoryTheory.NatIso.ofComponents' app naturality).hom.app X = (app X).hom - CategoryTheory.NatIso.ofComponents'_inv_app π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (app : (X : C) β F.obj X β G.obj X) (naturality : β {X Y : C} (f : Y βΆ X), CategoryTheory.CategoryStruct.comp (app Y).inv (F.map f) = CategoryTheory.CategoryStruct.comp (G.map f) (app X).inv := by cat_disch) (X : C) : (CategoryTheory.NatIso.ofComponents' app naturality).inv.app X = (app X).inv - CategoryTheory.NatIso.ofComponents_hom_app π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (app : (X : C) β F.obj X β G.obj X) (naturality : β {X Y : C} (f : X βΆ Y), CategoryTheory.CategoryStruct.comp (F.map f) (app Y).hom = CategoryTheory.CategoryStruct.comp (app X).hom (G.map f) := by cat_disch) (X : C) : (CategoryTheory.NatIso.ofComponents app naturality).hom.app X = (app X).hom - CategoryTheory.NatIso.ofComponents_inv_app π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (app : (X : C) β F.obj X β G.obj X) (naturality : β {X Y : C} (f : X βΆ Y), CategoryTheory.CategoryStruct.comp (F.map f) (app Y).hom = CategoryTheory.CategoryStruct.comp (app X).hom (G.map f) := by cat_disch) (X : C) : (CategoryTheory.NatIso.ofComponents app naturality).inv.app X = (app X).inv - CategoryTheory.NatIso.cancel_natIso_hom_right_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F β G) {W X X' : D} {Y : C} (f : W βΆ X) (g : X βΆ F.obj Y) (f' : W βΆ X') (g' : X' βΆ F.obj Y) : CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp g (Ξ±.hom.app Y)) = CategoryTheory.CategoryStruct.comp f' (CategoryTheory.CategoryStruct.comp g' (Ξ±.hom.app Y)) β CategoryTheory.CategoryStruct.comp f g = CategoryTheory.CategoryStruct.comp f' g' - CategoryTheory.NatIso.cancel_natIso_inv_right_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F G : CategoryTheory.Functor C D} (Ξ± : F β G) {W X X' : D} {Y : C} (f : W βΆ X) (g : X βΆ G.obj Y) (f' : W βΆ X') (g' : X' βΆ G.obj Y) : CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp g (Ξ±.inv.app Y)) = CategoryTheory.CategoryStruct.comp f' (CategoryTheory.CategoryStruct.comp g' (Ξ±.inv.app Y)) β CategoryTheory.CategoryStruct.comp f g = CategoryTheory.CategoryStruct.comp f' g' - CategoryTheory.Iso.hom_inv_id_app_app π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D E)} (e : F β G) (Xβ : C) (Xβ : D) : CategoryTheory.CategoryStruct.comp ((e.hom.app Xβ).app Xβ) ((e.inv.app Xβ).app Xβ) = CategoryTheory.CategoryStruct.id ((F.obj Xβ).obj Xβ) - CategoryTheory.Iso.inv_hom_id_app_app π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D E)} (e : F β G) (Xβ : C) (Xβ : D) : CategoryTheory.CategoryStruct.comp ((e.inv.app Xβ).app Xβ) ((e.hom.app Xβ).app Xβ) = CategoryTheory.CategoryStruct.id ((G.obj Xβ).obj Xβ) - CategoryTheory.Iso.hom_inv_id_app_app_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D E)} (e : F β G) (Xβ : C) (Xβ : D) {Z : E} (h : (F.obj Xβ).obj Xβ βΆ Z) : CategoryTheory.CategoryStruct.comp ((e.hom.app Xβ).app Xβ) (CategoryTheory.CategoryStruct.comp ((e.inv.app Xβ).app Xβ) h) = h - CategoryTheory.Iso.inv_hom_id_app_app_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D E)} (e : F β G) (Xβ : C) (Xβ : D) {Z : E} (h : (G.obj Xβ).obj Xβ βΆ Z) : CategoryTheory.CategoryStruct.comp ((e.inv.app Xβ).app Xβ) (CategoryTheory.CategoryStruct.comp ((e.hom.app Xβ).app Xβ) h) = h - CategoryTheory.Iso.hom_inv_id_app_app_app π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {E' : Type uβ} [CategoryTheory.Category.{vβ, uβ} E'] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D (CategoryTheory.Functor E E'))} (e : F β G) (Xβ : C) (Xβ : D) (Xβ : E) : CategoryTheory.CategoryStruct.comp (((e.hom.app Xβ).app Xβ).app Xβ) (((e.inv.app Xβ).app Xβ).app Xβ) = CategoryTheory.CategoryStruct.id (((F.obj Xβ).obj Xβ).obj Xβ) - CategoryTheory.Iso.inv_hom_id_app_app_app π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {E' : Type uβ} [CategoryTheory.Category.{vβ, uβ} E'] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D (CategoryTheory.Functor E E'))} (e : F β G) (Xβ : C) (Xβ : D) (Xβ : E) : CategoryTheory.CategoryStruct.comp (((e.inv.app Xβ).app Xβ).app Xβ) (((e.hom.app Xβ).app Xβ).app Xβ) = CategoryTheory.CategoryStruct.id (((G.obj Xβ).obj Xβ).obj Xβ) - CategoryTheory.Iso.hom_inv_id_app_app_app_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {E' : Type uβ} [CategoryTheory.Category.{vβ, uβ} E'] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D (CategoryTheory.Functor E E'))} (e : F β G) (Xβ : C) (Xβ : D) (Xβ : E) {Z : E'} (h : ((F.obj Xβ).obj Xβ).obj Xβ βΆ Z) : CategoryTheory.CategoryStruct.comp (((e.hom.app Xβ).app Xβ).app Xβ) (CategoryTheory.CategoryStruct.comp (((e.inv.app Xβ).app Xβ).app Xβ) h) = h - CategoryTheory.Iso.inv_hom_id_app_app_app_assoc π Mathlib.CategoryTheory.NatIso
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {E' : Type uβ} [CategoryTheory.Category.{vβ, uβ} E'] {F G : CategoryTheory.Functor C (CategoryTheory.Functor D (CategoryTheory.Functor E E'))} (e : F β G) (Xβ : C) (Xβ : D) (Xβ : E) {Z : E'} (h : ((G.obj Xβ).obj Xβ).obj Xβ βΆ Z) : CategoryTheory.CategoryStruct.comp (((e.inv.app Xβ).app Xβ).app Xβ) (CategoryTheory.CategoryStruct.comp (((e.hom.app Xβ).app Xβ).app Xβ) h) = h - CategoryTheory.Functor.FullyFaithful.preimage_comp π Mathlib.CategoryTheory.Functor.FullyFaithful
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F : CategoryTheory.Functor C D} (hF : F.FullyFaithful) {X Y Z : C} (f : F.obj X βΆ F.obj Y) (g : F.obj Y βΆ F.obj Z) : hF.preimage (CategoryTheory.CategoryStruct.comp f g) = CategoryTheory.CategoryStruct.comp (hF.preimage f) (hF.preimage g) - CategoryTheory.Functor.preimage_comp π Mathlib.CategoryTheory.Functor.FullyFaithful
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F : CategoryTheory.Functor C D} {X Y Z : C} [F.Full] [F.Faithful] (f : F.obj X βΆ F.obj Y) (g : F.obj Y βΆ F.obj Z) : F.preimage (CategoryTheory.CategoryStruct.comp f g) = CategoryTheory.CategoryStruct.comp (F.preimage f) (F.preimage g) - CategoryTheory.Functor.FullyFaithful.preimage_comp_assoc π Mathlib.CategoryTheory.Functor.FullyFaithful
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {F : CategoryTheory.Functor C D} (hF : F.FullyFaithful) {X Y Z : C} (f : F.obj X βΆ F.obj Y) (g : F.obj Y βΆ F.obj Z) {Zβ : C} (h : Z βΆ Zβ) : CategoryTheory.CategoryStruct.comp (hF.preimage (CategoryTheory.CategoryStruct.comp f g)) h = CategoryTheory.CategoryStruct.comp (hF.preimage f) (CategoryTheory.CategoryStruct.comp (hF.preimage g) h) - CategoryTheory.InducedCategory.comp_hom π Mathlib.CategoryTheory.InducedCategory
{C : Type uβ} {D : Type uβ} [CategoryTheory.Category.{v, uβ} D] {F : C β D} {Xβ Yβ Zβ : CategoryTheory.InducedCategory D F} (f : Xβ.Hom Yβ) (g : Yβ.Hom Zβ) : (CategoryTheory.CategoryStruct.comp f g).hom = CategoryTheory.CategoryStruct.comp f.hom g.hom - CategoryTheory.InducedCategory.comp_hom_assoc π Mathlib.CategoryTheory.InducedCategory
{C : Type uβ} {D : Type uβ} [CategoryTheory.Category.{v, uβ} D] {F : C β D} {Xβ Yβ Zβ : CategoryTheory.InducedCategory D F} (f : Xβ.Hom Yβ) (g : Yβ.Hom Zβ) {Z : D} (h : F Zβ βΆ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp f g).hom h = CategoryTheory.CategoryStruct.comp f.hom (CategoryTheory.CategoryStruct.comp g.hom h) - CategoryTheory.ObjectProperty.isoHom_inv_id_hom π Mathlib.CategoryTheory.ObjectProperty.FullSubcategory
{C : Type u} [CategoryTheory.Category.{v, u} C] {P : CategoryTheory.ObjectProperty C} {X Y : P.FullSubcategory} (e : X β Y) : CategoryTheory.CategoryStruct.comp e.hom.hom e.inv.hom = CategoryTheory.CategoryStruct.id X.obj - CategoryTheory.ObjectProperty.isoInv_hom_id_hom π Mathlib.CategoryTheory.ObjectProperty.FullSubcategory
{C : Type u} [CategoryTheory.Category.{v, u} C] {P : CategoryTheory.ObjectProperty C} {X Y : P.FullSubcategory} (e : X β Y) : CategoryTheory.CategoryStruct.comp e.inv.hom e.hom.hom = CategoryTheory.CategoryStruct.id Y.obj - CategoryTheory.ObjectProperty.isoHom_inv_id_hom_assoc π Mathlib.CategoryTheory.ObjectProperty.FullSubcategory
{C : Type u} [CategoryTheory.Category.{v, u} C] {P : CategoryTheory.ObjectProperty C} {X Y : P.FullSubcategory} (e : X β Y) {Z : C} (h : X.obj βΆ Z) : CategoryTheory.CategoryStruct.comp e.hom.hom (CategoryTheory.CategoryStruct.comp e.inv.hom h) = h - CategoryTheory.ObjectProperty.isoInv_hom_id_hom_assoc π Mathlib.CategoryTheory.ObjectProperty.FullSubcategory
{C : Type u} [CategoryTheory.Category.{v, u} C] {P : CategoryTheory.ObjectProperty C} {X Y : P.FullSubcategory} (e : X β Y) {Z : C} (h : Y.obj βΆ Z) : CategoryTheory.CategoryStruct.comp e.inv.hom (CategoryTheory.CategoryStruct.comp e.hom.hom h) = h - CategoryTheory.ObjectProperty.FullSubcategory.comp_hom π Mathlib.CategoryTheory.ObjectProperty.FullSubcategory
{C : Type u} [CategoryTheory.Category.{v, u} C] (P : CategoryTheory.ObjectProperty C) {X Y Z : P.FullSubcategory} (f : X βΆ Y) (g : Y βΆ Z) : (CategoryTheory.CategoryStruct.comp f g).hom = CategoryTheory.CategoryStruct.comp f.hom g.hom - CategoryTheory.ObjectProperty.FullSubcategory.comp_hom_assoc π Mathlib.CategoryTheory.ObjectProperty.FullSubcategory
{C : Type u} [CategoryTheory.Category.{v, u} C] (P : CategoryTheory.ObjectProperty C) {X Y Z : P.FullSubcategory} (f : X βΆ Y) (g : Y βΆ Z) {Zβ : C} (h : Z.obj βΆ Zβ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp f g).hom h = CategoryTheory.CategoryStruct.comp f.hom (CategoryTheory.CategoryStruct.comp g.hom h) - CategoryTheory.ConcreteCategory.comp_apply π Mathlib.CategoryTheory.ConcreteCategory.Basic
{C : Type u} {instβ : CategoryTheory.Category.{v, u} C} {FC : outParam (C β C β Type u_1)} {CC : outParam (C β Type w)} {instβΒΉ : outParam ((X Y : C) β FunLike (FC X Y) (CC X) (CC Y))} [self : CategoryTheory.ConcreteCategory C FC] {X Y Z : C} (f : X βΆ Y) (g : Y βΆ Z) (x : CC X) : (CategoryTheory.ConcreteCategory.hom (CategoryTheory.CategoryStruct.comp f g)) x = (CategoryTheory.ConcreteCategory.hom g) ((CategoryTheory.ConcreteCategory.hom f) x) - CategoryTheory.hom_comp π Mathlib.CategoryTheory.ConcreteCategory.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {FC : C β C β Type u_1} {CC : C β Type w} [(X Y : C) β FunLike (FC X Y) (CC X) (CC Y)] [CategoryTheory.ConcreteCategory C FC] {X Y Z : C} (f : X βΆ Y) (g : Y βΆ Z) : β(CategoryTheory.ConcreteCategory.hom (CategoryTheory.CategoryStruct.comp f g)) = β(CategoryTheory.ConcreteCategory.hom g) β β(CategoryTheory.ConcreteCategory.hom f) - CategoryTheory.ConcreteCategory.coe_comp π Mathlib.CategoryTheory.ConcreteCategory.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {FC : C β C β Type u_1} {CC : C β Type w} [(X Y : C) β FunLike (FC X Y) (CC X) (CC Y)] [CategoryTheory.ConcreteCategory C FC] {X Y Z : C} (f : X βΆ Y) (g : Y βΆ Z) : β(CategoryTheory.ConcreteCategory.hom (CategoryTheory.CategoryStruct.comp f g)) = β(CategoryTheory.ConcreteCategory.hom g) β β(CategoryTheory.ConcreteCategory.hom f) - CategoryTheory.comp_apply π Mathlib.CategoryTheory.ConcreteCategory.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {FC : C β C β Type u_1} {CC : C β Type w} [(X Y : C) β FunLike (FC X Y) (CC X) (CC Y)] [CategoryTheory.ConcreteCategory C FC] {X Y Z : C} (f : X βΆ Y) (g : Y βΆ Z) (x : CategoryTheory.ToType X) : (CategoryTheory.ConcreteCategory.hom (CategoryTheory.CategoryStruct.comp f g)) x = (CategoryTheory.ConcreteCategory.hom g) ((CategoryTheory.ConcreteCategory.hom f) x) - CategoryTheory.ConcreteCategory.mk π Mathlib.CategoryTheory.ConcreteCategory.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {FC : outParam (C β C β Type u_1)} {CC : outParam (C β Type w)} [outParam ((X Y : C) β FunLike (FC X Y) (CC X) (CC Y))] (hom : {X Y : C} β (X βΆ Y) β FC X Y) (ofHom : {X Y : C} β FC X Y β (X βΆ Y)) (hom_ofHom : β {X Y : C} (f : FC X Y), hom (ofHom f) = f := by cat_disch) (ofHom_hom : β {X Y : C} (f : X βΆ Y), ofHom (hom f) = f := by cat_disch) (id_apply : β {X : C} (x : CC X), (hom (CategoryTheory.CategoryStruct.id X)) x = x := by cat_disch) (comp_apply : β {X Y Z : C} (f : X βΆ Y) (g : Y βΆ Z) (x : CC X), (hom (CategoryTheory.CategoryStruct.comp f g)) x = (hom g) ((hom f) x) := by cat_disch) : CategoryTheory.ConcreteCategory C FC - CategoryTheory.Functor.NatTrans.hcomp_eq_whiskerLeft_comp_whiskerRight π Mathlib.CategoryTheory.Whiskering
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G : CategoryTheory.Functor C D} {H K : CategoryTheory.Functor D E} (Ξ± : F βΆ G) (Ξ² : H βΆ K) : Ξ± β« Ξ² = CategoryTheory.CategoryStruct.comp (F.whiskerLeft Ξ²) (CategoryTheory.Functor.whiskerRight Ξ± K) - CategoryTheory.Functor.NatTrans.hcomp_eq_whiskerRight_comp_whiskerLeft π Mathlib.CategoryTheory.Whiskering
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G : CategoryTheory.Functor C D} {H K : CategoryTheory.Functor D E} (Ξ± : G βΆ F) (Ξ² : K βΆ H) : Ξ± β« Ξ² = CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.whiskerRight Ξ± K) (F.whiskerLeft Ξ²) - CategoryTheory.Functor.whiskerLeft_comp π Mathlib.CategoryTheory.Whiskering
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] (F : CategoryTheory.Functor C D) {G H K : CategoryTheory.Functor D E} (Ξ± : G βΆ H) (Ξ² : H βΆ K) : F.whiskerLeft (CategoryTheory.CategoryStruct.comp Ξ± Ξ²) = CategoryTheory.CategoryStruct.comp (F.whiskerLeft Ξ±) (F.whiskerLeft Ξ²) - CategoryTheory.Functor.whiskerRight_comp π Mathlib.CategoryTheory.Whiskering
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {G H K : CategoryTheory.Functor C D} (Ξ± : G βΆ H) (Ξ² : H βΆ K) (F : CategoryTheory.Functor D E) : CategoryTheory.Functor.whiskerRight (CategoryTheory.CategoryStruct.comp Ξ± Ξ²) F = CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.whiskerRight Ξ± F) (CategoryTheory.Functor.whiskerRight Ξ² F) - CategoryTheory.Functor.whiskerLeft_comp_whiskerRight π Mathlib.CategoryTheory.Whiskering
{C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {E : Type uβ} [CategoryTheory.Category.{vβ, uβ} E] {F G : CategoryTheory.Functor C D} {H K : CategoryTheory.Functor D E} (Ξ± : F βΆ G) (Ξ² : H βΆ K) : CategoryTheory.CategoryStruct.comp (F.whiskerLeft Ξ²) (CategoryTheory.Functor.whiskerRight Ξ± K) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.whiskerRight Ξ± H) (G.whiskerLeft Ξ²)
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using the Loogle command from the command palette. You can also try the
#loogle command from LeanSearchClient,
the CLI version, the Loogle
VS Code extension, the lean.nvim
integration or the Zulip bot.
Usage
Loogle finds definitions and lemmas in various ways:
By constant:
πReal.sin
finds all lemmas whose statement somehow mentions the sine function.By lemma name substring:
π"differ"
finds all lemmas that have"differ"somewhere in their lemma name.By subexpression:
π_ * (_ ^ _)
finds all lemmas whose statements somewhere include a product where the second argument is raised to some power.The pattern can also be non-linear, as in
πReal.sqrt ?a * Real.sqrt ?aIf the pattern has parameters, they are matched in any order. Both of these will find
List.map:
π(?a -> ?b) -> List ?a -> List ?b
πList ?a -> (?a -> ?b) -> List ?bBy main conclusion:
π|- tsum _ = _ * tsum _
finds all lemmas where the conclusion (the subexpression to the right of allβandβ) has the given shape.As before, if the pattern has parameters, they are matched against the hypotheses of the lemma in any order; for example,
π|- _ < _ β tsum _ < tsum _
will findtsum_lt_tsumeven though the hypothesisf i < g iis not the last.You can filter for definitions vs theorems: Using
β’ (_ : Type _)finds all definitions which provide data whileβ’ (_ : Prop)finds all theorems (and definitions of proofs).
If you pass more than one such search filter, separated by commas
Loogle will return lemmas which match all of them. The
search
π Real.sin, "two", tsum, _ * _, _ ^ _, |- _ < _ β _
would find all lemmas which mention the constants Real.sin
and tsum, have "two" as a substring of the
lemma name, include a product and a power somewhere in the type,
and have a hypothesis of the form _ < _ (if
there were any such lemmas). Metavariables (?a) are
assigned independently in each filter.
The #lucky button will directly send you to the
documentation of the first hit.
Source code
You can find the source code for this service at https://github.com/nomeata/loogle. The https://loogle.lean-lang.org/ service is provided by the Lean FRO. Please review the Lean FRO Terms of Use and Privacy Policy.
This is Loogle revision 9f11169 serving mathlib revision ce5dd8c