Loogle!
Result
Found 404 declarations mentioning CategoryTheory.Iso.refl. Of these, only the first 200 are shown.
- CategoryTheory.Iso.refl 📋 Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) : X ≅ X - CategoryTheory.Iso.refl_symm 📋 Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) : (CategoryTheory.Iso.refl X).symm = CategoryTheory.Iso.refl X - CategoryTheory.Iso.refl_trans 📋 Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (α : X ≅ Y) : CategoryTheory.Iso.refl X ≪≫ α = α - CategoryTheory.Iso.trans_refl 📋 Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (α : X ≅ Y) : α ≪≫ CategoryTheory.Iso.refl Y = α - CategoryTheory.Iso.refl_hom 📋 Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) : (CategoryTheory.Iso.refl X).hom = CategoryTheory.CategoryStruct.id X - CategoryTheory.Iso.refl_inv 📋 Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) : (CategoryTheory.Iso.refl X).inv = CategoryTheory.CategoryStruct.id X - CategoryTheory.Iso.self_symm_id 📋 Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (α : X ≅ Y) : α ≪≫ α.symm = CategoryTheory.Iso.refl X - CategoryTheory.Iso.symm_self_id 📋 Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (α : X ≅ Y) : α.symm ≪≫ α = CategoryTheory.Iso.refl Y - CategoryTheory.Functor.mapIso_refl 📋 Mathlib.CategoryTheory.Iso
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (F : CategoryTheory.Functor C D) (X : C) : F.mapIso (CategoryTheory.Iso.refl X) = CategoryTheory.Iso.refl (F.obj X) - CategoryTheory.Functor.isoWhiskerLeft_refl 📋 Mathlib.CategoryTheory.Whiskering
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor D E) : F.isoWhiskerLeft (CategoryTheory.Iso.refl G) = CategoryTheory.Iso.refl (F.comp G) - CategoryTheory.Functor.isoWhiskerRight_refl 📋 Mathlib.CategoryTheory.Whiskering
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor D E) : CategoryTheory.Functor.isoWhiskerRight (CategoryTheory.Iso.refl F) G = CategoryTheory.Iso.refl (F.comp G) - CategoryTheory.Equivalence.refl_unitIso 📋 Mathlib.CategoryTheory.Equivalence
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] : CategoryTheory.Equivalence.refl.unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id C) - CategoryTheory.Equivalence.changeFunctor_refl 📋 Mathlib.CategoryTheory.Equivalence
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (e : C ≌ D) : e.changeFunctor (CategoryTheory.Iso.refl e.functor) = e - CategoryTheory.Equivalence.refl_counitIso 📋 Mathlib.CategoryTheory.Equivalence
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] : CategoryTheory.Equivalence.refl.counitIso = CategoryTheory.Iso.refl ((CategoryTheory.Functor.id C).comp (CategoryTheory.Functor.id C)) - CategoryTheory.ObjectProperty.fullSubcategoryCongr_unitIso 📋 Mathlib.CategoryTheory.Equivalence
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {P P' : CategoryTheory.ObjectProperty C} (h : P = P') : (CategoryTheory.ObjectProperty.fullSubcategoryCongr h).unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id P.FullSubcategory) - CategoryTheory.ObjectProperty.fullSubcategoryCongr_counitIso 📋 Mathlib.CategoryTheory.Equivalence
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {P P' : CategoryTheory.ObjectProperty C} (h : P = P') : (CategoryTheory.ObjectProperty.fullSubcategoryCongr h).counitIso = CategoryTheory.Iso.refl ((CategoryTheory.ObjectProperty.ιOfLE ⋯).comp (CategoryTheory.ObjectProperty.ιOfLE ⋯)) - CategoryTheory.Iso.unop_refl 📋 Mathlib.CategoryTheory.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] (X : Cᵒᵖ) : (CategoryTheory.Iso.refl X).unop = CategoryTheory.Iso.refl (Opposite.unop X) - CategoryTheory.Iso.op_refl 📋 Mathlib.CategoryTheory.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] (X : C) : (CategoryTheory.Iso.refl X).op = CategoryTheory.Iso.refl (Opposite.op X) - CategoryTheory.NatIso.unop_refl 📋 Mathlib.CategoryTheory.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (F : CategoryTheory.Functor Cᵒᵖ Dᵒᵖ) : CategoryTheory.NatIso.unop (CategoryTheory.Iso.refl F) = CategoryTheory.Iso.refl F.unop - CategoryTheory.NatIso.op_refl 📋 Mathlib.CategoryTheory.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {F : CategoryTheory.Functor C D} : CategoryTheory.NatIso.op (CategoryTheory.Iso.refl F) = CategoryTheory.Iso.refl F.op - CategoryTheory.opOpEquivalence_counitIso 📋 Mathlib.CategoryTheory.Opposites
(C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] : (CategoryTheory.opOpEquivalence C).counitIso = CategoryTheory.Iso.refl ((CategoryTheory.opOp C).comp (CategoryTheory.unopUnop C)) - CategoryTheory.opOpEquivalence_unitIso 📋 Mathlib.CategoryTheory.Opposites
(C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] : (CategoryTheory.opOpEquivalence C).unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id Cᵒᵖᵒᵖ) - CategoryTheory.eqToIso_refl 📋 Mathlib.CategoryTheory.EqToHom
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} (p : X = X) : CategoryTheory.eqToIso p = CategoryTheory.Iso.refl X - CategoryTheory.Prod.braiding_unitIso 📋 Mathlib.CategoryTheory.Products.Basic
(C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] (D : Type u₂) [CategoryTheory.Category.{v₂, u₂} D] : (CategoryTheory.Prod.braiding C D).unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (C × D)) - CategoryTheory.Prod.braiding_counitIso 📋 Mathlib.CategoryTheory.Products.Basic
(C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] (D : Type u₂) [CategoryTheory.Category.{v₂, u₂} D] : (CategoryTheory.Prod.braiding C D).counitIso = CategoryTheory.Iso.refl ((CategoryTheory.Prod.swap D C).comp (CategoryTheory.Prod.swap C D)) - CategoryTheory.Pi.isoApp_refl 📋 Mathlib.CategoryTheory.Pi.Basic
{I : Type w₀} {C : I → Type u₁} [(i : I) → CategoryTheory.Category.{v₁, u₁} (C i)] (X : (i : I) → C i) (i : I) : CategoryTheory.Pi.isoApp (CategoryTheory.Iso.refl X) i = CategoryTheory.Iso.refl (X i) - CategoryTheory.Pi.optionEquivalence_unitIso 📋 Mathlib.CategoryTheory.Pi.Basic
{J : Type w₁} (C' : Option J → Type u₁) [(i : Option J) → CategoryTheory.Category.{v₁, u₁} (C' i)] : (CategoryTheory.Pi.optionEquivalence C').unitIso = CategoryTheory.NatIso.pi' fun i => match i with | none => CategoryTheory.Iso.refl ((CategoryTheory.Functor.id ((i : Option J) → C' i)).comp (CategoryTheory.Pi.eval C' none)) | some val => CategoryTheory.Iso.refl ((CategoryTheory.Functor.id ((i : Option J) → C' i)).comp (CategoryTheory.Pi.eval C' (some val))) - CategoryTheory.Pi.optionEquivalence_counitIso 📋 Mathlib.CategoryTheory.Pi.Basic
{J : Type w₁} (C' : Option J → Type u₁) [(i : Option J) → CategoryTheory.Category.{v₁, u₁} (C' i)] : (CategoryTheory.Pi.optionEquivalence C').counitIso = CategoryTheory.Iso.refl ((CategoryTheory.Functor.pi' fun i => match i with | none => CategoryTheory.Prod.fst (C' none) ((j : J) → C' (some j)) | some i => (CategoryTheory.Prod.snd (C' none) ((j : J) → C' (some j))).comp (CategoryTheory.Pi.eval (fun j => C' (some j)) i)).comp ((CategoryTheory.Pi.eval C' none).prod' (CategoryTheory.Functor.pi' fun i => CategoryTheory.Pi.eval C' (some i)))) - CategoryTheory.piEquivalenceFunctorDiscrete_unitIso 📋 Mathlib.CategoryTheory.Discrete.Basic
(J : Type u₂) (C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] : (CategoryTheory.piEquivalenceFunctorDiscrete J C).unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (J → C)) - CategoryTheory.piEquivalenceFunctorDiscrete_counitIso 📋 Mathlib.CategoryTheory.Discrete.Basic
(J : Type u₂) (C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] : (CategoryTheory.piEquivalenceFunctorDiscrete J C).counitIso = CategoryTheory.NatIso.ofComponents (fun F => CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl ((({ obj := fun F j => F.obj { as := j }, map := fun {X Y} f j => f.app { as := j }, map_id := ⋯, map_comp := ⋯ }.comp { obj := fun F => CategoryTheory.Discrete.functor F, map := fun {X Y} f => CategoryTheory.Discrete.natTrans fun j => f j.as, map_id := ⋯, map_comp := ⋯ }).obj F).obj x)) ⋯) ⋯ - CategoryTheory.prod.leftUnitorEquivalence_counitIso 📋 Mathlib.CategoryTheory.Products.Unitor
(C : Type u) [CategoryTheory.Category.{v, u} C] : (CategoryTheory.prod.leftUnitorEquivalence C).counitIso = CategoryTheory.Iso.refl ((CategoryTheory.prod.leftInverseUnitor C).comp (CategoryTheory.prod.leftUnitor C)) - CategoryTheory.prod.rightUnitorEquivalence_counitIso 📋 Mathlib.CategoryTheory.Products.Unitor
(C : Type u) [CategoryTheory.Category.{v, u} C] : (CategoryTheory.prod.rightUnitorEquivalence C).counitIso = CategoryTheory.Iso.refl ((CategoryTheory.prod.rightInverseUnitor C).comp (CategoryTheory.prod.rightUnitor C)) - CategoryTheory.prod.leftUnitorEquivalence_unitIso 📋 Mathlib.CategoryTheory.Products.Unitor
(C : Type u) [CategoryTheory.Category.{v, u} C] : (CategoryTheory.prod.leftUnitorEquivalence C).unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (CategoryTheory.Discrete PUnit.{w + 1} × C)) - CategoryTheory.prod.rightUnitorEquivalence_unitIso 📋 Mathlib.CategoryTheory.Products.Unitor
(C : Type u) [CategoryTheory.Category.{v, u} C] : (CategoryTheory.prod.rightUnitorEquivalence C).unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (C × CategoryTheory.Discrete PUnit.{w + 1})) - CategoryTheory.Comma.opEquiv_unitIso 📋 Mathlib.CategoryTheory.Comma.Basic
{A : Type u₁} [CategoryTheory.Category.{v₁, u₁} A] {B : Type u₂} [CategoryTheory.Category.{v₂, u₂} B] {T : Type u₃} [CategoryTheory.Category.{v₃, u₃} T] (L : CategoryTheory.Functor A T) (R : CategoryTheory.Functor B T) : (CategoryTheory.Comma.opEquiv L R).unitIso = CategoryTheory.NatIso.ofComponents (fun X => CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.Comma L R)).obj X)) ⋯ - CategoryTheory.Comma.opEquiv_counitIso 📋 Mathlib.CategoryTheory.Comma.Basic
{A : Type u₁} [CategoryTheory.Category.{v₁, u₁} A] {B : Type u₂} [CategoryTheory.Category.{v₂, u₂} B] {T : Type u₃} [CategoryTheory.Category.{v₃, u₃} T] (L : CategoryTheory.Functor A T) (R : CategoryTheory.Functor B T) : (CategoryTheory.Comma.opEquiv L R).counitIso = CategoryTheory.NatIso.ofComponents (fun X => CategoryTheory.Iso.refl (((CategoryTheory.Comma.unopFunctor R L).leftOp.comp (CategoryTheory.Comma.opFunctor L R)).obj X)) ⋯ - CategoryTheory.Groupoid.invEquivalence_unitIso 📋 Mathlib.CategoryTheory.Groupoid
(C : Type u) [CategoryTheory.Groupoid C] : (CategoryTheory.Groupoid.invEquivalence C).unitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl ((CategoryTheory.Functor.id C).obj x)) ⋯ - CategoryTheory.Groupoid.invEquivalence_counitIso 📋 Mathlib.CategoryTheory.Groupoid
(C : Type u) [CategoryTheory.Groupoid C] : (CategoryTheory.Groupoid.invEquivalence C).counitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl (({ obj := Opposite.unop, map := fun {x y} f => CategoryTheory.Groupoid.inv f.unop, map_id := ⋯, map_comp := ⋯ }.comp { obj := Opposite.op, map := fun {x x_1} f => (CategoryTheory.Groupoid.inv f).op, map_id := ⋯, map_comp := ⋯ }).obj x)) ⋯ - CategoryTheory.Iso.toEquiv_id 📋 Mathlib.CategoryTheory.Types.Basic
(X : Type u) : (CategoryTheory.Iso.refl X).toEquiv = Equiv.refl X - AddCommMonCat.equivalence_unitIso 📋 Mathlib.Algebra.Category.MonCat.Basic
: AddCommMonCat.equivalence.unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id AddCommMonCat) - AddMonCat.equivalence_unitIso 📋 Mathlib.Algebra.Category.MonCat.Basic
: AddMonCat.equivalence.unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id AddMonCat) - AddMonCat.equivalence_counitIso 📋 Mathlib.Algebra.Category.MonCat.Basic
: AddMonCat.equivalence.counitIso = CategoryTheory.Iso.refl ({ obj := fun X => AddMonCat.of (Additive ↑X), map := fun {X Y} f => AddMonCat.ofHom (MonoidHom.toAdditive (MonCat.Hom.hom f)), map_id := AddMonCat.equivalence._proof_3, map_comp := @AddMonCat.equivalence._proof_4 }.comp { obj := fun X => MonCat.of (Multiplicative ↑X), map := fun {X Y} f => MonCat.ofHom (AddMonoidHom.toMultiplicative (AddMonCat.Hom.hom f)), map_id := AddMonCat.equivalence._proof_1, map_comp := @AddMonCat.equivalence._proof_2 }) - AddCommMonCat.equivalence_counitIso 📋 Mathlib.Algebra.Category.MonCat.Basic
: AddCommMonCat.equivalence.counitIso = CategoryTheory.Iso.refl ({ obj := fun X => AddCommMonCat.of (Additive ↑X), map := fun {X Y} f => AddCommMonCat.ofHom (MonoidHom.toAdditive (CommMonCat.Hom.hom f)), map_id := AddCommMonCat.equivalence._proof_3, map_comp := @AddCommMonCat.equivalence._proof_4 }.comp { obj := fun X => CommMonCat.of (Multiplicative ↑X), map := fun {X Y} f => CommMonCat.ofHom (AddMonoidHom.toMultiplicative (AddCommMonCat.Hom.hom f)), map_id := AddCommMonCat.equivalence._proof_1, map_comp := @AddCommMonCat.equivalence._proof_2 }) - CategoryTheory.Iso.homCongr_refl 📋 Mathlib.CategoryTheory.HomCongr
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y : C} (f : X ⟶ Y) : ((CategoryTheory.Iso.refl X).homCongr (CategoryTheory.Iso.refl Y)) f = f - CategoryTheory.Iso.refl_conj 📋 Mathlib.CategoryTheory.Conj
{C : Type u} [CategoryTheory.Category.{v, u} C] {X : C} (f : CategoryTheory.End X) : (CategoryTheory.Iso.refl X).conj f = f - CategoryTheory.Limits.coconeOpEquiv_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J C} : CategoryTheory.Limits.coconeOpEquiv.unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (CategoryTheory.Limits.Cocone F)ᵒᵖ) - CategoryTheory.Limits.coneOpEquiv_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J C} : CategoryTheory.Limits.coneOpEquiv.unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (CategoryTheory.Limits.Cone F)ᵒᵖ) - CategoryTheory.Limits.coconeLeftOpOfConeEquiv_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J Cᵒᵖ} : CategoryTheory.Limits.coconeLeftOpOfConeEquiv.unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (CategoryTheory.Limits.Cone F)ᵒᵖ) - CategoryTheory.Limits.coconeRightOpOfConeEquiv_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor Jᵒᵖ C} : CategoryTheory.Limits.coconeRightOpOfConeEquiv.unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (CategoryTheory.Limits.Cone F)ᵒᵖ) - CategoryTheory.Limits.coneLeftOpOfCoconeEquiv_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J Cᵒᵖ} : CategoryTheory.Limits.coneLeftOpOfCoconeEquiv.unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (CategoryTheory.Limits.Cocone F)ᵒᵖ) - CategoryTheory.Limits.coneRightOpOfCoconeEquiv_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor Jᵒᵖ C} : CategoryTheory.Limits.coneRightOpOfCoconeEquiv.unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (CategoryTheory.Limits.Cocone F)ᵒᵖ) - CategoryTheory.Limits.coconeUnopOfConeEquiv_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor Jᵒᵖ Cᵒᵖ} : CategoryTheory.Limits.coconeUnopOfConeEquiv.unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (CategoryTheory.Limits.Cone F)ᵒᵖ) - CategoryTheory.Limits.coneUnopOfCoconeEquiv_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor Jᵒᵖ Cᵒᵖ} : CategoryTheory.Limits.coneUnopOfCoconeEquiv.unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id (CategoryTheory.Limits.Cocone F)ᵒᵖ) - CategoryTheory.Limits.Cocone.precomposeEquivalence_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F G : CategoryTheory.Functor J C} (α : F ≅ G) : (CategoryTheory.Limits.Cocone.precomposeEquivalence α).unitIso = CategoryTheory.NatIso.ofComponents' (fun s => CategoryTheory.Limits.Cocone.extInv (CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.Limits.Cocone F)).obj s).pt) ⋯) ⋯ - CategoryTheory.Limits.Cone.postcomposeEquivalence_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F G : CategoryTheory.Functor J C} (α : F ≅ G) : (CategoryTheory.Limits.Cone.postcomposeEquivalence α).unitIso = CategoryTheory.NatIso.ofComponents (fun s => CategoryTheory.Limits.Cone.ext (CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.Limits.Cone F)).obj s).pt) ⋯) ⋯ - CategoryTheory.Limits.Cocone.precomposeEquivalence_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F G : CategoryTheory.Functor J C} (α : F ≅ G) : (CategoryTheory.Limits.Cocone.precomposeEquivalence α).counitIso = CategoryTheory.NatIso.ofComponents' (fun s => CategoryTheory.Limits.Cocone.extInv (CategoryTheory.Iso.refl (((CategoryTheory.Limits.Cocone.precompose α.hom).comp (CategoryTheory.Limits.Cocone.precompose α.inv)).obj s).pt) ⋯) ⋯ - CategoryTheory.Limits.Cone.postcomposeEquivalence_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F G : CategoryTheory.Functor J C} (α : F ≅ G) : (CategoryTheory.Limits.Cone.postcomposeEquivalence α).counitIso = CategoryTheory.NatIso.ofComponents (fun s => CategoryTheory.Limits.Cone.ext (CategoryTheory.Iso.refl (((CategoryTheory.Limits.Cone.postcompose α.inv).comp (CategoryTheory.Limits.Cone.postcompose α.hom)).obj s).pt) ⋯) ⋯ - CategoryTheory.Limits.Cocone.whiskeringEquivalence_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J C} (e : K ≌ J) : (CategoryTheory.Limits.Cocone.whiskeringEquivalence e).unitIso = CategoryTheory.NatIso.ofComponents' (fun s => CategoryTheory.Limits.Cocone.extInv (CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.Limits.Cocone F)).obj s).pt) ⋯) ⋯ - CategoryTheory.Limits.Cone.whiskeringEquivalence_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J C} (e : K ≌ J) : (CategoryTheory.Limits.Cone.whiskeringEquivalence e).unitIso = CategoryTheory.NatIso.ofComponents (fun s => CategoryTheory.Limits.Cone.ext (CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.Limits.Cone F)).obj s).pt) ⋯) ⋯ - CategoryTheory.Limits.Cocone.whiskeringEquivalence_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J C} (e : K ≌ J) : (CategoryTheory.Limits.Cocone.whiskeringEquivalence e).counitIso = CategoryTheory.NatIso.ofComponents' (fun s => CategoryTheory.Limits.Cocone.extInv (CategoryTheory.Iso.refl ((((CategoryTheory.Limits.Cocone.whiskering e.inverse).comp (CategoryTheory.Limits.Cocone.precompose (e.invFunIdAssoc F).inv)).comp (CategoryTheory.Limits.Cocone.whiskering e.functor)).obj s).pt) ⋯) ⋯ - CategoryTheory.Limits.Cone.whiskeringEquivalence_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J C} (e : K ≌ J) : (CategoryTheory.Limits.Cone.whiskeringEquivalence e).counitIso = CategoryTheory.NatIso.ofComponents (fun s => CategoryTheory.Limits.Cone.ext (CategoryTheory.Iso.refl ((((CategoryTheory.Limits.Cone.whiskering e.inverse).comp (CategoryTheory.Limits.Cone.postcompose (e.invFunIdAssoc F).hom)).comp (CategoryTheory.Limits.Cone.whiskering e.functor)).obj s).pt) ⋯) ⋯ - CategoryTheory.Limits.coneOpEquiv_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J C} : CategoryTheory.Limits.coneOpEquiv.counitIso = CategoryTheory.Iso.refl ({ obj := fun c => Opposite.op c.unop, map := fun {X Y} f => Opposite.op { hom := f.hom.unop, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }.comp { obj := fun c => (Opposite.unop c).op, map := fun {X Y} f => { hom := f.unop.hom.op, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }) - CategoryTheory.Limits.coconeLeftOpOfConeEquiv_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J Cᵒᵖ} : CategoryTheory.Limits.coconeLeftOpOfConeEquiv.counitIso = CategoryTheory.Iso.refl ({ obj := fun c => Opposite.op (CategoryTheory.Limits.coneOfCoconeLeftOp c), map := fun {X Y} f => Opposite.op { hom := f.hom.op, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }.comp { obj := fun c => CategoryTheory.Limits.coconeLeftOpOfCone (Opposite.unop c), map := fun {X Y} f => { hom := f.unop.hom.unop, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }) - CategoryTheory.Limits.coconeRightOpOfConeEquiv_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor Jᵒᵖ C} : CategoryTheory.Limits.coconeRightOpOfConeEquiv.counitIso = CategoryTheory.Iso.refl ({ obj := fun c => Opposite.op (CategoryTheory.Limits.coneOfCoconeRightOp c), map := fun {X Y} f => Opposite.op { hom := f.hom.unop, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }.comp { obj := fun c => CategoryTheory.Limits.coconeRightOpOfCone (Opposite.unop c), map := fun {X Y} f => { hom := f.unop.hom.op, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }) - CategoryTheory.Limits.coconeUnopOfConeEquiv_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor Jᵒᵖ Cᵒᵖ} : CategoryTheory.Limits.coconeUnopOfConeEquiv.counitIso = CategoryTheory.Iso.refl ({ obj := fun c => Opposite.op (CategoryTheory.Limits.coneOfCoconeUnop c), map := fun {X Y} f => Opposite.op { hom := f.hom.op, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }.comp { obj := fun c => CategoryTheory.Limits.coconeUnopOfCone (Opposite.unop c), map := fun {X Y} f => { hom := f.unop.hom.unop, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }) - CategoryTheory.Limits.coconeOpEquiv_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J C} : CategoryTheory.Limits.coconeOpEquiv.counitIso = CategoryTheory.Iso.refl ({ obj := fun c => Opposite.op c.unop, map := fun {Y X} f => Opposite.op { hom := f.hom.unop, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }.comp { obj := fun c => (Opposite.unop c).op, map := fun {Y X} f => { hom := f.unop.hom.op, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }) - CategoryTheory.Limits.coneLeftOpOfCoconeEquiv_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J Cᵒᵖ} : CategoryTheory.Limits.coneLeftOpOfCoconeEquiv.counitIso = CategoryTheory.Iso.refl ({ obj := fun c => Opposite.op (CategoryTheory.Limits.coconeOfConeLeftOp c), map := fun {Y X} f => Opposite.op { hom := f.hom.op, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }.comp { obj := fun c => CategoryTheory.Limits.coneLeftOpOfCocone (Opposite.unop c), map := fun {Y X} f => { hom := f.unop.hom.unop, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }) - CategoryTheory.Limits.coneRightOpOfCoconeEquiv_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor Jᵒᵖ C} : CategoryTheory.Limits.coneRightOpOfCoconeEquiv.counitIso = CategoryTheory.Iso.refl ({ obj := fun c => Opposite.op (CategoryTheory.Limits.coconeOfConeRightOp c), map := fun {Y X} f => Opposite.op { hom := f.hom.unop, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }.comp { obj := fun c => CategoryTheory.Limits.coneRightOpOfCocone (Opposite.unop c), map := fun {Y X} f => { hom := f.unop.hom.op, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }) - CategoryTheory.Limits.coneUnopOfCoconeEquiv_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor Jᵒᵖ Cᵒᵖ} : CategoryTheory.Limits.coneUnopOfCoconeEquiv.counitIso = CategoryTheory.Iso.refl ({ obj := fun c => Opposite.op (CategoryTheory.Limits.coconeOfConeUnop c), map := fun {Y X} f => Opposite.op { hom := f.hom.op, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }.comp { obj := fun c => CategoryTheory.Limits.coneUnopOfCocone (Opposite.unop c), map := fun {Y X} f => { hom := f.unop.hom.unop, w := ⋯ }, map_id := ⋯, map_comp := ⋯ }) - CategoryTheory.Limits.Cocone.equivalenceOfReindexing_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J C} {G : CategoryTheory.Functor K C} (e : K ≌ J) (α : e.functor.comp F ≅ G) : (CategoryTheory.Limits.Cocone.equivalenceOfReindexing e α).counitIso = (((CategoryTheory.Limits.Cocone.precompose α.hom).comp ((CategoryTheory.Limits.Cocone.whiskering e.inverse).comp (CategoryTheory.Limits.Cocone.precompose (e.invFunIdAssoc F).inv))).associator (CategoryTheory.Limits.Cocone.whiskering e.functor) (CategoryTheory.Limits.Cocone.precompose α.inv)).symm ≪≫ CategoryTheory.Functor.isoWhiskerRight ((CategoryTheory.Limits.Cocone.precompose α.hom).associator ((CategoryTheory.Limits.Cocone.whiskering e.inverse).comp (CategoryTheory.Limits.Cocone.precompose (e.invFunIdAssoc F).inv)) (CategoryTheory.Limits.Cocone.whiskering e.functor)) (CategoryTheory.Limits.Cocone.precompose α.inv) ≪≫ CategoryTheory.Functor.isoWhiskerRight ((CategoryTheory.Limits.Cocone.precompose α.hom).isoWhiskerLeft (CategoryTheory.NatIso.ofComponents' (fun s => CategoryTheory.Limits.Cocone.extInv (CategoryTheory.Iso.refl s.pt) ⋯) ⋯)) (CategoryTheory.Limits.Cocone.precompose α.inv) ≪≫ CategoryTheory.Functor.isoWhiskerRight (CategoryTheory.Limits.Cocone.precompose α.hom).rightUnitor (CategoryTheory.Limits.Cocone.precompose α.inv) ≪≫ CategoryTheory.NatIso.ofComponents' (fun s => CategoryTheory.Limits.Cocone.extInv (CategoryTheory.Iso.refl s.pt) ⋯) ⋯ - CategoryTheory.Limits.Cone.equivalenceOfReindexing_counitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J C} {G : CategoryTheory.Functor K C} (e : K ≌ J) (α : e.functor.comp F ≅ G) : (CategoryTheory.Limits.Cone.equivalenceOfReindexing e α).counitIso = (((CategoryTheory.Limits.Cone.postcompose α.inv).comp ((CategoryTheory.Limits.Cone.whiskering e.inverse).comp (CategoryTheory.Limits.Cone.postcompose (e.invFunIdAssoc F).hom))).associator (CategoryTheory.Limits.Cone.whiskering e.functor) (CategoryTheory.Limits.Cone.postcompose α.hom)).symm ≪≫ CategoryTheory.Functor.isoWhiskerRight ((CategoryTheory.Limits.Cone.postcompose α.inv).associator ((CategoryTheory.Limits.Cone.whiskering e.inverse).comp (CategoryTheory.Limits.Cone.postcompose (e.invFunIdAssoc F).hom)) (CategoryTheory.Limits.Cone.whiskering e.functor)) (CategoryTheory.Limits.Cone.postcompose α.hom) ≪≫ CategoryTheory.Functor.isoWhiskerRight ((CategoryTheory.Limits.Cone.postcompose α.inv).isoWhiskerLeft (CategoryTheory.NatIso.ofComponents (fun s => CategoryTheory.Limits.Cone.ext (CategoryTheory.Iso.refl s.pt) ⋯) ⋯)) (CategoryTheory.Limits.Cone.postcompose α.hom) ≪≫ CategoryTheory.Functor.isoWhiskerRight (CategoryTheory.Limits.Cone.postcompose α.inv).rightUnitor (CategoryTheory.Limits.Cone.postcompose α.hom) ≪≫ CategoryTheory.NatIso.ofComponents (fun s => CategoryTheory.Limits.Cone.ext (CategoryTheory.Iso.refl s.pt) ⋯) ⋯ - CategoryTheory.Limits.Cocone.equivalenceOfReindexing_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J C} {G : CategoryTheory.Functor K C} (e : K ≌ J) (α : e.functor.comp F ≅ G) : (CategoryTheory.Limits.Cocone.equivalenceOfReindexing e α).unitIso = CategoryTheory.NatIso.ofComponents' (fun s => CategoryTheory.Limits.Cocone.extInv (CategoryTheory.Iso.refl s.pt) ⋯) ⋯ ≪≫ CategoryTheory.Functor.isoWhiskerRight (CategoryTheory.Limits.Cocone.whiskering e.functor).rightUnitor.symm ((CategoryTheory.Limits.Cocone.whiskering e.inverse).comp (CategoryTheory.Limits.Cocone.precompose (e.invFunIdAssoc F).inv)) ≪≫ CategoryTheory.Functor.isoWhiskerRight ((CategoryTheory.Limits.Cocone.whiskering e.functor).isoWhiskerLeft (CategoryTheory.NatIso.ofComponents' (fun s => CategoryTheory.Limits.Cocone.extInv (CategoryTheory.Iso.refl s.pt) ⋯) ⋯)) ((CategoryTheory.Limits.Cocone.whiskering e.inverse).comp (CategoryTheory.Limits.Cocone.precompose (e.invFunIdAssoc F).inv)) ≪≫ CategoryTheory.Functor.isoWhiskerRight ((CategoryTheory.Limits.Cocone.whiskering e.functor).associator (CategoryTheory.Limits.Cocone.precompose α.inv) (CategoryTheory.Limits.Cocone.precompose α.hom)).symm ((CategoryTheory.Limits.Cocone.whiskering e.inverse).comp (CategoryTheory.Limits.Cocone.precompose (e.invFunIdAssoc F).inv)) ≪≫ ((CategoryTheory.Limits.Cocone.whiskering e.functor).comp (CategoryTheory.Limits.Cocone.precompose α.inv)).associator (CategoryTheory.Limits.Cocone.precompose α.hom) ((CategoryTheory.Limits.Cocone.whiskering e.inverse).comp (CategoryTheory.Limits.Cocone.precompose (e.invFunIdAssoc F).inv)) - CategoryTheory.Limits.Cone.equivalenceOfReindexing_unitIso 📋 Mathlib.CategoryTheory.Limits.Cones
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u₃} [CategoryTheory.Category.{v₃, u₃} C] {F : CategoryTheory.Functor J C} {G : CategoryTheory.Functor K C} (e : K ≌ J) (α : e.functor.comp F ≅ G) : (CategoryTheory.Limits.Cone.equivalenceOfReindexing e α).unitIso = CategoryTheory.NatIso.ofComponents (fun s => CategoryTheory.Limits.Cone.ext (CategoryTheory.Iso.refl s.pt) ⋯) ⋯ ≪≫ CategoryTheory.Functor.isoWhiskerRight (CategoryTheory.Limits.Cone.whiskering e.functor).rightUnitor.symm ((CategoryTheory.Limits.Cone.whiskering e.inverse).comp (CategoryTheory.Limits.Cone.postcompose (e.invFunIdAssoc F).hom)) ≪≫ CategoryTheory.Functor.isoWhiskerRight ((CategoryTheory.Limits.Cone.whiskering e.functor).isoWhiskerLeft (CategoryTheory.NatIso.ofComponents (fun s => CategoryTheory.Limits.Cone.ext (CategoryTheory.Iso.refl s.pt) ⋯) ⋯)) ((CategoryTheory.Limits.Cone.whiskering e.inverse).comp (CategoryTheory.Limits.Cone.postcompose (e.invFunIdAssoc F).hom)) ≪≫ CategoryTheory.Functor.isoWhiskerRight ((CategoryTheory.Limits.Cone.whiskering e.functor).associator (CategoryTheory.Limits.Cone.postcompose α.hom) (CategoryTheory.Limits.Cone.postcompose α.inv)).symm ((CategoryTheory.Limits.Cone.whiskering e.inverse).comp (CategoryTheory.Limits.Cone.postcompose (e.invFunIdAssoc F).hom)) ≪≫ ((CategoryTheory.Limits.Cone.whiskering e.functor).comp (CategoryTheory.Limits.Cone.postcompose α.hom)).associator (CategoryTheory.Limits.Cone.postcompose α.inv) ((CategoryTheory.Limits.Cone.whiskering e.inverse).comp (CategoryTheory.Limits.Cone.postcompose (e.invFunIdAssoc F).hom)) - CategoryTheory.orderDualEquivalence_unitIso 📋 Mathlib.CategoryTheory.Category.Preorder
(X : Type u) [Preorder X] : (CategoryTheory.orderDualEquivalence X).unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id Xᵒᵈ) - CategoryTheory.orderDualEquivalence_counitIso 📋 Mathlib.CategoryTheory.Category.Preorder
(X : Type u) [Preorder X] : (CategoryTheory.orderDualEquivalence X).counitIso = CategoryTheory.Iso.refl ({ obj := fun x => OrderDual.toDual (Opposite.unop x), map := fun {X_1 Y} f => CategoryTheory.homOfLE ⋯, map_id := ⋯, map_comp := ⋯ }.comp { obj := fun x => Opposite.op (OrderDual.ofDual x), map := fun {X_1 Y} f => (CategoryTheory.homOfLE ⋯).op, map_id := ⋯, map_comp := ⋯ }) - CategoryTheory.ShrinkHoms.equivalence_unitIso 📋 Mathlib.CategoryTheory.EssentiallySmall
(C : Type u) [CategoryTheory.Category.{v, u} C] [CategoryTheory.LocallySmall.{w, v, u} C] : (CategoryTheory.ShrinkHoms.equivalence C).unitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl ((CategoryTheory.Functor.id C).obj x)) ⋯ - CategoryTheory.ShrinkHoms.equivalence_counitIso 📋 Mathlib.CategoryTheory.EssentiallySmall
(C : Type u) [CategoryTheory.Category.{v, u} C] [CategoryTheory.LocallySmall.{w, v, u} C] : (CategoryTheory.ShrinkHoms.equivalence C).counitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl (((CategoryTheory.ShrinkHoms.inverse C).comp (CategoryTheory.ShrinkHoms.functor C)).obj x)) ⋯ - CategoryTheory.Functor.equiv_counitIso 📋 Mathlib.CategoryTheory.PUnit
{C : Type u} [CategoryTheory.Category.{v, u} C] : CategoryTheory.Functor.equiv.counitIso = CategoryTheory.NatIso.ofComponents CategoryTheory.Iso.refl ⋯ - CategoryTheory.Functor.equiv_unitIso 📋 Mathlib.CategoryTheory.PUnit
{C : Type u} [CategoryTheory.Category.{v, u} C] : CategoryTheory.Functor.equiv.unitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Discrete.natIso fun x_1 => CategoryTheory.Iso.refl (((CategoryTheory.Functor.id (CategoryTheory.Functor (CategoryTheory.Discrete PUnit.{w + 1}) C)).obj x).obj x_1)) ⋯ - CategoryTheory.CostructuredArrow.prodEquivalence_counitIso 📋 Mathlib.CategoryTheory.Comma.StructuredArrow.Basic
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {C' : Type u₃} [CategoryTheory.Category.{v₃, u₃} C'] {D' : Type u₄} [CategoryTheory.Category.{v₄, u₄} D'] (S : CategoryTheory.Functor C D) (S' : CategoryTheory.Functor C' D') (T : D) (T' : D') : (CategoryTheory.CostructuredArrow.prodEquivalence S S' T T').counitIso = CategoryTheory.NatIso.ofComponents (fun f => CategoryTheory.Iso.refl (((CategoryTheory.CostructuredArrow.prodInverse S S' T T').comp (CategoryTheory.CostructuredArrow.prodFunctor S S' T T')).obj f)) ⋯ - CategoryTheory.StructuredArrow.prodEquivalence_counitIso 📋 Mathlib.CategoryTheory.Comma.StructuredArrow.Basic
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {C' : Type u₃} [CategoryTheory.Category.{v₃, u₃} C'] {D' : Type u₄} [CategoryTheory.Category.{v₄, u₄} D'] (S : D) (S' : D') (T : CategoryTheory.Functor C D) (T' : CategoryTheory.Functor C' D') : (CategoryTheory.StructuredArrow.prodEquivalence S S' T T').counitIso = CategoryTheory.NatIso.ofComponents (fun f => CategoryTheory.Iso.refl (((CategoryTheory.StructuredArrow.prodInverse S S' T T').comp (CategoryTheory.StructuredArrow.prodFunctor S S' T T')).obj f)) ⋯ - CategoryTheory.CostructuredArrow.prodEquivalence_unitIso 📋 Mathlib.CategoryTheory.Comma.StructuredArrow.Basic
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {C' : Type u₃} [CategoryTheory.Category.{v₃, u₃} C'] {D' : Type u₄} [CategoryTheory.Category.{v₄, u₄} D'] (S : CategoryTheory.Functor C D) (S' : CategoryTheory.Functor C' D') (T : D) (T' : D') : (CategoryTheory.CostructuredArrow.prodEquivalence S S' T T').unitIso = CategoryTheory.NatIso.ofComponents (fun f => CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.CostructuredArrow (S.prod S') (T, T'))).obj f)) ⋯ - CategoryTheory.StructuredArrow.prodEquivalence_unitIso 📋 Mathlib.CategoryTheory.Comma.StructuredArrow.Basic
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {C' : Type u₃} [CategoryTheory.Category.{v₃, u₃} C'] {D' : Type u₄} [CategoryTheory.Category.{v₄, u₄} D'] (S : D) (S' : D') (T : CategoryTheory.Functor C D) (T' : CategoryTheory.Functor C' D') : (CategoryTheory.StructuredArrow.prodEquivalence S S' T T').unitIso = CategoryTheory.NatIso.ofComponents (fun f => CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.StructuredArrow (S, S') (T.prod T'))).obj f)) ⋯ - CategoryTheory.CostructuredArrow.preEquivalence_counitIso 📋 Mathlib.CategoryTheory.Comma.StructuredArrow.Basic
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (F : CategoryTheory.Functor C D) {G : CategoryTheory.Functor D E} {e : E} (f : CategoryTheory.CostructuredArrow G e) : (CategoryTheory.CostructuredArrow.preEquivalence F f).counitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.CostructuredArrow.isoMk (CategoryTheory.Iso.refl (((CategoryTheory.CostructuredArrow.preEquivalence.inverse F f).comp (CategoryTheory.CostructuredArrow.preEquivalence.functor F f)).obj x).left) ⋯) ⋯ - CategoryTheory.StructuredArrow.preEquivalence_counitIso 📋 Mathlib.CategoryTheory.Comma.StructuredArrow.Basic
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (F : CategoryTheory.Functor C D) {G : CategoryTheory.Functor D E} {e : E} (f : CategoryTheory.StructuredArrow e G) : (CategoryTheory.StructuredArrow.preEquivalence F f).counitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.StructuredArrow.isoMk (CategoryTheory.Iso.refl (((CategoryTheory.StructuredArrow.preEquivalenceInverse F f).comp (CategoryTheory.StructuredArrow.preEquivalenceFunctor F f)).obj x).right) ⋯) ⋯ - CategoryTheory.CostructuredArrow.preEquivalence_unitIso 📋 Mathlib.CategoryTheory.Comma.StructuredArrow.Basic
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (F : CategoryTheory.Functor C D) {G : CategoryTheory.Functor D E} {e : E} (f : CategoryTheory.CostructuredArrow G e) : (CategoryTheory.CostructuredArrow.preEquivalence F f).unitIso = CategoryTheory.NatIso.ofComponents (fun X => CategoryTheory.CostructuredArrow.isoMk (CategoryTheory.CostructuredArrow.isoMk (CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.CostructuredArrow (CategoryTheory.CostructuredArrow.pre F G e) f)).obj X).left.left) ⋯) ⋯) ⋯ - CategoryTheory.StructuredArrow.preEquivalence_unitIso 📋 Mathlib.CategoryTheory.Comma.StructuredArrow.Basic
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (F : CategoryTheory.Functor C D) {G : CategoryTheory.Functor D E} {e : E} (f : CategoryTheory.StructuredArrow e G) : (CategoryTheory.StructuredArrow.preEquivalence F f).unitIso = CategoryTheory.NatIso.ofComponents (fun X => CategoryTheory.StructuredArrow.isoMk (CategoryTheory.StructuredArrow.isoMk (CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.StructuredArrow f (CategoryTheory.StructuredArrow.pre e F G))).obj X).right.right) ⋯) ⋯) ⋯ - CategoryTheory.Over.mapCongr_rfl 📋 Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type u₁} [CategoryTheory.Category.{v₁, u₁} T] {X Y : T} (f : X ⟶ Y) : CategoryTheory.Over.mapCongr f f ⋯ = CategoryTheory.Iso.refl (CategoryTheory.Over.map f) - 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.Over.equivalenceOfIsTerminal_counitIso 📋 Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type u₁} [CategoryTheory.Category.{v₁, u₁} T] {X : T} (hX : CategoryTheory.Limits.IsTerminal X) : (CategoryTheory.Over.equivalenceOfIsTerminal hX).counitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl (({ obj := fun Y => CategoryTheory.Over.mk (hX.from Y), map := fun {X_1 Y} f => CategoryTheory.Over.homMk f ⋯, map_id := ⋯, map_comp := ⋯ }.comp (CategoryTheory.Over.forget X)).obj x)) ⋯ - 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.Over.equivalenceOfIsTerminal_unitIso 📋 Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type u₁} [CategoryTheory.Category.{v₁, u₁} T] {X : T} (hX : CategoryTheory.Limits.IsTerminal X) : (CategoryTheory.Over.equivalenceOfIsTerminal hX).unitIso = CategoryTheory.NatIso.ofComponents (fun Y => CategoryTheory.Over.isoMk (CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.Over X)).obj Y).left) ⋯) ⋯ - 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.Over.iteratedSliceEquiv_counitIso 📋 Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type u₁} [CategoryTheory.Category.{v₁, u₁} T] {X : T} (f : CategoryTheory.Over X) : f.iteratedSliceEquiv.counitIso = CategoryTheory.NatIso.ofComponents (fun g => CategoryTheory.Over.isoMk (CategoryTheory.Iso.refl ((f.iteratedSliceBackward.comp f.iteratedSliceForward).obj g).left) ⋯) ⋯ - CategoryTheory.Over.iteratedSliceEquiv_unitIso 📋 Mathlib.CategoryTheory.Comma.Over.Basic
{T : Type u₁} [CategoryTheory.Category.{v₁, u₁} T] {X : T} (f : CategoryTheory.Over X) : f.iteratedSliceEquiv.unitIso = CategoryTheory.NatIso.ofComponents (fun g => CategoryTheory.Over.isoMk (CategoryTheory.Over.isoMk (CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.Over f)).obj g).left.left) ⋯) ⋯) ⋯ - CategoryTheory.CostructuredArrow.ofCommaFstEquivalence_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.CostructuredArrow.ofCommaFstEquivalence F G c).unitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.CostructuredArrow (CategoryTheory.Comma.fst F G) c)).obj x)) ⋯ - 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.CostructuredArrow.ofCommaFstEquivalence_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.CostructuredArrow.ofCommaFstEquivalence F G c).counitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl (((CategoryTheory.CostructuredArrow.ofCommaFstEquivalenceInverse F G c).comp (CategoryTheory.CostructuredArrow.ofCommaFstEquivalenceFunctor F G c)).obj x)) ⋯ - 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.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.Limits.diagramIsoPair_hom_app 📋 Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts.WalkingPair
{C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor (CategoryTheory.Discrete CategoryTheory.Limits.WalkingPair) C) (X : CategoryTheory.Discrete CategoryTheory.Limits.WalkingPair) : (CategoryTheory.Limits.diagramIsoPair F).hom.app X = (match X with | { as := CategoryTheory.Limits.WalkingPair.left } => CategoryTheory.Iso.refl (F.obj { as := CategoryTheory.Limits.WalkingPair.left }) | { as := CategoryTheory.Limits.WalkingPair.right } => CategoryTheory.Iso.refl (F.obj { as := CategoryTheory.Limits.WalkingPair.right })).hom - CategoryTheory.Limits.diagramIsoPair_inv_app 📋 Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts.WalkingPair
{C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor (CategoryTheory.Discrete CategoryTheory.Limits.WalkingPair) C) (X : CategoryTheory.Discrete CategoryTheory.Limits.WalkingPair) : (CategoryTheory.Limits.diagramIsoPair F).inv.app X = (match X with | { as := CategoryTheory.Limits.WalkingPair.left } => CategoryTheory.Iso.refl (F.obj { as := CategoryTheory.Limits.WalkingPair.left }) | { as := CategoryTheory.Limits.WalkingPair.right } => CategoryTheory.Iso.refl (F.obj { as := CategoryTheory.Limits.WalkingPair.right })).inv - CategoryTheory.Limits.cospanCompIso_app_left 📋 Mathlib.CategoryTheory.Limits.Shapes.Pullback.Cospan
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (F : CategoryTheory.Functor C D) {X Y Z : C} (f : X ⟶ Z) (g : Y ⟶ Z) : (CategoryTheory.Limits.cospanCompIso F f g).app CategoryTheory.Limits.WalkingCospan.left = CategoryTheory.Iso.refl (((CategoryTheory.Limits.cospan f g).comp F).obj CategoryTheory.Limits.WalkingCospan.left) - CategoryTheory.Limits.cospanCompIso_app_one 📋 Mathlib.CategoryTheory.Limits.Shapes.Pullback.Cospan
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (F : CategoryTheory.Functor C D) {X Y Z : C} (f : X ⟶ Z) (g : Y ⟶ Z) : (CategoryTheory.Limits.cospanCompIso F f g).app CategoryTheory.Limits.WalkingCospan.one = CategoryTheory.Iso.refl (((CategoryTheory.Limits.cospan f g).comp F).obj CategoryTheory.Limits.WalkingCospan.one) - CategoryTheory.Limits.cospanCompIso_app_right 📋 Mathlib.CategoryTheory.Limits.Shapes.Pullback.Cospan
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (F : CategoryTheory.Functor C D) {X Y Z : C} (f : X ⟶ Z) (g : Y ⟶ Z) : (CategoryTheory.Limits.cospanCompIso F f g).app CategoryTheory.Limits.WalkingCospan.right = CategoryTheory.Iso.refl (((CategoryTheory.Limits.cospan f g).comp F).obj CategoryTheory.Limits.WalkingCospan.right) - CategoryTheory.Limits.spanCompIso_app_left 📋 Mathlib.CategoryTheory.Limits.Shapes.Pullback.Cospan
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (F : CategoryTheory.Functor C D) {X Y Z : C} (f : X ⟶ Y) (g : X ⟶ Z) : (CategoryTheory.Limits.spanCompIso F f g).app CategoryTheory.Limits.WalkingSpan.left = CategoryTheory.Iso.refl (((CategoryTheory.Limits.span f g).comp F).obj CategoryTheory.Limits.WalkingSpan.left) - CategoryTheory.Limits.spanCompIso_app_right 📋 Mathlib.CategoryTheory.Limits.Shapes.Pullback.Cospan
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (F : CategoryTheory.Functor C D) {X Y Z : C} (f : X ⟶ Y) (g : X ⟶ Z) : (CategoryTheory.Limits.spanCompIso F f g).app CategoryTheory.Limits.WalkingSpan.right = CategoryTheory.Iso.refl (((CategoryTheory.Limits.span f g).comp F).obj CategoryTheory.Limits.WalkingSpan.right) - CategoryTheory.Limits.spanCompIso_app_zero 📋 Mathlib.CategoryTheory.Limits.Shapes.Pullback.Cospan
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (F : CategoryTheory.Functor C D) {X Y Z : C} (f : X ⟶ Y) (g : X ⟶ Z) : (CategoryTheory.Limits.spanCompIso F f g).app CategoryTheory.Limits.WalkingSpan.zero = CategoryTheory.Iso.refl (((CategoryTheory.Limits.span f g).comp F).obj CategoryTheory.Limits.WalkingSpan.zero) - CategoryTheory.Limits.walkingParallelPairOpEquiv_unitIso_one 📋 Mathlib.CategoryTheory.Limits.Shapes.Equalizers
: CategoryTheory.Limits.walkingParallelPairOpEquiv.unitIso.app CategoryTheory.Limits.WalkingParallelPair.one = CategoryTheory.Iso.refl CategoryTheory.Limits.WalkingParallelPair.one - CategoryTheory.Limits.walkingParallelPairOpEquiv_unitIso_zero 📋 Mathlib.CategoryTheory.Limits.Shapes.Equalizers
: CategoryTheory.Limits.walkingParallelPairOpEquiv.unitIso.app CategoryTheory.Limits.WalkingParallelPair.zero = CategoryTheory.Iso.refl CategoryTheory.Limits.WalkingParallelPair.zero - CategoryTheory.Limits.walkingParallelPairOpEquiv_counitIso_one 📋 Mathlib.CategoryTheory.Limits.Shapes.Equalizers
: CategoryTheory.Limits.walkingParallelPairOpEquiv.counitIso.app (Opposite.op CategoryTheory.Limits.WalkingParallelPair.one) = CategoryTheory.Iso.refl (Opposite.op CategoryTheory.Limits.WalkingParallelPair.one) - CategoryTheory.Limits.walkingParallelPairOpEquiv_counitIso_zero 📋 Mathlib.CategoryTheory.Limits.Shapes.Equalizers
: CategoryTheory.Limits.walkingParallelPairOpEquiv.counitIso.app (Opposite.op CategoryTheory.Limits.WalkingParallelPair.zero) = CategoryTheory.Iso.refl (Opposite.op CategoryTheory.Limits.WalkingParallelPair.zero) - CategoryTheory.Limits.parallelPair.eqOfHomEq_hom_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Equalizers
{C : Type u} {X Y : C} [CategoryTheory.Category.{v, u} C] {f g f' g' : X ⟶ Y} (hf : f = f') (hg : g = g') (X✝ : CategoryTheory.Limits.WalkingParallelPair) : (CategoryTheory.Limits.parallelPair.eqOfHomEq hf hg).hom.app X✝ = (CategoryTheory.Limits.WalkingParallelPair.rec (CategoryTheory.Iso.refl X) (CategoryTheory.Iso.refl Y) X✝).hom - CategoryTheory.Limits.parallelPair.eqOfHomEq_inv_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Equalizers
{C : Type u} {X Y : C} [CategoryTheory.Category.{v, u} C] {f g f' g' : X ⟶ Y} (hf : f = f') (hg : g = g') (X✝ : CategoryTheory.Limits.WalkingParallelPair) : (CategoryTheory.Limits.parallelPair.eqOfHomEq hf hg).inv.app X✝ = (CategoryTheory.Limits.WalkingParallelPair.rec (CategoryTheory.Iso.refl X) (CategoryTheory.Iso.refl Y) X✝).inv - CategoryTheory.Limits.cokernelIsoOfEq_refl 📋 Mathlib.CategoryTheory.Limits.Shapes.Kernels
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasZeroMorphisms C] {X Y : C} (f : X ⟶ Y) [CategoryTheory.Limits.HasCokernel f] {h : f = f} : CategoryTheory.Limits.cokernelIsoOfEq h = CategoryTheory.Iso.refl (CategoryTheory.Limits.cokernel f) - CategoryTheory.Limits.kernelIsoOfEq_refl 📋 Mathlib.CategoryTheory.Limits.Shapes.Kernels
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasZeroMorphisms C] {X Y : C} (f : X ⟶ Y) [CategoryTheory.Limits.HasKernel f] {h : f = f} : CategoryTheory.Limits.kernelIsoOfEq h = CategoryTheory.Iso.refl (CategoryTheory.Limits.kernel f) - AlgCat.intEquivalence_counitIso 📋 Mathlib.Algebra.Category.AlgCat.Basic
: AlgCat.intEquivalence.counitIso = CategoryTheory.Iso.refl ({ obj := fun A => AlgCat.of ℤ ↑A, map := fun {X Y} f => AlgCat.ofHom (RingCat.Hom.hom f).toIntAlgHom, map_id := AlgCat.intEquivalence._proof_1, map_comp := @AlgCat.intEquivalence._proof_2 }.comp (CategoryTheory.forget₂ (AlgCat ℤ) RingCat)) - CategoryTheory.MonoidalCategory.whiskerLeftIso_refl 📋 Mathlib.CategoryTheory.Monoidal.Category
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.MonoidalCategory C] (W X : C) : CategoryTheory.MonoidalCategory.whiskerLeftIso W (CategoryTheory.Iso.refl X) = CategoryTheory.Iso.refl (CategoryTheory.MonoidalCategoryStruct.tensorObj W X) - CategoryTheory.MonoidalCategory.whiskerRightIso_refl 📋 Mathlib.CategoryTheory.Monoidal.Category
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.MonoidalCategory C] (X W : C) : CategoryTheory.MonoidalCategory.whiskerRightIso (CategoryTheory.Iso.refl X) W = CategoryTheory.Iso.refl (CategoryTheory.MonoidalCategoryStruct.tensorObj X W) - CategoryTheory.Monoidal.InducingFunctorData.leftUnitor_eq 📋 Mathlib.CategoryTheory.Monoidal.Transport
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategoryStruct D] {F : CategoryTheory.Functor D C} (self : CategoryTheory.Monoidal.InducingFunctorData F) (X : D) : F.map (CategoryTheory.MonoidalCategoryStruct.leftUnitor X).hom = (((self.μIso (CategoryTheory.MonoidalCategoryStruct.tensorUnit D) X).symm ≪≫ CategoryTheory.MonoidalCategory.tensorIso self.εIso.symm (CategoryTheory.Iso.refl (F.obj X))) ≪≫ CategoryTheory.MonoidalCategoryStruct.leftUnitor (F.obj X)).hom - CategoryTheory.Monoidal.InducingFunctorData.rightUnitor_eq 📋 Mathlib.CategoryTheory.Monoidal.Transport
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategoryStruct D] {F : CategoryTheory.Functor D C} (self : CategoryTheory.Monoidal.InducingFunctorData F) (X : D) : F.map (CategoryTheory.MonoidalCategoryStruct.rightUnitor X).hom = (((self.μIso X (CategoryTheory.MonoidalCategoryStruct.tensorUnit D)).symm ≪≫ CategoryTheory.MonoidalCategory.tensorIso (CategoryTheory.Iso.refl (F.obj X)) self.εIso.symm) ≪≫ CategoryTheory.MonoidalCategoryStruct.rightUnitor (F.obj X)).hom - CategoryTheory.Monoidal.InducingFunctorData.associator_eq 📋 Mathlib.CategoryTheory.Monoidal.Transport
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategoryStruct D] {F : CategoryTheory.Functor D C} (self : CategoryTheory.Monoidal.InducingFunctorData F) (X Y Z : D) : F.map (CategoryTheory.MonoidalCategoryStruct.associator X Y Z).hom = (((self.μIso (CategoryTheory.MonoidalCategoryStruct.tensorObj X Y) Z).symm ≪≫ CategoryTheory.MonoidalCategory.tensorIso (self.μIso X Y).symm (CategoryTheory.Iso.refl (F.obj Z))) ≪≫ CategoryTheory.MonoidalCategoryStruct.associator (F.obj X) (F.obj Y) (F.obj Z) ≪≫ CategoryTheory.MonoidalCategory.tensorIso (CategoryTheory.Iso.refl (F.obj X)) (self.μIso Y Z) ≪≫ self.μIso X (CategoryTheory.MonoidalCategoryStruct.tensorObj Y Z)).hom - CategoryTheory.Monoidal.InducingFunctorData.mk 📋 Mathlib.CategoryTheory.Monoidal.Transport
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategoryStruct D] {F : CategoryTheory.Functor D C} (μIso : (X Y : D) → CategoryTheory.MonoidalCategoryStruct.tensorObj (F.obj X) (F.obj Y) ≅ F.obj (CategoryTheory.MonoidalCategoryStruct.tensorObj X Y)) (whiskerLeft_eq : ∀ (X : D) {Y₁ Y₂ : D} (f : Y₁ ⟶ Y₂), F.map (CategoryTheory.MonoidalCategoryStruct.whiskerLeft X f) = CategoryTheory.CategoryStruct.comp (μIso X Y₁).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.whiskerLeft (F.obj X) (F.map f)) (μIso X Y₂).hom) := by cat_disch) (whiskerRight_eq : ∀ {X₁ X₂ : D} (f : X₁ ⟶ X₂) (Y : D), F.map (CategoryTheory.MonoidalCategoryStruct.whiskerRight f Y) = CategoryTheory.CategoryStruct.comp (μIso X₁ Y).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.whiskerRight (F.map f) (F.obj Y)) (μIso X₂ Y).hom) := by cat_disch) (tensorHom_eq : ∀ {X₁ Y₁ X₂ Y₂ : D} (f : X₁ ⟶ Y₁) (g : X₂ ⟶ Y₂), F.map (CategoryTheory.MonoidalCategoryStruct.tensorHom f g) = CategoryTheory.CategoryStruct.comp (μIso X₁ X₂).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.tensorHom (F.map f) (F.map g)) (μIso Y₁ Y₂).hom) := by cat_disch) (εIso : CategoryTheory.MonoidalCategoryStruct.tensorUnit C ≅ F.obj (CategoryTheory.MonoidalCategoryStruct.tensorUnit D)) (associator_eq : ∀ (X Y Z : D), F.map (CategoryTheory.MonoidalCategoryStruct.associator X Y Z).hom = (((μIso (CategoryTheory.MonoidalCategoryStruct.tensorObj X Y) Z).symm ≪≫ CategoryTheory.MonoidalCategory.tensorIso (μIso X Y).symm (CategoryTheory.Iso.refl (F.obj Z))) ≪≫ CategoryTheory.MonoidalCategoryStruct.associator (F.obj X) (F.obj Y) (F.obj Z) ≪≫ CategoryTheory.MonoidalCategory.tensorIso (CategoryTheory.Iso.refl (F.obj X)) (μIso Y Z) ≪≫ μIso X (CategoryTheory.MonoidalCategoryStruct.tensorObj Y Z)).hom := by cat_disch) (leftUnitor_eq : ∀ (X : D), F.map (CategoryTheory.MonoidalCategoryStruct.leftUnitor X).hom = (((μIso (CategoryTheory.MonoidalCategoryStruct.tensorUnit D) X).symm ≪≫ CategoryTheory.MonoidalCategory.tensorIso εIso.symm (CategoryTheory.Iso.refl (F.obj X))) ≪≫ CategoryTheory.MonoidalCategoryStruct.leftUnitor (F.obj X)).hom := by cat_disch) (rightUnitor_eq : ∀ (X : D), F.map (CategoryTheory.MonoidalCategoryStruct.rightUnitor X).hom = (((μIso X (CategoryTheory.MonoidalCategoryStruct.tensorUnit D)).symm ≪≫ CategoryTheory.MonoidalCategory.tensorIso (CategoryTheory.Iso.refl (F.obj X)) εIso.symm) ≪≫ CategoryTheory.MonoidalCategoryStruct.rightUnitor (F.obj X)).hom := by cat_disch) : CategoryTheory.Monoidal.InducingFunctorData F - CategoryTheory.MonoidalCoherence.refl_iso 📋 Mathlib.Tactic.CategoryTheory.MonoidalComp
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) : CategoryTheory.MonoidalCoherence.iso = CategoryTheory.Iso.refl X - Mathlib.Tactic.Monoidal.naturality_id 📋 Mathlib.Tactic.CategoryTheory.Monoidal.PureCoherence
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.MonoidalCategory C] {p f pf : C} (η_f : CategoryTheory.MonoidalCategoryStruct.tensorObj p f ≅ pf) : CategoryTheory.MonoidalCategory.whiskerLeftIso p (CategoryTheory.Iso.refl f) ≪≫ η_f = η_f - CategoryTheory.MonoidalOpposite.mopEquiv_unitIso 📋 Mathlib.CategoryTheory.Monoidal.Opposite
(C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] : (CategoryTheory.MonoidalOpposite.mopEquiv C).unitIso = CategoryTheory.Iso.refl (CategoryTheory.Functor.id C) - CategoryTheory.MonoidalOpposite.mopEquiv_counitIso 📋 Mathlib.CategoryTheory.Monoidal.Opposite
(C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] : (CategoryTheory.MonoidalOpposite.mopEquiv C).counitIso = CategoryTheory.Iso.refl ((CategoryTheory.unmopFunctor C).comp (CategoryTheory.mopFunctor C)) - Mathlib.Tactic.Monoidal.eval_of 📋 Mathlib.Tactic.CategoryTheory.Monoidal.Normalize
{C : Type u} [CategoryTheory.Category.{v, u} C] {f g : C} (η : f ⟶ g) : η = CategoryTheory.CategoryStruct.comp (CategoryTheory.Iso.refl f).hom (CategoryTheory.CategoryStruct.comp η (CategoryTheory.Iso.refl g).hom) - Mathlib.Tactic.Monoidal.evalWhiskerRightAux_of 📋 Mathlib.Tactic.CategoryTheory.Monoidal.Normalize
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.MonoidalCategory C] {f g : C} (η : f ⟶ g) (h : C) : CategoryTheory.MonoidalCategoryStruct.whiskerRight η h = CategoryTheory.CategoryStruct.comp (CategoryTheory.Iso.refl (CategoryTheory.MonoidalCategoryStruct.tensorObj f h)).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.whiskerRight η h) (CategoryTheory.Iso.refl (CategoryTheory.MonoidalCategoryStruct.tensorObj g h)).hom) - Mathlib.Tactic.Monoidal.evalHorizontalCompAux_of 📋 Mathlib.Tactic.CategoryTheory.Monoidal.Normalize
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.MonoidalCategory C] {f g h i : C} (η : f ⟶ g) (θ : h ⟶ i) : CategoryTheory.MonoidalCategoryStruct.tensorHom η θ = CategoryTheory.CategoryStruct.comp (CategoryTheory.Iso.refl (CategoryTheory.MonoidalCategoryStruct.tensorObj f h)).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.tensorHom η θ) (CategoryTheory.Iso.refl (CategoryTheory.MonoidalCategoryStruct.tensorObj g i)).hom) - Mathlib.Tactic.Monoidal.evalHorizontalComp_cons_nil 📋 Mathlib.Tactic.CategoryTheory.Monoidal.Normalize
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.MonoidalCategory C] {f f' g g' h i : C} {α : f ≅ g} {η : g ⟶ h} {ηs : h ⟶ i} {β : f' ≅ g'} {η₁ : CategoryTheory.MonoidalCategoryStruct.tensorObj g g' ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj h g'} {ηs₁ : CategoryTheory.MonoidalCategoryStruct.tensorObj h g' ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj i g'} {η₂ : CategoryTheory.MonoidalCategoryStruct.tensorObj g g' ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj i g'} {η₃ : CategoryTheory.MonoidalCategoryStruct.tensorObj f f' ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj i g'} (e_η₁ : CategoryTheory.MonoidalCategoryStruct.whiskerRight (CategoryTheory.CategoryStruct.comp (CategoryTheory.Iso.refl g).hom (CategoryTheory.CategoryStruct.comp η (CategoryTheory.Iso.refl h).hom)) g' = η₁) (e_ηs₁ : CategoryTheory.MonoidalCategoryStruct.whiskerRight ηs g' = ηs₁) (e_η₂ : CategoryTheory.CategoryStruct.comp η₁ ηs₁ = η₂) (e_η₃ : CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategory.tensorIso α β).hom η₂ = η₃) : CategoryTheory.MonoidalCategoryStruct.tensorHom (CategoryTheory.CategoryStruct.comp α.hom (CategoryTheory.CategoryStruct.comp η ηs)) β.hom = η₃ - Mathlib.Tactic.Monoidal.evalHorizontalComp_nil_cons 📋 Mathlib.Tactic.CategoryTheory.Monoidal.Normalize
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.MonoidalCategory C] {f f' g g' h i : C} {α : f ≅ g} {β : f' ≅ g'} {η : g' ⟶ h} {ηs : h ⟶ i} {η₁ : CategoryTheory.MonoidalCategoryStruct.tensorObj g g' ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj g h} {ηs₁ : CategoryTheory.MonoidalCategoryStruct.tensorObj g h ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj g i} {η₂ : CategoryTheory.MonoidalCategoryStruct.tensorObj g g' ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj g i} {η₃ : CategoryTheory.MonoidalCategoryStruct.tensorObj f f' ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj g i} (e_η₁ : CategoryTheory.MonoidalCategoryStruct.whiskerLeft g (CategoryTheory.CategoryStruct.comp (CategoryTheory.Iso.refl g').hom (CategoryTheory.CategoryStruct.comp η (CategoryTheory.Iso.refl h).hom)) = η₁) (e_ηs₁ : CategoryTheory.MonoidalCategoryStruct.whiskerLeft g ηs = ηs₁) (e_η₂ : CategoryTheory.CategoryStruct.comp η₁ ηs₁ = η₂) (e_η₃ : CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategory.tensorIso α β).hom η₂ = η₃) : CategoryTheory.MonoidalCategoryStruct.tensorHom α.hom (CategoryTheory.CategoryStruct.comp β.hom (CategoryTheory.CategoryStruct.comp η ηs)) = η₃ - Mathlib.Tactic.Monoidal.evalHorizontalCompAux'_of_whisker 📋 Mathlib.Tactic.CategoryTheory.Monoidal.Normalize
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.MonoidalCategory C] {f f' g g' h : C} {η : g ⟶ h} {θ : f' ⟶ g'} {η₁ : CategoryTheory.MonoidalCategoryStruct.tensorObj g f ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj h f} {ηθ : CategoryTheory.MonoidalCategoryStruct.tensorObj (CategoryTheory.MonoidalCategoryStruct.tensorObj g f) f' ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj (CategoryTheory.MonoidalCategoryStruct.tensorObj h f) g'} {ηθ₁ : CategoryTheory.MonoidalCategoryStruct.tensorObj (CategoryTheory.MonoidalCategoryStruct.tensorObj g f) f' ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj h (CategoryTheory.MonoidalCategoryStruct.tensorObj f g')} {ηθ₂ : CategoryTheory.MonoidalCategoryStruct.tensorObj g (CategoryTheory.MonoidalCategoryStruct.tensorObj f f') ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj h (CategoryTheory.MonoidalCategoryStruct.tensorObj f g')} (e_η₁ : CategoryTheory.MonoidalCategoryStruct.whiskerRight η f = η₁) (e_ηθ : CategoryTheory.MonoidalCategoryStruct.tensorHom η₁ (CategoryTheory.CategoryStruct.comp (CategoryTheory.Iso.refl f').hom (CategoryTheory.CategoryStruct.comp θ (CategoryTheory.Iso.refl g').hom)) = ηθ) (e_ηθ₁ : CategoryTheory.CategoryStruct.comp ηθ (CategoryTheory.MonoidalCategoryStruct.associator h f g').hom = ηθ₁) (e_ηθ₂ : CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.associator g f f').inv ηθ₁ = ηθ₂) : CategoryTheory.MonoidalCategoryStruct.tensorHom η (CategoryTheory.MonoidalCategoryStruct.whiskerLeft f θ) = ηθ₂ - Mathlib.Tactic.Monoidal.evalWhiskerRightAux_cons 📋 Mathlib.Tactic.CategoryTheory.Monoidal.Normalize
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.MonoidalCategory C] {f g h i j : C} {η : g ⟶ h} {ηs : i ⟶ j} {ηs' : CategoryTheory.MonoidalCategoryStruct.tensorObj i f ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj j f} {η₁ : CategoryTheory.MonoidalCategoryStruct.tensorObj g (CategoryTheory.MonoidalCategoryStruct.tensorObj i f) ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj h (CategoryTheory.MonoidalCategoryStruct.tensorObj j f)} {η₂ : CategoryTheory.MonoidalCategoryStruct.tensorObj g (CategoryTheory.MonoidalCategoryStruct.tensorObj i f) ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj (CategoryTheory.MonoidalCategoryStruct.tensorObj h j) f} {η₃ : CategoryTheory.MonoidalCategoryStruct.tensorObj (CategoryTheory.MonoidalCategoryStruct.tensorObj g i) f ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj (CategoryTheory.MonoidalCategoryStruct.tensorObj h j) f} (e_ηs' : CategoryTheory.MonoidalCategoryStruct.whiskerRight ηs f = ηs') (e_η₁ : CategoryTheory.MonoidalCategoryStruct.tensorHom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Iso.refl g).hom (CategoryTheory.CategoryStruct.comp η (CategoryTheory.Iso.refl h).hom)) ηs' = η₁) (e_η₂ : CategoryTheory.CategoryStruct.comp η₁ (CategoryTheory.MonoidalCategoryStruct.associator h j f).inv = η₂) (e_η₃ : CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.associator g i f).hom η₂ = η₃) : CategoryTheory.MonoidalCategoryStruct.whiskerRight (CategoryTheory.MonoidalCategoryStruct.tensorHom η ηs) f = η₃ - Mathlib.Tactic.Monoidal.evalHorizontalCompAux_cons 📋 Mathlib.Tactic.CategoryTheory.Monoidal.Normalize
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.MonoidalCategory C] {f f' g g' h i : C} {η : f ⟶ g} {ηs : f' ⟶ g'} {θ : h ⟶ i} {ηθ : CategoryTheory.MonoidalCategoryStruct.tensorObj f' h ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj g' i} {η₁ : CategoryTheory.MonoidalCategoryStruct.tensorObj f (CategoryTheory.MonoidalCategoryStruct.tensorObj f' h) ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj g (CategoryTheory.MonoidalCategoryStruct.tensorObj g' i)} {ηθ₁ : CategoryTheory.MonoidalCategoryStruct.tensorObj f (CategoryTheory.MonoidalCategoryStruct.tensorObj f' h) ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj (CategoryTheory.MonoidalCategoryStruct.tensorObj g g') i} {ηθ₂ : CategoryTheory.MonoidalCategoryStruct.tensorObj (CategoryTheory.MonoidalCategoryStruct.tensorObj f f') h ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj (CategoryTheory.MonoidalCategoryStruct.tensorObj g g') i} (e_ηθ : CategoryTheory.MonoidalCategoryStruct.tensorHom ηs θ = ηθ) (e_η₁ : CategoryTheory.MonoidalCategoryStruct.tensorHom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Iso.refl f).hom (CategoryTheory.CategoryStruct.comp η (CategoryTheory.Iso.refl g).hom)) ηθ = η₁) (e_ηθ₁ : CategoryTheory.CategoryStruct.comp η₁ (CategoryTheory.MonoidalCategoryStruct.associator g g' i).inv = ηθ₁) (e_ηθ₂ : CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.associator f f' h).hom ηθ₁ = ηθ₂) : CategoryTheory.MonoidalCategoryStruct.tensorHom (CategoryTheory.MonoidalCategoryStruct.tensorHom η ηs) θ = ηθ₂ - Mathlib.Tactic.Monoidal.evalWhiskerRight_cons_whisker 📋 Mathlib.Tactic.CategoryTheory.Monoidal.Normalize
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.MonoidalCategory C] {f g h i j k : C} {α : g ≅ CategoryTheory.MonoidalCategoryStruct.tensorObj f h} {η : h ⟶ i} {ηs : CategoryTheory.MonoidalCategoryStruct.tensorObj f i ⟶ j} {η₁ : CategoryTheory.MonoidalCategoryStruct.tensorObj h k ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj i k} {η₂ : CategoryTheory.MonoidalCategoryStruct.tensorObj f (CategoryTheory.MonoidalCategoryStruct.tensorObj h k) ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj f (CategoryTheory.MonoidalCategoryStruct.tensorObj i k)} {ηs₁ : CategoryTheory.MonoidalCategoryStruct.tensorObj (CategoryTheory.MonoidalCategoryStruct.tensorObj f i) k ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj j k} {ηs₂ : CategoryTheory.MonoidalCategoryStruct.tensorObj f (CategoryTheory.MonoidalCategoryStruct.tensorObj i k) ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj j k} {η₃ : CategoryTheory.MonoidalCategoryStruct.tensorObj f (CategoryTheory.MonoidalCategoryStruct.tensorObj h k) ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj j k} {η₄ : CategoryTheory.MonoidalCategoryStruct.tensorObj (CategoryTheory.MonoidalCategoryStruct.tensorObj f h) k ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj j k} {η₅ : CategoryTheory.MonoidalCategoryStruct.tensorObj g k ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj j k} (e_η₁ : CategoryTheory.MonoidalCategoryStruct.whiskerRight (CategoryTheory.CategoryStruct.comp (CategoryTheory.Iso.refl h).hom (CategoryTheory.CategoryStruct.comp η (CategoryTheory.Iso.refl i).hom)) k = η₁) (e_η₂ : CategoryTheory.MonoidalCategoryStruct.whiskerLeft f η₁ = η₂) (e_ηs₁ : CategoryTheory.MonoidalCategoryStruct.whiskerRight ηs k = ηs₁) (e_ηs₂ : CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.associator f i k).inv ηs₁ = ηs₂) (e_η₃ : CategoryTheory.CategoryStruct.comp η₂ ηs₂ = η₃) (e_η₄ : CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.associator f h k).hom η₃ = η₄) (e_η₅ : CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategory.whiskerRightIso α k).hom η₄ = η₅) : CategoryTheory.MonoidalCategoryStruct.whiskerRight (CategoryTheory.CategoryStruct.comp α.hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.whiskerLeft f η) ηs)) k = η₅ - CategoryTheory.Limits.cospanUnop_hom_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : Cᵒᵖ} (f : X ⟶ Y) (g : X ⟶ Z) (X✝ : CategoryTheory.Limits.WalkingCospan) : (CategoryTheory.Limits.cospanUnop f g).hom.app X✝ = (match X✝ with | none => CategoryTheory.Iso.refl (Opposite.unop X) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.unop Y) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.unop Z)).hom - CategoryTheory.Limits.cospanUnop_inv_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : Cᵒᵖ} (f : X ⟶ Y) (g : X ⟶ Z) (X✝ : CategoryTheory.Limits.WalkingCospan) : (CategoryTheory.Limits.cospanUnop f g).inv.app X✝ = (match X✝ with | none => CategoryTheory.Iso.refl (Opposite.unop X) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.unop Y) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.unop Z)).inv - CategoryTheory.Limits.spanUnop_hom_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : Cᵒᵖ} (f : X ⟶ Z) (g : Y ⟶ Z) (X✝ : CategoryTheory.Limits.WalkingSpan) : (CategoryTheory.Limits.spanUnop f g).hom.app X✝ = (match X✝ with | none => CategoryTheory.Iso.refl (Opposite.unop Z) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.unop X) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.unop Y)).hom - CategoryTheory.Limits.spanUnop_inv_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : Cᵒᵖ} (f : X ⟶ Z) (g : Y ⟶ Z) (X✝ : CategoryTheory.Limits.WalkingSpan) : (CategoryTheory.Limits.spanUnop f g).inv.app X✝ = (match X✝ with | none => CategoryTheory.Iso.refl (Opposite.unop Z) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.unop X) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.unop Y)).inv - CategoryTheory.Limits.cospanOp_hom_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : C} (f : X ⟶ Y) (g : X ⟶ Z) (X✝ : CategoryTheory.Limits.WalkingCospan) : (CategoryTheory.Limits.cospanOp f g).hom.app X✝ = (match X✝ with | none => CategoryTheory.Iso.refl (Opposite.op X) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.op Y) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.op Z)).hom - CategoryTheory.Limits.cospanOp_inv_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : C} (f : X ⟶ Y) (g : X ⟶ Z) (X✝ : CategoryTheory.Limits.WalkingCospan) : (CategoryTheory.Limits.cospanOp f g).inv.app X✝ = (match X✝ with | none => CategoryTheory.Iso.refl (Opposite.op X) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.op Y) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.op Z)).inv - CategoryTheory.Limits.spanOp_hom_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : C} (f : X ⟶ Z) (g : Y ⟶ Z) (X✝ : CategoryTheory.Limits.WalkingSpan) : (CategoryTheory.Limits.spanOp f g).hom.app X✝ = (match X✝ with | none => CategoryTheory.Iso.refl (Opposite.op Z) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.op X) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.op Y)).hom - CategoryTheory.Limits.spanOp_inv_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : C} (f : X ⟶ Z) (g : Y ⟶ Z) (X✝ : CategoryTheory.Limits.WalkingSpan) : (CategoryTheory.Limits.spanOp f g).inv.app X✝ = (match X✝ with | none => CategoryTheory.Iso.refl (Opposite.op Z) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.op X) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.op Y)).inv - CategoryTheory.Limits.opCospan_hom_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : C} (f : X ⟶ Z) (g : Y ⟶ Z) (X✝ : CategoryTheory.Limits.WalkingCospanᵒᵖ) : (CategoryTheory.Limits.opCospan f g).hom.app X✝ = (match Opposite.unop X✝ with | none => CategoryTheory.Iso.refl (Opposite.op Z) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.op X) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.op Y)).inv - CategoryTheory.Limits.opCospan_inv_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : C} (f : X ⟶ Z) (g : Y ⟶ Z) (X✝ : CategoryTheory.Limits.WalkingCospanᵒᵖ) : (CategoryTheory.Limits.opCospan f g).inv.app X✝ = (match Opposite.unop X✝ with | none => CategoryTheory.Iso.refl (Opposite.op Z) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.op X) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.op Y)).hom - CategoryTheory.Limits.opSpan_hom_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : C} (f : X ⟶ Y) (g : X ⟶ Z) (X✝ : CategoryTheory.Limits.WalkingSpanᵒᵖ) : (CategoryTheory.Limits.opSpan f g).hom.app X✝ = (match Opposite.unop X✝ with | none => CategoryTheory.Iso.refl (Opposite.op X) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.op Y) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.op Z)).inv - CategoryTheory.Limits.opSpan_inv_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : C} (f : X ⟶ Y) (g : X ⟶ Z) (X✝ : CategoryTheory.Limits.WalkingSpanᵒᵖ) : (CategoryTheory.Limits.opSpan f g).inv.app X✝ = (match Opposite.unop X✝ with | none => CategoryTheory.Iso.refl (Opposite.op X) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.op Y) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.op Z)).hom - CategoryTheory.Limits.PullbackCone.op_ι_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : C} {f : X ⟶ Z} {g : Y ⟶ Z} (c : CategoryTheory.Limits.PullbackCone f g) (X✝ : CategoryTheory.Limits.WalkingSpan) : c.op.ι.app X✝ = CategoryTheory.CategoryStruct.comp (match X✝ with | none => CategoryTheory.Iso.refl (Opposite.op Z) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.op X) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.op Y)).hom (c.π.app X✝).op - CategoryTheory.Limits.PushoutCocone.op_π_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : C} {f : X ⟶ Y} {g : X ⟶ Z} (c : CategoryTheory.Limits.PushoutCocone f g) (X✝ : CategoryTheory.Limits.WalkingCospan) : c.op.π.app X✝ = CategoryTheory.CategoryStruct.comp (c.ι.app X✝).op (match X✝ with | none => CategoryTheory.Iso.refl (Opposite.op X) | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl (Opposite.op Y) | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl (Opposite.op Z)).inv - CategoryTheory.Limits.PushoutCocone.unop_π_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : Cᵒᵖ} {f : X ⟶ Y} {g : X ⟶ Z} (c : CategoryTheory.Limits.PushoutCocone f g) (X✝ : CategoryTheory.Limits.WalkingCospan) : c.unop.π.app X✝ = CategoryTheory.CategoryStruct.comp (c.ι.app X✝).unop (match X✝ with | none => CategoryTheory.Iso.refl X | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl Y | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl Z).inv.unop - CategoryTheory.Limits.PullbackCone.unop_ι_app 📋 Mathlib.CategoryTheory.Limits.Shapes.Opposites.Pullbacks
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X Y Z : Cᵒᵖ} {f : X ⟶ Z} {g : Y ⟶ Z} (c : CategoryTheory.Limits.PullbackCone f g) (X✝ : CategoryTheory.Limits.WalkingSpan) : c.unop.ι.app X✝ = CategoryTheory.CategoryStruct.comp (match X✝ with | none => CategoryTheory.Iso.refl Z | some CategoryTheory.Limits.WalkingPair.left => CategoryTheory.Iso.refl X | some CategoryTheory.Limits.WalkingPair.right => CategoryTheory.Iso.refl Y).hom.unop (c.π.app X✝).unop - CoalgEquiv.toCoalgIso_refl 📋 Mathlib.Algebra.Category.CoalgCat.Basic
{R : Type u} [CommRing R] {X : Type v} [AddCommGroup X] [Module R X] [Coalgebra R X] : (CoalgEquiv.refl R X).toCoalgIso = CategoryTheory.Iso.refl (CoalgCat.of R X) - CategoryTheory.Iso.toCoalgEquiv_refl 📋 Mathlib.Algebra.Category.CoalgCat.Basic
{R : Type u} [CommRing R] {X : CoalgCat R} : (CategoryTheory.Iso.refl X).toCoalgEquiv = CoalgEquiv.refl R ↑X.toModuleCat - BialgEquiv.toBialgIso_refl 📋 Mathlib.Algebra.Category.BialgCat.Basic
{R : Type u} [CommRing R] {X : Type v} [Ring X] [Bialgebra R X] : (BialgEquiv.refl R X).toBialgIso = CategoryTheory.Iso.refl (BialgCat.of R X) - CategoryTheory.Iso.toBialgEquiv_refl 📋 Mathlib.Algebra.Category.BialgCat.Basic
{R : Type u} [CommRing R] {X : BialgCat R} : (CategoryTheory.Iso.refl X).toBialgEquiv = BialgEquiv.refl R X.carrier - CoalgCat.MonoidalCategory.inducingFunctorData_εIso 📋 Mathlib.Algebra.Category.CoalgCat.Monoidal
(R : Type u) [CommRing R] : (CoalgCat.MonoidalCategory.inducingFunctorData R).εIso = CategoryTheory.Iso.refl (CategoryTheory.MonoidalCategoryStruct.tensorUnit (ModuleCat R)) - CoalgCat.MonoidalCategory.inducingFunctorData_μIso 📋 Mathlib.Algebra.Category.CoalgCat.Monoidal
(R : Type u) [CommRing R] (x✝ x✝¹ : CoalgCat R) : (CoalgCat.MonoidalCategory.inducingFunctorData R).μIso x✝ x✝¹ = CategoryTheory.Iso.refl (CategoryTheory.MonoidalCategoryStruct.tensorObj ((CategoryTheory.forget₂ (CoalgCat R) (ModuleCat R)).obj x✝) ((CategoryTheory.forget₂ (CoalgCat R) (ModuleCat R)).obj x✝¹)) - BialgCat.MonoidalCategory.inducingFunctorData_εIso 📋 Mathlib.Algebra.Category.BialgCat.Monoidal
(R : Type u) [CommRing R] : (BialgCat.MonoidalCategory.inducingFunctorData R).εIso = CategoryTheory.Iso.refl (CategoryTheory.MonoidalCategoryStruct.tensorUnit (AlgCat R)) - BialgCat.MonoidalCategory.inducingFunctorData_μIso 📋 Mathlib.Algebra.Category.BialgCat.Monoidal
(R : Type u) [CommRing R] (x✝ x✝¹ : BialgCat R) : (BialgCat.MonoidalCategory.inducingFunctorData R).μIso x✝ x✝¹ = CategoryTheory.Iso.refl (CategoryTheory.MonoidalCategoryStruct.tensorObj ((CategoryTheory.forget₂ (BialgCat R) (AlgCat R)).obj x✝) ((CategoryTheory.forget₂ (BialgCat R) (AlgCat R)).obj x✝¹)) - CategoryTheory.Comon.Comon_EquivMon_OpOp_unitIso 📋 Mathlib.CategoryTheory.Monoidal.Comon_
(C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] : (CategoryTheory.Comon.Comon_EquivMon_OpOp C).unitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.Comon C)).obj x)) ⋯ - CategoryTheory.Comon.Comon_EquivMon_OpOp_counitIso 📋 Mathlib.CategoryTheory.Monoidal.Comon_
(C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] : (CategoryTheory.Comon.Comon_EquivMon_OpOp C).counitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl (((CategoryTheory.Comon.MonOpOpToComon C).comp (CategoryTheory.Comon.ComonToMonOpOp C)).obj x)) ⋯ - CoalgCat.comonEquivalence_unitIso 📋 Mathlib.Algebra.Category.CoalgCat.ComonEquivalence
(R : Type u) [CommRing R] : (CoalgCat.comonEquivalence R).unitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CoalgCat R)).obj x)) ⋯ - CoalgCat.comonEquivalence_counitIso 📋 Mathlib.Algebra.Category.CoalgCat.ComonEquivalence
(R : Type u) [CommRing R] : (CoalgCat.comonEquivalence R).counitIso = CategoryTheory.NatIso.ofComponents (fun x => CategoryTheory.Iso.refl (((CoalgCat.ofComon R).comp (CoalgCat.toComon R)).obj x)) ⋯ - CategoryTheory.Monad.algebraFunctorOfMonadHomEq_hom_app_f 📋 Mathlib.CategoryTheory.Monad.Algebra
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {T₁ T₂ : CategoryTheory.Monad C} {f g : T₁ ⟶ T₂} (h : f = g) (X : T₂.Algebra) : ((CategoryTheory.Monad.algebraFunctorOfMonadHomEq h).hom.app X).f = (CategoryTheory.Iso.refl ((CategoryTheory.Monad.algebraFunctorOfMonadHom f).obj X).A).hom - CategoryTheory.Monad.algebraFunctorOfMonadHomEq_inv_app_f 📋 Mathlib.CategoryTheory.Monad.Algebra
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {T₁ T₂ : CategoryTheory.Monad C} {f g : T₁ ⟶ T₂} (h : f = g) (X : T₂.Algebra) : ((CategoryTheory.Monad.algebraFunctorOfMonadHomEq h).inv.app X).f = (CategoryTheory.Iso.refl ((CategoryTheory.Monad.algebraFunctorOfMonadHom f).obj X).A).inv - CategoryTheory.Monad.algebraFunctorOfMonadHomId_hom_app_f 📋 Mathlib.CategoryTheory.Monad.Algebra
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {T₁ : CategoryTheory.Monad C} (X : T₁.Algebra) : (CategoryTheory.Monad.algebraFunctorOfMonadHomId.hom.app X).f = (CategoryTheory.Iso.refl ((CategoryTheory.Monad.algebraFunctorOfMonadHom (CategoryTheory.CategoryStruct.id T₁)).obj X).A).hom - CategoryTheory.Monad.algebraFunctorOfMonadHomId_inv_app_f 📋 Mathlib.CategoryTheory.Monad.Algebra
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {T₁ : CategoryTheory.Monad C} (X : T₁.Algebra) : (CategoryTheory.Monad.algebraFunctorOfMonadHomId.inv.app X).f = (CategoryTheory.Iso.refl ((CategoryTheory.Monad.algebraFunctorOfMonadHom (CategoryTheory.CategoryStruct.id T₁)).obj X).A).inv - CategoryTheory.Monad.algebraFunctorOfMonadHomComp_hom_app_f 📋 Mathlib.CategoryTheory.Monad.Algebra
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {T₁ T₂ T₃ : CategoryTheory.Monad C} (f : T₁ ⟶ T₂) (g : T₂ ⟶ T₃) (X : T₃.Algebra) : ((CategoryTheory.Monad.algebraFunctorOfMonadHomComp f g).hom.app X).f = (CategoryTheory.Iso.refl ((CategoryTheory.Monad.algebraFunctorOfMonadHom (CategoryTheory.CategoryStruct.comp f g)).obj X).A).hom - CategoryTheory.Monad.algebraFunctorOfMonadHomComp_inv_app_f 📋 Mathlib.CategoryTheory.Monad.Algebra
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {T₁ T₂ T₃ : CategoryTheory.Monad C} (f : T₁ ⟶ T₂) (g : T₂ ⟶ T₃) (X : T₃.Algebra) : ((CategoryTheory.Monad.algebraFunctorOfMonadHomComp f g).inv.app X).f = (CategoryTheory.Iso.refl ((CategoryTheory.Monad.algebraFunctorOfMonadHom (CategoryTheory.CategoryStruct.comp f g)).obj X).A).inv - CategoryTheory.algebraEquivUnder_counitIso 📋 Mathlib.CategoryTheory.Monad.Products
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) [CategoryTheory.Limits.HasBinaryCoproducts C] : (CategoryTheory.algebraEquivUnder X).counitIso = CategoryTheory.NatIso.ofComponents (fun f => CategoryTheory.Under.isoMk (CategoryTheory.Iso.refl (((CategoryTheory.underToAlgebra X).comp (CategoryTheory.algebraToUnder X)).obj f).right) ⋯) ⋯ - CategoryTheory.coalgebraEquivOver_counitIso 📋 Mathlib.CategoryTheory.Monad.Products
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) [CategoryTheory.Limits.HasBinaryProducts C] : (CategoryTheory.coalgebraEquivOver X).counitIso = CategoryTheory.NatIso.ofComponents (fun f => CategoryTheory.Over.isoMk (CategoryTheory.Iso.refl (((CategoryTheory.overToCoalgebra X).comp (CategoryTheory.coalgebraToOver X)).obj f).left) ⋯) ⋯ - CategoryTheory.algebraEquivUnder_unitIso 📋 Mathlib.CategoryTheory.Monad.Products
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) [CategoryTheory.Limits.HasBinaryCoproducts C] : (CategoryTheory.algebraEquivUnder X).unitIso = CategoryTheory.NatIso.ofComponents (fun A => CategoryTheory.Monad.Algebra.isoMk (CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.coprodMonad X).Algebra).obj A).A) ⋯) ⋯ - CategoryTheory.coalgebraEquivOver_unitIso 📋 Mathlib.CategoryTheory.Monad.Products
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : C) [CategoryTheory.Limits.HasBinaryProducts C] : (CategoryTheory.coalgebraEquivOver X).unitIso = CategoryTheory.NatIso.ofComponents (fun A => CategoryTheory.Comonad.Coalgebra.isoMk (CategoryTheory.Iso.refl ((CategoryTheory.Functor.id (CategoryTheory.prodComonad X).Coalgebra).obj A).A) ⋯) ⋯ - CategoryTheory.Over.postAdjunctionLeft_counit_app_left 📋 Mathlib.CategoryTheory.Comma.Over.Pullback
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.Limits.HasPullbacks C] {X : C} {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (a : F ⊣ G) (X✝ : CategoryTheory.Over ((CategoryTheory.Functor.id D).obj (F.obj X))) : ((CategoryTheory.Over.postAdjunctionLeft a).counit.app X✝).left = CategoryTheory.CategoryStruct.comp ((CategoryTheory.NatIso.ofComponents (fun Y => CategoryTheory.Over.isoMk (CategoryTheory.Iso.refl (F.obj Y.left)) ⋯) ⋯).inv.app ((CategoryTheory.Over.pullback (a.unit.app X)).obj (CategoryTheory.Over.mk (G.map X✝.hom)))).left (CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.Limits.pullback.fst (G.map X✝.hom) (a.unit.app X))) (CategoryTheory.Over.Hom.left (CategoryTheory.Over.homMk (a.counit.app X✝.left) ⋯))) - CategoryTheory.Over.postAdjunctionLeft_unit_app_left 📋 Mathlib.CategoryTheory.Comma.Over.Pullback
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.Limits.HasPullbacks C] {X : C} {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (a : F ⊣ G) (X✝ : CategoryTheory.Over ((CategoryTheory.Functor.id C).obj X)) : ((CategoryTheory.Over.postAdjunctionLeft a).unit.app X✝).left = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.pullback.lift (CategoryTheory.CategoryStruct.id X✝.left) X✝.hom ⋯) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.pullback.lift (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.pullback.fst (CategoryTheory.CategoryStruct.comp X✝.hom (a.unit.app X)) (a.unit.app X)) (a.unit.app X✝.left)) (CategoryTheory.Limits.pullback.snd (CategoryTheory.CategoryStruct.comp X✝.hom (a.unit.app X)) (a.unit.app X)) ⋯) (((CategoryTheory.Over.post G).comp (CategoryTheory.Over.pullback (a.unit.app X))).map ((CategoryTheory.NatIso.ofComponents (fun Y => CategoryTheory.Over.isoMk (CategoryTheory.Iso.refl (F.obj Y.left)) ⋯) ⋯).hom.app X✝)).left) - CategoryTheory.Under.postAdjunctionRight_counit_app_right 📋 Mathlib.CategoryTheory.Comma.Over.Pullback
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.Limits.HasPushouts D] {Y : D} {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (a : F ⊣ G) (X : CategoryTheory.Under ((CategoryTheory.Functor.id D).obj Y)) : ((CategoryTheory.Under.postAdjunctionRight a).counit.app X).right = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.pushout.desc (CategoryTheory.Limits.pushout.inl (F.map (CategoryTheory.CategoryStruct.comp (a.unit.app (G.1 Y)) (G.map (CategoryTheory.CategoryStruct.comp (a.counit.app Y) X.hom)))) (a.counit.app Y)) (CategoryTheory.Limits.pushout.inr (F.map (CategoryTheory.CategoryStruct.comp (a.unit.app (G.1 Y)) (G.map (CategoryTheory.CategoryStruct.comp (a.counit.app Y) X.hom)))) (a.counit.app Y)) ⋯) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.pushout.desc (CategoryTheory.CategoryStruct.comp (a.counit.app X.right) (CategoryTheory.Limits.pushout.inl (CategoryTheory.CategoryStruct.comp (a.counit.app Y) X.hom) (a.counit.app Y))) (CategoryTheory.Limits.pushout.inr (CategoryTheory.CategoryStruct.comp (a.counit.app Y) X.hom) (a.counit.app Y)) ⋯) (CategoryTheory.Limits.pushout.desc (CategoryTheory.CategoryStruct.id X.right) X.hom ⋯)) - CategoryTheory.Pseudofunctor.id_mapId 📋 Mathlib.CategoryTheory.Bicategory.Functor.Pseudofunctor
(B : Type u₁) [CategoryTheory.Bicategory B] (a : B) : (CategoryTheory.Pseudofunctor.id B).mapId a = CategoryTheory.Iso.refl (CategoryTheory.CategoryStruct.id a) - CategoryTheory.Pseudofunctor.id_mapComp 📋 Mathlib.CategoryTheory.Bicategory.Functor.Pseudofunctor
(B : Type u₁) [CategoryTheory.Bicategory B] {a✝ b✝ c✝ : B} (f : a✝ ⟶ b✝) (g : b✝ ⟶ c✝) : (CategoryTheory.Pseudofunctor.id B).mapComp f g = CategoryTheory.Iso.refl (CategoryTheory.CategoryStruct.comp f g) - CategoryTheory.WithInitial.mapId_hom_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] (X : CategoryTheory.WithInitial C) : (CategoryTheory.WithInitial.mapId C).hom.app X = (match X with | CategoryTheory.WithInitial.of a => CategoryTheory.Iso.refl (CategoryTheory.WithInitial.of a) | CategoryTheory.WithInitial.star => CategoryTheory.Iso.refl CategoryTheory.WithInitial.star).hom - CategoryTheory.WithInitial.mapId_inv_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] (X : CategoryTheory.WithInitial C) : (CategoryTheory.WithInitial.mapId C).inv.app X = (match X with | CategoryTheory.WithInitial.of a => CategoryTheory.Iso.refl (CategoryTheory.WithInitial.of a) | CategoryTheory.WithInitial.star => CategoryTheory.Iso.refl CategoryTheory.WithInitial.star).inv - CategoryTheory.WithTerminal.mapId_hom_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] (X : CategoryTheory.WithTerminal C) : (CategoryTheory.WithTerminal.mapId C).hom.app X = (match X with | CategoryTheory.WithTerminal.of a => CategoryTheory.Iso.refl (CategoryTheory.WithTerminal.of a) | CategoryTheory.WithTerminal.star => CategoryTheory.Iso.refl CategoryTheory.WithTerminal.star).hom - CategoryTheory.WithTerminal.mapId_inv_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] (X : CategoryTheory.WithTerminal C) : (CategoryTheory.WithTerminal.mapId C).inv.app X = (match X with | CategoryTheory.WithTerminal.of a => CategoryTheory.Iso.refl (CategoryTheory.WithTerminal.of a) | CategoryTheory.WithTerminal.star => CategoryTheory.Iso.refl CategoryTheory.WithTerminal.star).inv - CategoryTheory.WithInitial.mapComp_hom_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u_1} {E : Type u_2} [CategoryTheory.Category.{v_1, u_1} D] [CategoryTheory.Category.{v_2, u_2} E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor D E) (X : CategoryTheory.WithInitial C) : (CategoryTheory.WithInitial.mapComp F G).hom.app X = (match X with | CategoryTheory.WithInitial.of a => CategoryTheory.Iso.refl (CategoryTheory.WithInitial.of (G.obj (F.obj a))) | CategoryTheory.WithInitial.star => CategoryTheory.Iso.refl CategoryTheory.WithInitial.star).hom - CategoryTheory.WithInitial.mapComp_inv_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u_1} {E : Type u_2} [CategoryTheory.Category.{v_1, u_1} D] [CategoryTheory.Category.{v_2, u_2} E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor D E) (X : CategoryTheory.WithInitial C) : (CategoryTheory.WithInitial.mapComp F G).inv.app X = (match X with | CategoryTheory.WithInitial.of a => CategoryTheory.Iso.refl (CategoryTheory.WithInitial.of (G.obj (F.obj a))) | CategoryTheory.WithInitial.star => CategoryTheory.Iso.refl CategoryTheory.WithInitial.star).inv - CategoryTheory.WithTerminal.mapComp_hom_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u_1} {E : Type u_2} [CategoryTheory.Category.{v_1, u_1} D] [CategoryTheory.Category.{v_2, u_2} E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor D E) (X : CategoryTheory.WithTerminal C) : (CategoryTheory.WithTerminal.mapComp F G).hom.app X = (match X with | CategoryTheory.WithTerminal.of a => CategoryTheory.Iso.refl (CategoryTheory.WithTerminal.of (G.obj (F.obj a))) | CategoryTheory.WithTerminal.star => CategoryTheory.Iso.refl CategoryTheory.WithTerminal.star).hom - CategoryTheory.WithTerminal.mapComp_inv_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u_1} {E : Type u_2} [CategoryTheory.Category.{v_1, u_1} D] [CategoryTheory.Category.{v_2, u_2} E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor D E) (X : CategoryTheory.WithTerminal C) : (CategoryTheory.WithTerminal.mapComp F G).inv.app X = (match X with | CategoryTheory.WithTerminal.of a => CategoryTheory.Iso.refl (CategoryTheory.WithTerminal.of (G.obj (F.obj a))) | CategoryTheory.WithTerminal.star => CategoryTheory.Iso.refl CategoryTheory.WithTerminal.star).inv - CategoryTheory.WithInitial.equivComma_unitIso_hom_app_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u_1} [CategoryTheory.Category.{v_1, u_1} D] (X : CategoryTheory.Functor (CategoryTheory.WithInitial C) D) (X✝ : CategoryTheory.WithInitial C) : (CategoryTheory.WithInitial.equivComma.unitIso.hom.app X).app X✝ = (match X✝ with | CategoryTheory.WithInitial.of x => (CategoryTheory.Iso.refl (CategoryTheory.WithInitial.incl.comp X)).app x | CategoryTheory.WithInitial.star => CategoryTheory.Iso.refl (X.obj CategoryTheory.WithInitial.star)).hom - CategoryTheory.WithInitial.equivComma_unitIso_inv_app_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u_1} [CategoryTheory.Category.{v_1, u_1} D] (X : CategoryTheory.Functor (CategoryTheory.WithInitial C) D) (X✝ : CategoryTheory.WithInitial C) : (CategoryTheory.WithInitial.equivComma.unitIso.inv.app X).app X✝ = (match X✝ with | CategoryTheory.WithInitial.of x => (CategoryTheory.Iso.refl (CategoryTheory.WithInitial.incl.comp X)).app x | CategoryTheory.WithInitial.star => CategoryTheory.Iso.refl (X.obj CategoryTheory.WithInitial.star)).inv - CategoryTheory.WithTerminal.equivComma_unitIso_hom_app_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u_1} [CategoryTheory.Category.{v_1, u_1} D] (X : CategoryTheory.Functor (CategoryTheory.WithTerminal C) D) (X✝ : CategoryTheory.WithTerminal C) : (CategoryTheory.WithTerminal.equivComma.unitIso.hom.app X).app X✝ = (match X✝ with | CategoryTheory.WithTerminal.of x => (CategoryTheory.Iso.refl (CategoryTheory.WithTerminal.incl.comp X)).app x | CategoryTheory.WithTerminal.star => CategoryTheory.Iso.refl (X.obj CategoryTheory.WithTerminal.star)).hom - CategoryTheory.WithTerminal.equivComma_unitIso_inv_app_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u_1} [CategoryTheory.Category.{v_1, u_1} D] (X : CategoryTheory.Functor (CategoryTheory.WithTerminal C) D) (X✝ : CategoryTheory.WithTerminal C) : (CategoryTheory.WithTerminal.equivComma.unitIso.inv.app X).app X✝ = (match X✝ with | CategoryTheory.WithTerminal.of x => (CategoryTheory.Iso.refl (CategoryTheory.WithTerminal.incl.comp X)).app x | CategoryTheory.WithTerminal.star => CategoryTheory.Iso.refl (X.obj CategoryTheory.WithTerminal.star)).inv - CategoryTheory.WithInitial.opEquiv_counitIso_hom_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
(C : Type u) [CategoryTheory.Category.{v, u} C] (X : CategoryTheory.WithTerminal Cᵒᵖ) : (CategoryTheory.WithInitial.opEquiv C).counitIso.hom.app X = (match X with | CategoryTheory.WithTerminal.of x => CategoryTheory.Iso.refl (CategoryTheory.WithTerminal.of x) | CategoryTheory.WithTerminal.star => CategoryTheory.Iso.refl CategoryTheory.WithTerminal.star).hom - CategoryTheory.WithInitial.opEquiv_counitIso_inv_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
(C : Type u) [CategoryTheory.Category.{v, u} C] (X : CategoryTheory.WithTerminal Cᵒᵖ) : (CategoryTheory.WithInitial.opEquiv C).counitIso.inv.app X = (match X with | CategoryTheory.WithTerminal.of x => CategoryTheory.Iso.refl (CategoryTheory.WithTerminal.of x) | CategoryTheory.WithTerminal.star => CategoryTheory.Iso.refl CategoryTheory.WithTerminal.star).inv - CategoryTheory.WithTerminal.opEquiv_counitIso_hom_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
(C : Type u) [CategoryTheory.Category.{v, u} C] (X : CategoryTheory.WithInitial Cᵒᵖ) : (CategoryTheory.WithTerminal.opEquiv C).counitIso.hom.app X = (match X with | CategoryTheory.WithInitial.of x => CategoryTheory.Iso.refl (CategoryTheory.WithInitial.of x) | CategoryTheory.WithInitial.star => CategoryTheory.Iso.refl CategoryTheory.WithInitial.star).hom - CategoryTheory.WithTerminal.opEquiv_counitIso_inv_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
(C : Type u) [CategoryTheory.Category.{v, u} C] (X : CategoryTheory.WithInitial Cᵒᵖ) : (CategoryTheory.WithTerminal.opEquiv C).counitIso.inv.app X = (match X with | CategoryTheory.WithInitial.of x => CategoryTheory.Iso.refl (CategoryTheory.WithInitial.of x) | CategoryTheory.WithInitial.star => CategoryTheory.Iso.refl CategoryTheory.WithInitial.star).inv - CategoryTheory.WithInitial.opEquiv_unitIso_hom_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
(C : Type u) [CategoryTheory.Category.{v, u} C] (X : (CategoryTheory.WithInitial C)ᵒᵖ) : (CategoryTheory.WithInitial.opEquiv C).unitIso.hom.app X = (match Opposite.unop X with | CategoryTheory.WithInitial.of x => CategoryTheory.Iso.refl (Opposite.op (CategoryTheory.WithInitial.of x)) | CategoryTheory.WithInitial.star => CategoryTheory.Iso.refl (Opposite.op CategoryTheory.WithInitial.star)).hom - CategoryTheory.WithInitial.opEquiv_unitIso_inv_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
(C : Type u) [CategoryTheory.Category.{v, u} C] (X : (CategoryTheory.WithInitial C)ᵒᵖ) : (CategoryTheory.WithInitial.opEquiv C).unitIso.inv.app X = (match Opposite.unop X with | CategoryTheory.WithInitial.of x => CategoryTheory.Iso.refl (Opposite.op (CategoryTheory.WithInitial.of x)) | CategoryTheory.WithInitial.star => CategoryTheory.Iso.refl (Opposite.op CategoryTheory.WithInitial.star)).inv - CategoryTheory.WithTerminal.opEquiv_unitIso_hom_app 📋 Mathlib.CategoryTheory.WithTerminal.Basic
(C : Type u) [CategoryTheory.Category.{v, u} C] (X : (CategoryTheory.WithTerminal C)ᵒᵖ) : (CategoryTheory.WithTerminal.opEquiv C).unitIso.hom.app X = (match Opposite.unop X with | CategoryTheory.WithTerminal.of x => CategoryTheory.Iso.refl (Opposite.op (CategoryTheory.WithTerminal.of x)) | CategoryTheory.WithTerminal.star => CategoryTheory.Iso.refl (Opposite.op CategoryTheory.WithTerminal.star)).hom
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 69fae59