From 8ec259bb32b4339b27560f5ea13afa81b9b8febc Mon Sep 17 00:00:00 2001 From: Jacques Comeaux Date: Wed, 7 Jan 2026 10:12:13 -0600 Subject: Differentiate lax and strong monoidal monotones --- Preorder/Primitive/MonotoneMap/Monoidal/Lax.agda | 41 ++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 Preorder/Primitive/MonotoneMap/Monoidal/Lax.agda (limited to 'Preorder/Primitive/MonotoneMap/Monoidal/Lax.agda') diff --git a/Preorder/Primitive/MonotoneMap/Monoidal/Lax.agda b/Preorder/Primitive/MonotoneMap/Monoidal/Lax.agda new file mode 100644 index 0000000..703f3be --- /dev/null +++ b/Preorder/Primitive/MonotoneMap/Monoidal/Lax.agda @@ -0,0 +1,41 @@ +{-# OPTIONS --without-K --safe #-} + +module Preorder.Primitive.MonotoneMap.Monoidal.Lax where + +open import Level using (Level; _⊔_) +open import Preorder.Primitive.Monoidal using (MonoidalPreorder; SymmetricMonoidalPreorder) +open import Preorder.Primitive.MonotoneMap using (MonotoneMap) + +record MonoidalMonotone + {c₁ c₂ ℓ₁ ℓ₂ : Level} + (P : MonoidalPreorder c₁ ℓ₁) + (Q : MonoidalPreorder c₂ ℓ₂) + : Set (c₁ ⊔ c₂ ⊔ ℓ₁ ⊔ ℓ₂) where + + private + module P = MonoidalPreorder P + module Q = MonoidalPreorder Q + + field + F : MonotoneMap P.U Q.U + + open MonotoneMap F public + + field + ε : Q.unit Q.≲ map P.unit + ⊗-homo : (p₁ p₂ : P.Carrier) → map p₁ Q.⊗ map p₂ Q.≲ map (p₁ P.⊗ p₂) + +record SymmetricMonoidalMonotone + {c₁ c₂ ℓ₁ ℓ₂ : Level} + (P : SymmetricMonoidalPreorder c₁ ℓ₁) + (Q : SymmetricMonoidalPreorder c₂ ℓ₂) + : Set (c₁ ⊔ c₂ ⊔ ℓ₁ ⊔ ℓ₂) where + + private + module P = SymmetricMonoidalPreorder P + module Q = SymmetricMonoidalPreorder Q + + field + monoidalMonotone : MonoidalMonotone P.monoidalPreorder Q.monoidalPreorder + + open MonoidalMonotone monoidalMonotone public -- cgit v1.2.3