Loogle!
Result
Found 441 declarations mentioning CategoryTheory.Under. Of these, only the first 200 are shown.
- CategoryTheory.Under π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) : Type (max uβ vβ) - CategoryTheory.instCategoryUnder π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} : CategoryTheory.Category.{vβ, max uβ vβ} (CategoryTheory.Under X) - CategoryTheory.Under.right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (f : CategoryTheory.Under X) : T - CategoryTheory.Under.inhabited π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] [Inhabited T] : Inhabited (CategoryTheory.Under default) - CategoryTheory.Under.Hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (f g : CategoryTheory.Under X) : Type vβ - CategoryTheory.Under.forget π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) : CategoryTheory.Functor (CategoryTheory.Under X) T - CategoryTheory.Under.mk π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} (f : X βΆ Y) : CategoryTheory.Under X - CategoryTheory.Under.equivalenceOfIsInitial π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (hX : CategoryTheory.Limits.IsInitial X) : CategoryTheory.Under X β T - CategoryTheory.Under.forgetCone π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) : CategoryTheory.Limits.Cone (CategoryTheory.Under.forget X) - CategoryTheory.Under.forget_faithful π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} : (CategoryTheory.Under.forget X).Faithful - CategoryTheory.Under.forget_reflects_iso π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} : (CategoryTheory.Under.forget X).ReflectsIsomorphisms - CategoryTheory.Under.hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (f : CategoryTheory.Under X) : X βΆ f.right - CategoryTheory.Under.mkIdInitial π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} : CategoryTheory.Limits.IsInitial (CategoryTheory.Under.mk (CategoryTheory.CategoryStruct.id X)) - CategoryTheory.Under.forgetCone_pt π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) : (CategoryTheory.Under.forgetCone X).pt = X - CategoryTheory.Under.mapIso π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} (f : X β Y) : CategoryTheory.Under Y β CategoryTheory.Under X - CategoryTheory.Under.forget_obj π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {U : CategoryTheory.Under X} : (CategoryTheory.Under.forget X).obj U = U.right - CategoryTheory.Under.map π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} (f : X βΆ Y) : CategoryTheory.Functor (CategoryTheory.Under Y) (CategoryTheory.Under X) - CategoryTheory.Under.under_left π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (U : CategoryTheory.Under X) : U.left = { as := PUnit.unit } - CategoryTheory.Under.mapFunctor_obj π Mathlib.CategoryTheory.Comma.Over.Basic
(T : Type uβ) [CategoryTheory.Category.{vβ, uβ} T] (X : Tα΅α΅) : (CategoryTheory.Under.mapFunctor T).obj X = CategoryTheory.Cat.of (CategoryTheory.Under (Opposite.unop X)) - CategoryTheory.Under.forall_iff π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (P : CategoryTheory.Under X β Prop) : (β (Y : CategoryTheory.Under X), P Y) β β (Y : T) (f : X βΆ Y), P (CategoryTheory.Under.mk f) - CategoryTheory.StructuredArrow.toUnder π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor D T) : CategoryTheory.Functor (CategoryTheory.StructuredArrow X F) (CategoryTheory.Under X) - CategoryTheory.Over.opEquivOpUnder π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) : CategoryTheory.Over (Opposite.op X) β (CategoryTheory.Under X)α΅α΅ - CategoryTheory.Under.opEquivOpOver π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) : CategoryTheory.Under (Opposite.op X) β (CategoryTheory.Over X)α΅α΅ - CategoryTheory.Under.equivalenceOfIsInitial_functor π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (hX : CategoryTheory.Limits.IsInitial X) : (CategoryTheory.Under.equivalenceOfIsInitial hX).functor = CategoryTheory.Under.forget X - CategoryTheory.Under.post π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} (F : CategoryTheory.Functor T D) : CategoryTheory.Functor (CategoryTheory.Under X) (CategoryTheory.Under (F.obj X)) - CategoryTheory.Under.mapId_eq π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (Y : T) : CategoryTheory.Under.map (CategoryTheory.CategoryStruct.id Y) = CategoryTheory.Functor.id (CategoryTheory.Under Y) - CategoryTheory.Under.mk_surjective π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {S : T} (X : CategoryTheory.Under S) : β Y f, CategoryTheory.Under.mk f = X - CategoryTheory.Under.instIsEquivalenceMapOfIsIso π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} {f : X βΆ Y} [CategoryTheory.IsIso f] : (CategoryTheory.Under.map f).IsEquivalence - CategoryTheory.StructuredArrow.instEssSurjUnderToUnder π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor D T) [F.EssSurj] : (CategoryTheory.StructuredArrow.toUnder X F).EssSurj - CategoryTheory.StructuredArrow.instFaithfulUnderToUnder π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor D T) [F.Faithful] : (CategoryTheory.StructuredArrow.toUnder X F).Faithful - CategoryTheory.StructuredArrow.instFullUnderToUnder π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor D T) [F.Full] : (CategoryTheory.StructuredArrow.toUnder X F).Full - CategoryTheory.StructuredArrow.isEquivalence_toUnder π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor D T) [F.IsEquivalence] : (CategoryTheory.StructuredArrow.toUnder X F).IsEquivalence - CategoryTheory.Under.Hom.right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (Ο : f βΆ g) : f.right βΆ g.right - CategoryTheory.Under.postEquiv π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : T β D) : CategoryTheory.Under X β CategoryTheory.Under (F.functor.obj X) - CategoryTheory.Under.equivalenceOfIsInitial_inverse_obj π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (hX : CategoryTheory.Limits.IsInitial X) (Y : T) : (CategoryTheory.Under.equivalenceOfIsInitial hX).inverse.obj Y = CategoryTheory.Under.mk (hX.to Y) - CategoryTheory.Under.map_obj_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} {f : X βΆ Y} {U : CategoryTheory.Under Y} : ((CategoryTheory.Under.map f).obj U).right = U.right - CategoryTheory.Under.instFaithfulObjPost π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor T D) [F.Faithful] : (CategoryTheory.Under.post F).Faithful - CategoryTheory.Under.instIsEquivalenceObjPost π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor T D) [F.IsEquivalence] : (CategoryTheory.Under.post F).IsEquivalence - CategoryTheory.Under.isLeftAdjoint_post π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor T D) [F.IsLeftAdjoint] : (CategoryTheory.Under.post F).IsLeftAdjoint - CategoryTheory.Functor.FullyFaithful.under π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor T D) (h : F.FullyFaithful) : (CategoryTheory.Under.post F).FullyFaithful - CategoryTheory.Limits.Cocone.underPost π Mathlib.CategoryTheory.Comma.Over.Basic
{J : Type u_1} {C : Type u_2} [CategoryTheory.Category.{v_1, u_1} J] [CategoryTheory.Category.{v_2, u_2} C] {D : CategoryTheory.Functor J C} (c : CategoryTheory.Limits.Cocone D) (j : J) : CategoryTheory.Limits.Cocone (CategoryTheory.Under.post D) - CategoryTheory.Under.id_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (U : CategoryTheory.Under X) : CategoryTheory.Under.Hom.right (CategoryTheory.CategoryStruct.id U) = CategoryTheory.CategoryStruct.id U.right - CategoryTheory.Under.mapForget_eq π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} (f : X βΆ Y) : (CategoryTheory.Under.map f).comp (CategoryTheory.Under.forget X) = CategoryTheory.Under.forget Y - CategoryTheory.Under.mapId π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (Y : T) : CategoryTheory.Under.map (CategoryTheory.CategoryStruct.id Y) β CategoryTheory.Functor.id (CategoryTheory.Under Y) - CategoryTheory.Under.instEssSurjObjPostOfFull π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor T D) [F.Full] [F.EssSurj] : (CategoryTheory.Under.post F).EssSurj - CategoryTheory.Under.instFullObjPostOfFaithful π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor T D) [F.Faithful] [F.Full] : (CategoryTheory.Under.post F).Full - CategoryTheory.Under.mapIso_functor π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} (f : X β Y) : (CategoryTheory.Under.mapIso f).functor = CategoryTheory.Under.map f.hom - CategoryTheory.Under.mapIso_inverse π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} (f : X β Y) : (CategoryTheory.Under.mapIso f).inverse = CategoryTheory.Under.map f.inv - CategoryTheory.Under.epi_of_epi_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (k : f βΆ g) [hk : CategoryTheory.Epi (CategoryTheory.Under.Hom.right k)] : CategoryTheory.Epi k - CategoryTheory.Under.epi_right_of_epi π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (k : f βΆ g) [CategoryTheory.Epi k] : CategoryTheory.Epi (CategoryTheory.Under.Hom.right k) - CategoryTheory.Under.mono_of_mono_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (k : f βΆ g) [hk : CategoryTheory.Mono (CategoryTheory.Under.Hom.right k)] : CategoryTheory.Mono k - CategoryTheory.Under.lift π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {J : Type u_1} [CategoryTheory.Category.{v_1, u_1} J] (D : CategoryTheory.Functor J T) {X : T} (s : (CategoryTheory.Functor.const J).obj X βΆ D) : CategoryTheory.Functor J (CategoryTheory.Under X) - CategoryTheory.Under.mapForget π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} (f : X βΆ Y) : (CategoryTheory.Under.map f).comp (CategoryTheory.Under.forget X) β CategoryTheory.Under.forget Y - CategoryTheory.Functor.essImage.of_underPost π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {F : CategoryTheory.Functor T D} {Y : CategoryTheory.Under (F.obj X)} : (CategoryTheory.Under.post F).essImage Y β F.essImage Y.right - CategoryTheory.Under.w π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (Ο : f βΆ g) : CategoryTheory.CategoryStruct.comp f.hom (CategoryTheory.Under.Hom.right Ο) = g.hom - CategoryTheory.Under.Hom.w π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (Ο : f βΆ g) : CategoryTheory.CategoryStruct.comp f.hom (CategoryTheory.Under.Hom.right Ο) = g.hom - CategoryTheory.Under.eqToHom_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (h : f = g) : CategoryTheory.Under.Hom.right (CategoryTheory.eqToHom h) = CategoryTheory.eqToHom β― - CategoryTheory.Under.mapCongr π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} (f g : X βΆ Y) (h : f = g) : CategoryTheory.Under.map f β CategoryTheory.Under.map g - CategoryTheory.Under.mkIdInitial_to_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (Y : CategoryTheory.Under X) : CategoryTheory.Under.Hom.right (CategoryTheory.Under.mkIdInitial.to Y) = Y.hom - CategoryTheory.Functor.essImage_underPost π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {F : CategoryTheory.Functor T D} [F.Full] {Y : CategoryTheory.Under (F.obj X)} : (CategoryTheory.Under.post F).essImage Y β F.essImage Y.right - CategoryTheory.Under.post_forget_eq_forget_comp π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor T D) (X : T) : (CategoryTheory.Under.post F).comp (CategoryTheory.Under.forget (F.obj X)) = (CategoryTheory.Under.forget X).comp F - CategoryTheory.Under.isoMk π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (hr : f.right β g.right) (hw : CategoryTheory.CategoryStruct.comp f.hom hr.hom = g.hom := by cat_disch) : f β g - CategoryTheory.StructuredArrow.ofDiagEquivalence π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) : CategoryTheory.StructuredArrow X (CategoryTheory.Functor.diag T) β CategoryTheory.StructuredArrow X.2 (CategoryTheory.Under.forget X.1) - CategoryTheory.StructuredArrow.ofDiagEquivalence' π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) : CategoryTheory.StructuredArrow X (CategoryTheory.Functor.diag T) β CategoryTheory.StructuredArrow X.1 (CategoryTheory.Under.forget X.2) - CategoryTheory.Under.homMk π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {U V : CategoryTheory.Under X} (f : U.right βΆ V.right) (w : CategoryTheory.CategoryStruct.comp U.hom f = V.hom := by cat_disch) : U βΆ V - CategoryTheory.StructuredArrow.ofDiagEquivalence.functor π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) : CategoryTheory.Functor (CategoryTheory.StructuredArrow X (CategoryTheory.Functor.diag T)) (CategoryTheory.StructuredArrow X.2 (CategoryTheory.Under.forget X.1)) - CategoryTheory.StructuredArrow.ofDiagEquivalence.inverse π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) : CategoryTheory.Functor (CategoryTheory.StructuredArrow X.2 (CategoryTheory.Under.forget X.1)) (CategoryTheory.StructuredArrow X (CategoryTheory.Functor.diag T)) - CategoryTheory.Under.mapComp_eq π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y Z : T} (f : X βΆ Y) (g : Y βΆ Z) : CategoryTheory.Under.map (CategoryTheory.CategoryStruct.comp f g) = (CategoryTheory.Under.map g).comp (CategoryTheory.Under.map f) - CategoryTheory.Under.forget_map π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {U V : CategoryTheory.Under X} {f : U βΆ V} : (CategoryTheory.Under.forget X).map f = CategoryTheory.Under.Hom.right f - CategoryTheory.Functor.toUnder π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {S : Type uβ} [CategoryTheory.Category.{vβ, uβ} S] (F : CategoryTheory.Functor S T) (X : T) (f : (Y : S) β X βΆ F.obj Y) (h : β {Y Z : S} (g : Y βΆ Z), CategoryTheory.CategoryStruct.comp (f Y) (F.map g) = f Z) : CategoryTheory.Functor S (CategoryTheory.Under X) - CategoryTheory.Under.map_obj_hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} {f : X βΆ Y} {U : CategoryTheory.Under Y} : ((CategoryTheory.Under.map f).obj U).hom = CategoryTheory.CategoryStruct.comp f U.hom - CategoryTheory.Under.post_obj π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} (F : CategoryTheory.Functor T D) (Y : CategoryTheory.Under X) : (CategoryTheory.Under.post F).obj Y = CategoryTheory.Under.mk (F.map Y.hom) - CategoryTheory.Under.epi_homMk π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {U V : CategoryTheory.Under X} {f : U.right βΆ V.right} [CategoryTheory.Epi f] (w : CategoryTheory.CategoryStruct.comp U.hom f = V.hom) : CategoryTheory.Epi (CategoryTheory.Under.homMk f w) - CategoryTheory.Under.mono_homMk π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {U V : CategoryTheory.Under X} {f : U.right βΆ V.right} [CategoryTheory.Mono f] (w : CategoryTheory.CategoryStruct.comp U.hom f = V.hom) : CategoryTheory.Mono (CategoryTheory.Under.homMk f w) - CategoryTheory.Under.hom_right_inv_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (e : f β g) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Under.Hom.right e.hom) (CategoryTheory.Under.Hom.right e.inv) = CategoryTheory.CategoryStruct.id f.right - CategoryTheory.Under.inv_right_hom_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (e : f β g) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Under.Hom.right e.inv) (CategoryTheory.Under.Hom.right e.hom) = CategoryTheory.CategoryStruct.id g.right - CategoryTheory.Under.mapFunctor_map π Mathlib.CategoryTheory.Comma.Over.Basic
(T : Type uβ) [CategoryTheory.Category.{vβ, uβ} T] {Xβ Yβ : Tα΅α΅} (f : Xβ βΆ Yβ) : (CategoryTheory.Under.mapFunctor T).map f = (CategoryTheory.Under.map f.unop).toCatHom - CategoryTheory.Under.postEquiv_functor π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : T β D) : (CategoryTheory.Under.postEquiv X F).functor = CategoryTheory.Under.post F.functor - CategoryTheory.Under.UnderMorphism.ext π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {U V : CategoryTheory.Under X} {f g : U βΆ V} (h : CategoryTheory.Under.Hom.right f = CategoryTheory.Under.Hom.right g) : f = g - CategoryTheory.Under.mapComp π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y Z : T} (f : X βΆ Y) (g : Y βΆ Z) : CategoryTheory.Under.map (CategoryTheory.CategoryStruct.comp f g) β (CategoryTheory.Under.map g).comp (CategoryTheory.Under.map f) - CategoryTheory.Under.UnderMorphism.ext_iff π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {U V : CategoryTheory.Under X} {f g : U βΆ V} : f = g β CategoryTheory.Under.Hom.right f = CategoryTheory.Under.Hom.right g - CategoryTheory.StructuredArrow.toUnder_obj_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor D T) (Xβ : CategoryTheory.Comma (CategoryTheory.Functor.fromPUnit X) (F.comp (CategoryTheory.Functor.id T))) : ((CategoryTheory.StructuredArrow.toUnder X F).obj Xβ).right = F.obj Xβ.right - CategoryTheory.Under.w_assoc π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (Ο : f βΆ g) {Z : T} (h : g.right βΆ Z) : CategoryTheory.CategoryStruct.comp f.hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Under.Hom.right Ο) h) = CategoryTheory.CategoryStruct.comp g.hom h - CategoryTheory.Under.Hom.w_assoc π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (Ο : f βΆ g) {Z : T} (h : g.right βΆ Z) : CategoryTheory.CategoryStruct.comp f.hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Under.Hom.right Ο) h) = CategoryTheory.CategoryStruct.comp g.hom h - CategoryTheory.Under.homMk_eta π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {U V : CategoryTheory.Under X} (f : U βΆ V) (h : CategoryTheory.CategoryStruct.comp U.hom (CategoryTheory.Under.Hom.right f) = V.hom) : CategoryTheory.Under.homMk (CategoryTheory.Under.Hom.right f) h = f - CategoryTheory.Under.homMk_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {U V : CategoryTheory.Under X} (f : U.right βΆ V.right) (w : CategoryTheory.CategoryStruct.comp U.hom f = V.hom := by cat_disch) : (CategoryTheory.Under.homMk f w).right = f - CategoryTheory.Under.lift_obj π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {J : Type u_1} [CategoryTheory.Category.{v_1, u_1} J] (D : CategoryTheory.Functor J T) {X : T} (s : (CategoryTheory.Functor.const J).obj X βΆ D) (j : J) : (CategoryTheory.Under.lift D s).obj j = CategoryTheory.Under.mk (s.app j) - CategoryTheory.Under.hom_right_inv_right_assoc π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (e : f β g) {Z : T} (h : f.right βΆ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Under.Hom.right e.hom) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Under.Hom.right e.inv) h) = h - CategoryTheory.Under.inv_right_hom_right_assoc π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (e : f β g) {Z : T} (h : g.right βΆ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Under.Hom.right e.inv) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Under.Hom.right e.hom) h) = h - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) : CategoryTheory.StructuredArrow X (CategoryTheory.StructuredArrow.proj Y F) β CategoryTheory.StructuredArrow Y ((CategoryTheory.Under.forget X).comp F) - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.functor π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) : CategoryTheory.Functor (CategoryTheory.StructuredArrow X (CategoryTheory.StructuredArrow.proj Y F)) (CategoryTheory.StructuredArrow Y ((CategoryTheory.Under.forget X).comp F)) - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.inverse π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) : CategoryTheory.Functor (CategoryTheory.StructuredArrow Y ((CategoryTheory.Under.forget X).comp F)) (CategoryTheory.StructuredArrow X (CategoryTheory.StructuredArrow.proj Y F)) - CategoryTheory.Functor.toUnder_comp_forget π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {S : Type uβ} [CategoryTheory.Category.{vβ, uβ} S] (F : CategoryTheory.Functor S T) (X : T) (f : (Y : S) β X βΆ F.obj Y) (h : β {Y Z : S} (g : Y βΆ Z), CategoryTheory.CategoryStruct.comp (f Y) (F.map g) = f Z) : (F.toUnder X f β―).comp (CategoryTheory.Under.forget X) = F - CategoryTheory.Under.equivalenceOfIsInitial_inverse_map π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (hX : CategoryTheory.Limits.IsInitial X) {Xβ Yβ : T} (f : Xβ βΆ Yβ) : (CategoryTheory.Under.equivalenceOfIsInitial hX).inverse.map f = CategoryTheory.Under.homMk f β― - CategoryTheory.Functor.toUnderCompForget π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {S : Type uβ} [CategoryTheory.Category.{vβ, uβ} S] (F : CategoryTheory.Functor S T) (X : T) (f : (Y : S) β X βΆ F.obj Y) (h : β {Y Z : S} (g : Y βΆ Z), CategoryTheory.CategoryStruct.comp (f Y) (F.map g) = f Z) : (F.toUnder X f β―).comp (CategoryTheory.Under.forget X) β F - CategoryTheory.Functor.toUnder_obj_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {S : Type uβ} [CategoryTheory.Category.{vβ, uβ} S] (F : CategoryTheory.Functor S T) (X : T) (f : (Y : S) β X βΆ F.obj Y) (h : β {Y Z : S} (g : Y βΆ Z), CategoryTheory.CategoryStruct.comp (f Y) (F.map g) = f Z) (Y : S) : ((F.toUnder X f h).obj Y).right = F.obj Y - CategoryTheory.Under.comp_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (a b c : CategoryTheory.Under X) (f : a βΆ b) (g : b βΆ c) : CategoryTheory.Under.Hom.right (CategoryTheory.CategoryStruct.comp f g) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Under.Hom.right f) (CategoryTheory.Under.Hom.right g) - CategoryTheory.Over.opEquivOpUnder_inverse_obj π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) (Y : (CategoryTheory.Under X)α΅α΅) : (CategoryTheory.Over.opEquivOpUnder X).inverse.obj Y = CategoryTheory.Over.mk (Opposite.unop Y).hom.op - CategoryTheory.Under.opEquivOpOver_inverse_obj π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) (Y : (CategoryTheory.Over X)α΅α΅) : (CategoryTheory.Under.opEquivOpOver X).inverse.obj Y = CategoryTheory.Under.mk (Opposite.unop Y).hom.op - CategoryTheory.Over.opEquivOpUnder_functor_obj π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) (Y : CategoryTheory.Over (Opposite.op X)) : (CategoryTheory.Over.opEquivOpUnder X).functor.obj Y = Opposite.op (CategoryTheory.Under.mk Y.hom.unop) - CategoryTheory.Under.opEquivOpOver_functor_obj π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) (Y : CategoryTheory.Under (Opposite.op X)) : (CategoryTheory.Under.opEquivOpOver X).functor.obj Y = Opposite.op (CategoryTheory.Over.mk Y.hom.unop) - CategoryTheory.StructuredArrow.ofCommaSndEquivalence π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) : CategoryTheory.StructuredArrow c (CategoryTheory.Comma.fst F G) β CategoryTheory.Comma ((CategoryTheory.Under.forget c).comp F) G - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceFunctor π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) : CategoryTheory.Functor (CategoryTheory.StructuredArrow c (CategoryTheory.Comma.fst F G)) (CategoryTheory.Comma ((CategoryTheory.Under.forget c).comp F) G) - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) : CategoryTheory.Functor (CategoryTheory.Comma ((CategoryTheory.Under.forget c).comp F) G) (CategoryTheory.StructuredArrow c (CategoryTheory.Comma.fst F G)) - CategoryTheory.Limits.Cocone.underPost_pt π Mathlib.CategoryTheory.Comma.Over.Basic
{J : Type u_1} {C : Type u_2} [CategoryTheory.Category.{v_1, u_1} J] [CategoryTheory.Category.{v_2, u_2} C] {D : CategoryTheory.Functor J C} (c : CategoryTheory.Limits.Cocone D) (j : J) : (c.underPost j).pt = CategoryTheory.Under.mk (c.ΞΉ.app j) - CategoryTheory.StructuredArrow.ofDiagEquivalence.functor_obj_left_as π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) (Y : CategoryTheory.StructuredArrow X (CategoryTheory.Functor.diag T)) : ((CategoryTheory.StructuredArrow.ofDiagEquivalence.functor X).obj Y).left.as = PUnit.unit - CategoryTheory.StructuredArrow.ofDiagEquivalence.inverse_obj_left_as π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) (Y : CategoryTheory.StructuredArrow X.2 (CategoryTheory.Under.forget X.1)) : ((CategoryTheory.StructuredArrow.ofDiagEquivalence.inverse X).obj Y).left.as = PUnit.unit - CategoryTheory.Under.post_comp π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {E : Type u_1} [CategoryTheory.Category.{v_1, u_1} E] (F : CategoryTheory.Functor T D) (G : CategoryTheory.Functor D E) : CategoryTheory.Under.post (F.comp G) = (CategoryTheory.Under.post F).comp (CategoryTheory.Under.post G) - CategoryTheory.Under.forgetCone_Ο_app π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) (self : CategoryTheory.Comma (CategoryTheory.Functor.fromPUnit X) (CategoryTheory.Functor.id T)) : (CategoryTheory.Under.forgetCone X).Ο.app self = self.hom - CategoryTheory.StructuredArrow.ofDiagEquivalence.functor_obj_right_left_as π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) (Y : CategoryTheory.StructuredArrow X (CategoryTheory.Functor.diag T)) : ((CategoryTheory.StructuredArrow.ofDiagEquivalence.functor X).obj Y).right.left.as = PUnit.unit - CategoryTheory.Under.homMk_surjective π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {S : T} {X Y : CategoryTheory.Under S} (f : X βΆ Y) : β g, β (hg : CategoryTheory.CategoryStruct.comp X.hom g = Y.hom), CategoryTheory.Under.homMk g β― = f - CategoryTheory.Under.postCongr π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {F G : CategoryTheory.Functor T D} (e : F β G) : CategoryTheory.Under.post F β (CategoryTheory.Under.post G).comp (CategoryTheory.Under.map (e.hom.app X)) - CategoryTheory.Under.map_map_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} {f : X βΆ Y} {U V : CategoryTheory.Under Y} {g : U βΆ V} : CategoryTheory.Under.Hom.right ((CategoryTheory.Under.map f).map g) = CategoryTheory.Under.Hom.right g - CategoryTheory.StructuredArrow.toUnder_obj_hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor D T) (Xβ : CategoryTheory.Comma (CategoryTheory.Functor.fromPUnit X) (F.comp (CategoryTheory.Functor.id T))) : ((CategoryTheory.StructuredArrow.toUnder X F).obj Xβ).hom = Xβ.hom - CategoryTheory.Under.isoMk_hom_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (hr : f.right β g.right) (hw : CategoryTheory.CategoryStruct.comp f.hom hr.hom = g.hom := by cat_disch) : (CategoryTheory.Under.isoMk hr hw).hom.right = hr.hom - CategoryTheory.Under.isoMk_inv_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {f g : CategoryTheory.Under X} (hr : f.right β g.right) (hw : CategoryTheory.CategoryStruct.comp f.hom hr.hom = g.hom := by cat_disch) : (CategoryTheory.Under.isoMk hr hw).inv.right = hr.inv - CategoryTheory.StructuredArrow.ofDiagEquivalence.functor_obj_right_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) (Y : CategoryTheory.StructuredArrow X (CategoryTheory.Functor.diag T)) : ((CategoryTheory.StructuredArrow.ofDiagEquivalence.functor X).obj Y).right.right = Y.right - CategoryTheory.StructuredArrow.ofDiagEquivalence.inverse_obj_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) (Y : CategoryTheory.StructuredArrow X.2 (CategoryTheory.Under.forget X.1)) : ((CategoryTheory.StructuredArrow.ofDiagEquivalence.inverse X).obj Y).right = Y.right.right - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.functor_obj_left_as π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) (Yβ : CategoryTheory.StructuredArrow X (CategoryTheory.StructuredArrow.proj Y F)) : ((CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.functor F Y X).obj Yβ).left.as = PUnit.unit - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.inverse_obj_left_as π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) (Yβ : CategoryTheory.StructuredArrow Y ((CategoryTheory.Under.forget X).comp F)) : ((CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.inverse F Y X).obj Yβ).left.as = PUnit.unit - CategoryTheory.Functor.toUnder_map_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {S : Type uβ} [CategoryTheory.Category.{vβ, uβ} S] (F : CategoryTheory.Functor S T) (X : T) (f : (Y : S) β X βΆ F.obj Y) (h : β {Y Z : S} (g : Y βΆ Z), CategoryTheory.CategoryStruct.comp (f Y) (F.map g) = f Z) {Xβ Yβ : S} (g : Xβ βΆ Yβ) : ((F.toUnder X f h).map g).right = F.map g - CategoryTheory.Under.postComp π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {E : Type u_1} [CategoryTheory.Category.{v_1, u_1} E] (F : CategoryTheory.Functor T D) (G : CategoryTheory.Functor D E) : CategoryTheory.Under.post (F.comp G) β (CategoryTheory.Under.post F).comp (CategoryTheory.Under.post G) - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.inverse_obj_right_left_as π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) (Yβ : CategoryTheory.StructuredArrow Y ((CategoryTheory.Under.forget X).comp F)) : ((CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.inverse F Y X).obj Yβ).right.left.as = PUnit.unit - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.functor_obj_right_left_as π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) (Yβ : CategoryTheory.StructuredArrow X (CategoryTheory.StructuredArrow.proj Y F)) : ((CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.functor F Y X).obj Yβ).right.left.as = PUnit.unit - CategoryTheory.Under.homMk_comp π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} {U V W : CategoryTheory.Under X} (f : U.right βΆ V.right) (g : V.right βΆ W.right) (w_f : CategoryTheory.CategoryStruct.comp U.hom f = V.hom) (w_g : CategoryTheory.CategoryStruct.comp V.hom g = W.hom) : CategoryTheory.Under.homMk (CategoryTheory.CategoryStruct.comp f g) β― = CategoryTheory.CategoryStruct.comp (CategoryTheory.Under.homMk f w_f) (CategoryTheory.Under.homMk g w_g) - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse_obj_left_as π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) (Y : CategoryTheory.Comma ((CategoryTheory.Under.forget c).comp F) G) : ((CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse F G c).obj Y).left.as = PUnit.unit - CategoryTheory.Over.opEquivOpUnder_unitIso π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) : (CategoryTheory.Over.opEquivOpUnder X).unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (CategoryTheory.Over (Opposite.op X))) - CategoryTheory.Under.opEquivOpOver_unitIso π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) : (CategoryTheory.Under.opEquivOpOver X).unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (CategoryTheory.Under (Opposite.op X))) - CategoryTheory.Under.postMap π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {F G : CategoryTheory.Functor T D} (e : F βΆ G) : CategoryTheory.Under.post F βΆ (CategoryTheory.Under.post G).comp (CategoryTheory.Under.map (e.app X)) - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.inverse_obj_right_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) (Yβ : CategoryTheory.StructuredArrow Y ((CategoryTheory.Under.forget X).comp F)) : ((CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.inverse F Y X).obj Yβ).right.right = Yβ.right.right - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.functor_obj_right_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) (Yβ : CategoryTheory.StructuredArrow X (CategoryTheory.StructuredArrow.proj Y F)) : ((CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.functor F Y X).obj Yβ).right.right = Yβ.right.right - CategoryTheory.Under.mapCongr_hom_app π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} (f g : X βΆ Y) (h : f = g) (Xβ : CategoryTheory.Under Y) : (CategoryTheory.Under.mapCongr f g h).hom.app Xβ = CategoryTheory.eqToHom β― - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceFunctor_obj_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) (X : CategoryTheory.StructuredArrow c (CategoryTheory.Comma.fst F G)) : ((CategoryTheory.StructuredArrow.ofCommaSndEquivalenceFunctor F G c).obj X).right = X.right.right - CategoryTheory.StructuredArrow.ofDiagEquivalence.functor_obj_hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) (Y : CategoryTheory.StructuredArrow X (CategoryTheory.Functor.diag T)) : ((CategoryTheory.StructuredArrow.ofDiagEquivalence.functor X).obj Y).hom = Y.hom.2 - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse_obj_right_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) (Y : CategoryTheory.Comma ((CategoryTheory.Under.forget c).comp F) G) : ((CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse F G c).obj Y).right.right = Y.right - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.inverse_obj_hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) (Yβ : CategoryTheory.StructuredArrow Y ((CategoryTheory.Under.forget X).comp F)) : ((CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.inverse F Y X).obj Yβ).hom = Yβ.right.hom - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse_obj_right_left π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) (Y : CategoryTheory.Comma ((CategoryTheory.Under.forget c).comp F) G) : ((CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse F G c).obj Y).right.left = Y.left.right - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.functor_obj_hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) (Yβ : CategoryTheory.StructuredArrow X (CategoryTheory.StructuredArrow.proj Y F)) : ((CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.functor F Y X).obj Yβ).hom = Yβ.right.hom - CategoryTheory.Under.mapId_hom_app_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (Y : T) (X : CategoryTheory.Under Y) : ((CategoryTheory.Under.mapId Y).hom.app X).right = CategoryTheory.CategoryStruct.id X.right - CategoryTheory.Under.mapId_inv_app_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (Y : T) (X : CategoryTheory.Under Y) : ((CategoryTheory.Under.mapId Y).inv.app X).right = CategoryTheory.CategoryStruct.id X.right - CategoryTheory.StructuredArrow.ofDiagEquivalence.functor_obj_right_hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) (Y : CategoryTheory.StructuredArrow X (CategoryTheory.Functor.diag T)) : ((CategoryTheory.StructuredArrow.ofDiagEquivalence.functor X).obj Y).right.hom = Y.hom.1 - CategoryTheory.Under.lift_map π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {J : Type u_1} [CategoryTheory.Category.{v_1, u_1} J] (D : CategoryTheory.Functor J T) {X : T} (s : (CategoryTheory.Functor.const J).obj X βΆ D) {Xβ Yβ : J} (f : Xβ βΆ Yβ) : (CategoryTheory.Under.lift D s).map f = CategoryTheory.Under.homMk (D.map f) β― - CategoryTheory.Under.postAdjunctionLeft π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {F : CategoryTheory.Functor T D} {G : CategoryTheory.Functor D T} (a : F β£ G) : CategoryTheory.Under.post F β£ (CategoryTheory.Under.post G).comp (CategoryTheory.Under.map (a.unit.app X)) - CategoryTheory.StructuredArrow.ofCommaSndEquivalence_functor π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) : (CategoryTheory.StructuredArrow.ofCommaSndEquivalence F G c).functor = CategoryTheory.StructuredArrow.ofCommaSndEquivalenceFunctor F G c - CategoryTheory.StructuredArrow.ofCommaSndEquivalence_inverse π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) : (CategoryTheory.StructuredArrow.ofCommaSndEquivalence F G c).inverse = CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse F G c - CategoryTheory.Under.liftCocone π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {J : Type u_1} [CategoryTheory.Category.{v_1, u_1} J] (D : CategoryTheory.Functor J T) {X : T} (s : (CategoryTheory.Functor.const J).obj X βΆ D) (c : CategoryTheory.Limits.Cocone D) (p : X βΆ c.pt) (hp : β (j : J), CategoryTheory.CategoryStruct.comp (s.app j) (c.ΞΉ.app j) = p) : CategoryTheory.Limits.Cocone (CategoryTheory.Under.lift D s) - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.functor_obj_right_hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) (Yβ : CategoryTheory.StructuredArrow X (CategoryTheory.StructuredArrow.proj Y F)) : ((CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.functor F Y X).obj Yβ).right.hom = Yβ.hom - CategoryTheory.Under.postEquiv_inverse π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : T β D) : (CategoryTheory.Under.postEquiv X F).inverse = (CategoryTheory.Under.post F.inverse).comp (CategoryTheory.Under.map (F.unitIso.hom.app X)) - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.inverse_obj_right_hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) (Yβ : CategoryTheory.StructuredArrow Y ((CategoryTheory.Under.forget X).comp F)) : ((CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.inverse F Y X).obj Yβ).right.hom = Yβ.hom - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse_obj_hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) (Y : CategoryTheory.Comma ((CategoryTheory.Under.forget c).comp F) G) : ((CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse F G c).obj Y).hom = Y.left.hom - CategoryTheory.Under.isColimitLiftCocone π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {J : Type u_1} [CategoryTheory.Category.{v_1, u_1} J] [Nonempty J] (D : CategoryTheory.Functor J T) {X : T} (s : (CategoryTheory.Functor.const J).obj X βΆ D) (c : CategoryTheory.Limits.Cocone D) (p : X βΆ c.pt) (hp : β (j : J), CategoryTheory.CategoryStruct.comp (s.app j) (c.ΞΉ.app j) = p) (hc : CategoryTheory.Limits.IsColimit c) : CategoryTheory.Limits.IsColimit (CategoryTheory.Under.liftCocone D s c p hp) - CategoryTheory.Under.mapCongr_inv_app π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y : T} (f g : X βΆ Y) (h : f = g) (Xβ : CategoryTheory.Under Y) : (CategoryTheory.Under.mapCongr f g h).inv.app Xβ = CategoryTheory.eqToHom β― - CategoryTheory.Under.post_map π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} (F : CategoryTheory.Functor T D) {Xβ Yβ : CategoryTheory.Under X} (f : Xβ βΆ Yβ) : (CategoryTheory.Under.post F).map f = CategoryTheory.Under.homMk (F.map (CategoryTheory.Under.Hom.right f)) β― - CategoryTheory.Under.liftCocone_pt π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {J : Type u_1} [CategoryTheory.Category.{v_1, u_1} J] (D : CategoryTheory.Functor J T) {X : T} (s : (CategoryTheory.Functor.const J).obj X βΆ D) (c : CategoryTheory.Limits.Cocone D) (p : X βΆ c.pt) (hp : β (j : J), CategoryTheory.CategoryStruct.comp (s.app j) (c.ΞΉ.app j) = p) : (CategoryTheory.Under.liftCocone D s c p hp).pt = CategoryTheory.Under.mk p - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceFunctor_obj_left π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) (X : CategoryTheory.StructuredArrow c (CategoryTheory.Comma.fst F G)) : ((CategoryTheory.StructuredArrow.ofCommaSndEquivalenceFunctor F G c).obj X).left = CategoryTheory.Under.mk X.hom - CategoryTheory.Under.equivalenceOfIsInitial_counitIso π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (hX : CategoryTheory.Limits.IsInitial X) : (CategoryTheory.Under.equivalenceOfIsInitial hX).counitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl (({ obj := fun Y => CategoryTheory.Under.mk (hX.to Y), map := fun {X_1 Y} f => CategoryTheory.Under.homMk f β―, map_id := β―, map_comp := β― }.comp (CategoryTheory.Under.forget X)).obj x)) β― - CategoryTheory.Under.mapComp_hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y Z : T} (f : X βΆ Y) (g : Y βΆ Z) : (CategoryTheory.Under.mapComp f g).hom = CategoryTheory.eqToHom β― - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceFunctor_obj_hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) (X : CategoryTheory.StructuredArrow c (CategoryTheory.Comma.fst F G)) : ((CategoryTheory.StructuredArrow.ofCommaSndEquivalenceFunctor F G c).obj X).hom = X.right.hom - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse_obj_right_hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) (Y : CategoryTheory.Comma ((CategoryTheory.Under.forget c).comp F) G) : ((CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse F G c).obj Y).right.hom = Y.hom - CategoryTheory.Under.mapComp_inv π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X Y Z : T} (f : X βΆ Y) (g : Y βΆ Z) : (CategoryTheory.Under.mapComp f g).inv = CategoryTheory.eqToHom β― - CategoryTheory.Over.opEquivOpUnder_inverse_map π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) {Z Y : (CategoryTheory.Under X)α΅α΅} (f : Z βΆ Y) : (CategoryTheory.Over.opEquivOpUnder X).inverse.map f = CategoryTheory.Over.homMk (CategoryTheory.Under.Hom.right f.unop).op β― - CategoryTheory.Under.opEquivOpOver_inverse_map π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) {Z Y : (CategoryTheory.Over X)α΅α΅} (f : Z βΆ Y) : (CategoryTheory.Under.opEquivOpOver X).inverse.map f = CategoryTheory.Under.homMk (CategoryTheory.Over.Hom.left f.unop).op β― - CategoryTheory.Under.equivalenceOfIsInitial_unitIso π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {X : T} (hX : CategoryTheory.Limits.IsInitial X) : (CategoryTheory.Under.equivalenceOfIsInitial hX).unitIso = CategoryTheory.NatIso.ofComponents (fun Y => CategoryTheory.Under.isoMk (CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.Under X)).obj Y).right) β―) β― - CategoryTheory.Under.postMap_app π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {F G : CategoryTheory.Functor T D} (e : F βΆ G) (Y : CategoryTheory.Under X) : (CategoryTheory.Under.postMap e).app Y = CategoryTheory.Under.homMk (e.app Y.right) β― - CategoryTheory.StructuredArrow.toUnder_map_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : CategoryTheory.Functor D T) {Yβ Xβ : CategoryTheory.Comma (CategoryTheory.Functor.fromPUnit X) (F.comp (CategoryTheory.Functor.id T))} (f : Yβ βΆ Xβ) : ((CategoryTheory.StructuredArrow.toUnder X F).map f).right = F.map f.right - CategoryTheory.Over.opEquivOpUnder_functor_map π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) {Z Y : CategoryTheory.Over (Opposite.op X)} (f : Z βΆ Y) : (CategoryTheory.Over.opEquivOpUnder X).functor.map f = Opposite.op (CategoryTheory.Under.homMk (CategoryTheory.Over.Hom.left f).unop β―) - CategoryTheory.Under.opEquivOpOver_functor_map π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) {Z Y : CategoryTheory.Under (Opposite.op X)} (f : Z βΆ Y) : (CategoryTheory.Under.opEquivOpOver X).functor.map f = Opposite.op (CategoryTheory.Over.homMk (CategoryTheory.Under.Hom.right f).unop β―) - CategoryTheory.Under.liftCocone_ΞΉ_app π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {J : Type u_1} [CategoryTheory.Category.{v_1, u_1} J] (D : CategoryTheory.Functor J T) {X : T} (s : (CategoryTheory.Functor.const J).obj X βΆ D) (c : CategoryTheory.Limits.Cocone D) (p : X βΆ c.pt) (hp : β (j : J), CategoryTheory.CategoryStruct.comp (s.app j) (c.ΞΉ.app j) = p) (j : J) : (CategoryTheory.Under.liftCocone D s c p hp).ΞΉ.app j = CategoryTheory.Under.homMk (c.ΞΉ.app j) β― - CategoryTheory.StructuredArrow.ofDiagEquivalence.inverse_obj_hom π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) (Y : CategoryTheory.StructuredArrow X.2 (CategoryTheory.Under.forget X.1)) : ((CategoryTheory.StructuredArrow.ofDiagEquivalence.inverse X).obj Y).hom = (Y.right.hom, Y.hom) - CategoryTheory.Under.postCongr_hom_app_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {F G : CategoryTheory.Functor T D} (e : F β G) (Xβ : CategoryTheory.Under X) : ((CategoryTheory.Under.postCongr e).hom.app Xβ).right = e.hom.app Xβ.right - CategoryTheory.Under.postCongr_inv_app_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {F G : CategoryTheory.Functor T D} (e : F β G) (Xβ : CategoryTheory.Under X) : ((CategoryTheory.Under.postCongr e).inv.app Xβ).right = e.inv.app Xβ.right - CategoryTheory.Under.postComp_hom_app_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {E : Type u_1} [CategoryTheory.Category.{v_1, u_1} E] (F : CategoryTheory.Functor T D) (G : CategoryTheory.Functor D E) (Xβ : CategoryTheory.Under X) : ((CategoryTheory.Under.postComp F G).hom.app Xβ).right = CategoryTheory.CategoryStruct.id (G.obj (F.obj Xβ.right)) - CategoryTheory.Under.postComp_inv_app_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {E : Type u_1} [CategoryTheory.Category.{v_1, u_1} E] (F : CategoryTheory.Functor T D) (G : CategoryTheory.Functor D E) (Xβ : CategoryTheory.Under X) : ((CategoryTheory.Under.postComp F G).inv.app Xβ).right = CategoryTheory.CategoryStruct.id (G.obj (F.obj Xβ.right)) - CategoryTheory.Limits.Cocone.underPost_ΞΉ_app π Mathlib.CategoryTheory.Comma.Over.Basic
{J : Type u_1} {C : Type u_2} [CategoryTheory.Category.{v_1, u_1} J] [CategoryTheory.Category.{v_2, u_2} C] {D : CategoryTheory.Functor J C} (c : CategoryTheory.Limits.Cocone D) (j : J) (k : CategoryTheory.Under j) : (c.underPost j).ΞΉ.app k = CategoryTheory.Under.homMk (c.ΞΉ.app k.right) β― - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceFunctor_map_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) {Xβ Yβ : CategoryTheory.StructuredArrow c (CategoryTheory.Comma.fst F G)} (f : Xβ βΆ Yβ) : ((CategoryTheory.StructuredArrow.ofCommaSndEquivalenceFunctor F G c).map f).right = (CategoryTheory.StructuredArrow.Hom.right f).right - CategoryTheory.Under.postEquiv_unitIso π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : T β D) : (CategoryTheory.Under.postEquiv X F).unitIso = CategoryTheory.NatIso.ofComponents (fun A => CategoryTheory.Under.isoMk (F.unitIso.app A.right) β―) β― - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse_map_right_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) {Xβ Yβ : CategoryTheory.Comma ((CategoryTheory.Under.forget c).comp F) G} (g : Xβ βΆ Yβ) : ((CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse F G c).map g).right.right = g.right - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse_map_right_left π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) {Xβ Yβ : CategoryTheory.Comma ((CategoryTheory.Under.forget c).comp F) G} (g : Xβ βΆ Yβ) : ((CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse F G c).map g).right.left = CategoryTheory.Under.Hom.right g.left - CategoryTheory.StructuredArrow.ofCommaSndEquivalence_unitIso π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) : (CategoryTheory.StructuredArrow.ofCommaSndEquivalence F G c).unitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.StructuredArrow c (CategoryTheory.Comma.fst F G))).obj x)) β― - CategoryTheory.Under.postEquiv_counitIso π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (X : T) (F : T β D) : (CategoryTheory.Under.postEquiv X F).counitIso = CategoryTheory.NatIso.ofComponents (fun A => CategoryTheory.Under.isoMk (F.counitIso.app A.right) β―) β― - CategoryTheory.StructuredArrow.ofCommaSndEquivalence_counitIso π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) : (CategoryTheory.StructuredArrow.ofCommaSndEquivalence F G c).counitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl (((CategoryTheory.StructuredArrow.ofCommaSndEquivalenceInverse F G c).comp (CategoryTheory.StructuredArrow.ofCommaSndEquivalenceFunctor F G c)).obj x)) β― - CategoryTheory.Under.postAdjunctionLeft_unit_app π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {F : CategoryTheory.Functor T D} {G : CategoryTheory.Functor D T} (a : F β£ G) (A : CategoryTheory.Under ((CategoryTheory.Functor.id T).obj X)) : (CategoryTheory.Under.postAdjunctionLeft a).unit.app A = CategoryTheory.Under.homMk (a.unit.app A.right) β― - CategoryTheory.Under.postAdjunctionLeft_counit_app π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {X : T} {F : CategoryTheory.Functor T D} {G : CategoryTheory.Functor D T} (a : F β£ G) (A : CategoryTheory.Under (F.obj ((CategoryTheory.Functor.id T).obj X))) : (CategoryTheory.Under.postAdjunctionLeft a).counit.app A = CategoryTheory.Under.homMk (a.counit.app A.right) β― - CategoryTheory.StructuredArrow.ofCommaSndEquivalenceFunctor_map_left π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] {C : Type uβ} [CategoryTheory.Category.{vβ, uβ} C] (F : CategoryTheory.Functor C T) (G : CategoryTheory.Functor D T) (c : C) {Xβ Yβ : CategoryTheory.StructuredArrow c (CategoryTheory.Comma.fst F G)} (f : Xβ βΆ Yβ) : ((CategoryTheory.StructuredArrow.ofCommaSndEquivalenceFunctor F G c).map f).left = CategoryTheory.Under.homMk (CategoryTheory.StructuredArrow.Hom.right f).left β― - CategoryTheory.StructuredArrow.ofDiagEquivalence.functor_map_right_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) {Xβ Yβ : CategoryTheory.StructuredArrow X (CategoryTheory.Functor.diag T)} (g : Xβ βΆ Yβ) : ((CategoryTheory.StructuredArrow.ofDiagEquivalence.functor X).map g).right.right = g.right - CategoryTheory.StructuredArrow.ofDiagEquivalence.inverse_map_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T Γ T) {Xβ Yβ : CategoryTheory.StructuredArrow X.2 (CategoryTheory.Under.forget X.1)} (g : Xβ βΆ Yβ) : ((CategoryTheory.StructuredArrow.ofDiagEquivalence.inverse X).map g).right = CategoryTheory.Under.Hom.right g.right - CategoryTheory.Over.opEquivOpUnder_counitIso π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) : (CategoryTheory.Over.opEquivOpUnder X).counitIso = CategoryTheory.Iso.refl ({ obj := fun Y => CategoryTheory.Over.mk (Opposite.unop Y).hom.op, map := fun {Z Y} f => CategoryTheory.Over.homMk (CategoryTheory.Under.Hom.right f.unop).op β―, map_id := β―, map_comp := β― }.comp { obj := fun Y => Opposite.op (CategoryTheory.Under.mk Y.hom.unop), map := fun {Z Y} f => Opposite.op (CategoryTheory.Under.homMk (CategoryTheory.Over.Hom.left f).unop β―), map_id := β―, map_comp := β― }) - CategoryTheory.Under.opEquivOpOver_counitIso π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] (X : T) : (CategoryTheory.Under.opEquivOpOver X).counitIso = CategoryTheory.Iso.refl ({ obj := fun Y => CategoryTheory.Under.mk (Opposite.unop Y).hom.op, map := fun {Z Y} f => CategoryTheory.Under.homMk (CategoryTheory.Over.Hom.left f.unop).op β―, map_id := β―, map_comp := β― }.comp { obj := fun Y => Opposite.op (CategoryTheory.Over.mk Y.hom.unop), map := fun {Z Y} f => Opposite.op (CategoryTheory.Over.homMk (CategoryTheory.Under.Hom.right f).unop β―), map_id := β―, map_comp := β― }) - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.functor_map_right_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) {Xβ Yβ : CategoryTheory.StructuredArrow X (CategoryTheory.StructuredArrow.proj Y F)} (g : Xβ βΆ Yβ) : ((CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.functor F Y X).map g).right.right = g.right.right - CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.inverse_map_right_right π Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type uβ} [CategoryTheory.Category.{vβ, uβ} T] {D : Type uβ} [CategoryTheory.Category.{vβ, uβ} D] (F : CategoryTheory.Functor D T) (Y : T) (X : D) {Xβ Yβ : CategoryTheory.StructuredArrow Y ((CategoryTheory.Under.forget X).comp F)} (g : Xβ βΆ Yβ) : ((CategoryTheory.StructuredArrow.ofStructuredArrowProjEquivalence.inverse F Y X).map g).right.right = CategoryTheory.Under.Hom.right g.right - CommRingCat.monoidAlgebra π Mathlib.Algebra.Category.Ring.Adjunctions
(R : CommRingCat) : CategoryTheory.Functor CommMonCat (CategoryTheory.Under R) - CommRingCat.instIsLeftAdjointCommMonCatUnderMonoidAlgebra π Mathlib.Algebra.Category.Ring.Adjunctions
(R : CommRingCat) : R.monoidAlgebra.IsLeftAdjoint - CommRingCat.monoidAlgebra_obj π Mathlib.Algebra.Category.Ring.Adjunctions
(R : CommRingCat) (G : CommMonCat) : R.monoidAlgebra.obj G = CategoryTheory.Under.mk (CommRingCat.ofHom MonoidAlgebra.singleOneRingHom) - CommRingCat.forgetβAdj π Mathlib.Algebra.Category.Ring.Adjunctions
{R : CommRingCat} (hR : CategoryTheory.Limits.IsInitial R) : R.monoidAlgebra.comp (CategoryTheory.Under.forget R) β£ CategoryTheory.forgetβ CommRingCat CommMonCat - CommRingCat.monoidAlgebraAdj π Mathlib.Algebra.Category.Ring.Adjunctions
(R : CommRingCat) : R.monoidAlgebra β£ (CategoryTheory.Under.forget R).comp (CategoryTheory.forgetβ CommRingCat CommMonCat) - CommRingCat.monoidAlgebra_map π Mathlib.Algebra.Category.Ring.Adjunctions
(R : CommRingCat) {Xβ Yβ : CommMonCat} (f : Xβ βΆ Yβ) : R.monoidAlgebra.map f = CategoryTheory.Under.homMk (CommRingCat.ofHom (MonoidAlgebra.mapDomainRingHom (βR) (CommMonCat.Hom.hom f))) β― - CategoryTheory.algebraEquivUnder π Mathlib.CategoryTheory.Monad.Products
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) [CategoryTheory.Limits.HasBinaryCoproducts C] : (CategoryTheory.coprodMonad X).Algebra β CategoryTheory.Under X - CategoryTheory.algebraToUnder π Mathlib.CategoryTheory.Monad.Products
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) [CategoryTheory.Limits.HasBinaryCoproducts C] : CategoryTheory.Functor (CategoryTheory.coprodMonad X).Algebra (CategoryTheory.Under X) - CategoryTheory.underToAlgebra π Mathlib.CategoryTheory.Monad.Products
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) [CategoryTheory.Limits.HasBinaryCoproducts C] : CategoryTheory.Functor (CategoryTheory.Under X) (CategoryTheory.coprodMonad X).Algebra - CategoryTheory.underToAlgebra_obj_A π Mathlib.CategoryTheory.Monad.Products
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) [CategoryTheory.Limits.HasBinaryCoproducts C] (f : CategoryTheory.Under X) : ((CategoryTheory.underToAlgebra X).obj f).A = f.right
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