Skip to content

Commit 4fbef23

Browse files
committed
chore(Bicategory/Functor): add notation for lax and oplax functors (#31238)
I am open to suggestion for other notation as well.
1 parent 0fd0e8f commit 4fbef23

File tree

10 files changed

+67
-58
lines changed

10 files changed

+67
-58
lines changed

Mathlib/CategoryTheory/Bicategory/Functor/Lax.lean

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ A lax functor `F` between bicategories `B` and `C` consists of
2121
2222
## Main definitions
2323
24-
* `CategoryTheory.LaxFunctor B C` : an lax functor between bicategories `B` and `C`
24+
* `CategoryTheory.LaxFunctor B C` : an lax functor between bicategories `B` and `C`, which we
25+
denote by `B ⥤ᴸ C`.
2526
* `CategoryTheory.LaxFunctor.comp F G` : the composition of lax functors
2627
* `CategoryTheory.LaxFunctor.Pseudocore` : a structure on an Lax functor that promotes a
2728
Lax functor to a pseudofunctor
@@ -81,6 +82,10 @@ structure LaxFunctor (B : Type u₁) [Bicategory.{w₁, v₁} B] (C : Type u₂)
8182
∀ {a b : B} (f : a ⟶ b),
8283
map₂ (ρ_ f).inv = (ρ_ (map f)).inv ≫ map f ◁ mapId b ≫ mapComp f (𝟙 b) := by cat_disch
8384

85+
/-- Notation for a lax functor between bicategories. -/
86+
-- Given similar precedence as ⥤ (26).
87+
scoped[CategoryTheory.Bicategory] infixr:26 " ⥤ᴸ " => LaxFunctor -- type as \func\^L
88+
8489
initialize_simps_projections LaxFunctor (+toPrelaxFunctor, -obj, -map, -map₂)
8590

8691
namespace LaxFunctor
@@ -94,7 +99,7 @@ attribute [simp, reassoc, to_app] map₂_leftUnitor map₂_rightUnitor
9499
/-- The underlying prelax functor. -/
95100
add_decl_doc LaxFunctor.toPrelaxFunctor
96101

97-
variable (F : LaxFunctor B C)
102+
variable (F : B ⥤ᴸ C)
98103

99104
@[reassoc, to_app]
100105
lemma mapComp_assoc_left {a b c d : B} (f : a ⟶ b) (g : b ⟶ c) (h : c ⟶ d) :
@@ -124,12 +129,12 @@ lemma map₂_rightUnitor_hom {a b : B} (f : a ⟶ b) :
124129

125130
/-- The identity lax functor. -/
126131
@[simps]
127-
def id (B : Type u₁) [Bicategory.{w₁, v₁} B] : LaxFunctor B B where
132+
def id (B : Type u₁) [Bicategory.{w₁, v₁} B] : B ⥤ᴸ B where
128133
toPrelaxFunctor := PrelaxFunctor.id B
129134
mapId := fun a => 𝟙 (𝟙 a)
130135
mapComp := fun f g => 𝟙 (f ≫ g)
131136

132-
instance : Inhabited (LaxFunctor B B) :=
137+
instance : Inhabited (B ⥤ᴸ B) :=
133138
⟨id B⟩
134139

135140
/-- More flexible variant of `mapId`. (See the file `Bicategory.Functor.Strict`
@@ -155,8 +160,8 @@ lemma mapComp'_eq_mapComp {b₀ b₁ b₂ : B} (f : b₀ ⟶ b₁) (g : b₁ ⟶
155160

156161
/-- Composition of lax functors. -/
157162
@[simps]
158-
def comp {D : Type u₃} [Bicategory.{w₃, v₃} D] (F : LaxFunctor B C) (G : LaxFunctor C D) :
159-
LaxFunctor B D where
163+
def comp {D : Type u₃} [Bicategory.{w₃, v₃} D] (F : B ⥤ᴸ C) (G : C ⥤ᴸ D) :
164+
B ⥤ᴸ D where
160165
toPrelaxFunctor := PrelaxFunctor.comp F.toPrelaxFunctor G.toPrelaxFunctor
161166
mapId := fun a => G.mapId (F.obj a) ≫ G.map₂ (F.mapId a)
162167
mapComp := fun f g => G.mapComp (F.map f) (F.map g) ≫ G.map₂ (F.mapComp f g)
@@ -187,7 +192,7 @@ def comp {D : Type u₃} [Bicategory.{w₃, v₃} D] (F : LaxFunctor B C) (G : L
187192
/-- A structure on an Lax functor that promotes an Lax functor to a pseudofunctor.
188193
189194
See `Pseudofunctor.mkOfLax`. -/
190-
structure PseudoCore (F : LaxFunctor B C) where
195+
structure PseudoCore (F : B ⥤ᴸ C) where
191196
/-- The isomorphism giving rise to the lax unity constraint -/
192197
mapIdIso (a : B) : F.map (𝟙 a) ≅ 𝟙 (F.obj a)
193198
/-- The isomorphism giving rise to the lax functoriality constraint -/

Mathlib/CategoryTheory/Bicategory/Functor/LocallyDiscrete.lean

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ def oplaxFunctorOfIsLocallyDiscrete
8383
(map₂_right_unitor : ∀ {b₀ b₁ : B} (f : b₀ ⟶ b₁),
8484
mapComp f (𝟙 b₁) ≫ map f ◁ mapId b₁ ≫ (ρ_ (map f)).hom = eqToHom (by simp) := by
8585
cat_disch) :
86-
OplaxFunctor B C where
86+
B ⥤ᵒᵖᴸ C where
8787
obj := obj
8888
map := map
8989
map₂ φ := eqToHom (by
@@ -119,7 +119,7 @@ corresponding locally discrete bicategories.
119119
This is just an abbreviation of `Functor.toPseudoFunctor.toOplax`.
120120
-/
121121
@[simps! obj map mapId mapComp]
122-
abbrev Functor.toOplaxFunctor : OplaxFunctor (LocallyDiscrete C) (LocallyDiscrete D) :=
122+
abbrev Functor.toOplaxFunctor : LocallyDiscrete C ⥤ᵒᵖᴸ (LocallyDiscrete D) :=
123123
F.toPseudoFunctor.toOplax
124124

125125
end
@@ -146,7 +146,7 @@ If `B` is a strict bicategory and `I` is a (1-)category, any functor (of 1-categ
146146
be promoted to an oplax functor from `LocallyDiscrete I` to `B`.
147147
-/
148148
@[simps! obj map mapId mapComp]
149-
abbrev Functor.toOplaxFunctor' : OplaxFunctor (LocallyDiscrete I) B :=
149+
abbrev Functor.toOplaxFunctor' : LocallyDiscrete I ⥤ᵒᵖᴸ B :=
150150
F.toPseudoFunctor'.toOplax
151151

152152
end

Mathlib/CategoryTheory/Bicategory/Functor/Oplax.lean

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ An oplax functor `F` between bicategories `B` and `C` consists of
1919
2020
## Main definitions
2121
22-
* `CategoryTheory.OplaxFunctor B C` : an oplax functor between bicategories `B` and `C`
22+
* `CategoryTheory.OplaxFunctor B C` : an oplax functor between bicategories `B` and `C`, which we
23+
denote by `B ⥤ᵒᵖᴸ C`.
2324
* `CategoryTheory.OplaxFunctor.comp F G` : the composition of oplax functors
2425
2526
-/
@@ -81,6 +82,10 @@ structure OplaxFunctor (B : Type u₁) [Bicategory.{w₁, v₁} B] (C : Type u
8182
map₂ (ρ_ f).hom = mapComp f (𝟙 b) ≫ map f ◁ mapId b ≫ (ρ_ (map f)).hom := by
8283
cat_disch
8384

85+
/-- Notation for a pseudofunctor between bicategories. -/
86+
-- Given similar precedence as ⥤ (26).
87+
scoped[CategoryTheory.Bicategory] infixr:26 " ⥤ᵒᵖᴸ " => OplaxFunctor -- type as \func\op\^L
88+
8489
initialize_simps_projections OplaxFunctor (+toPrelaxFunctor, -obj, -map, -map₂)
8590

8691
namespace OplaxFunctor
@@ -94,7 +99,7 @@ section
9499
/-- The underlying prelax functor. -/
95100
add_decl_doc OplaxFunctor.toPrelaxFunctor
96101

97-
variable (F : OplaxFunctor B C)
102+
variable (F : B ⥤ᵒᵖᴸ C)
98103

99104
@[reassoc, to_app]
100105
lemma mapComp_assoc_right {a b c d : B} (f : a ⟶ b) (g : b ⟶ c) (h : c ⟶ d) :
@@ -127,12 +132,12 @@ theorem mapComp_id_right {a b : B} (f : a ⟶ b) :
127132

128133
/-- The identity oplax functor. -/
129134
@[simps]
130-
def id (B : Type u₁) [Bicategory.{w₁, v₁} B] : OplaxFunctor B B where
135+
def id (B : Type u₁) [Bicategory.{w₁, v₁} B] : B ⥤ᵒᵖᴸ B where
131136
toPrelaxFunctor := PrelaxFunctor.id B
132137
mapId := fun a => 𝟙 (𝟙 a)
133138
mapComp := fun f g => 𝟙 (f ≫ g)
134139

135-
instance : Inhabited (OplaxFunctor B B) :=
140+
instance : Inhabited (B ⥤ᵒᵖᴸ B) :=
136141
⟨id B⟩
137142

138143
/-- More flexible variant of `mapId`. (See the file `Bicategory.Functor.Strict`
@@ -158,7 +163,7 @@ lemma mapComp'_eq_mapComp {b₀ b₁ b₂ : B} (f : b₀ ⟶ b₁) (g : b₁ ⟶
158163

159164
/-- Composition of oplax functors. -/
160165
--@[simps]
161-
def comp (F : OplaxFunctor B C) (G : OplaxFunctor C D) : OplaxFunctor B D where
166+
def comp (F : B ⥤ᵒᵖᴸ C) (G : C ⥤ᵒᵖᴸ D) : B ⥤ᵒᵖᴸ D where
162167
toPrelaxFunctor := F.toPrelaxFunctor.comp G.toPrelaxFunctor
163168
mapId := fun a => (G.mapFunctor _ _).map (F.mapId a) ≫ G.mapId (F.obj a)
164169
mapComp := fun f g => (G.mapFunctor _ _).map (F.mapComp f g) ≫ G.mapComp (F.map f) (F.map g)
@@ -189,7 +194,7 @@ def comp (F : OplaxFunctor B C) (G : OplaxFunctor C D) : OplaxFunctor B D where
189194
/-- A structure on an oplax functor that promotes an oplax functor to a pseudofunctor.
190195
191196
See `Pseudofunctor.mkOfOplax`. -/
192-
structure PseudoCore (F : OplaxFunctor B C) where
197+
structure PseudoCore (F : B ⥤ᵒᵖᴸ C) where
193198
/-- The isomorphism giving rise to the oplax unity constraint -/
194199
mapIdIso (a : B) : F.map (𝟙 a) ≅ 𝟙 (F.obj a)
195200
/-- The isomorphism giving rise to the oplax functoriality constraint -/

Mathlib/CategoryTheory/Bicategory/Functor/Pseudofunctor.lean

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@ We provide several constructors for pseudofunctors:
2525
2626
## Main definitions
2727
28-
* `CategoryTheory.Pseudofunctor B C` : a pseudofunctor between bicategories `B` and `C`
28+
* `CategoryTheory.Pseudofunctor B C` : a pseudofunctor between bicategories `B` and `C`, which we
29+
denote by `B ⥤ᵖ C`.
2930
* `CategoryTheory.Pseudofunctor.comp F G` : the composition of pseudofunctors
3031
3132
-/
@@ -79,7 +80,6 @@ structure Pseudofunctor (B : Type u₁) [Bicategory.{w₁, v₁} B] (C : Type u
7980

8081
/-- Notation for a pseudofunctor between bicategories. -/
8182
-- Given similar precedence as ⥤ (26).
82-
-- For example, `C × D ⥤ E` should parse as `(C × D) ⥤ E` not `C × (D ⥤ E)`.
8383
scoped[CategoryTheory.Bicategory] infixr:26 " ⥤ᵖ " => Pseudofunctor -- type as \func\^p
8484

8585
initialize_simps_projections Pseudofunctor (+toPrelaxFunctor, -obj, -map, -map₂)
@@ -109,17 +109,17 @@ variable (F : B ⥤ᵖ C)
109109

110110
/-- The oplax functor associated with a pseudofunctor. -/
111111
@[simps]
112-
def toOplax : OplaxFunctor B C where
112+
def toOplax : B ⥤ᵒᵖᴸ C where
113113
toPrelaxFunctor := F.toPrelaxFunctor
114114
mapId := fun a => (F.mapId a).hom
115115
mapComp := fun f g => (F.mapComp f g).hom
116116

117-
instance hasCoeToOplax : Coe (B ⥤ᵖ C) (OplaxFunctor B C) :=
117+
instance hasCoeToOplax : Coe (B ⥤ᵖ C) (B ⥤ᵒᵖᴸ C) :=
118118
⟨toOplax⟩
119119

120120
/-- The Lax functor associated with a pseudofunctor. -/
121121
@[simps]
122-
def toLax : LaxFunctor B C where
122+
def toLax : B ⥤ᴸ C where
123123
toPrelaxFunctor := F.toPrelaxFunctor
124124
mapId := fun a => (F.mapId a).inv
125125
mapComp := fun f g => (F.mapComp f g).inv
@@ -130,7 +130,7 @@ def toLax : LaxFunctor B C where
130130
rw [← F.map₂Iso_inv, eq_inv_comp, comp_inv_eq]
131131
simp
132132

133-
instance hasCoeToLax : Coe (B ⥤ᵖ C) (LaxFunctor B C) :=
133+
instance hasCoeToLax : Coe (B ⥤ᵖ C) (B ⥤ᴸ C) :=
134134
⟨toLax⟩
135135

136136
/-- The identity pseudofunctor. -/
@@ -291,7 +291,7 @@ end
291291

292292
/-- Construct a pseudofunctor from an oplax functor whose `mapId` and `mapComp` are isomorphisms. -/
293293
@[simps]
294-
def mkOfOplax (F : OplaxFunctor B C) (F' : F.PseudoCore) : B ⥤ᵖ C where
294+
def mkOfOplax (F : B ⥤ᵒᵖᴸ C) (F' : F.PseudoCore) : B ⥤ᵖ C where
295295
toPrelaxFunctor := F.toPrelaxFunctor
296296
mapId := F'.mapIdIso
297297
mapComp := F'.mapCompIso
@@ -308,7 +308,7 @@ def mkOfOplax (F : OplaxFunctor B C) (F' : F.PseudoCore) : B ⥤ᵖ C where
308308

309309
/-- Construct a pseudofunctor from an oplax functor whose `mapId` and `mapComp` are isomorphisms. -/
310310
@[simps!]
311-
noncomputable def mkOfOplax' (F : OplaxFunctor B C) [∀ a, IsIso (F.mapId a)]
311+
noncomputable def mkOfOplax' (F : B ⥤ᵒᵖᴸ C) [∀ a, IsIso (F.mapId a)]
312312
[∀ {a b c} (f : a ⟶ b) (g : b ⟶ c), IsIso (F.mapComp f g)] : B ⥤ᵖ C where
313313
toPrelaxFunctor := F.toPrelaxFunctor
314314
mapId := fun a => asIso (F.mapId a)
@@ -327,7 +327,7 @@ noncomputable def mkOfOplax' (F : OplaxFunctor B C) [∀ a, IsIso (F.mapId a)]
327327

328328
/-- Construct a pseudofunctor from a lax functor whose `mapId` and `mapComp` are isomorphisms. -/
329329
@[simps]
330-
def mkOfLax (F : LaxFunctor B C) (F' : F.PseudoCore) : B ⥤ᵖ C where
330+
def mkOfLax (F : B ⥤ᴸ C) (F' : F.PseudoCore) : B ⥤ᵖ C where
331331
toPrelaxFunctor := F.toPrelaxFunctor
332332
mapId := F'.mapIdIso
333333
mapComp := F'.mapCompIso
@@ -345,7 +345,7 @@ def mkOfLax (F : LaxFunctor B C) (F' : F.PseudoCore) : B ⥤ᵖ C where
345345

346346
/-- Construct a pseudofunctor from a lax functor whose `mapId` and `mapComp` are isomorphisms. -/
347347
@[simps!]
348-
noncomputable def mkOfLax' (F : LaxFunctor B C) [∀ a, IsIso (F.mapId a)]
348+
noncomputable def mkOfLax' (F : B ⥤ᴸ C) [∀ a, IsIso (F.mapId a)]
349349
[∀ {a b c} (f : a ⟶ b) (g : b ⟶ c), IsIso (F.mapComp f g)] : B ⥤ᵖ C :=
350350
mkOfLax F
351351
{ mapIdIso := fun a => (asIso (F.mapId a)).symm

Mathlib/CategoryTheory/Bicategory/Functor/StrictlyUnitary.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ variable (B C)
5252
lax functor `F` from `B` to `C` such that the structure 1-cell
5353
`𝟙 (obj X) ⟶ map (𝟙 X)` is in fact an identity 1-cell for every `X : B`. -/
5454
@[kerodon 008R]
55-
structure StrictlyUnitaryLaxFunctor extends LaxFunctor B C where
55+
structure StrictlyUnitaryLaxFunctor extends B ⥤ᴸ C where
5656
map_id (X : B) : map (𝟙 X) = 𝟙 (obj X) := by rfl_cat
5757
mapId_eq_eqToHom (X : B) : (mapId X) = eqToHom (map_id X).symm := by cat_disch
5858

Mathlib/CategoryTheory/Bicategory/FunctorBicategory/Oplax.lean

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import Mathlib.CategoryTheory.Bicategory.Modification.Oplax
88
/-!
99
# The bicategory of oplax functors between two bicategories
1010
11-
Given bicategories `B` and `C`, we give a bicategory structure on `OplaxFunctor B C` whose
11+
Given bicategories `B` and `C`, we give a bicategory structure on `B ⥤ᵒᵖᴸ C` whose
1212
* objects are oplax functors,
1313
* 1-morphisms are oplax natural transformations, and
1414
* 2-morphisms are modifications.
@@ -24,7 +24,7 @@ open scoped Bicategory
2424
universe w₁ w₂ v₁ v₂ u₁ u₂
2525

2626
variable {B : Type u₁} [Bicategory.{w₁, v₁} B] {C : Type u₂} [Bicategory.{w₂, v₂} C]
27-
variable {F G H I : OplaxFunctor B C}
27+
variable {F G H I : B ⥤ᵒᵖᴸ C}
2828

2929
namespace OplaxTrans
3030

@@ -65,7 +65,7 @@ variable (B C)
6565

6666
/-- A bicategory structure on the oplax functors between bicategories. -/
6767
@[simps!]
68-
scoped instance OplaxFunctor.bicategory : Bicategory (OplaxFunctor B C) where
68+
scoped instance OplaxFunctor.bicategory : Bicategory (B ⥤ᵒᵖᴸ C) where
6969
whiskerLeft {_ _ _} η _ _ Γ := whiskerLeft η Γ
7070
whiskerRight {_ _ _} _ _ Γ η := whiskerRight Γ η
7171
associator {_ _ _} _ := associator

Mathlib/CategoryTheory/Bicategory/Modification/Oplax.lean

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@ open Category Bicategory
3030
universe w₁ w₂ v₁ v₂ u₁ u₂
3131

3232
variable {B : Type u₁} [Bicategory.{w₁, v₁} B] {C : Type u₂} [Bicategory.{w₂, v₂} C]
33-
{F G : OplaxFunctor B C} (η θ : F ⟶ G)
33+
{F G : B ⥤ᵒᵖᴸ C} (η θ : F ⟶ G)
3434

35-
variable {F G : OplaxFunctor B C}
35+
variable {F G : B ⥤ᵒᵖᴸ C}
3636

3737
/-- A modification `Γ` between oplax natural transformations `η` and `θ` consists of a family of
3838
2-morphisms `Γ.app a : η.app a ⟶ θ.app a`, which satisfies the equation
@@ -92,26 +92,26 @@ end Modification
9292

9393
/-- Category structure on the oplax natural transformations between OplaxFunctors. -/
9494
@[simps]
95-
scoped instance category (F G : OplaxFunctor B C) : Category (F ⟶ G) where
95+
scoped instance category (F G : B ⥤ᵒᵖᴸ C) : Category (F ⟶ G) where
9696
Hom := Modification
9797
id := Modification.id
9898
comp := Modification.vcomp
9999

100100
@[ext]
101-
lemma ext {F G : OplaxFunctor B C} {α β : F ⟶ G} {m n : α ⟶ β} (w : ∀ b, m.app b = n.app b) :
101+
lemma ext {F G : B ⥤ᵒᵖᴸ C} {α β : F ⟶ G} {m n : α ⟶ β} (w : ∀ b, m.app b = n.app b) :
102102
m = n := by
103103
apply Modification.ext
104104
ext
105105
apply w
106106

107107
/-- Version of `Modification.id_app` using category notation -/
108108
@[simp]
109-
lemma Modification.id_app' {X : B} {F G : OplaxFunctor B C} (α : F ⟶ G) :
109+
lemma Modification.id_app' {X : B} {F G : B ⥤ᵒᵖᴸ C} (α : F ⟶ G) :
110110
Modification.app (𝟙 α) X = 𝟙 (α.app X) := rfl
111111

112112
/-- Version of `Modification.comp_app` using category notation -/
113113
@[simp]
114-
lemma Modification.comp_app' {X : B} {F G : OplaxFunctor B C} {α β γ : F ⟶ G}
114+
lemma Modification.comp_app' {X : B} {F G : B ⥤ᵒᵖᴸ C} {α β γ : F ⟶ G}
115115
(m : α ⟶ β) (n : β ⟶ γ) : (m ≫ n).app X = m.app X ≫ n.app X :=
116116
rfl
117117

Mathlib/CategoryTheory/Bicategory/Monad/Basic.lean

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ instance {a : B} : Comonad (𝟙 a) :=
7373
ComonObj.instTensorUnit (a ⟶ a)
7474

7575
/-- An oplax functor from the trivial bicategory to `B` defines a comonad in `B`. -/
76-
def ofOplaxFromUnit (F : OplaxFunctor (LocallyDiscrete (Discrete Unit)) B) :
76+
def ofOplaxFromUnit (F : LocallyDiscrete (Discrete Unit) ⥤ᵒᵖᴸ B) :
7777
Comonad (F.map (𝟙 ⟨⟨Unit.unit⟩⟩)) where
7878
comul := F.map₂ (ρ_ _).inv ≫ F.mapComp _ _
7979
counit := F.mapId _
@@ -91,8 +91,7 @@ def ofOplaxFromUnit (F : OplaxFunctor (LocallyDiscrete (Discrete Unit)) B) :
9191
rw [Category.assoc, F.mapComp_id_right, F.map₂_inv_hom_assoc]
9292

9393
/-- A comonad in `B` defines an oplax functor from the trivial bicategory to `B`. -/
94-
def toOplax {a : B} (t : a ⟶ a) [Comonad t] :
95-
OplaxFunctor (LocallyDiscrete (Discrete Unit)) B where
94+
def toOplax {a : B} (t : a ⟶ a) [Comonad t] : LocallyDiscrete (Discrete Unit) ⥤ᵒᵖᴸ B where
9695
obj _ := a
9796
map _ := t
9897
map₂ _ := 𝟙 _
@@ -112,17 +111,17 @@ namespace OplaxTrans
112111

113112
/-- The bicategory of comonads in `B`. -/
114113
def ComonadBicat (B : Type u) [Bicategory.{w, v} B] :=
115-
OplaxFunctor (LocallyDiscrete (Discrete Unit)) B
114+
LocallyDiscrete (Discrete Unit) ⥤ᵒᵖᴸ B
116115

117116
namespace ComonadBicat
118117

119118
open scoped Oplax.OplaxTrans.OplaxFunctor in
120119
/-- The bicategory of comonads in `B`. -/
121120
scoped instance : Bicategory (ComonadBicat B) :=
122-
inferInstanceAs <| Bicategory (OplaxFunctor (LocallyDiscrete (Discrete PUnit)) B)
121+
inferInstanceAs <| Bicategory (LocallyDiscrete (Discrete PUnit) ⥤ᵒᵖᴸ B)
123122

124123
/-- The oplax functor from the trivial bicategory to `B` associated with the comonad. -/
125-
def toOplax (m : ComonadBicat B) : OplaxFunctor (LocallyDiscrete (Discrete PUnit)) B :=
124+
def toOplax (m : ComonadBicat B) : LocallyDiscrete (Discrete PUnit) ⥤ᵒᵖᴸ B :=
126125
m
127126

128127
/-- The object in `B` associated with the comonad. -/

0 commit comments

Comments
 (0)