changeset 278:9fafe4a53f89

univ2limit
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 23 Sep 2013 02:39:57 +0900
parents 21ef5ba54458
children 8df8e74e6316
files pullback.agda
diffstat 1 files changed, 11 insertions(+), 38 deletions(-) [+]
line wrap: on
line diff
--- a/pullback.agda	Mon Sep 23 01:10:48 2013 +0900
+++ b/pullback.agda	Mon Sep 23 02:39:57 2013 +0900
@@ -275,62 +275,35 @@
 
 open import Category.Cat
 
-open Adjunction
 
-adjoint2limit : 
-     ( U : Functor (A ^ I) A ) ( η :  NTrans A A identityFunctor ( U ○  (KI I) ) )
+open coUniversalMapping
+ 
+univ2limit : 
+     ( U : Functor (A ^ I) A ) 
      ( ε :   NTrans (A ^ I) (A ^ I)  ( (KI I) ○  U ) identityFunctor )
-     ( adj : Adjunction A (A ^ I) U (KI I) η ε ) →
+     ( univ :  coUniversalMapping A (A ^ I) (KI I) (FObj U) (TMap ε) ) →
      ( Γ : Functor I A ) →   Limit I Γ (FObj U Γ) (TMap ε Γ)
-adjoint2limit U η ε adj Γ = record {
+univ2limit U ε univ Γ = record {
      limit = λ a t → limit1 a t ;
      t0f=t = λ {a t i } → t0f=t1 {a} {t} {i}  ; 
      limit-uniqueness =  λ {a} {t} {f} t=f → limit-uniqueness1 {a} {t} {f} t=f 
  } where
      limit1 :  (a : Obj A) → NTrans I A (K I a) Γ → Hom A a (FObj U Γ)
-     limit1 a t = A [ FMap U t o TMap η a ] 
+     limit1 a t = _*' univ t 
      t0f=t1 :   {a : Obj A} {t : NTrans I A (K I a) Γ} {i : Obj I} →
                 A [ A [ TMap (TMap ε Γ) i o limit1 a t ] ≈ TMap t i ]
      t0f=t1 {a} {t} {i} =  let  open ≈-Reasoning (A) in begin
             TMap (TMap ε Γ) i o limit1 a t
         ≈⟨⟩
-            TMap (TMap ε Γ) i o ( FMap U t  o TMap η a )
-        ≈⟨ assoc  ⟩
-            (TMap (TMap ε Γ) i o  FMap U t ) o TMap η a 
-        ≈⟨ car (nat ε)  ⟩
-           TMap (FMap (KI I) (TMap (TMap ε (FObj (KI I) (FObj Γ i))) i o FMap U (FMap (KI I) (TMap t i)))) i o TMap η a
-        ≈⟨ car (distr (KI I)) ⟩
-            (TMap (TMap ε (FObj (KI I) (FObj Γ i))) i o   FMap (U ○ KI I) (TMap t i)) o TMap η a 
-        ≈↑⟨ assoc  ⟩
-            TMap (TMap ε (FObj (KI I) (FObj Γ i))) i o (  FMap (U ○ KI I) (TMap t i) o TMap η a )
-        ≈⟨ cdr ( nat η ) ⟩
-            TMap (TMap ε (FObj (KI I) (FObj Γ i))) i o ((TMap (FMap (KI I) (TMap η (FObj Γ i))) i) o TMap t i )
-        ≈⟨ assoc ⟩
-            ( TMap (TMap ε (FObj (KI I) (FObj Γ i))) i o (TMap (FMap (KI I) (TMap η (FObj Γ i))) i)) o TMap t i
-        ≈⟨  car ( IsAdjunction.adjoint2 ( isAdjunction adj)) ⟩
-            id1 A  (FObj Γ i) o TMap t i
-        ≈⟨ idL ⟩
+            TMap (TMap ε Γ) i o _*' univ t
+        ≈⟨ coIsUniversalMapping.couniversalMapping ( iscoUniversalMapping univ) ⟩
             TMap t i

      limit-uniqueness1 : { a : Obj A } →  { t : NTrans I A ( K I a ) Γ } → { f : Hom A a (FObj U Γ)} 
          → ( ∀ { i : Obj I } → A [ A [ TMap  (TMap ε Γ) i o  f ]  ≈ TMap t i ] ) → A [ limit1 a t ≈ f ]
      limit-uniqueness1 {a} {t} {f} εf=t = let  open ≈-Reasoning (A) in begin
-            FMap U t  o TMap η a
-        ≈↑⟨ car ( fcong U εf=t ) ⟩
-            (FMap U ( A ^ I [ TMap ε Γ o FMap ( KI I) f ] )) o TMap η a 
-        ≈⟨ car ( distr U ) ⟩
-            (FMap U (TMap ε Γ) o   FMap U ( FMap ( KI I) f) ) o TMap η a 
-        ≈⟨⟩
-            (FMap U (TMap ε Γ) o   FMap (U ○ KI I) f ) o TMap η a 
-        ≈↑⟨ assoc ⟩
-            FMap U (TMap ε Γ) o  ( FMap (U ○ KI I) f o TMap η a ) 
-        ≈⟨ cdr ( nat η )  ⟩
-            FMap U (TMap ε Γ) o ( TMap η (FObj U Γ) o  f )
-        ≈⟨ assoc ⟩
-            (FMap U (TMap ε Γ) o TMap η (FObj U Γ)) o  f
-        ≈⟨  car ( IsAdjunction.adjoint1 ( isAdjunction adj)) ⟩
-            id1 A (FObj U Γ) o  f
-        ≈⟨ idL ⟩
+            _*' univ t
+        ≈⟨  ( coIsUniversalMapping.couniquness ( iscoUniversalMapping univ) ) εf=t  ⟩
             f