diff em-category.agda @ 688:a5f2ca67e7c5

fix monad/adjunction definition couniversal to limit does not work
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 11 Nov 2017 21:34:58 +0900
parents ba042c2d3ff5
children
line wrap: on
line diff
--- a/em-category.agda	Wed Nov 08 19:57:43 2017 +0900
+++ b/em-category.agda	Sat Nov 11 21:34:58 2017 +0900
@@ -24,7 +24,7 @@
                  { T : Functor A A }
                  { η : NTrans A A identityFunctor T }
                  { μ : NTrans A A (T ○ T) T }
-                 { M : Monad A T η μ } where
+                 { M : IsMonad A T η μ } where
 
 --
 --  Hom in Eilenberg-Moore Category
@@ -104,7 +104,7 @@
 -- cannot use as identityL = EMidL
 --
 EMidL : {C D : EMObj} → {f : EMHom C D} → (EM-id  ∙ f) ≗ f
-EMidL {C} {D} {f} = let open ≈-Reasoning (A) in idL {obj D} 
+EMidL {C} {D} {f} = let open ≈-Reasoning (A) in idL {obj C} 
 EMidR : {C D : EMObj} → {f : EMHom C D} → (f ∙ EM-id)  ≗ f
 EMidR {C} {_} {_} = let open ≈-Reasoning (A) in  idR {obj C}
 EMo-resp :  {a b c : EMObj} → {f g : EMHom a b } → {h i : EMHom  b c } → 
@@ -157,12 +157,11 @@
         }
      } where open ≈-Reasoning (A) 
 
-open Monad
 Lemma-EM4 : (x : Obj A ) → A [ A [ TMap μ x  o TMap η (FObj T x) ] ≈ id1 A (FObj T x) ]
 Lemma-EM4 x = let  open ≈-Reasoning (A) in
     begin
        TMap μ x  o TMap η (FObj T x) 
-    ≈⟨ IsMonad.unity1 (isMonad M) ⟩
+    ≈⟨ IsMonad.unity1 M ⟩
        id1 A (FObj T x)

 
@@ -170,7 +169,7 @@
 Lemma-EM5 x =  let  open ≈-Reasoning (A) in
     begin
        ( TMap μ x)  o TMap μ (FObj T x) 
-    ≈⟨ IsMonad.assoc (isMonad M) ⟩
+    ≈⟨ IsMonad.assoc M ⟩
        ( TMap μ x) o FMap T ( TMap μ x)

 
@@ -312,8 +311,12 @@
               TMap μ x
           ∎ )
 
-Adj^T : Adjunction A Eilenberg-MooreCategory U^T F^T η^T ε^T
+Adj^T : Adjunction A Eilenberg-MooreCategory 
 Adj^T = record {
+           U =  U^T ;
+           F =  F^T ;
+           η = η^T  ;
+           ε = ε^T ;
            isAdjunction = record {
                adjoint1 = λ {b} → IsAlgebra.identity (isAlgebra b) ; -- adjoint1
                adjoint2 = adjoint2
@@ -339,14 +342,20 @@
                   EMap (( TMap ε^T ( FObj F^T a )) ∙ ( FMap F^T ( TMap η^T a )) )
                ≈⟨⟩
                   TMap μ a  o FMap T ( TMap η a )
-               ≈⟨ IsMonad.unity2 (isMonad M) ⟩
+               ≈⟨ IsMonad.unity2 M ⟩
                   EMap (id1 Eilenberg-MooreCategory (FObj F^T a))

 
 open MResolution
 
-Resolution^T : MResolution A Eilenberg-MooreCategory T U^T F^T {η^T} {ε^T} {μ^T} Adj^T 
+Resolution^T : MResolution A Eilenberg-MooreCategory  ( record { T = T ; η = η ; μ = μ; isMonad = M } )
 Resolution^T = record {
+     UR =  U^T ;
+     FR =  F^T ;
+     ηR =  η^T ;
+     εR =  ε^T ;
+     μR =  μ^T  ;
+     Adj = Adjunction.isAdjunction Adj^T ;
      T=UF = Lemma-EM8;
      μ=UεF  = Lemma-EM11
  }