diff options
Diffstat (limited to 'Functor/Instance/Decorate.agda')
| -rw-r--r-- | Functor/Instance/Decorate.agda | 29 |
1 files changed, 13 insertions, 16 deletions
diff --git a/Functor/Instance/Decorate.agda b/Functor/Instance/Decorate.agda index 30cec87..fedddba 100644 --- a/Functor/Instance/Decorate.agda +++ b/Functor/Instance/Decorate.agda @@ -1,4 +1,5 @@ {-# OPTIONS --without-K --safe #-} +{-# OPTIONS --hidden-argument-puns #-} open import Categories.Category.Monoidal.Bundle using (MonoidalCategory; SymmetricMonoidalCategory) open import Categories.Functor.Monoidal.Symmetric using (module Lax) @@ -19,6 +20,7 @@ module Functor.Instance.Decorate import Categories.Category.Monoidal.Reasoning as β-Reasoning import Categories.Diagram.Pushout as DiagramPushout import Categories.Morphism.Reasoning as β-Reasoning +import Category.Diagram.Cospan π as Cospan open import Categories.Category using (Category; _[_,_]; _[_β_]; _[_β_]) open import Categories.Category.Cocartesian using (module CocartesianMonoidal) @@ -27,10 +29,10 @@ open import Categories.Category.Monoidal.Utilities using (module Shorthands) open import Categories.Functor.Core using (Functor) open import Categories.Functor.Properties using ([_]-resp-β
) open import Function.Base using () renaming (id to idf) -open import Category.Instance.Cospans π using (Cospan; Cospans; Same) +open import Category.Instance.Cospans π using (Cospans) open import Category.Instance.DecoratedCospans π F using (DecoratedCospans) -open import Functor.Instance.Cospan.Stack using (β) -open import Functor.Instance.DecoratedCospan.Stack using () renaming (β to ββ²) +open import Functor.Instance.Cospan.Stack π using (module β) +open import Functor.Instance.DecoratedCospan.Stack π F using () renaming (module β to ββ²) module π = FinitelyCocompleteCategory π module π = SymmetricMonoidalCategory π @@ -67,14 +69,14 @@ identity = record open β-Reasoning π.U homomorphism : DecoratedCospans [ decorate (Cospans [ g β f ]) β DecoratedCospans [ decorate g β decorate f ] ] -homomorphism {B} {C} {g} {A} {f} = record +homomorphism {g} {f} = record { cospans-β = Cospans.Equiv.refl ; same-deco = same-deco } where - open Cospan f using (N; fβ) - open Cospan g using () renaming (N to M; fβ to gβ) + open Cospan.Cospan f using (N; fβ) + open Cospan.Cospan g using () renaming (N to M; fβ to gβ) open π using (U; monoidal; _ββ_; unitorΛ‘-commute-from) renaming (module unitorΛ‘ to Ξ»-) open π using (Β‘; β₯; Β‘-unique; pushout) renaming ([_,_] to [_,_]β²; _+β_ to infixr 10 _+β_ ) @@ -99,7 +101,7 @@ homomorphism {B} {C} {g} {A} {f} = record Fβ ([ iβ , iβ ]β² π.β Β‘ +β Β‘ π.β Ξ»ββ²) β Ξ΅ β Ξ»β β Ξ»β ββ¨ reflβ©ββ¨ reflβ©ββ¨ reflβ©ββ¨ coherence-invβ monoidal β© Fβ ([ iβ , iβ ]β² π.β Β‘ +β Β‘ π.β Ξ»ββ²) β Ξ΅ β Ξ»β β Οβ ββ¨ reflβ©ββ¨ extendΚ³ unitorΛ‘-commute-from β¨ Fβ ([ iβ , iβ ]β² π.β Β‘ +β Β‘ π.β Ξ»ββ²) β Ξ»β β id ββ Ξ΅ β Οβ ββ¨ pushΛ‘ F.homomorphism β© - Fβ [ iβ , iβ ]β² β Fβ (Β‘ +β Β‘ π.β Ξ»ββ²) β Ξ»β β id ββ Ξ΅ β Οβ ββ¨ push-center (sym F.homomorphism) β© + Fβ [ iβ , iβ ]β² β Fβ (Β‘ +β Β‘ π.β Ξ»ββ²) β Ξ»β β id ββ Ξ΅ β Οβ ββ¨ push-center F.homomorphism β© Fβ [ iβ , iβ ]β² β Fβ (Β‘ +β Β‘) β Fβ Ξ»ββ² β Ξ»β β id ββ Ξ΅ β Οβ ββ¨ reflβ©ββ¨ reflβ©ββ¨ extendΚ³ (switch-fromtoΛ‘ ([ F.F ]-resp-β
unitorΛ‘) F.unitaryΛ‘) β¨ Fβ [ iβ , iβ ]β² β Fβ (Β‘ +β Β‘) β Ο (β₯ , β₯) β Ξ΅ ββ id β id ββ Ξ΅ β Οβ ββ¨ reflβ©ββ¨ reflβ©ββ¨ reflβ©ββ¨ pullΛ‘ (sym serializeββ) β© Fβ [ iβ , iβ ]β² β Fβ (Β‘ +β Β‘) β Ο (β₯ , β₯) β Ξ΅ ββ Ξ΅ β Οβ ββ¨ reflβ©ββ¨ extendΚ³ (Ο-commute (Β‘ , Β‘)) β¨ @@ -126,19 +128,15 @@ Decorate = record ; F-resp-β = F-resp-β } -module β = Functor (β π) -module ββ² = Functor (ββ² π F) -open π using (_+β_) - Decorate-resp-β : DecoratedCospans [ decorate (β.β (f , g)) β ββ².β (decorate f , decorate g) ] -Decorate-resp-β {f = f} {g = g} = record - { cospans-β = Cospans.Equiv.refl +Decorate-resp-β {f} {g} = record + { cospans-β = Cospan.β-refl ; same-deco = same-deco } where - open Cospan f using (N) - open Cospan g using () renaming (N to M) + open Cospan.Cospan f using (N) + open Cospan.Cospan g using () renaming (N to M) open π using (U; monoidal; _ββ_; unitorΛ‘-commute-from) renaming (module unitorΛ‘ to Ξ»-) open π using (Β‘; β₯; Β‘-unique; pushout) renaming ([_,_] to [_,_]β²; _+β_ to infixr 10 _+β_ ) @@ -165,4 +163,3 @@ Decorate-resp-β {f = f} {g = g} = record Fβ (Β‘ +β Β‘) β Ο (β₯ , β₯) β Ξ΅ ββ Ξ΅ β Οβ ββ¨ extendΚ³ (Ο-commute (Β‘ , Β‘)) β¨ Ο (N , M) β Fβ Β‘ ββ Fβ Β‘ β Ξ΅ ββ Ξ΅ β Οβ ββ¨ reflβ©ββ¨ pullΛ‘ (sym β-distrib-over-β) β© Ο (N , M) β (Fβ Β‘ β Ξ΅) ββ (Fβ Β‘ β Ξ΅) β Οβ β - |
