@@ -13,7 +13,7 @@ private variable
1313
1414-- ** indexed/dependent version
1515record BifunctorI
16- (F : (A : Type a) (B : A → Type b) → Type (a ⊔ b)) : Type (lsuc (a ⊔ b)) where
16+ (F : ∀ {a b} → (A : Type a) (B : A → Type b) → Type (ℓ↑² a b)) : Typeω where
1717 field
1818 bimap′ : (f : A → A′) → (∀ {x} → B x → C (f x)) → F A B → F A′ C
1919
@@ -30,11 +30,11 @@ record BifunctorI
3030open BifunctorI ⦃...⦄ public
3131
3232instance
33- Bifunctor-Σ : BifunctorI {a}{b} Σ
33+ Bifunctor-Σ : BifunctorI Σ
3434 Bifunctor-Σ .bimap′ = ×.map
3535
3636-- ** non-dependent version
37- record Bifunctor (F : Type a → Type b → Type (a ⊔ b)) : Type (lsuc (a ⊔ b)) where
37+ record Bifunctor (F : Type↑² ℓ↑²) : Typeω where
3838 field
3939 bimap : ∀ {A A′ : Type a} {B B′ : Type b} → (A → A′) → (B → B′) → F A B → F A′ B′
4040
@@ -50,16 +50,15 @@ record Bifunctor (F : Type a → Type b → Type (a ⊔ b)) : Type (lsuc (a ⊔
5050
5151open Bifunctor ⦃...⦄ public
5252
53- map₁₂ : ∀ {F : Type a → Type a → Type a} {A B : Type a}
54- → ⦃ Bifunctor F ⦄
55- → (A → B) → F A A → F B B
53+ map₁₂ : ∀ {F : Type↑² ℓ↑²} ⦃ _ : Bifunctor F ⦄ →
54+ (∀ {a} {A B : Type a} → (A → B) → F A A → F B B)
5655map₁₂ f = bimap f f
5756_<$>₁₂_ = map₁₂
5857infixl 4 _<$>₁₂_
5958
6059instance
61- Bifunctor-× : Bifunctor {a}{b} _×_
60+ Bifunctor-× : Bifunctor _×_
6261 Bifunctor-× .bimap f g = ×.map f g
6362
64- Bifunctor-⊎ : Bifunctor {a}{b} _⊎_
63+ Bifunctor-⊎ : Bifunctor _⊎_
6564 Bifunctor-⊎ .bimap = ⊎.map
0 commit comments