Loogle!
Result
Found 81 declarations mentioning CategoryTheory.Limits.prod.map.
- CategoryTheory.Limits.prod.map ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {W X Y Z : C} [CategoryTheory.Limits.HasBinaryProduct W X] [CategoryTheory.Limits.HasBinaryProduct Y Z] (f : W โถ Y) (g : X โถ Z) : W โจฏ X โถ Y โจฏ Z - CategoryTheory.Limits.prod.map_id_id ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} [CategoryTheory.Limits.HasBinaryProduct X Y] : CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id X) (CategoryTheory.CategoryStruct.id Y) = CategoryTheory.CategoryStruct.id (X โจฏ Y) - CategoryTheory.Limits.isIso_prod ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {W X Y Z : C} [CategoryTheory.Limits.HasBinaryProduct W X] [CategoryTheory.Limits.HasBinaryProduct Y Z] (f : W โถ Y) (g : X โถ Z) [CategoryTheory.IsIso f] [CategoryTheory.IsIso g] : CategoryTheory.IsIso (CategoryTheory.Limits.prod.map f g) - CategoryTheory.Limits.prod.map_mono ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] {W X Y Z : C} (f : W โถ Y) (g : X โถ Z) [CategoryTheory.Mono f] [CategoryTheory.Mono g] [CategoryTheory.Limits.HasBinaryProduct W X] [CategoryTheory.Limits.HasBinaryProduct Y Z] : CategoryTheory.Mono (CategoryTheory.Limits.prod.map f g) - CategoryTheory.Limits.prod.diag_map ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (f : X โถ Y) [CategoryTheory.Limits.HasBinaryProduct X X] [CategoryTheory.Limits.HasBinaryProduct Y Y] : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.diag X) (CategoryTheory.Limits.prod.map f f) = CategoryTheory.CategoryStruct.comp f (CategoryTheory.Limits.diag Y) - CategoryTheory.Limits.prod.mapIso_hom ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {W X Y Z : C} [CategoryTheory.Limits.HasBinaryProduct W X] [CategoryTheory.Limits.HasBinaryProduct Y Z] (f : W โ Y) (g : X โ Z) : (CategoryTheory.Limits.prod.mapIso f g).hom = CategoryTheory.Limits.prod.map f.hom g.hom - CategoryTheory.Limits.prod.mapIso_inv ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {W X Y Z : C} [CategoryTheory.Limits.HasBinaryProduct W X] [CategoryTheory.Limits.HasBinaryProduct Y Z] (f : W โ Y) (g : X โ Z) : (CategoryTheory.Limits.prod.mapIso f g).inv = CategoryTheory.Limits.prod.map f.inv g.inv - CategoryTheory.Limits.prod.functor_obj_map ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasBinaryProducts C] (X : C) {xโ xโยน : C} (g : xโ โถ xโยน) : (CategoryTheory.Limits.prod.functor.obj X).map g = CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id X) g - CategoryTheory.Limits.prod.map_fst ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {W X Y Z : C} [CategoryTheory.Limits.HasBinaryProduct W X] [CategoryTheory.Limits.HasBinaryProduct Y Z] (f : W โถ Y) (g : X โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f g) CategoryTheory.Limits.prod.fst = CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.fst f - CategoryTheory.Limits.prod.map_snd ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {W X Y Z : C} [CategoryTheory.Limits.HasBinaryProduct W X] [CategoryTheory.Limits.HasBinaryProduct Y Z] (f : W โถ Y) (g : X โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f g) CategoryTheory.Limits.prod.snd = CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.snd g - CategoryTheory.Limits.prod.lift_fst_comp_snd_comp ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {W X Y Z : C} [CategoryTheory.Limits.HasBinaryProduct W Y] [CategoryTheory.Limits.HasBinaryProduct X Z] (g : W โถ X) (g' : Y โถ Z) : CategoryTheory.Limits.prod.lift (CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.fst g) (CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.snd g') = CategoryTheory.Limits.prod.map g g' - CategoryTheory.Limits.prod.diag_map_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (f : X โถ Y) [CategoryTheory.Limits.HasBinaryProduct X X] [CategoryTheory.Limits.HasBinaryProduct Y Y] {Z : C} (h : Y โจฏ Y โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.diag X) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f f) h) = CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.diag Y) h) - CategoryTheory.Limits.prod.diag_map_fst_snd ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} [CategoryTheory.Limits.HasBinaryProduct X Y] [CategoryTheory.Limits.HasBinaryProduct (X โจฏ Y) (X โจฏ Y)] : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.diag (X โจฏ Y)) (CategoryTheory.Limits.prod.map CategoryTheory.Limits.prod.fst CategoryTheory.Limits.prod.snd) = CategoryTheory.CategoryStruct.id (X โจฏ Y) - CategoryTheory.Limits.prod.lift_map ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {V W X Y Z : C} [CategoryTheory.Limits.HasBinaryProduct W X] [CategoryTheory.Limits.HasBinaryProduct Y Z] (f : V โถ W) (g : V โถ X) (h : W โถ Y) (k : X โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.lift f g) (CategoryTheory.Limits.prod.map h k) = CategoryTheory.Limits.prod.lift (CategoryTheory.CategoryStruct.comp f h) (CategoryTheory.CategoryStruct.comp g k) - CategoryTheory.Limits.prod.map_fst_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {W X Y Z : C} [CategoryTheory.Limits.HasBinaryProduct W X] [CategoryTheory.Limits.HasBinaryProduct Y Z] (f : W โถ Y) (g : X โถ Z) {Zโ : C} (h : Y โถ Zโ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f g) (CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.fst h) = CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.fst (CategoryTheory.CategoryStruct.comp f h) - CategoryTheory.Limits.prod.map_snd_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {W X Y Z : C} [CategoryTheory.Limits.HasBinaryProduct W X] [CategoryTheory.Limits.HasBinaryProduct Y Z] (f : W โถ Y) (g : X โถ Z) {Zโ : C} (h : Z โถ Zโ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f g) (CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.snd h) = CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.snd (CategoryTheory.CategoryStruct.comp g h) - CategoryTheory.Limits.prod.map_comp_id ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z W : C} (f : X โถ Y) (g : Y โถ Z) [CategoryTheory.Limits.HasBinaryProduct X W] [CategoryTheory.Limits.HasBinaryProduct Z W] [CategoryTheory.Limits.HasBinaryProduct Y W] : CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.comp f g) (CategoryTheory.CategoryStruct.id W) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f (CategoryTheory.CategoryStruct.id W)) (CategoryTheory.Limits.prod.map g (CategoryTheory.CategoryStruct.id W)) - CategoryTheory.Limits.prod.map_id_comp ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z W : C} (f : X โถ Y) (g : Y โถ Z) [CategoryTheory.Limits.HasBinaryProduct W X] [CategoryTheory.Limits.HasBinaryProduct W Y] [CategoryTheory.Limits.HasBinaryProduct W Z] : CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id W) (CategoryTheory.CategoryStruct.comp f g) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id W) f) (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id W) g) - CategoryTheory.Limits.prod.diag_map_fst_snd_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} [CategoryTheory.Limits.HasBinaryProduct X Y] [CategoryTheory.Limits.HasBinaryProduct (X โจฏ Y) (X โจฏ Y)] {Z : C} (h : X โจฏ Y โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.diag (X โจฏ Y)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map CategoryTheory.Limits.prod.fst CategoryTheory.Limits.prod.snd) h) = h - CategoryTheory.Limits.prod.map_map ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {Aโ Aโ Aโ Bโ Bโ Bโ : C} [CategoryTheory.Limits.HasBinaryProduct Aโ Bโ] [CategoryTheory.Limits.HasBinaryProduct Aโ Bโ] [CategoryTheory.Limits.HasBinaryProduct Aโ Bโ] (f : Aโ โถ Aโ) (g : Bโ โถ Bโ) (h : Aโ โถ Aโ) (k : Bโ โถ Bโ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f g) (CategoryTheory.Limits.prod.map h k) = CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.comp f h) (CategoryTheory.CategoryStruct.comp g k) - CategoryTheory.Limits.prod.lift_map_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {V W X Y Z : C} [CategoryTheory.Limits.HasBinaryProduct W X] [CategoryTheory.Limits.HasBinaryProduct Y Z] (f : V โถ W) (g : V โถ X) (h : W โถ Y) (k : X โถ Z) {Zโ : C} (hโ : Y โจฏ Z โถ Zโ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.lift f g) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map h k) hโ) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.lift (CategoryTheory.CategoryStruct.comp f h) (CategoryTheory.CategoryStruct.comp g k)) hโ - CategoryTheory.Limits.prod.map_comp_id_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z W : C} (f : X โถ Y) (g : Y โถ Z) [CategoryTheory.Limits.HasBinaryProduct X W] [CategoryTheory.Limits.HasBinaryProduct Z W] [CategoryTheory.Limits.HasBinaryProduct Y W] {Zโ : C} (h : Z โจฏ W โถ Zโ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.comp f g) (CategoryTheory.CategoryStruct.id W)) h = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f (CategoryTheory.CategoryStruct.id W)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map g (CategoryTheory.CategoryStruct.id W)) h) - CategoryTheory.Limits.prod.map_id_comp_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z W : C} (f : X โถ Y) (g : Y โถ Z) [CategoryTheory.Limits.HasBinaryProduct W X] [CategoryTheory.Limits.HasBinaryProduct W Y] [CategoryTheory.Limits.HasBinaryProduct W Z] {Zโ : C} (h : W โจฏ Z โถ Zโ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id W) (CategoryTheory.CategoryStruct.comp f g)) h = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id W) f) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id W) g) h) - CategoryTheory.Limits.prod.map_map_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {Aโ Aโ Aโ Bโ Bโ Bโ : C} [CategoryTheory.Limits.HasBinaryProduct Aโ Bโ] [CategoryTheory.Limits.HasBinaryProduct Aโ Bโ] [CategoryTheory.Limits.HasBinaryProduct Aโ Bโ] (f : Aโ โถ Aโ) (g : Bโ โถ Bโ) (h : Aโ โถ Aโ) (k : Bโ โถ Bโ) {Z : C} (hโ : Aโ โจฏ Bโ โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f g) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map h k) hโ) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.comp f h) (CategoryTheory.CategoryStruct.comp g k)) hโ - CategoryTheory.Limits.prod.functor_map_app ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasBinaryProducts C] {Xโ Yโ : C} (f : Xโ โถ Yโ) (T : C) : (CategoryTheory.Limits.prod.functor.map f).app T = CategoryTheory.Limits.prod.map f (CategoryTheory.CategoryStruct.id T) - CategoryTheory.Limits.prod_rightUnitor_inv_naturality ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} [CategoryTheory.Limits.HasTerminal C] [CategoryTheory.Limits.HasBinaryProducts C] (f : X โถ Y) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.rightUnitor X).inv (CategoryTheory.Limits.prod.map f (CategoryTheory.CategoryStruct.id (โค_ C))) = CategoryTheory.CategoryStruct.comp f (CategoryTheory.Limits.prod.rightUnitor Y).inv - CategoryTheory.Limits.prod.leftUnitor_hom_naturality ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} [CategoryTheory.Limits.HasTerminal C] [CategoryTheory.Limits.HasBinaryProducts C] (f : X โถ Y) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id (โค_ C)) f) (CategoryTheory.Limits.prod.leftUnitor Y).hom = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.leftUnitor X).hom f - CategoryTheory.Limits.prod.leftUnitor_inv_naturality ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} [CategoryTheory.Limits.HasTerminal C] [CategoryTheory.Limits.HasBinaryProducts C] (f : X โถ Y) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.leftUnitor X).inv (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id (โค_ C)) f) = CategoryTheory.CategoryStruct.comp f (CategoryTheory.Limits.prod.leftUnitor Y).inv - CategoryTheory.Limits.prod.rightUnitor_hom_naturality ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} [CategoryTheory.Limits.HasTerminal C] [CategoryTheory.Limits.HasBinaryProducts C] (f : X โถ Y) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f (CategoryTheory.CategoryStruct.id (โค_ C))) (CategoryTheory.Limits.prod.rightUnitor Y).hom = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.rightUnitor X).hom f - CategoryTheory.Limits.prodComparison_natural_of_natTrans ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uโ} [CategoryTheory.Category.{w, uโ} D] {F : CategoryTheory.Functor C D} {A B : C} [CategoryTheory.Limits.HasBinaryProduct A B] [CategoryTheory.Limits.HasBinaryProduct (F.obj A) (F.obj B)] {H : CategoryTheory.Functor C D} [CategoryTheory.Limits.HasBinaryProduct (H.obj A) (H.obj B)] (ฮฑ : F โถ H) : CategoryTheory.CategoryStruct.comp (ฮฑ.app (A โจฏ B)) (CategoryTheory.Limits.prodComparison H A B) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prodComparison F A B) (CategoryTheory.Limits.prod.map (ฮฑ.app A) (ฮฑ.app B)) - CategoryTheory.Limits.prodComparison_natural ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uโ} [CategoryTheory.Category.{w, uโ} D] (F : CategoryTheory.Functor C D) {A A' B B' : C} [CategoryTheory.Limits.HasBinaryProduct A B] [CategoryTheory.Limits.HasBinaryProduct A' B'] [CategoryTheory.Limits.HasBinaryProduct (F.obj A) (F.obj B)] [CategoryTheory.Limits.HasBinaryProduct (F.obj A') (F.obj B')] (f : A โถ A') (g : B โถ B') : CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.Limits.prod.map f g)) (CategoryTheory.Limits.prodComparison F A' B') = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prodComparison F A B) (CategoryTheory.Limits.prod.map (F.map f) (F.map g)) - CategoryTheory.Limits.prod_rightUnitor_inv_naturality_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} [CategoryTheory.Limits.HasTerminal C] [CategoryTheory.Limits.HasBinaryProducts C] (f : X โถ Y) {Z : C} (h : Y โจฏ โค_ C โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.rightUnitor X).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f (CategoryTheory.CategoryStruct.id (โค_ C))) h) = CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.rightUnitor Y).inv h) - CategoryTheory.Limits.prod.leftUnitor_hom_naturality_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} [CategoryTheory.Limits.HasTerminal C] [CategoryTheory.Limits.HasBinaryProducts C] (f : X โถ Y) {Z : C} (h : Y โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id (โค_ C)) f) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.leftUnitor Y).hom h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.leftUnitor X).hom (CategoryTheory.CategoryStruct.comp f h) - CategoryTheory.Limits.prod.leftUnitor_inv_naturality_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} [CategoryTheory.Limits.HasTerminal C] [CategoryTheory.Limits.HasBinaryProducts C] (f : X โถ Y) {Z : C} (h : (โค_ C) โจฏ Y โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.leftUnitor X).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id (โค_ C)) f) h) = CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.leftUnitor Y).inv h) - CategoryTheory.Limits.prod.rightUnitor_hom_naturality_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} [CategoryTheory.Limits.HasTerminal C] [CategoryTheory.Limits.HasBinaryProducts C] (f : X โถ Y) {Z : C} (h : Y โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f (CategoryTheory.CategoryStruct.id (โค_ C))) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.rightUnitor Y).hom h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.rightUnitor X).hom (CategoryTheory.CategoryStruct.comp f h) - CategoryTheory.Limits.prod.map_swap ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {A B X Y : C} (f : A โถ B) (g : X โถ Y) [CategoryTheory.Limits.HasLimitsOfShape (CategoryTheory.Discrete CategoryTheory.Limits.WalkingPair) C] : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id X) f) (CategoryTheory.Limits.prod.map g (CategoryTheory.CategoryStruct.id B)) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map g (CategoryTheory.CategoryStruct.id A)) (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id Y) f) - CategoryTheory.Limits.prodComparison_natural_of_natTrans_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uโ} [CategoryTheory.Category.{w, uโ} D] {F : CategoryTheory.Functor C D} {A B : C} [CategoryTheory.Limits.HasBinaryProduct A B] [CategoryTheory.Limits.HasBinaryProduct (F.obj A) (F.obj B)] {H : CategoryTheory.Functor C D} [CategoryTheory.Limits.HasBinaryProduct (H.obj A) (H.obj B)] (ฮฑ : F โถ H) {Z : D} (h : H.obj A โจฏ H.obj B โถ Z) : CategoryTheory.CategoryStruct.comp (ฮฑ.app (A โจฏ B)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prodComparison H A B) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prodComparison F A B) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (ฮฑ.app A) (ฮฑ.app B)) h) - CategoryTheory.Limits.prodComparison_natural_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uโ} [CategoryTheory.Category.{w, uโ} D] (F : CategoryTheory.Functor C D) {A A' B B' : C} [CategoryTheory.Limits.HasBinaryProduct A B] [CategoryTheory.Limits.HasBinaryProduct A' B'] [CategoryTheory.Limits.HasBinaryProduct (F.obj A) (F.obj B)] [CategoryTheory.Limits.HasBinaryProduct (F.obj A') (F.obj B')] (f : A โถ A') (g : B โถ B') {Z : D} (h : F.obj A' โจฏ F.obj B' โถ Z) : CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.Limits.prod.map f g)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prodComparison F A' B') h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prodComparison F A B) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (F.map f) (F.map g)) h) - CategoryTheory.Limits.braid_natural ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasBinaryProducts C] {W X Y Z : C} (f : X โถ Y) (g : Z โถ W) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f g) (CategoryTheory.Limits.prod.braiding Y W).hom = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.braiding X Z).hom (CategoryTheory.Limits.prod.map g f) - CategoryTheory.Limits.prod.map_swap_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {A B X Y : C} (f : A โถ B) (g : X โถ Y) [CategoryTheory.Limits.HasLimitsOfShape (CategoryTheory.Discrete CategoryTheory.Limits.WalkingPair) C] {Z : C} (h : Y โจฏ B โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id X) f) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map g (CategoryTheory.CategoryStruct.id B)) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map g (CategoryTheory.CategoryStruct.id A)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id Y) f) h) - CategoryTheory.Limits.braid_natural_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasBinaryProducts C] {W X Y Z : C} (f : X โถ Y) (g : Z โถ W) {Zโ : C} (h : W โจฏ Y โถ Zโ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f g) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.braiding Y W).hom h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.braiding X Z).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map g f) h) - CategoryTheory.Limits.prodComparison_inv_natural ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uโ} [CategoryTheory.Category.{w, uโ} D] (F : CategoryTheory.Functor C D) {A A' B B' : C} [CategoryTheory.Limits.HasBinaryProduct A B] [CategoryTheory.Limits.HasBinaryProduct A' B'] [CategoryTheory.Limits.HasBinaryProduct (F.obj A) (F.obj B)] [CategoryTheory.Limits.HasBinaryProduct (F.obj A') (F.obj B')] (f : A โถ A') (g : B โถ B') [CategoryTheory.IsIso (CategoryTheory.Limits.prodComparison F A B)] [CategoryTheory.IsIso (CategoryTheory.Limits.prodComparison F A' B')] : CategoryTheory.CategoryStruct.comp (CategoryTheory.inv (CategoryTheory.Limits.prodComparison F A B)) (F.map (CategoryTheory.Limits.prod.map f g)) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (F.map f) (F.map g)) (CategoryTheory.inv (CategoryTheory.Limits.prodComparison F A' B')) - CategoryTheory.Limits.prod.diag_map_fst_snd_comp ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasLimitsOfShape (CategoryTheory.Discrete CategoryTheory.Limits.WalkingPair) C] {X X' Y Y' : C} (g : X โถ Y) (g' : X' โถ Y') : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.diag (X โจฏ X')) (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.fst g) (CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.snd g')) = CategoryTheory.Limits.prod.map g g' - CategoryTheory.Limits.prodComparison_inv_natural_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type uโ} [CategoryTheory.Category.{w, uโ} D] (F : CategoryTheory.Functor C D) {A A' B B' : C} [CategoryTheory.Limits.HasBinaryProduct A B] [CategoryTheory.Limits.HasBinaryProduct A' B'] [CategoryTheory.Limits.HasBinaryProduct (F.obj A) (F.obj B)] [CategoryTheory.Limits.HasBinaryProduct (F.obj A') (F.obj B')] (f : A โถ A') (g : B โถ B') [CategoryTheory.IsIso (CategoryTheory.Limits.prodComparison F A B)] [CategoryTheory.IsIso (CategoryTheory.Limits.prodComparison F A' B')] {Z : D} (h : F.obj (A' โจฏ B') โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.inv (CategoryTheory.Limits.prodComparison F A B)) (CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.Limits.prod.map f g)) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (F.map f) (F.map g)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.inv (CategoryTheory.Limits.prodComparison F A' B')) h) - CategoryTheory.Limits.prod.diag_map_fst_snd_comp_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasLimitsOfShape (CategoryTheory.Discrete CategoryTheory.Limits.WalkingPair) C] {X X' Y Y' : C} (g : X โถ Y) (g' : X' โถ Y') {Z : C} (h : Y โจฏ Y' โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.diag (X โจฏ X')) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.fst g) (CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.snd g')) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map g g') h - CategoryTheory.Limits.prod.triangle ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasTerminal C] [CategoryTheory.Limits.HasBinaryProducts C] (X Y : C) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.associator X (โค_ C) Y).hom (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id X) (CategoryTheory.Limits.prod.leftUnitor Y).hom) = CategoryTheory.Limits.prod.map (CategoryTheory.Limits.prod.rightUnitor X).hom (CategoryTheory.CategoryStruct.id Y) - CategoryTheory.Limits.prod.associator_naturality ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasBinaryProducts C] {Xโ Xโ Xโ Yโ Yโ Yโ : C} (fโ : Xโ โถ Yโ) (fโ : Xโ โถ Yโ) (fโ : Xโ โถ Yโ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.Limits.prod.map fโ fโ) fโ) (CategoryTheory.Limits.prod.associator Yโ Yโ Yโ).hom = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.associator Xโ Xโ Xโ).hom (CategoryTheory.Limits.prod.map fโ (CategoryTheory.Limits.prod.map fโ fโ)) - CategoryTheory.Limits.prod.associator_naturality_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasBinaryProducts C] {Xโ Xโ Xโ Yโ Yโ Yโ : C} (fโ : Xโ โถ Yโ) (fโ : Xโ โถ Yโ) (fโ : Xโ โถ Yโ) {Z : C} (h : Yโ โจฏ Yโ โจฏ Yโ โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.Limits.prod.map fโ fโ) fโ) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.associator Yโ Yโ Yโ).hom h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.associator Xโ Xโ Xโ).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map fโ (CategoryTheory.Limits.prod.map fโ fโ)) h) - CategoryTheory.Limits.prod.pentagon ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasBinaryProducts C] (W X Y Z : C) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.Limits.prod.associator W X Y).hom (CategoryTheory.CategoryStruct.id Z)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.associator W (X โจฏ Y) Z).hom (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id W) (CategoryTheory.Limits.prod.associator X Y Z).hom)) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.associator (W โจฏ X) Y Z).hom (CategoryTheory.Limits.prod.associator W X (Y โจฏ Z)).hom - CategoryTheory.Limits.prod.pentagon_assoc ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasBinaryProducts C] (W X Y Z : C) {Zโ : C} (h : W โจฏ X โจฏ Y โจฏ Z โถ Zโ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.Limits.prod.associator W X Y).hom (CategoryTheory.CategoryStruct.id Z)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.associator W (X โจฏ Y) Z).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id W) (CategoryTheory.Limits.prod.associator X Y Z).hom) h)) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.associator (W โจฏ X) Y Z).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.associator W X (Y โจฏ Z)).hom h) - CategoryTheory.Limits.prod.map_epi ๐ Mathlib.CategoryTheory.Limits.Shapes.BinaryBiproducts
{C : Type uC} [CategoryTheory.Category.{uC', uC} C] [CategoryTheory.Limits.HasZeroMorphisms C] {W X Y Z : C} (f : W โถ Y) (g : X โถ Z) [CategoryTheory.Epi f] [CategoryTheory.Epi g] [CategoryTheory.Limits.HasBinaryBiproduct W X] [CategoryTheory.Limits.HasBinaryBiproduct Y Z] : CategoryTheory.Epi (CategoryTheory.Limits.prod.map f g) - CategoryTheory.IsPullback.of_prod_fst_with_id ๐ Mathlib.CategoryTheory.Limits.Shapes.Pullback.IsPullback.Basic
{C : Type uโ} [CategoryTheory.Category.{vโ, uโ} C] {A B : C} (f : A โถ B) (X : C) [CategoryTheory.Limits.HasBinaryProduct A X] [CategoryTheory.Limits.HasBinaryProduct B X] : CategoryTheory.IsPullback CategoryTheory.Limits.prod.fst (CategoryTheory.Limits.prod.map f (CategoryTheory.CategoryStruct.id X)) f CategoryTheory.Limits.prod.fst - CategoryTheory.prodComonad_map ๐ Mathlib.CategoryTheory.Monad.Products
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) [CategoryTheory.Limits.HasBinaryProducts C] {xโ xโยน : C} (g : xโ โถ xโยน) : (CategoryTheory.prodComonad X).map g = CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id X) g - CategoryTheory.Over.star_map_left ๐ Mathlib.CategoryTheory.Comma.Over.Pullback
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) [CategoryTheory.Limits.HasBinaryProducts C] {Xโ Yโ : C} (f : Xโ โถ Yโ) : ((CategoryTheory.Over.star X).map f).left = CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id X) f - CategoryTheory.NonPreadditiveAbelian.ฯ_comp ๐ Mathlib.CategoryTheory.Abelian.NonPreadditive
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.NonPreadditiveAbelian C] {X Y : C} (f : X โถ Y) : CategoryTheory.CategoryStruct.comp CategoryTheory.NonPreadditiveAbelian.ฯ f = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f f) CategoryTheory.NonPreadditiveAbelian.ฯ - CategoryTheory.NonPreadditiveAbelian.lift_map ๐ Mathlib.CategoryTheory.Abelian.NonPreadditive
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.NonPreadditiveAbelian C] {X Y : C} (f : X โถ Y) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.lift (CategoryTheory.CategoryStruct.id X) 0) (CategoryTheory.Limits.prod.map f f) = CategoryTheory.CategoryStruct.comp f (CategoryTheory.Limits.prod.lift (CategoryTheory.CategoryStruct.id Y) 0) - CategoryTheory.NonPreadditiveAbelian.lift_map_assoc ๐ Mathlib.CategoryTheory.Abelian.NonPreadditive
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.NonPreadditiveAbelian C] {X Y : C} (f : X โถ Y) {Z : C} (h : Y โจฏ Y โถ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.lift (CategoryTheory.CategoryStruct.id X) 0) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map f f) h) = CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.lift (CategoryTheory.CategoryStruct.id Y) 0) h) - TopCat.isEmbedding_prodMap ๐ Mathlib.Topology.Category.TopCat.Limits.Products
{W X Y Z : TopCat} {f : W โถ X} {g : Y โถ Z} (hf : Topology.IsEmbedding โ(CategoryTheory.ConcreteCategory.hom f)) (hg : Topology.IsEmbedding โ(CategoryTheory.ConcreteCategory.hom g)) : Topology.IsEmbedding โ(CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.prod.map f g)) - TopCat.isInducing_prodMap ๐ Mathlib.Topology.Category.TopCat.Limits.Products
{W X Y Z : TopCat} {f : W โถ X} {g : Y โถ Z} (hf : Topology.IsInducing โ(CategoryTheory.ConcreteCategory.hom f)) (hg : Topology.IsInducing โ(CategoryTheory.ConcreteCategory.hom g)) : Topology.IsInducing โ(CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.prod.map f g)) - TopCat.range_prod_map ๐ Mathlib.Topology.Category.TopCat.Limits.Products
{W X Y Z : TopCat} (f : W โถ Y) (g : X โถ Z) : Set.range โ(CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.prod.map f g)) = โ(CategoryTheory.ConcreteCategory.hom CategoryTheory.Limits.prod.fst) โปยน' Set.range โ(CategoryTheory.ConcreteCategory.hom f) โฉ โ(CategoryTheory.ConcreteCategory.hom CategoryTheory.Limits.prod.snd) โปยน' Set.range โ(CategoryTheory.ConcreteCategory.hom g) - HomotopicalAlgebra.instFibrationMapOfIsWeakFactorizationSystemTrivialCofibrationsFibrations_1 ๐ Mathlib.AlgebraicTopology.ModelCategory.Instances
(C : Type u) [CategoryTheory.Category.{v, u} C] [HomotopicalAlgebra.CategoryWithWeakEquivalences C] [HomotopicalAlgebra.CategoryWithCofibrations C] [HomotopicalAlgebra.CategoryWithFibrations C] {Xโ Xโ Yโ Yโ : C} (fโ : Xโ โถ Yโ) (fโ : Xโ โถ Yโ) [(HomotopicalAlgebra.trivialCofibrations C).IsWeakFactorizationSystem (HomotopicalAlgebra.fibrations C)] [hโ : HomotopicalAlgebra.Fibration fโ] [hโ : HomotopicalAlgebra.Fibration fโ] [CategoryTheory.Limits.HasBinaryProduct Xโ Xโ] [CategoryTheory.Limits.HasBinaryProduct Yโ Yโ] : HomotopicalAlgebra.Fibration (CategoryTheory.Limits.prod.map fโ fโ) - CategoryTheory.Dial.comp_F ๐ Mathlib.CategoryTheory.Dialectica.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {xโ xโยน xโยฒ : CategoryTheory.Dial C} (F : xโ.Hom xโยน) (G : xโยน.Hom xโยฒ) : (CategoryTheory.CategoryStruct.comp F G).F = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.lift CategoryTheory.Limits.prod.fst (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map F.f (CategoryTheory.CategoryStruct.id xโยฒ.tgt)) G.F)) F.F - CategoryTheory.Dial.isoMk ๐ Mathlib.CategoryTheory.Dialectica.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {X Y : CategoryTheory.Dial C} (eโ : X.src โ Y.src) (eโ : X.tgt โ Y.tgt) (eq : X.rel = (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.map eโ.hom eโ.hom)).obj Y.rel) : X โ Y - CategoryTheory.Dial.isoMk_hom_f ๐ Mathlib.CategoryTheory.Dialectica.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {X Y : CategoryTheory.Dial C} (eโ : X.src โ Y.src) (eโ : X.tgt โ Y.tgt) (eq : X.rel = (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.map eโ.hom eโ.hom)).obj Y.rel) : (CategoryTheory.Dial.isoMk eโ eโ eq).hom.f = eโ.hom - CategoryTheory.Dial.isoMk_inv_f ๐ Mathlib.CategoryTheory.Dialectica.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {X Y : CategoryTheory.Dial C} (eโ : X.src โ Y.src) (eโ : X.tgt โ Y.tgt) (eq : X.rel = (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.map eโ.hom eโ.hom)).obj Y.rel) : (CategoryTheory.Dial.isoMk eโ eโ eq).inv.f = eโ.inv - CategoryTheory.Dial.isoMk_hom_F ๐ Mathlib.CategoryTheory.Dialectica.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {X Y : CategoryTheory.Dial C} (eโ : X.src โ Y.src) (eโ : X.tgt โ Y.tgt) (eq : X.rel = (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.map eโ.hom eโ.hom)).obj Y.rel) : (CategoryTheory.Dial.isoMk eโ eโ eq).hom.F = CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.snd eโ.inv - CategoryTheory.Dial.isoMk_inv_F ๐ Mathlib.CategoryTheory.Dialectica.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {X Y : CategoryTheory.Dial C} (eโ : X.src โ Y.src) (eโ : X.tgt โ Y.tgt) (eq : X.rel = (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.map eโ.hom eโ.hom)).obj Y.rel) : (CategoryTheory.Dial.isoMk eโ eโ eq).inv.F = CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.snd eโ.hom - CategoryTheory.Dial.Hom.le ๐ Mathlib.CategoryTheory.Dialectica.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {X Y : CategoryTheory.Dial C} (self : X.Hom Y) : (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.lift CategoryTheory.Limits.prod.fst self.F)).obj X.rel โค (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.map self.f (CategoryTheory.CategoryStruct.id Y.tgt))).obj Y.rel - CategoryTheory.Dial.Hom.mk ๐ Mathlib.CategoryTheory.Dialectica.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {X Y : CategoryTheory.Dial C} (f : X.src โถ Y.src) (F : X.src โจฏ Y.tgt โถ X.tgt) (le : (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.lift CategoryTheory.Limits.prod.fst F)).obj X.rel โค (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.map f (CategoryTheory.CategoryStruct.id Y.tgt))).obj Y.rel) : X.Hom Y - CategoryTheory.Dial.comp_le_lemma ๐ Mathlib.CategoryTheory.Dialectica.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {X Y Z : CategoryTheory.Dial C} (F : X.Hom Y) (G : Y.Hom Z) : (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.lift CategoryTheory.Limits.prod.fst (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.lift CategoryTheory.Limits.prod.fst (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map F.f (CategoryTheory.CategoryStruct.id Z.tgt)) G.F)) F.F))).obj X.rel โค (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.comp F.f G.f) (CategoryTheory.CategoryStruct.id Z.tgt))).obj Z.rel - CategoryTheory.Dial.whiskerLeft_f ๐ Mathlib.CategoryTheory.Dialectica.Monoidal
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] (X xโ xโยน : CategoryTheory.Dial C) (f : xโ โถ xโยน) : (CategoryTheory.MonoidalCategoryStruct.whiskerLeft X f).f = CategoryTheory.Limits.prod.map (CategoryTheory.CategoryStruct.id X.src) f.f - CategoryTheory.Dial.whiskerRight_f ๐ Mathlib.CategoryTheory.Dialectica.Monoidal
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {Xโโ Xโโ : CategoryTheory.Dial C} (f : Xโโ โถ Xโโ) (Y : CategoryTheory.Dial C) : (CategoryTheory.MonoidalCategoryStruct.whiskerRight f Y).f = CategoryTheory.Limits.prod.map f.f (CategoryTheory.CategoryStruct.id Y.src) - CategoryTheory.Dial.tensorHomImpl_f ๐ Mathlib.CategoryTheory.Dialectica.Monoidal
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {Xโ Xโ Yโ Yโ : CategoryTheory.Dial C} (f : Xโ โถ Xโ) (g : Yโ โถ Yโ) : (CategoryTheory.Dial.tensorHomImpl f g).f = CategoryTheory.Limits.prod.map f.f g.f - CategoryTheory.Dial.tensorHom_f ๐ Mathlib.CategoryTheory.Dialectica.Monoidal
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {Xโโ Yโโ Xโโ Yโโ : CategoryTheory.Dial C} (f : Xโโ โถ Yโโ) (g : Xโโ โถ Yโโ) : (CategoryTheory.MonoidalCategoryStruct.tensorHom f g).f = CategoryTheory.Limits.prod.map f.f g.f - CategoryTheory.Dial.tensorHomImpl_F ๐ Mathlib.CategoryTheory.Dialectica.Monoidal
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {Xโ Xโ Yโ Yโ : CategoryTheory.Dial C} (f : Xโ โถ Xโ) (g : Yโ โถ Yโ) : (CategoryTheory.Dial.tensorHomImpl f g).F = CategoryTheory.Limits.prod.lift (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map CategoryTheory.Limits.prod.fst CategoryTheory.Limits.prod.fst) f.F) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map CategoryTheory.Limits.prod.snd CategoryTheory.Limits.prod.snd) g.F) - CategoryTheory.Dial.whiskerLeft_F ๐ Mathlib.CategoryTheory.Dialectica.Monoidal
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] (X xโ xโยน : CategoryTheory.Dial C) (f : xโ โถ xโยน) : (CategoryTheory.MonoidalCategoryStruct.whiskerLeft X f).F = CategoryTheory.Limits.prod.lift (CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.snd CategoryTheory.Limits.prod.fst) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map CategoryTheory.Limits.prod.snd CategoryTheory.Limits.prod.snd) f.F) - CategoryTheory.Dial.whiskerRight_F ๐ Mathlib.CategoryTheory.Dialectica.Monoidal
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {Xโโ Xโโ : CategoryTheory.Dial C} (f : Xโโ โถ Xโโ) (Y : CategoryTheory.Dial C) : (CategoryTheory.MonoidalCategoryStruct.whiskerRight f Y).F = CategoryTheory.Limits.prod.lift (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map CategoryTheory.Limits.prod.fst CategoryTheory.Limits.prod.fst) f.F) (CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.prod.snd CategoryTheory.Limits.prod.snd) - CategoryTheory.Dial.tensorHom_F ๐ Mathlib.CategoryTheory.Dialectica.Monoidal
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] {Xโโ Yโโ Xโโ Yโโ : CategoryTheory.Dial C} (f : Xโโ โถ Yโโ) (g : Xโโ โถ Yโโ) : (CategoryTheory.MonoidalCategoryStruct.tensorHom f g).F = CategoryTheory.Limits.prod.lift (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map CategoryTheory.Limits.prod.fst CategoryTheory.Limits.prod.fst) f.F) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map CategoryTheory.Limits.prod.snd CategoryTheory.Limits.prod.snd) g.F) - CategoryTheory.Dial.tensorObjImpl_rel ๐ Mathlib.CategoryTheory.Dialectica.Monoidal
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] (X Y : CategoryTheory.Dial C) : (X.tensorObjImpl Y).rel = (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.map CategoryTheory.Limits.prod.fst CategoryTheory.Limits.prod.fst)).obj X.rel โ (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.map CategoryTheory.Limits.prod.snd CategoryTheory.Limits.prod.snd)).obj Y.rel - CategoryTheory.Dial.tensorObj_rel ๐ Mathlib.CategoryTheory.Dialectica.Monoidal
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasFiniteProducts C] [CategoryTheory.Limits.HasPullbacks C] (X Y : CategoryTheory.Dial C) : (CategoryTheory.MonoidalCategoryStruct.tensorObj X Y).rel = (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.map CategoryTheory.Limits.prod.fst CategoryTheory.Limits.prod.fst)).obj X.rel โ (CategoryTheory.Subobject.pullback (CategoryTheory.Limits.prod.map CategoryTheory.Limits.prod.snd CategoryTheory.Limits.prod.snd)).obj Y.rel - CategoryTheory.Limits.Pi.map_eq_prod_map ๐ Mathlib.CategoryTheory.Limits.Shapes.PiProd
{C : Type u_1} {I : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] {X Y : I โ C} (f : (i : I) โ X i โถ Y i) (P : I โ Prop) [CategoryTheory.Limits.HasProduct X] [CategoryTheory.Limits.HasProduct Y] [CategoryTheory.Limits.HasProduct fun i => X โi] [CategoryTheory.Limits.HasProduct fun i => X โi] [CategoryTheory.Limits.HasProduct fun i => Y โi] [CategoryTheory.Limits.HasProduct fun i => Y โi] [(i : I) โ Decidable (P i)] : CategoryTheory.Limits.Pi.map f = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Limits.Pi.binaryFanOfPropIsLimit X P).conePointUniqueUpToIso (CategoryTheory.Limits.prodIsProd (โแถ fun i => X โi) (โแถ fun i => X โi))).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.prod.map (CategoryTheory.Limits.Pi.map fun i => f โi) (CategoryTheory.Limits.Pi.map fun i => f โi)) ((CategoryTheory.Limits.Pi.binaryFanOfPropIsLimit Y P).conePointUniqueUpToIso (CategoryTheory.Limits.prodIsProd (โแถ fun i => Y โi) (โแถ fun i => Y โi))).inv)
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using (by default) Ctrl-K Ctrl-S. 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 88c39f3 serving mathlib revision 9977002