mirror of
https://git8.cs.fau.de/theses/bsc-leon-vatthauer.git
synced 2024-05-31 07:28:34 +02:00
40 lines
No EOL
1.4 KiB
Agda
40 lines
No EOL
1.4 KiB
Agda
open import Level
|
||
open import Categories.Category.Core
|
||
open import Categories.Category.Extensive.Bundle
|
||
open import Function using (id)
|
||
|
||
module MonadK {o ℓ e} (D : ExtensiveDistributiveCategory o ℓ e) where
|
||
open ExtensiveDistributiveCategory D renaming (U to C; id to idC)
|
||
open import UniformIterationAlgebras
|
||
open import UniformIterationAlgebra
|
||
open import Categories.FreeObjects.Free
|
||
open import Categories.Functor.Core
|
||
open import Categories.Adjoint
|
||
open import Categories.Adjoint.Properties
|
||
open import Categories.NaturalTransformation.Core renaming (id to idN)
|
||
open import Categories.Monad
|
||
open Equiv
|
||
|
||
record MonadK : Set (suc o ⊔ suc ℓ ⊔ suc e) where
|
||
forgetfulF : Functor (Uniform-Iteration-Algebras D) C
|
||
forgetfulF = record
|
||
{ F₀ = λ X → Uniform-Iteration-Algebra.A X
|
||
; F₁ = λ f → Uniform-Iteration-Algebra-Morphism.h f
|
||
; identity = refl
|
||
; homomorphism = refl
|
||
; F-resp-≈ = id
|
||
}
|
||
|
||
field
|
||
algebras : ∀ X → FreeObject {C = C} {D = Uniform-Iteration-Algebras D} forgetfulF X
|
||
|
||
freeF : Functor C (Uniform-Iteration-Algebras D)
|
||
freeF = FO⇒Functor forgetfulF algebras
|
||
|
||
adjoint : freeF ⊣ forgetfulF
|
||
adjoint = FO⇒LAdj forgetfulF algebras
|
||
|
||
K : Monad C
|
||
K = adjoint⇒monad adjoint
|
||
|
||
-- TODO show that the category of K-Algebras is the category of uniform-iteration algebras |