changeset 609:d686d7ae38e0

on goging
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 12 Jun 2017 16:35:34 +0900
parents 7194ba55df56
children 3fb4d834c349
files freyd2.agda
diffstat 1 files changed, 47 insertions(+), 30 deletions(-) [+]
line wrap: on
line diff
--- a/freyd2.agda	Mon Jun 12 10:50:02 2017 +0900
+++ b/freyd2.agda	Mon Jun 12 16:35:34 2017 +0900
@@ -17,8 +17,6 @@
 --    U ⋍ Hom (a,-)
 --
 
--- A is Locally small
-
 ----
 -- C is locally small i.e. Hom C i j is a set c₁
 --
@@ -31,7 +29,6 @@
 
 open Small
 
-
 postulate ≈-≡ :  { c₁ c₂ ℓ : Level} { A : Category c₁ c₂ ℓ }  {a b : Obj A } { x y : Hom A a b } →  (x≈y : A [ x ≈ y  ]) → x ≡ y
 
 import Relation.Binary.PropositionalEquality
@@ -79,20 +76,21 @@
                 A [ g o x ]
              ∎ )
 
-
+-- Representable  U  ≈ Hom(A,-)
 
-record Representable  { c₁ c₂ ℓ : Level} ( A : Category c₁ c₂ ℓ ) ( U : Functor A (Sets {c₂}) ) (b : Obj A) : Set  (suc ℓ ⊔ (suc (suc c₂) ⊔ suc c₁ ))  where
+record Representable  { c₁ c₂ ℓ : Level} ( A : Category c₁ c₂ ℓ ) ( U : Functor A (Sets {c₂}) ) (a : Obj A) : Set  (suc ℓ ⊔ (suc (suc c₂) ⊔ suc c₁ ))  where
    field
          -- FObj U x  :  A  → Set
-         -- FMap U f  =  Set → Set
+         -- FMap U f  =  Set → Set (locally small)
          -- λ b → Hom (a,b) :  A → Set
          -- λ f → Hom (a,-) = λ b → Hom  a b    
 
-         repr→ : NTrans A (Sets {c₂}) U (HomA A b )
-         repr← : NTrans A (Sets {c₂}) (HomA A b)  U
-         reprId  :  {x : Obj A} →  Sets [ Sets [ TMap repr→ x  o  TMap repr← x ] ≈ id1 (Sets {c₂}) (FObj (HomA A b) x )]
-         reprId  :  {x : Obj A} →  Sets [ Sets [ TMap repr← x  o  TMap repr→ x ] ≈ id1 (Sets {c₂}) (FObj U x)]
+         repr→ : NTrans A (Sets {c₂}) U (HomA A a )
+         repr← : NTrans A (Sets {c₂}) (HomA A a)  U
+         reprId→  :  {x : Obj A} →  Sets [ Sets [ TMap repr→ x  o  TMap repr← x ] ≈ id1 (Sets {c₂}) (FObj (HomA A a) x )]
+         reprId←  :  {x : Obj A} →  Sets [ Sets [ TMap repr← x  o  TMap repr→ x ] ≈ id1 (Sets {c₂}) (FObj U x)]
 
+open Representable
 open import freyd
 
 _↓_ :  { c₁ c₂ ℓ : Level}  { c₁' c₂' ℓ' : Level} { A : Category c₁ c₂ ℓ } { B : Category c₁' c₂' ℓ' }
@@ -101,39 +99,58 @@
 _↓_   { c₁} {c₂} {ℓ} {c₁'} {c₂'} {ℓ'}  { A } { B } F G  = CommaCategory
          where open import Comma1 F G
 
-
 open import freyd
-
--- K{*}↓U has preinitial full subcategory then U is representable
-
 open SmallFullSubcategory
 open Complete
 open PreInitial
+open HasInitialObject
+open import Comma1
+open CommaObj
+open LimitPreserve
 
-data OneObject : Set where
-  * : OneObject
+-- Representable Functor U preserve limit , so K{*}↓U is complete
+
+UpreserveLimit : {c₁ c₂ ℓ : Level} (A : Category c₁ c₂ ℓ) (I : Category c₁ c₂ ℓ)
+      (comp : Complete A A)
+      (U : Functor A (Sets) )
+      (a : Obj A )
+      (R : Representable A U a ) → LimitPreserve A I Sets U 
+UpreserveLimit A I comp U a R = record {
+       preserve =  λ Γ lim → record {
+             limit = λ a t → {!!}
+           ; t0f=t = λ {a t i} → ?
+           ; limit-uniqueness = λ {a} {t} {f} t0f=t → {!!}
+         }
+   }
+
+-- K{*}↓U has preinitial full subcategory then U is representable
+--    K{*}↓U is complete, so it has initial object
 
 UisRepresentable : {c₁ c₂ ℓ : Level} (A : Category c₁ c₂ ℓ)
       (comp : Complete A A)
-      (U : Functor A (Sets) )
-      (SFS : SmallFullSubcategory ( K (Sets) {!!} {!!} ↓ U )) → 
-      (PI : PreInitial {!!} (SFSF SFS )) → Representable A U {!!}
-UisRepresentable = {!!}
+      (U : Functor A (Sets {c₂}) )
+      (a : Obj Sets )
+      (x : Obj ( K (Sets) A a ↓ U) )
+      ( init : HasInitialObject {c₁} {c₂} {ℓ}  ( K (Sets) A a ↓ U ) x )
+        → Representable A U (obj x)
+UisRepresentable A comp U a x init = record {
+         repr→ = record { TMap = {!!} ; isNTrans = record { commute = {!!} } }
+         ; repr← = record { TMap = {!!} ; isNTrans = record { commute = {!!} } }
+         ; reprId→  = λ {y}  → ?
+         ; reprId←  = λ {y}  → ?
+    }
 
 -- K{*}↓U has preinitial full subcategory if U is representable
+--     if U is representable,  K{*}↓U has initial Object ( so it has preinitial full subcategory )
 
-KUhasSFS : {c₁ c₂ ℓ : Level} (A : Category c₁ c₂ ℓ)
+KUhasInitialObj : {c₁ c₂ ℓ : Level} (A : Category c₁ c₂ ℓ)
       (comp : Complete A A)
       (U : Functor A (Sets) )
       (a : Obj A )
       (R : Representable A U a ) →
-      SmallFullSubcategory {!!}
-KUhasSFS = {!!}
+      HasInitialObject {c₁} {c₂} {ℓ}  ( K (Sets) A (FObj U a) ↓ U ) ( record  { obj = a ; hom = id1 Sets (FObj U a) } )
+KUhasInitialObj A comp U a R = record {
+           initial =  λ b → {!!}
+         ; uniqueness =  λ b f → {!!}
+     }
 
-KUhasPreinitial : {c₁ c₂ ℓ : Level} (A : Category c₁ c₂ ℓ)
-      (comp : Complete A A)
-      (U : Functor A (Sets) )
-      (a : Obj A )
-      (R : Representable A U a ) →
-      PreInitial {!!} (SFSF (KUhasSFS A comp U a R ) )
-KUhasPreinitial = {!!}