changeset 601:2e7b5a777984

prove fe=ge in limit-to
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 05 Jun 2017 14:16:36 +0900
parents 3e2ef72d8d2f
children b7659ad60a69
files SetsCompleteness.agda limit-to.agda
diffstat 2 files changed, 39 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/SetsCompleteness.agda	Sat Jun 03 09:46:59 2017 +0900
+++ b/SetsCompleteness.agda	Mon Jun 05 14:16:36 2017 +0900
@@ -148,6 +148,31 @@
                   open ≡-Reasoning
 
 
+--  
+--     
+        --
+        --         equ            f
+        --  elem -------→ a ---------→ b        
+        --    ^        .    ---------→
+        --    |      .            g
+        --    |k   .
+        --    |  . e
+        --    c
+
+--  
+makeEqu :  {  c₂ : Level}  →  {a b c : Obj  (Sets {c₂})} → (e : Hom  (Sets {c₂}) c a )  → (f g : Hom  (Sets {c₂}) a b)  → IsEqualizer  (Sets {c₂}) e f g
+makeEqu {c₂} {a} {b} {c} e f g =  record {
+               fe=ge  = {!!}
+             ; k = λ {d} h eq → {!!}
+             ; ek=h = λ {d} {h} {eq} → {!!}
+             ; uniqueness  = {!!}
+       } where
+           equ0 : IsEqualizer Sets (λ e → equ e )f g
+           equ0 = SetsIsEqualizer a b f g
+           c→equ0 : Hom Sets c ( sequ a b f g )
+           c→equ0 = {!!}
+
+
 open Functor
 
 ----
--- a/limit-to.agda	Sat Jun 03 09:46:59 2017 +0900
+++ b/limit-to.agda	Mon Jun 05 14:16:36 2017 +0900
@@ -160,10 +160,9 @@
 lim-to-equ :  {c₁ c₂ ℓ : Level} (A : Category c₁ c₂ ℓ)
       (comp : Complete A TwoCat  )
         →  {a b : Obj A}  (f g : Hom A  a b )
-        → (fe=ge : A [ A [ f o (equlimit A f g comp) ] ≈ A [ g o (equlimit A f g comp) ] ] )
         → IsEqualizer A (equlimit A f g comp) f g
-lim-to-equ {c₁} {c₂} {ℓ} A comp {a} {b} f g fe=ge =  record {
-        fe=ge =  fe=ge
+lim-to-equ {c₁} {c₂} {ℓ} A comp {a} {b} f g =  record {
+        fe=ge =  fe=ge0
         ; k = λ {d} h fh=gh → k {d} h fh=gh
         ; ek=h = λ {d} {h} {fh=gh} → ek=h d h fh=gh
         ; uniqueness = λ {d} {h} {fh=gh} {k'} → uniquness d h fh=gh k'
@@ -180,6 +179,18 @@
          lim =  climit comp  Γ
          inat : (d : Obj A) (h : Hom A d a) → A [ A [ f o h ] ≈ A [ g o h ] ] → NTrans I A (K A I d) Γ
          inat = IndexNat A f g
+         fe=ge0 : A [ A [ f o (equlimit A f g comp) ] ≈ A [ g o (equlimit A f g comp) ] ]
+         fe=ge0 = let open  ≈-Reasoning A in  begin
+                    f o (equlimit A f g comp)
+                ≈⟨⟩
+                    FMap  Γ arrow-f o TMap (limit-u comp Γ) discrete.t0
+                ≈⟨  IsNTrans.commute ( isNTrans ( limit-u comp Γ )) {discrete.t0} {discrete.t1} {arrow-f} ⟩ 
+                    TMap (limit-u comp Γ) discrete.t1 o FMap (K A (TwoCat {c₁} {c₂} )(limit-c comp Γ)) id-t0
+                ≈↑⟨ IsNTrans.commute ( isNTrans ( limit-u comp Γ )) {discrete.t0} {discrete.t1} {arrow-g} ⟩ 
+                    FMap  Γ arrow-g o TMap (limit-u comp Γ) discrete.t0
+                ≈⟨⟩
+                    g o (equlimit A f g comp)
+                ∎
          k : {d : Obj A}  (h : Hom A d a) → A [ A [ f  o  h ] ≈ A [ g  o h ] ] → Hom A d c
          k {d} h fh=gh  =  limit (isLimit lim) d (inat d h fh=gh )
          ek=h :  (d : Obj A ) (h : Hom A d a ) →  ( fh=gh : A [ A [ f  o  h ] ≈ A [ g  o h ] ] )  → A [ A [ e o k h fh=gh ] ≈ h ]